/goal /ultracode-workflows [SEC-2] attribute human identity into the secrets-sync audit trail #44
Labels
No labels
bug
discussion
duplicate
enhancement
goal
help wanted
horizon:backlog
horizon:governance
horizon:mvp
invalid
operator-decision
question
roadmap
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
Reference
open-platform/mitosis#44
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?
Track/Wave:
SEC-2· Wave G1 · Size SRepos:
mcp,_app-templateDepends on: none
Why
The secrets sync commit is currently attributed to CI/admin, not the human who set the secret. Cheap auditability win.
Scope
Thread Forgejo Actions run metadata (github.actor, run id/URL, SHA) from sync-env.yml through secrets-cli.ts into syncAppEnv()'s commit trailer, reusing the existing Caller/Tool commit-attribution pattern. Commit-message change only, no new store.
Acceptance
Triggering sync-env as two different org members yields gitops commits each carrying the distinct human actor (not CI/admin), verifiable via
git logalone.Notes
Seam B: isolated syncAppEnv region (~1728) of server.ts — tolerated concurrent; land by rebase. Overlappable with Horizon 1.
Part of the First Client Deploy → Governance roadmap. The owning agent may recurse into its own subagent team (ultracode workflow) if the task warrants. Honor the seam-serialization: land on a shared seam by rebase, and don't start a seam position until the prior one has merged.
DONE — merged. plat/mcp PR #4 + plat/app-template PR #2 merged to main (squash; two accidental junk files stripped from #4 first). Wiring verified end-to-end on valid8b: sync-env.yml sets PLAT_ACTOR/PLAT_RUN_URL/PLAT_SHA and forwards them into the container; secrets-cli reads them (GITHUB* fallback) and syncAppEnv appends a Caller/Tool/Run/Commit trailer only when actor.login is set (byte-identical otherwise). 51/51 tests. Live Actions e2e not run (valid8b has no runner + idle CI); trailer format reproduced/verified by hand. Same propagation caveat as RBAC-1 (needs release + seed refresh, #14).