Files
orca/src
Brennan Benson dfa0133f45 fix(mobile): retry a failed Android release refresh in minutes, not hours
A cold refresh failure cached `null` for the full 6h success TTL, so an
Orca that autostarts before Wi-Fi/VPN associates advertised no Android
recommendation for the rest of the session. Mobile could not recover on
its own: once the refresh settled, `recommendedMobileAppVersionsPending`
was undefined, so it scheduled no follow-up read. The cache is
per-main-process, so this recurred on every desktop relaunch.

Track failure in the cache state and give failed refreshes a 10-minute
TTL while successes keep 6h. The inFlight dedupe guard still collapses
concurrent status.get calls, so the retry floor is ~6 calls/hour against
GitHub's 60/hr unauthenticated budget. A failure still retains the
last-known-good version; only a cold failure yields null.

Also drop the dead `appVersion` line from getStatus(): status.get spreads
getStatus() and then re-assigns appVersion from the remote-server-updater
snapshot, so the spread always lost. That snapshot falls back to
'0.0.0-dev' rather than undefined. Its duplicate RuntimeStatus
declaration broke `tsc` (TS2300) — appVersion was already declared.
2026-07-27 16:23:37 -07:00
..