tane/apps/app_seeds/lib
vjrj 004014be3a feat(inventory): auto-recover from a transient stream failure
Instead of showing a retry button on the first failure, silently re-open
the inventory stream with exponential backoff (250ms→4s, 6 attempts,
staying in the loading spinner). The startup DB-not-ready race clears in
well under a second, so the user just sees the spinner briefly and the
list appears — no tap needed. Only after the retry budget is exhausted do
we surface the manual-retry error.

Tests cover auto-recovery, no error flicker during retries, and the
give-up path (via fake_async to fast-forward the backoff).
2026-07-10 23:10:00 +02:00
..
data feat(market): host and publish the cover photo with each offer 2026-07-10 21:12:36 +02:00
db feat(inventory): photo-first drafts + on-device OCR (digitization R2+R4) 2026-07-09 21:23:46 +02:00
di refactor(social): one shared relay connection per identity 2026-07-10 21:50:34 +02:00
domain Solve lint issue 2026-07-10 10:34:43 +02:00
i18n fix(inventory): recover from a stuck loading spinner 2026-07-10 22:12:24 +02:00
security feat(backup): sealed backups + printable recovery sheet 2026-07-09 22:32:13 +02:00
services refactor(social): one shared relay connection per identity 2026-07-10 21:50:34 +02:00
state feat(inventory): auto-recover from a transient stream failure 2026-07-10 23:10:00 +02:00
ui fix(inventory): recover from a stuck loading spinner 2026-07-10 22:12:24 +02:00
app.dart refactor(social): one shared relay connection per identity 2026-07-10 21:50:34 +02:00
bootstrap.dart refactor(social): one shared relay connection per identity 2026-07-10 21:50:34 +02:00
main.dart feat(identity): switch social identity, all from the one backup 2026-07-10 20:22:24 +02:00