Refusal return contract: pin the fragment, carry the attempt id, document it #7
Loading…
Reference in a new issue
No description provided.
Delete branch "heimdall/refusal-return-contract"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Pins and documents what a landing page reads after a refusal (Heimdall main
61671d7). Not merged, not deployed.access_deniedeach parse the#return-linkfragment and assertheimdall_status=error,heimdall_error=consent_refused,heimdall_refused_by=viewer|provider, and noheimdall_completion_code; abrowser_completionattempt refused either way carriesheimdall_attempt_id.src/app.ts(refuseConsent): the attempt id is passed forbrowser_completionhandoffs too, not onlybackend_callback. The attempt test failed before this change.docs/joystick-consent-flow.md: fragment keys, postMessage payload, no auto-redirect, backend callback anddenialCode.store.test.tstest (narrowing a receipt union).Mutants, each alone under 8 GB
ulimit -v,timeout 300: droprefused_by, swapby, completion code set on the error path,heimdall_error=provider_error, attempt id reverted tobackend_callbackonly: 5/5 killed.Suite 530 pass / 19 fail, the known environmental 19.
🤖 Generated with Claude Code