Skip to content

fix: resolve the three v0.9.18-deferred review items (v0.9.19)#58

Merged
ikeikeikeike merged 1 commit into
mainfrom
fix/review-followups-v0919
Jun 30, 2026
Merged

fix: resolve the three v0.9.18-deferred review items (v0.9.19)#58
ikeikeikeike merged 1 commit into
mainfrom
fix/review-followups-v0919

Conversation

@ikeikeikeike

Copy link
Copy Markdown
Member

Resolves the three items I deferred from the v0.9.18 review (#48#54) — no carryover.

  • demotion (H2 residual): narrow the correction-marker set to assistant-correction words (wrong/mistake/incorrect/undo/revert/broke/broken), dropping the task-dominant error/fix/correct. With v0.9.18's prompt-scope + whole-word matching, a task prompt ("fix the bug") no longer demotes.
  • create (fix(observer,create): pid-robust observer stop (#45) + loud/strict create failures #47): renderEnvLocals is best-effort like runPostCreateHooks — a bad env_local template is recorded + surfaced in the failure summary instead of aborting before the worktree-path stdout emit (the WorktreeCreate cd contract) + --strict accounting.
  • observer (L4): the run-once pass runs in its own process group (Setpgid); the daemon kills the whole group on cancel, so a claude --print grandchild is reaped on shutdown instead of orphaning to init.

Tests: word-boundary cases (task prompts don't demote, "you broke it" does), renderEnvLocals best-effort + skip/empty, process-group reaps a grandchild. Full go test ./... (incl conformance) + golangci-lint (0) + gofumpt green.

No carryover — the deferred review findings are now fixed.

- demotion (H2 residual): narrow the correction-marker set to words that read
  as a correction of the assistant (wrong/mistake/incorrect/undo/revert/
  broke/broken), dropping the task-dominant error/fix/correct. With v0.9.18's
  prompt-scope + whole-word matching, an ordinary task prompt ("fix the bug")
  no longer demotes.
- create (#47): renderEnvLocals is best-effort like runPostCreateHooks — a bad
  env_local template is recorded + surfaced in the failure summary instead of
  aborting before the worktree-path stdout emit (the WorktreeCreate cd
  contract) and --strict accounting.
- observer (L4): run-once runs in its own process group (Setpgid); the daemon
  kills the whole group on cancel, so a `claude --print` grandchild is reaped
  on shutdown instead of orphaning to init.

Tests: session word-boundary cases (task prompts don't demote; "you broke it"
does), renderEnvLocals best-effort + skip/empty, process-group reaps a
grandchild. Full `go test ./...` (incl conformance) + golangci-lint (0) +
gofumpt green.
@ikeikeikeike
ikeikeikeike merged commit 7743e27 into main Jun 30, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant