Skip to content

Show independent exact-request recovery progress - #163

Merged
callumalpass merged 2 commits into
mainfrom
fix/actionable-pending-recovery
Sep 15, 2026
Merged

callumalpass merged 2 commits into
mainfrom
fix/actionable-pending-recovery

Conversation

@callumalpass

@callumalpass callumalpass commented Sep 15, 2026

Copy link
Copy Markdown
Owner

Summary

  • Check every original pending handle independently; one failure no longer prevents later handles from recovering.
  • Show per-request operation, shortened identifier, timestamp and progress; preserve partial results while SDK handles clear.
  • Distinguish authorization/key attention, expired recovery, temporary unavailability and unresolved results without exposing raw errors, fingerprints or record contents.
  • Correct the claim that an uncertain earlier mutation was “not sent”. A recovered generic result is not automatically labelled applied.
  • Keep exact-request semantics and journal ownership. No fresh mutation replay, private SDK storage edits, automatic reauthorization or new discard operation.

This is a bounded first recovery-UX improvement. Request-level forgetting and recovery-preserving reauthorization remain separate SDK/product work; the existing explicitly confirmed disconnect action is unchanged.

Verification

  • pnpm verify passed: formatting, typecheck, lint, 634 unit tests, coverage gates, contract/collection conformance and production build.
  • New mixed-result UI regression proves progress survives earlier handles clearing, a failed first handle does not block later checks, repeat checks touch only the remaining handle, and neither session forget nor journal removal runs.
  • Helper tests cover throws, unknown outcomes, expiry, missing keys, reconnect-required, temporary failure, repeated exact checks, metadata privacy and uncertainty wording.
  • Browser baseline comparison caught a connection-identity regression in the initial implementation. The SDK deduplicates application snapshots by JSON even when it replaces its connection instance. Restored both connection and snapshot dependencies behind a separate repository-owning component; added an explicit regression test instead of increasing timeouts or weakening assertions.
  • Final desktop/mobile cloud-connection suite: 10/10 passed in 30.9s, including existing exact-request recovery and reconnect flows. Full pnpm verify passed again on the corrected implementation.

CI must pass before merge. This does not claim packaged LAB acceptance or completion of the separate request-level discard/reauthorization work.

@callumalpass
callumalpass marked this pull request as ready for review September 15, 2026 12:01
@callumalpass
callumalpass merged commit c27e1e6 into main Sep 15, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant