Skip to content

Harden Postbox protocol and recovery flows - #105

Merged
dasomji merged 4 commits into
mainfrom
feat/issues-97-104
Aug 26, 2026
Merged

Harden Postbox protocol and recovery flows#105
dasomji merged 4 commits into
mainfrom
feat/issues-97-104

Conversation

@dasomji

@dasomji dasomji commented Aug 25, 2026

Copy link
Copy Markdown
Owner

Summary

  • unify Android HTTP/protocol gating and allow saved-server workflows to start offline
  • restore stamped Question Chat transport events and classify stale revisions as refreshable conflicts
  • persist queue-aware Answer auto-wake state and parse extension config fields independently
  • reconcile resolved Android notifications and badges offline, including process restarts and duplicate pushes
  • derive Android contract inputs from protocol/server sources of truth and enforce fixture version discipline
  • synchronize package version 0.2.14, protocol 0.1.10, and Android 0.4.7 (build 11)

Verification

  • npm test — 621 passed
  • npm run check -w @pi-postbox/web
  • npm run typecheck
  • npm run build
  • npm run smoke
  • npm run check:android-protocol-contract
  • node scripts/check-protocol-discipline.mjs main
  • ./gradlew testDebugUnitTest lintDebug assembleDebug
  • fresh checkout-scoped server: 0.2.14+sha256.0e1370a2a0ab7488, protocol 0.1.10
  • Standards and Spec reviews completed with no remaining findings

Closes #97
Closes #98
Closes #99
Closes #100
Closes #101
Closes #102
Closes #103
Closes #104

Addresses the final standards/spec review findings for #102 and advances synchronized build identities to 0.2.12.
Use the active summary count when child notifications were already opened, completing #102's offline reconciliation path.
Persist pending or handled request identities in the active summary so redelivered FCM resolution events are idempotent.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment