Skip to content

fix: prevent cached auth responses from breaking page rereads - #25

Merged
ty-everett merged 1 commit into
masterfrom
codex/signed-page-cache-recovery
Sep 24, 2026
Merged

ty-everett merged 1 commit into
masterfrom
codex/signed-page-cache-recovery

Conversation

@ty-everett

Copy link
Copy Markdown
Contributor

A reader can pay successfully and then see “Request failed after maximum number of retries” after a cold wallet restart: the browser reuses a private, 60-second cached page response whose BRC-103 nonce belongs to the previous authentication session.

Mark canonical page responses private, no-store so every authenticated request receives a fresh signed response. Existing entitlements are reused without another payment; the separate token-authorized rendered-image route retains its cache policy. This changes no BRC100 calls or wire bytes and requires no SDK release.

Validation: 40 tests, lint, typecheck and both builds pass. The regression test uses a browser-like private cache and three independent authentication sessions; the original policy fails and the new policy passes. Native cold reread and production rollout acceptance follow hosted CI and merge.

@ty-everett
ty-everett merged commit 917c0c5 into master Sep 24, 2026
1 check 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