security(phase1a): Phoenix Vault rotation runbook + consumer-prep scaffolding #5
Open
nsatoshi
wants to merge 1 commits from
devin/phase1a-vault-consumer-prep-1776543363 into master
pull from: devin/phase1a-vault-consumer-prep-1776543363
merge into: d-bis:master
d-bis:master
d-bis:devin/1777471106-phase4b-v2-runbook
d-bis:devin/1777459320-phase3-deployed-cbtc-wired
d-bis:devin/1777435956-stack-a-canonicalization
d-bis:devin/1777403009-phoenix-bootstrap
d-bis:main
d-bis:devin/1777249218-harden-branch-detection
d-bis:chore/explorer-pricing-rollout-coordination
d-bis:devin/1777157605-cromero-deploy-target
d-bis:sync/currencicombo-phoenix-e2e
d-bis:devin/coingecko-normalization-companion-20260419
d-bis:devin/explorer-verification-checklist-20260419
d-bis:devin/1776625819-chain138-listing-assets
d-bis:devin/1776628206-rename-defi-to-capital-f
d-bis:devin/1776625631-doc-reconcile-status-vocab
d-bis:devin/phase5-ci-reconciliation-1776542837
d-bis:devin/phase4-drop-local-junk-1776542674
d-bis:devin/phase3-submodule-remotes-1776542381
d-bis:chore/ignore-local-runtime-artifacts
d-bis:docs/mev-and-ops-runbook-refresh
d-bis:docs/explorer-blockscout-and-verification-refresh
d-bis:feat/canonical-token-and-list-refresh
d-bis:feat/extraction-and-liquidity-improvement-pack
d-bis:feat/mainnet-cw-liquidity-and-exit-ops
d-bis:feat/gru-v2-full-mesh-ops-pack
d-bis:feat/chain138-aave-gmx-rollout-scaffolding
d-bis:feat/token-aggregation-aave-and-route-planning
1 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
57c717ad7e |
security(phase1a): Phoenix Vault rotation runbook + consumer-prep scaffolding
Some checks failed
AI Code Review / claude-review (pull_request) Failing after 48s
Part of the sequenced cleanup tracked in issue #1. Scaffolding only — no rotation executed, no secret values committed. - docs/runbooks/PHOENIX_VAULT_ROTATION_RUNBOOK.md: authoritative Phoenix Vault rotation procedure (9-step: new root → rekey unseal → regenerate AppRoles → flip consumers → revoke old). Verification table + rollback path + Phase 2 handoff notes. - docs/04-configuration/VAULT_SHARD_CUSTODY_POLICY.md: decision record for the next rotation. Three options documented (named-operator / cloud-KMS auto-unseal / Transit auto-unseal); selection pending operator sign-off before rotation executes. - scripts/verify/enumerate-vault-consumers.sh: read-only grep over the tree for VAULT_ROLE_ID / VAULT_SECRET_ID / auth/approle/login references; flags which top-level consumers need a coordinated .env update at §1.6 of the runbook. - scripts/verify/verify-vault-approle-auth.sh: post-rotation sanity check — posts AppRole login + token lookup-self; returns PASS/FAIL without echoing the Role ID, Secret ID, or client token. - phoenix-deploy-api/.env.example: added VAULT_ADDR / VAULT_ROLE_ID / VAULT_SECRET_ID placeholder block with a pointer to the runbook. No values committed. - mission-control/.env.example: NEW file (previously had none); documents the launchpad NEXT_PUBLIC_* vars and the same Vault AppRole placeholder block. Server-side only — never NEXT_PUBLIC_*. Rotation execution stays with Phoenix ops; this commit only stages the runbook + env scaffolding so the eventual rotation does not require inventing infrastructure mid-incident. Co-Authored-By: Nakamoto, S <defi@defi-oracle.io> |