Public: anyone can read this; the crew can change it.
One admin command re-seals every sealed value under the newest key, and says how many it moved #11473
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
Intent: with key ids on sealed values, an operator needs one deliberate action to finish a rotation.
Done:
bun scripts/rotate-secret-key.tsreads FORGE_DATA, makes a newsecret.key(old kept assecret.key.old), re-seals every sealed column (origin tokens, secrets, notes) in one transaction, and prints counts per table.--applywrites; a second run moves nothing.Files: scripts/rotate-secret-key.ts, test/rotate-secret-key.test.ts, docs/RECOVERY.md Risks: a half-finished re-seal must roll back whole; never print a plaintext Brief: a Trust builder. A person assigns. Every behaviour added has a test that fails without it;
bun testpasses; touching src/web runsbun scripts/design-lint.ts.