Area: Performance
Priority: Low
Estimated Time: 1.5 hours
Description:
refreshAll()/its iOS equivalent (from #112's pagination work) fetches all pages via
cursor-based pagination; confirm this isn't called more often than necessary (e.g., on every
pull-to-refresh and every WebSocket vault_updated event), which would generate redundant network
traffic for the common case where only one vault actually changed.
Tasks:
- Audit call sites of the full-refresh function vs. targeted single-vault refresh
- Prefer updating just the affected vault in local state when a
vault_updated event names a specific
vault ID, reserving full-list refresh for pull-to-refresh and initial load
- Add tests asserting a single-vault WebSocket update doesn't trigger a full
/vaults re-fetch
Area: Performance
Priority: Low
Estimated Time: 1.5 hours
Description:
refreshAll()/its iOS equivalent (from#112's pagination work) fetches all pages viacursor-based pagination; confirm this isn't called more often than necessary (e.g., on every
pull-to-refresh and every WebSocket
vault_updatedevent), which would generate redundant networktraffic for the common case where only one vault actually changed.
Tasks:
vault_updatedevent names a specificvault ID, reserving full-list refresh for pull-to-refresh and initial load
/vaultsre-fetch