Repository navigation
Close yolo, contract, and helper gaps from #78 - #80
Merged
DocksDocks merged 16 commits intoOct 19, 2026
Merged
Conversation
A drafted plan could move to planned or ongoing while its Research section still held the placeholder. The helper only printed advice after the write. Now status planned and status ongoing refuse until the trimmed Research section is filled. The check compares the whole section, so Research prose that quotes the placeholder is not unfilled. Refs #78
…ceeds edit refreshed the .origin sidecar before it wrote the issue body. When gh issue edit failed, the sidecar already named a body that GitHub did not have, so a retry with the same file refused as a stale export. Now edit refreshes the sidecar only after the remote write succeeds. Refs #78
…s chain Two steps that list the same file and have no Depends order can run in parallel and collide. The helper did not read the Files cell. Now it prints advice for each pair of steps that share an exact path, after it trims each entry and removes code marks, unless a Depends chain links the two steps. Advice, not a refusal: Files cells can hold folders and globs, which exact comparison cannot judge. Refs #78
A plan-review pass covers the body that the reviewer read. An edit after the pass could change Goal, Research, Steps, Acceptance, or Do not touch, and show still reported plan=pass. Now edit prints advice that names the changed sections when a trusted plan pass exists. Edits to Verification Results or Open questions print no such advice. Refs #78
…review rules The contract did not say when a passed plan needs a new review, how to recover from a failed GitHub call, what the Files cell holds, or that Acceptance must cover the checks that repository instructions require. It now states these rules, the Research gate on planned and ongoing, the new advice, and a pointer to the yolo rule for existing plans. Refs #78
A plan could pass review without the check that the repository instructions require for the files it changes. Both plan-reviewer surfaces now report a goal_fit finding for that gap. The review block stays the same in both files. Refs #78
Two yolo runs found gaps in the yolo skill: it always drafted a new plan, had no rule for incomplete requests, required checks, baseline failures, red baselines, self-review records, or commit timing, did not clean up a user checkout after the merge, and its run summary hid failures. The skill now has rules for each gap. It applies code-clarity to every change of code, tests, comments, or error messages. The run summary template moves to references/run-summary.md. Refs #78
The full gate formats scripts/tests/plan-cli.mjs; the plugin gate does not check that file. Refs #78
The yolo Red baseline rule required an assertion failure, so a trial run added an empty stub to avoid an import failure. tdd-workflow names that stub as the wrong fix: a missing symbol is the failing baseline. The rule now accepts a missing export or symbol that the step adds, and says how to record it. Refs #78
A fresh reader could not tell whether the missing-export record replaces the test counts or follows them. It replaces the counts for that file. Refs #78
Landing wrote the run summary before the pull request and its checks existed, so trial runs had to invent values and an update step. Landing now writes pending values first, updates the body with gh pr edit after the checks, and updates an open pull request instead of creating one. Refs #78
Engineering standards gave the pull request description to commit-discipline, and Landing gave it to the run summary. A trial run had to choose. The run summary is now the whole description; commit-discipline owns the commits. Refs #78
The Commits and baseline-check rules asked for a temporary worktree with no path, and a trial run put one inside the review scratch directory. The rules now use the agent-worktrees root that the contract already uses for yolo worktrees, outside /tmp and .git. Refs #78
The Research Done when needed status planned to succeed, but the helper refuses planned once work has started. A trial run adopted an ongoing plan and could not meet it. The Done when now also accepts an adopted plan that already reads planned or ongoing. Refs #78
A fresh reader found that an adopted ongoing plan never meets the Draft Done when, so "continue at the first phase whose Done when is not met" pointed at Draft. The Done when now names the adopted case. Refs #78
A fresh reader noted that the baseline check could run on a stale origin/<default>, because the only fetch is in Landing. Refs #78
This was referenced Oct 19, 2026
DocksDocks
added a commit
that referenced
this pull request
Oct 19, 2026
…after-80 Close three text gaps left after #80
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.
What and why
Two yolo runs in another repository found 13 gaps in the plan-lifecycle plugin (#78). This pull request closes them, and it makes the yolo skill apply
code-clarityto every change of code, tests, comments, or error messages.Helper (
plan.mjs):status plannedandstatus ongoingrefuse while Research is empty or only_Not researched yet._(gap 11). The check compares the whole section, so Research prose that quotes the placeholder does not trigger it. The old substring test printed a falseResearch is not filled after drafting.advice for plan Close yolo, contract, and helper gaps from #78 #79 itself.editrefreshes the.originsidecar only after the remote write succeeds, so a retry of the same file after a failedgh issue editworks (gap 12).editthat changes planned work after a trusted plan pass (gap 2).Text:
goal_fitfinding when Acceptance lacks a check that the repository instructions require. The review blocks stay identical.yolo/references/run-summary.mdand gains a reviewed head and a Limits and failures section.A trial in a disposable private repository ran three yolo runs with the branch files. It found five more gaps (14-18), and steps 12-16 fix them: the red baseline now agrees with
tdd-workflow, the pull request body gets its final values after checks, the run summary is the whole description, temporary check worktrees have a path, and an adopted ongoing plan meets the Draft and Research Done when. The evidence table is in the Verification Results of #79.Review order
plugins/plan-lifecycle/skills/productivity/plan-manager/scripts/plan.mjsandscripts/tests/plan-cli.mjs(commits 1-4 and the format commit).plugins/plan-lifecycle/skills/productivity/plan-manager/references/plan-contract.md.plugins/plan-lifecycle/agents/plan-reviewer.mdandplugins/plan-lifecycle/skills/productivity/plan-reviewer/SKILL.md.plugins/plan-lifecycle/skills/productivity/yolo/SKILL.mdandyolo/references/run-summary.md.Verification
node scripts/tests/plan-cli.mjs: PASSED; the new cases are research gate, edit retry, shared files advice, and re-review advice. Each new case failed on an assertion before its fix.node scripts/ci.mjs --plugin plan-lifecyclepassed on each commit in a clean worktree. Fullnode scripts/ci.mjspassed on the reviewed head.status plannedwith placeholder Research and printed the shared-files and re-review advice.scripts/release.mjsbumps them after the merge.Closes #79
Closes #78