crates.io credential rotation runbook (JOE-1715)¶
Complete this after any publish that still used the disclosed token (v0.0.3– v0.0.6 crates were published with the publish environment secret). Do not paste token values into chat, tickets, or git.
Steps¶
- Open https://crates.io/settings/tokens while logged into the publisher account.
- Identify the token used for the v0.0.3 chat paste / any long-lived publish token.
- Revoke that token.
- Create a new token:
- Name:
aurum-github-actions-publish(or similar) - Scopes: minimum needed to publish
aurum-core,aurum-stt,aurum-ffi - In GitHub → repo Settings → Environments →
crates-io(or org secrets): - Set
CARGO_REGISTRY_TOKENto the new value only - Remove any duplicate org/repo copies of the old token
- Negative check (old token must fail):
- Positive check (new token, dry-run only):
- Review crates.io account “Activity” / crate publish history since disclosure.
- Record redacted note (token name + revoke timestamp only) in a private ops log.
Already done in v0.0.4 code¶
- Fail-closed pinned
cargo-audit/cargo-denyinstalls scripts/check_security_tool_pins.sh
Done when¶
- Old token revoked and proven unusable
- New token only in protected environment secret
- Activity review complete with no unexplained publishes