Skip to content

chore(source-control): retire stale ghq-layout-sibling-pr-worktrees doc; plugin owns worktree convention #401

Description

@kyle-sexton

Summary

Retire the stale worktree convention doc ~/.claude/docs/ghq-layout-sibling-pr-worktrees.md (lives in the dotfiles/chezmoi repo, materialized at C:\Users\<user>\.claude\docs\ghq-layout-sibling-pr-worktrees.md). It prescribes a sibling-at-ghq-level worktree policy that the tooling has already abandoned and that actively pollutes ghq list (verified). The living convention should be owned by the plugin's worktree setup skill (epic), not a drift-prone prose doc.

Why retire (not rewrite)

  • The doc's headline policy (<canonical>-pr-<number> siblings under the ghq tree) is the exact thing that creates phantom ghq list entries — contradicting one-folder-per-repo. It is stale/wrong, not merely outdated.
  • Over-documentation of behavior that should be discoverable from code/skill output is maintenance debt prone to drift. The setup skill (epic) emits the per-tool map + exemptions as output; that is the SSOT.

Guard before deletion (do NOT drop load-bearing content)

The doc also carries the babysit worktree exemption policy (Codex-home root under $CODEX_HOME/.codex/worktrees/babysit-prs/...; "never globally prune open babysit worktrees"; lease-scoped cleanup). Before deleting:

  • Confirm this babysit policy is fully captured in the plugin (e.g. plugins/source-control/skills/babysit-prs/**babysit_worktree_root config + reference/worktrees). If any of it lives only in the dotfiles doc, migrate it into the plugin first (point-don't-copy: it should live in one place — the plugin — anyway).

Actions

  • Verify/migrate the babysit exemption content into the plugin.
  • Remove the doc from the dotfiles/chezmoi source (follow-up change in the dotfiles repo — cross-repo).
  • Remove the doc's pointer from the user's CLAUDE.md "Reference docs" list (dotfiles repo).
  • Ensure the plugin worktree setup skill (epic) is the discoverable replacement.

Notes

Cross-repo: the physical deletion + CLAUDE.md pointer removal happen in the dotfiles repo; this issue tracks the plugin-side ownership + the coordination so nothing is dropped.

Part of

Epic #398.

Metadata

Metadata

Assignees

Labels

needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.priority: lowNice-to-have, cosmetic, or speculative; opportunistic.status: readyTriaged, unblocked, and fully specified; eligible to pick up.

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions