Repository navigation
Have replan requests report findings, not plans - #107
Merged
Merged
Conversation
A node sees only the goal, its prompt, and its direct predecessors, so it
cannot judge which planned work its finding affects. request_replan now
asks for the finding and how it differs from what the prompt assumed,
drops the trigger that needed knowledge of other nodes ("work outside
your prompt"), and tells the node that the parent maps findings to the
plan. Parent guidance says the same and suggests naming related work in
a node's prompt when its findings could affect other branches. Docs use
examples a node can actually observe.
Epsirom
enabled auto-merge (squash)
October 20, 2026 15:24
Epsirom
added a commit
that referenced
this pull request
Oct 20, 2026
## Change Prepare the coordinated Braid 0.5.1 release for core, Pi, and DSH. - Running execute and decision nodes can report findings and ask the parent agent to replan through `request.requestReplan` / the `request_replan` tool ([#106](#106), [#107](#107), closes [#105](#105)). - Core exports `BRAID_VERSION`; Pi and DSH fail fast with upgrade/restart guidance on a mismatched core ([#103](#103), closes [#102](#102)). - Pi/DSH guidance leaves time and tool budgets unset unless the user asks ([#104](#104)). This is a **patch** release: the new `replan_requested` event and optional `replan`/`requestReplan` fields are additions covered by the versioning policy ("New optional fields … may ship in a patch"; consumers provide a fallback for new event types). No migration from 0.5.0 is required. Updates in this PR: - All three package versions, both integrations' exact core dependencies, `BRAID_VERSION`, both `REQUIRED_CORE_VERSION` constants, and the workspace lockfile. - CHANGELOG: dated 0.5.1 entry with PR links and author credit. - README / Pi / DSH README: migration links pinned to v0.5.1; previous-release links now point to v0.5.0. - ROADMAP: release status and 0.5 implemented changes. #103, #104, #106, and #107 are the only PRs since v0.5.0, all by @Epsirom, who contributed long before v0.5.0. There are no first-time human contributors. Pi 1.2.0 and DSH 0.2.0-rc.2 remain the tested hosts. ## Validation - `npm ci` on Node 25.9: passed. - `npm run audit:dependencies`: no known vulnerabilities, including development dependencies. - `RELEASE_TAG=v0.5.1 node scripts/check-release.mjs`: passed. - `git diff --check`: passed. - Full `npm run verify`: 269 core, 178 Pi, and 61 DSH tests passed (508 total), all type checks, offline examples, and isolated package installation checks passed (47 core, 19 Pi, 38 DSH packed files).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Change
Follow-up to #106 (#105).
A node sees only the goal, its own prompt, and its direct predecessors' results. It does not see its successors, siblings, or the rest of the graph. The
request_replanwording from #106 still asked it to judge the plan, for example to call it when "substantial work outside your prompt is needed", which it cannot tell: that work may already be planned for another node. The result would be requests about work that is already covered.A node can reliably tell when what it found differs from what its own prompt assumed. This PR makes the tool about reporting that finding, and leaves mapping it to the plan to the parent agent.
Worker side (
src/replan-tools.ts, shared by Pi and DSH)reasonasks for what was found, how it differs from what the prompt assumed, and what it affects.decidenote, and suggestion limits from Let a running node ask the parent agent to replan #106 are unchanged.Parent side (Pi and DSH guidance and replan reminders)
Docs:
docs/execution-control.mdand the Pi and DSH READMEs now use examples a node can observe. The previous example ("fix-b is unnecessary", withremoveNodeIds: ["fix-b"]) assumed the node knew about a sibling. The new example suggests adding a node after the caller. The CHANGELOG entry for this unreleased feature still holds, so it is unchanged.A read-only graph view for nodes is not part of this PR. I added the reasoning to #66, where editing a node's own downstream needs such a view anyway: #66 (comment)
Validation
npm run verify: 269 core, 178 Pi, and 61 DSH tests passed, with all type checks. Its package smoke step hung once (atscchild sleeping with no CPU); run again on its own,npm run test:packagepassed in about 30 seconds.Updated assertions: the tool description says "report what you found, not a new plan" and no longer mentions work outside the prompt; the worker prompt line says the node cannot see the rest of the graph; the Pi and DSH reminders tell the parent to decide which planned work a finding affects.
Relevant tests and type checks pass.
User-facing docs and changelog are updated where needed.
Breaking changes, if any, include migration guidance. (None.)