Fix end-to-end push notification reliability - #9319
Conversation
Bugbot is paused — on-demand spend limit reachedBugbot uses usage-based billing for this team and has hit its on-demand spend limit. A team admin can raise the spend limit in the Cursor dashboard, or wait for the next billing cycle to continue. |
|
Too many files changed for review. ( Bypass the limit by tagging |
Bugbot is paused — on-demand spend limit reachedBugbot uses usage-based billing for this team and has hit its on-demand spend limit. A team admin can raise the spend limit in the Cursor dashboard, or wait for the next billing cycle to continue. |
…eliability-final # Conflicts: # .github/workflows/ci.yml # scripts/check-package-resolved-policy.py
…eliability-final # Conflicts: # web/app/api/account/route.ts
|
Final verification follow-up for
End-to-end iPhone proof remains blocked. Aziz is paired but unavailable, so |
Closes #6270
Fixes the production signing gap that stripped push entitlements, makes device registration account-safe and recoverable, and preserves notification identity across retries.
Adds durable Mac delivery with bounded retries, idempotent partial APNs recovery, pooled provider connections, database-backed rate enforcement, and same-account phone controls. The iPhone reports the exact blocked or limited stage and can enqueue a truthful test alert through the production path.
Verification:
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Summary by cubic
Improves end-to-end push alert reliability across Mac, iOS, and backend with durable latest-per-id delivery, device‑delivery leases, TTL‑clamped retries, authenticated controls, and truthful readiness so users get one accurate alert even across retries, disconnects, and redirects.
New Features
phone_push.settings.update,phone_push.status.get(definitive auth errors now trigger reauth disconnect), and idempotentphone_push.test.CMUX_APNS_KEY_P8,CMUX_APNS_KEY_ID,CMUX_APNS_TEAM_ID.CmuxAuthRuntime: session‑identity stream; push registration snapshots with streaming updates, retry/backoff, failure recording, and a redirect‑preserving delegate that rejects unsafe redirects.CmuxMobileShellUI: Push Readiness UI merges OS auth, registration, authenticated Mac status, and API origin with optimistic Mac settings that roll back on failure; truthful production‑path test alert; UITest preview viaCMUX_UITEST_PUSH_READINESS_PREVIEW.CmuxMobileRPC: authenticated Mac phone‑push status DTOs (mode, admission, queue‑persistence health, hide‑content, API origin).Migration
CMUX_APNS_KEY_P8,CMUX_APNS_KEY_ID,CMUX_APNS_TEAM_ID(audited at runtime).Written for commit 2accaf3. Summary will update on new commits.
Summary by CodeRabbit