You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Identified while closing #150 P2, and distinct from it: a delegation run records its objective and its terminal outcome, but not the consequential acts it took along the way.
The concrete case, from live use (raised when closing #276):
Run 73ffc073merged its own PRs to main unattended. The supervisor view does not show that it happened.
Its detail says the objective completed. Nothing says a branch was pushed, a PR opened, a PR merged, a force-push made, or a file deleted. A supervisor reviewing that run sees "done".
This is not #150. #150 makes a ticket readable, questionable, and reasoned — the surface is now ready to display this the moment something records it. This issue is about what a run writes down.
Why it matters
The whole delegation model assumes a supervisor can review what a subordinate did. Today they can review what it was asked to do and whether it claimed success. For read-only goals that is fine. For a goal that merges to main, it is not review — it is trust.
Note the platform already got this right elsewhere: every admin moderation action writes an audit row with its before-state (#34), and the pump logs a chain.link event correlating a child run to its parent trace. Delegated coding runs are the surface where an agent takes the most consequential actions and records the least.
Shape (judge it, don't assume it)
Irreversible/outbound acts are the target: push, PR open, PR merge, force-push, branch delete, file delete, git reset --hard, publish, deploy.
The supervisor read (subordinate_status, check_delegation) should surface consequential acts, not just "Last action".
Explicitly NOT in scope
Whether an agent should be allowed to merge to main unattended. That is a policy question (see #142's trust framing) and deserves its own decision. This issue is only about making it visible — a policy nobody can audit is not enforceable anyway.
Acceptance
A delegated run that opens or merges a PR leaves a record naming that act.
The gap
Identified while closing #150 P2, and distinct from it: a delegation run records its objective and its terminal outcome, but not the consequential acts it took along the way.
The concrete case, from live use (raised when closing #276):
Its
detailsays the objective completed. Nothing says a branch was pushed, a PR opened, a PR merged, a force-push made, or a file deleted. A supervisor reviewing that run sees "done".This is not #150. #150 makes a ticket readable, questionable, and reasoned — the surface is now ready to display this the moment something records it. This issue is about what a run writes down.
Why it matters
The whole delegation model assumes a supervisor can review what a subordinate did. Today they can review what it was asked to do and whether it claimed success. For read-only goals that is fine. For a goal that merges to
main, it is not review — it is trust.Note the platform already got this right elsewhere: every admin moderation action writes an audit row with its before-state (#34), and the pump logs a
chain.linkevent correlating a child run to its parent trace. Delegated coding runs are the surface where an agent takes the most consequential actions and records the least.Shape (judge it, don't assume it)
git reset --hard, publish, deploy.agent_eventsalready exists as the unified trace and is the obvious sink. Do not add a fifth record of "what happened" — the Agent work as first-class Tickets — granular, with reasoning + per-ticket conversation #150 agent explicitly avoided that and the reasoning holds.subordinate_status,check_delegation) should surface consequential acts, not just "Last action".Explicitly NOT in scope
Whether an agent should be allowed to merge to
mainunattended. That is a policy question (see #142's trust framing) and deserves its own decision. This issue is only about making it visible — a policy nobody can audit is not enforceable anyway.Acceptance