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
{{ message }}
Repository navigation
Make backlog-burndown's Abandon-Discard Grant Reach a Claude Code Worker as the Maintainer's #3786
.agents/skills/backlog-burndown/SKILL.md, "Cleanup Is the Orchestrator's", "A worker told to abandon its branch cleans its own tree first", and the matching exception in .agents/skills/git-commit-conventions/SKILL.md "Never run destructive git commands without being asked".
Defect
The discard grant reaches the worker as a message from the orchestrator, which "states the grant". A Claude Code subagent is told by its harness that no message from any agent is ever its user's consent or approval. So a worker following its harness can refuse git reset --hard and git clean -fd, or hit a permission prompt, even with the grant stated.
Failure
Constructed case: the orchestrator tells a worker on feature/example to abandon its branch, stating the grant. The worker declines the discard as an agent-sourced approval. Its tree stays dirty, so cleanup stops the group for the maintainer. That fails safe, but it is the maintainer cleanup #3733 set out to avoid, and the skill describes a mechanism that may not work on the platform it mostly runs on.
Done When
The skill either names a route by which the grant reaches the worker as the maintainer's own (for example the maintainer's invocation quoted into the brief, or a permission rule), or it drops the worker-side discard and routes a dirty abandoned tree to the maintainer as the ordinary case.
Found by the local strict review of feature/burn-3772.
How should backlog-burndown's grant to discard an abandoned worker's dirty tree take effect, given that a Claude Code worker is told no agent message is ever its user's consent?
Options, recommended first:
(Recommended) Move the discard to the orchestrator. The worker told to abandon reports its path and ends without discarding. The orchestrator, whose session holds the maintainer's own invocation, confirms from a live git worktree list --porcelain that the path is a linked worktree on the claimed branch and that the worker has ended, then runs git -C <path> reset --hard and git -C <path> clean -fd. This keeps the Give the Orchestrator a Cleanup Path for an Abandoned Branch With No Pull Request #3733 answer (no agent-safety edit, and requirement 6 denies only a primary checkout) and drops only the skill's "only the seat that made the edits can tell they are throwaway", which the abandon decision itself settles. It assumes the orchestrator is the top-level session that received the invocation.
Quote the maintainer's invocation into the worker brief. No harness change, but the quote still reaches the worker as a message from the orchestrator, which is what the issue says the harness rejects as consent, so it does not close the defect.
A permission rule allowing the discard. The harness treats permissions as a consent source, but this is host configuration against the Give the Orchestrator a Cleanup Path for an Abandoned Branch With No Pull Request #3733 answer's "No agent-safety edit", and it cannot be scoped to a worktree path unknown in advance, so it allows reset --hard in any linked tree, another task's included.
Evidence:#3786 body; .agents/skills/backlog-burndown/SKILL.md:385-392 on develop 23c7d78 (worker-side discard), same file :344-422 ("Cleanup Is the Orchestrator's"); .agents/skills/git-commit-conventions/SKILL.md:143-145 and GOVERNANCE.md:50 (#3792); #3733 (comment); host-setup/agent-safety/README.md:43. No open PR touches these files.
Maintainer answer (2026-11-02, via decision triage): move the discard to the orchestrator.
A worker told to abandon reports its worktree path and ends without discarding. The orchestrator, whose session holds the maintainer's invocation, confirms from a live git worktree list --porcelain that the path is a linked worktree on the claimed branch and that the worker has ended, then runs git -C <path> reset --hard and git -C <path> clean -fd. No agent-safety edit, per the #3733 answer. This issue stays open as work.
Released (2026-11-02): PR #3822 merged to develop and its branch is deleted, so this claim holds no files. The issue closes on promotion.
Backlog burndown claim (away run 2026-11-02, round 2, group G2). Branch: burndown/3786-burndown-cleanup. Issues: #3786, #3785, #3772.
Predicted file set:
.agents/skills/backlog-burndown/ and its generated trees (.github/skills/backlog-burndown/, .claude-plugin/fleet-skills/skills/backlog-burndown/, .claude-plugin/fleet-skills/.source-digests/backlog-burndown)
.agents/skills/git-commit-conventions/ and its generated trees (.github/skills/git-commit-conventions/, .claude-plugin/fleet-skills/skills/git-commit-conventions/, .claude-plugin/fleet-skills/.source-digests/git-commit-conventions)
Out of bounds for this group: GOVERNANCE.md and .agents/skills/agent-conduct/ (group G3), host-setup/agent-safety/ (held in away mode), .agents/skills/repo-worktree/, .agents/skills/decision-triage/.
Scope: develop only. The feature pull request carries Closes on promotion: for each issue it fully fixes.
Adjudication update (2026-11-02): PR #3818 has merged and released GOVERNANCE.md. The claim grows by GOVERNANCE.md, limited to the one sentence in "Git and Commit Rules" that names the backlog-burndown abandon discard.
Activity
Mark Direct-Push Closures and Close backlog-burndown Cleanup and Clai…
ptr727 commentedon Nov 2, 2026
Decision triage: researched question
How should
backlog-burndown's grant to discard an abandoned worker's dirty tree take effect, given that a Claude Code worker is told no agent message is ever its user's consent?Options, recommended first:
git worktree list --porcelainthat the path is a linked worktree on the claimed branch and that the worker has ended, then runsgit -C <path> reset --hardandgit -C <path> clean -fd. This keeps the Give the Orchestrator a Cleanup Path for an Abandoned Branch With No Pull Request #3733 answer (no agent-safety edit, and requirement 6 denies only a primary checkout) and drops only the skill's "only the seat that made the edits can tell they are throwaway", which the abandon decision itself settles. It assumes the orchestrator is the top-level session that received the invocation.reset --hardin any linked tree, another task's included.Evidence: #3786 body;
.agents/skills/backlog-burndown/SKILL.md:385-392on develop 23c7d78 (worker-side discard), same file:344-422("Cleanup Is the Orchestrator's");.agents/skills/git-commit-conventions/SKILL.md:143-145andGOVERNANCE.md:50(#3792); #3733 (comment);host-setup/agent-safety/README.md:43. No open PR touches these files.Blocks: none.
ptr727 commentedon Nov 2, 2026
Maintainer answer (2026-11-02, via decision triage): move the discard to the orchestrator.
A worker told to abandon reports its worktree path and ends without discarding. The orchestrator, whose session holds the maintainer's invocation, confirms from a live
git worktree list --porcelainthat the path is a linked worktree on the claimed branch and that the worker has ended, then runsgit -C <path> reset --hardandgit -C <path> clean -fd. No agent-safety edit, per the #3733 answer. This issue stays open as work.ptr727 commentedon Nov 2, 2026
Released (2026-11-02): PR #3822 merged to develop and its branch is deleted, so this claim holds no files. The issue closes on promotion.
Backlog burndown claim (away run 2026-11-02, round 2, group G2). Branch:
burndown/3786-burndown-cleanup. Issues: #3786, #3785, #3772.Predicted file set:
.agents/skills/backlog-burndown/and its generated trees (.github/skills/backlog-burndown/,.claude-plugin/fleet-skills/skills/backlog-burndown/,.claude-plugin/fleet-skills/.source-digests/backlog-burndown).agents/skills/git-commit-conventions/and its generated trees (.github/skills/git-commit-conventions/,.claude-plugin/fleet-skills/skills/git-commit-conventions/,.claude-plugin/fleet-skills/.source-digests/git-commit-conventions)Out of bounds for this group:
GOVERNANCE.mdand.agents/skills/agent-conduct/(group G3),host-setup/agent-safety/(held in away mode),.agents/skills/repo-worktree/,.agents/skills/decision-triage/.Scope:
developonly. The feature pull request carriesCloses on promotion:for each issue it fully fixes.Adjudication update (2026-11-02): PR #3818 has merged and released
GOVERNANCE.md. The claim grows byGOVERNANCE.md, limited to the one sentence in "Git and Commit Rules" that names thebacklog-burndownabandon discard.Move the Abandon Discard to the Orchestrator, Align the Abandoned-Bra…