Bifrost/docs
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Heimdall f726101207 Account merge ledger: one write gate for every writer, held across the standing read and the save
WriteAsAsync takes a shared Postgres advisory lock on the account (the key the chain trigger locks exclusively) across the standing read and the writer's save; CommitAsync takes the exclusive lock before it reduces. Votes, appraisals, sealed commit and reveal, patron events (RecordSupportEventAsync routes and journals in the same save, so the manual Ledger door obeys it too) and the Heimdall sign-in pass through it; SupportTargetAsync, MayWriteAsync and JournalIntakeAsync are deleted. A folded or frozen account's sign-in writes no membership. A retry of an event stranded on the folded account journals nothing. Tests: Down refuses in every merge state, Stripe journal prior owner and undo, the lock racing a freeze and a commit on live Postgres. Docs say what the lock guarantees and what it does not.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-14 06:08:36 +00:00
..
research Estate-rule sim: contribution-credit arm (E7) 2026-11-06 15:54:56 +00:00
account-merge.md Account merge ledger: one write gate for every writer, held across the standing read and the save 2026-11-14 06:08:36 +00:00
agent-transport.md Move public crossings onto typed Bifrost transport 2026-07-15 22:16:07 +01:00
bifrost-mvp-plan.md Drop HTMX (unpkg, no integrity); guard against third-party assets (#61) 2026-11-11 14:12:51 +00:00
bridge.md Mouth: follow upgrades only a plain basis; @room keeps room (#76) 2026-11-12 12:28:39 +00:00
charter-amendment-proposal.md Revise charter amendment proposal with settled estate rules 2026-11-04 23:18:07 +00:00
concept-mill-votes-target.md Document Heimdall__AppSecretFile and the AppSecret deprecation 2026-11-12 13:24:59 +00:00
context.md Bifrost as OIDC issuer for the Matrix chat (gamecult-chat cut bifrost-oidc-issuer, squash of 1ef289a..ec4acfa and abd12b3..) 2026-10-27 04:57:16 +01:00
deploy-main-to-live.md Soul fixes: deploy doc says production refuses a blank secret; name the echo test for what it checks 2026-11-12 19:27:57 +00:00
desk-feed-design.md Docs: desk feed visibility is Huginn's door policy; cite the written door spec (#69) 2026-11-12 10:17:33 +00:00
feedback-receiver.md docs(feedback-receiver): drop stale draft marker; steward merges the design 2026-11-13 03:28:33 +00:00
full-implementation-strategy.md Add native Bifrost identity registration 2026-06-22 15:07:22 +01:00
guest-accounts.md docs(guest-accounts): steward rulings: stored Role, form-posted invite code (no token in a URL), provider lists narrowed to the intersection, no collector member_id for guests 2026-11-12 22:46:53 +00:00
heimdall-app-secret-file.md Refuse production startup when the Heimdall app secret is blank 2026-11-12 19:23:43 +00:00
jurisdiction-map.md Passkeys: WebAuthn enrolment under a fresh sign-in, 48 h cooling-off, assertion proof at unlink (#85) 2026-11-14 00:37:56 +00:00
linked-accounts.md Account merge ledger: AccountMerge receipt, reductions, alias standing, undo and final sweep 2026-11-14 02:31:51 +00:00
oidc-issuer.md Docs: no refresh token, MAS skips userinfo; withdrawal stops new tokens, open sessions run to expiry (#66) 2026-11-11 16:48:27 +00:00
oidc-reserved-accounts.sql OIDC issuer: address budget, token-row cap, scheduled prune, marker brake (#50) 2026-11-11 08:12:48 +00:00
passkeys.md Passkeys: WebAuthn enrolment under a fresh sign-in, 48 h cooling-off, assertion proof at unlink (#85) 2026-11-14 00:37:56 +00:00
paypal-patronage.md Document Heimdall Patreon support sync 2026-06-09 20:22:58 +01:00
ratatoskr-voting-auth.md Docs: desk feed visibility is Huginn's door policy; cite the written door spec (#69) 2026-11-12 10:17:33 +00:00
reddit.md Add patron support derived voting tiers 2026-06-09 16:28:30 +01:00
registration-gates.md Members: approve refuses no-membership/unknown accounts; neutral text for legacy suspensions (#65) 2026-11-11 16:39:48 +00:00
sealed-ballot-motion.md docs: sealed-motion Mind key path is /var/lib/mind-<persona>; register only after a Persona-shell self-test (#32) 2026-11-12 10:31:05 +00:00
training-notice.md Docs: no refresh token, MAS skips userinfo; withdrawal stops new tokens, open sessions run to expiry (#66) 2026-11-11 16:48:27 +00:00
verse-service-contract.md Delete Epiphany operator bridge 2026-08-22 06:16:39 +02:00
watchdog-notice.md Watchdog notice reader: a future stamp is eligible now; no production clock seam 2026-10-01 02:19:01 +02:00