source-control: worktree cleanup Step 4a stops processes before the 4b guards decide the worktree is kept
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
调研方向
阅读 context/cleanup.md,并追踪清理步骤及其保留/移除条件。确认这些条件、Step 4a、Workspace down、reap 和 removal 的顺序;当保留的 worktree 不会产生停止进程的副作用,且 removal 候选项遵循预期顺序时,issue 即完成。
由索引模型根据 Issue 内容生成。
描述
Problem
context/cleanup.md orders Step 4 as 4a (release OS file locks: stop build servers, worktree-rooted daemons and MCP servers) → 4b (guards: stranded work, claim/stale-lock proof) → reap → remove. So a candidate's processes are stopped before the guards decide whether it is removed at all. When a guard then keeps the worktree, its live processes are already dead.
Observed
Cross-repo cleanup of 82 candidates (WSL2, source-control 1.0.3). Candidate melodic-software-claude-code-plugins-feat-interview-web-view-review was locked by a live lane; worktree-claim.sh stale exited 1 (transcript active within 120 min), so the row was correctly kept. But Step 4a had already sent SIGTERM to that worktree's planning surface server (plugins/planning/surface/server). The owning session lost its running server with no notice.
Expected
Run every keep/remove guard first (Work verdict, dirty check, lock and worktree-claim.sh stale proof, .worktreeinclude carried-file check), and only on a row that will be removed run 4a, then the Workspace down, reap, and removal. Reorder to: guards → 4a → down → reap → remove. A row any guard keeps must have no side effects.
Related: #6007 / #6363 (reap rewrites tracked .claude/settings.json, blocking plain removal; also hit 11 times in this run) and #7308 (cross-repo cleanup).
- 主要语言
- Shell
- 星标
- 22
- 派生
- 2
- 平均合并
- 8 小时 27 分钟
- 30 天内合并 PR
- 957
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
melodic-software/claude-code-plugins 的其他 Issue
-
priority: medium
难度 2/5 1-3 小时 新手友好度 68/100
melodic-software/claude-code-plugins#7351 · 2 条评论 ·
维护者通常 1 天内回复
-
priority: medium
难度 2/5 1-3 小时 新手友好度 76/100
melodic-software/claude-code-plugins#7288 · 2 条评论 ·
维护者通常 1 天内回复
-
knowledge: docpage-digest dual verification defines no verdict vocabulary or pass/fail threshold未关闭needs-human
难度 2/5 1-3 小时 新手友好度 78/100
melodic-software/claude-code-plugins#7286 · 2 条评论 ·
维护者通常 1 天内回复
-
priority: low
难度 2/5 1-3 小时 新手友好度 76/100
melodic-software/claude-code-plugins#7282 · 2 条评论 ·
维护者通常 1 天内回复
-
needs-triage priority: medium
难度 2/5 1-3 小时 新手友好度 62/100
melodic-software/claude-code-plugins#7273 · 1 条评论 ·
维护者通常 1 天内回复
查看 melodic-software/claude-code-plugins 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 65/100
维护者通常 1 天内回复
-
Sourced-library load-guards use a top-level `return` that errors on direct execution (repo-wide)未关闭
难度 2/5 1-3 小时 新手友好度 62/100
rossoctl/automation#115 ·
维护者通常 3 天内回复
-
loongarch64: `unsupported linker arg: --no-rosegment` with rustc 1.100可能已有人在做 @monosans 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 62/100
rust-cross/cargo-zigbuild#503 ·
维护者通常 1 天内回复
-
area/CubeMaster bug needs-triage
难度 2/5 1-3 小时 新手友好度 62/100
TencentCloud/CubeSandbox#1959 ·
维护者通常 1 天内回复
-
netbox status: backlog topic: testing type: housekeeping
难度 2/5 1-3 小时 新手友好度 70/100
netbox-community/netbox#23395 ·
维护者通常 1 天内回复