Auto-rotate the coilyco-ops bot creds + source CI/registry token from the rotating value (unblocks aos#223, ward#181) #383
Labels
No labels
burndown-2026-06
coherence-core
consult
headless
interactive
P0
P1
P2
P3
P4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
coilyco-flight-deck/infrastructure#383
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
agentic-os#223(bake ward into the dev-base image) needs CI to authenticate to the Forgejo registry and read a private repo asset as the coilyco-ops bot, not a personal PAT. Wiringpublish-imageto log in ascoilyco-opsfailed because the only available token is a staticREGISTRY_TOKENActions secret holding thecoilysirenPAT. The fix is not "paste the bot PAT into a static secret" - bot creds should auto-rotate, and CI should source the current value.Current state
/forgejo/coilyco-ops/api-token(read by wardcmd/ward/forgejo_issue.go); the git-push token is at/forgejo/api-token.runs-on: docker) have no AWS/SSM access wired - zeroawsusage today. So a workflow cannot resolve the SSM token at runtime yet.Scope
/forgejo/coilyco-ops/api-token(SecureString), revoke the prior. Scopes the bot needs:write:package(push images),reporead (clone/fetch private assets), plus whatever the existing agent push token needs. (Relates to the bot org-membership gap in infrastructure#382 - a bot with no membership cannot read org repos.)dockerActions runner AWS read access and resolve the token in-workflow (aws ssm get-parameter /forgejo/coilyco-ops/api-token), so every run uses the current value. Preferred - no secret to drift.REGISTRY_TOKENon each rotation (sync job).Unblocks
issue-223branch to re-land once this lands).Triage:
P2/consult- Auto-rotate bot creds; depends on the #384 manual rebuild and is design-heavy.(goose-style pass; claude as the judgment engine, applied 2026-06-23)