Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

fix(work-items): decompose publish snippet is refused in worktree-isolated sessions

Fermée
#6,929 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Une pull request liée a déjà été fusionnée.

  • #7090 par @kyle-sexton — fusionnée

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
35/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Active
Stack technique
git, shell
Domaine
tooling

Piste de recherche

Start with the step 4 publish snippet in plugins/work-items/skills/decompose/SKILL.md, which combines a git rev-parse command substitution with a $(cat "$BODY_FILE") body argument, then read the create-item path in work-item-tracker.sh. Reproducing the refusal needs a worktree-isolated Claude Code session, and whether a --body-file option already exists is unconfirmed. Done means the documented publish runs from a worktree-isolated session without a wrapper, and the same check covers /work-items:track add.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

priority: medium

Summary

/work-items:decompose step 4's publish snippet is refused in a worktree-isolated session, so a decompose run from a worktree cannot publish slices as written.

What happened

Publishing the approved breakdown for #6917 from a worktree-isolated session, every create-item call shaped like the step 4 snippet was refused by Claude Code's worktree isolation:

this command names git in a form too complex to verify that it stays inside the worktree. Refusing to run it

Both tracker paths (main checkout and worktree copy) were refused when the body was passed inline as --body "$(cat "$BODY_FILE")". The run only published after the agent moved the call into a wrapper script that runs the worktree's copy of work-item-tracker.sh. Nothing was created by the refused attempts.

Likely cause (inference, not yet reproduced in isolation)

The snippet in plugins/work-items/skills/decompose/SKILL.md step 4 combines:

  • a fallback TRACKER="${CLAUDE_PROJECT_DIR:-$(git rev-parse --show-toplevel)}/...", which puts git inside a command substitution; and
  • --body "$(cat "$BODY_FILE")", another command substitution in the same invocation.

Claude Code documents that in an isolated worktree it "blocks a Bash or Monitor command when it can't verify from the command text that any git the command runs stays inside the worktree" (worktrees: how Claude Code enforces isolation). The tracker script itself runs gh/git, which the command-shape check cannot see through.

Fix direction

Give create-item a --body-file input (or document one if it exists) and split the snippet into plain commands with literal paths, so no git or command substitution appears in the publishing command. Same check for other skills that reuse this snippet (/work-items:track add).

Verification

  • A decompose publish from a worktree-isolated session succeeds with the documented snippet, no wrapper.
  • Related precedent: #5696, #6234 (other worktree-isolation refusals of our commands).

No related issue: found during the #6917 publish; not covered by #5696 or #6234.

Langage dominant
Shell
Étoiles
22
Forks
2
Merge moyen
8 h 25 min
PR mergées (30 j)
944

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de melodic-software/claude-code-plugins

Toutes les issues de melodic-software/claude-code-plugins

Issues similaires

Plus d'issues Shell/Bash

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.