perf(ui): app-launch-speed doctrine for data panels — parallel RPCs + instant last-known paint #120

Merged
lfg2025 merged 1 commits from perf/data-panels into main 2026-07-24 10:22:54 +00:00
Owner

Wallet card: 7 serialized RPCs → parallel + persisted snapshot painted before any round-trip. Connected nodes: stacked RPCs parallelized. Peer files: name lookup no longer gates the catalog. Doctrine: never serialize independent RPCs, never spinner over last-known data.

🤖 Generated with Claude Code

Wallet card: 7 serialized RPCs → parallel + persisted snapshot painted before any round-trip. Connected nodes: stacked RPCs parallelized. Peer files: name lookup no longer gates the catalog. Doctrine: never serialize independent RPCs, never spinner over last-known data. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
lfg2025 added 1 commit 2026-07-24 10:22:48 +00:00
Why apps feel instant over the mesh and data panels didn't: an app
launch is ONE streamed HTTP fetch on a warm session; the panels were
built from SERIALIZED RPC round-trips, each costing a full mesh RTT.

- Wallet card (Home): the 7 balance/history RPCs fired one-by-one
  (seconds by construction) — now all 7 in parallel, and the card paints
  a persisted last-known snapshot (balances + recent transactions)
  BEFORE any network round-trip. Refresh replaces it silently.
- Web5 connected nodes: listPeers + federationListNodes fetched
  together instead of stacked.
- Peer files: the cosmetic peer-name lookup no longer blocks the
  catalog/owned fetches it never depended on.

Rules going forward: never serialize independent RPCs; never show a
spinner where last-known data exists.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
lfg2025 merged commit 91c51c4d97 into main 2026-07-24 10:22:54 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: lfg2025/archy#120
No description provided.