You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Removes credential encryption at rest so the SMS-gateway logins (and other portal/DB
passwords, module secrets, Gmail token) are usable daily without a held-out
HQ_SECRET_KEY. Keystone: crypto.encrypt() stores tagged plaintext ('plain:'),
decrypt() untags keylessly and still reads legacy AES *with* the key to migrate it.
Drops the six 'refuses/cannot without HQ_SECRET_KEY' guards. Scope is the reversible
credential vault ONLY — login passwords stay one-way scrypt-hashed (@sims/auth).
Secrets still kept out of list payloads + audit rows; reveal still managerial+audited.
migrateLegacyCiphertext + POST /admin/migrate-plaintext (owner) rewrite existing AES
rows as plaintext using the key one final time (idempotent, one audit summary), after
which the key is never needed. SECURITY: a DB dump now exposes these in the clear.
Tests updated to the plaintext policy; new migrate-plaintext.test locks decrypt +
migration + idempotency. Full suite 416 green; typecheck clean.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
3 days ago | |
|---|---|---|
| .. | ||
| superpowers | 3 days ago | |
| 06-DECISIONS.md | 3 days ago | |
| 07-DB-AND-CONFIG.md | 2 weeks ago | |
| 11-ADMIN-SUPPORT-CONSOLE.md | 5 days ago | |
| 14-SPEC-HQ-CONSOLE.md | 5 days ago | |
| 16-PROJECT-RULES.md | 2 weeks ago | |
| DEPLOY-HQ.md | 4 days ago | |