Repository navigation
Guide agents to set closesCycle, show which choice a node waits for, and open the Pi panel on the timeline - #132
Merged
Merged
Conversation
…and open the Pi panel on the timeline - Pi and DSH tool descriptions explain, with the impl/merge/review example, when a choice edge back needs closesCycle: true, and to set it at submission. The round-start sentence is reworded. - New WaitReason "choice": a pending instance whose inputs are all choice edges waits for a decision to choose it. Pi and DSH status show it as "runs only after <decision> chooses <choice>". - Waiting reminders name the executions a job pause suspended with that pause, so the cause appears once, and say "the job's <limit> limit". - The Pi panel opens in the timeline view; g switches to the live view.
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
Part of RSI Mode (#118). Follows #131, from a second Pi run of the task-queue graph (
impl,tests,docs→merge→review, withreview -> impl [choice=again]). The cycle notice warned thatimplwould not run in the first round. The agent passed the warning on but did not setclosesCycle, soimpl@1was skipped andmergewrote the implementation itself. Two status texts also misled the agent.braiddescription and the DSHedgesdescription now cover this pattern. When an outside edge enters the cycle at another node, rounds start there, and a node whose only input is a choice edge runs only after the decision chooses it. That is right for a fix step, but if the node should also run in the first round, write{"from":"review","to":"impl","choice":"again","closesCycle":true}and set it at submission. The round-start sentence Let an edge pick where a cycle's rounds start, and warn about nodes that wait for a choice #131 added read badly; it now lists the order: theclosesCycletarget, else the outside entry, else the node listed first. TheclosesCyclefield descriptions say when to set it.WaitReason"choice". A pending instance whose non-closing inputs are all choice edges, while those inputs still wait, reportschoiceinstead ofpredecessors,stale, orhold. Pi and DSHbraid_statusshow it aswaiting: runs only after review chooses again. Before, the agent saw "an input has not run yet" on a node it believed was a root.It waits on suspended node "merge" execution merge@2 (its graphTimeoutMs limit); the job pause (by its graphTimeoutMs limit).The agent read "its" as a per-node limit. A job pause now names the executions it suspended, and limits are called "the job's":It waits on the job pause (by the job's graphTimeoutMs limit), which suspended node "merge" execution merge@2.gswitches to the live view, as before.Docs:
docs/execution-control.md(wait reasons, cycles), the Pi README (views, wait reasons), anddocs/compatibility.md.Compatibility: code that handles every
WaitReasonneeds a case forchoice;compatibility.mdnotes it. The panel views and the cycle features are unreleased since 0.5.Validation
npm run verify:checkspasses: core 313/313, Pi 197/197, DSH 71/71, plus type checks and examples.Core: in the task-queue graph,
impl@1waits withchoice, and withclosesCycleit starts in the first round. In the existingcheck -> end [done]loop,endnow reportschoiceinstead ofstale.Pi and DSH: full status and focused status show "runs only after review chooses again". A reminder for a graph-timeout pause names the suspended execution once.
Pi panel tests now start from the timeline; the
ground trip through the live view is still covered.Relevant tests and type checks pass.
User-facing docs are updated where needed.
The title reads as a release-note line and the category label is correct
(see release notes).
Breaking changes, if any, include migration guidance in the docs.
For release PRs:
.github/upgrade-notes.mdlists what users must do to upgrade.