Registration: sign-up form with proof-of-work and a no-JS time-lock fallback #56

Merged
heimdall merged 5 commits from heimdall/registration-form into main 2026-11-11 11:17:25 +00:00
Member

Follow-up reg-form-and-fallback. GET /auth/bifrost/register (server-rendered, no external assets, no cookies) and POST /auth/bifrost/register/form, both through one shared registration core with the JSON endpoint. With JS the page solves the proof of work; without JS a 30 s time-lock plus a stricter per-address budget (3/hour) is the fallback. Tradeoff stated in docs/registration-gates.md. Also records the steward decision to keep a verified address as sign-in recovery (privacy handling in the doc; nothing built, needs a mail relay from ops).

Not deployed.

🤖 Generated with Claude Code

Follow-up reg-form-and-fallback. `GET /auth/bifrost/register` (server-rendered, no external assets, no cookies) and `POST /auth/bifrost/register/form`, both through one shared registration core with the JSON endpoint. With JS the page solves the proof of work; without JS a 30 s time-lock plus a stricter per-address budget (3/hour) is the fallback. Tradeoff stated in `docs/registration-gates.md`. Also records the steward decision to keep a verified address as sign-in recovery (privacy handling in the doc; nothing built, needs a mail relay from ops). Not deployed. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
GET /auth/bifrost/register renders the form (notice in full, unchecked consent box);
POST /auth/bifrost/register/form and the JSON endpoint share NativeRegistration.
Challenge payload gains issued-at; waited path needs FallbackWaitSeconds and a
stricter per-address FallbackPermits budget.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
heimdall deleted branch heimdall/registration-form 2026-11-11 11:17:26 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
GameCult/Bifrost!56
No description provided.