From 6a8b4b0ecf9f0b6690ecd5ac9168caa08e8d6a82 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 9 Jun 2026 13:25:27 +0000 Subject: [PATCH] chore: promote CHANGELOG for v1.4.2 --- .changeset/921-922-orchestrators-no-fork.md | 5 ----- .changeset/925-context-monitor-hook-event-name.md | 5 ----- CHANGELOG.md | 7 +++++++ 3 files changed, 7 insertions(+), 10 deletions(-) delete mode 100644 .changeset/921-922-orchestrators-no-fork.md delete mode 100644 .changeset/925-context-monitor-hook-event-name.md diff --git a/.changeset/921-922-orchestrators-no-fork.md b/.changeset/921-922-orchestrators-no-fork.md deleted file mode 100644 index 92e481ef7..000000000 --- a/.changeset/921-922-orchestrators-no-fork.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -type: Fixed -pr: 921 ---- -**`/gsd-plan-phase`, `/gsd-execute-phase`, `/gsd-autonomous` no longer carry `context: fork`** — these are spawning orchestrators; a forked subagent context has no `Agent` tool, preventing them from spawning the subagents they require. `effort: xhigh` is preserved. Fixes `/gsd:autonomous` halting with "running as a forked subagent" on 1.4.1 (#921). Also replaces the introspection-based Agent-availability check in `plan-phase`'s `` block with an attempt-based gate: the workflow now always attempts the `Agent()` call and only stops if a real tool-unavailable error is returned, eliminating false-negative aborts in top-level sessions (#922). diff --git a/.changeset/925-context-monitor-hook-event-name.md b/.changeset/925-context-monitor-hook-event-name.md deleted file mode 100644 index 8a3dd76d3..000000000 --- a/.changeset/925-context-monitor-hook-event-name.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -type: Fixed -pr: 926 ---- -**`gsd-context-monitor.js` now echoes the actual invoking hook event name** — instead of hardcoding `hookEventName: "PostToolUse"` (or `"AfterTool"` for Gemini), the hook reads `data.hook_event_name` from the stdin payload and falls back to the runtime heuristic only when the field is absent or blank; this fixes Claude Code rejecting hook output with `"expected Stop but got PostToolUse"` when the monitor is invoked by the Stop, SubagentStop, or PreCompact hooks registered in PR #821. (#925) diff --git a/CHANGELOG.md b/CHANGELOG.md index 29f46861b..8d1fbb669 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,13 @@ Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). ## [Unreleased] +## [1.4.2] - 2026-06-09 + +### Fixed + +- **`/gsd-plan-phase`, `/gsd-execute-phase`, `/gsd-autonomous` no longer carry `context: fork`** — these are spawning orchestrators; a forked subagent context has no `Agent` tool, preventing them from spawning the subagents they require. `effort: xhigh` is preserved. Fixes `/gsd:autonomous` halting with "running as a forked subagent" on 1.4.1 (#921). Also replaces the introspection-based Agent-availability check in `plan-phase`'s `` block with an attempt-based gate: the workflow now always attempts the `Agent()` call and only stops if a real tool-unavailable error is returned, eliminating false-negative aborts in top-level sessions (#922). (#921) +- **`gsd-context-monitor.js` now echoes the actual invoking hook event name** — instead of hardcoding `hookEventName: "PostToolUse"` (or `"AfterTool"` for Gemini), the hook reads `data.hook_event_name` from the stdin payload and falls back to the runtime heuristic only when the field is absent or blank; this fixes Claude Code rejecting hook output with `"expected Stop but got PostToolUse"` when the monitor is invoked by the Stop, SubagentStop, or PreCompact hooks registered in PR #821. (#925) (#926) + ## [1.4.1] - 2026-06-09 ### Changed