- **Retry the daily-reveal `isRevealed` write so the "partner opened" push is never silently lost.**
`performCoupleKeyReveal` sets local Room `markRevealed`*then* the Firestore `markRevealed` (best-effort,
`runCatching`). If that Firestore write fails (offline/transient), Room is already revealed → re-opening the reveal
takes `load()`'s auto-decrypt branch (which only runs when local `isRevealed==true`) and **never retries** the
Firestore write, so `onAnswerRevealed` never fires and the partner never gets the "opened your answers" push. Normal
online flow is fine (verified live). Fix: on reveal-screen load, if local says revealed but the server doc's
`isRevealed` is still false, re-issue `markRevealed`. *Prompted by:* daily-reveal QA (2026-06-26) — low severity
(content reveal unaffected; only the courtesy push on a write-failure edge).
- **Clarify Connection Challenges day-progress when partners are out of step.** If one partner catches up a *missed* day ("Pick it back up") while the other doesn't, the two devices show different **"Day N of 7"** (seen R10: QA Day 4 vs Sam Day 3) even though the 🔥 streak stays in sync on both. Not broken (plausibly individual-pace-through-the-series by design), but two people in the same shared challenge seeing different day numbers is confusing — consider a shared "you're on Day N together" framing or a clearer caught-up/ahead indicator. *Prompted by:* Pass B (R10) Connection Challenges playthrough.