- Move frontend/utils/ to frontend/lib/ to avoid Nuxt unimport scanner
incorrectly extracting function parameter names (value, fallback) as
module-level exports, which injected phantom imports that broke all
client-side JavaScript execution
- Update all import paths across 13 files from ~/utils/ to ~/lib/
- Add timeout (5s) and negative cache (60s TTL) to WCDB realtime
ensure_connected() to prevent open_account() from hanging indefinitely
when the WeChat database is locked
- Reorder selectContact() to fire loadMessages() before navigateTo() so
the message fetch starts before route navigation triggers Suspense
- Add watch: false to SSR useAsyncData calls to prevent unnecessary
re-fetching on client-side route changes