Skip to content

story-152: Every finding routed to the story is fixed, filed or reported, and the run says which - #308

Merged
jerodw merged 3 commits into
mainfrom
story/story-152
Sep 16, 2026
Merged

jerodw merged 3 commits into
mainfrom
story/story-152

Conversation

@jerodw

@jerodw jerodw commented Sep 16, 2026

Copy link
Copy Markdown
Owner

story-147 stopped the inspection filing a brief about a story's own change and routed the finding to that story's verifier instead. Where the verifier acted, that was the whole point. Where it passed over one — which its prompt explicitly permits, and rightly — the finding had nowhere left to go: written to a run-directory artifact, read by nothing after the verdict, and never filed. The mechanism had traded a growing backlog for a silent drop.

story-151 is the completed instance, and it lost two rather than one. Its inspection routed a finding on each attempt — git-pointer-satisfies-the-history-assertion, then copied-repository-shares-its-git-directory, the second a real defect about the very change that story made. Both verdicts recorded passed, zero blocking issues, zero correctable findings. The run completed with 0 filed. Recovering them took reading two JSON files by hand.

Every routed finding is accounted for

The verifier names a finding's slug in the location of any blocking issue or correctable finding it raises from one. After the verdict, every routed finding whose slug no entry names is filed as a brief.

The bias is toward over-filing rather than loss, and the prompt says so where the verifier reads it: declining a finding is still right and now sends it to the backlog instead of deleting it, and a finding acted on without its slug named is filed too — as a duplicate a person closes, which is the cheaper mistake of the two.

Both verifier prompts carry it, so the refactor workflow is not left behind.

The summary stopped claiming an outcome it could not know

answered by the story: N became routed to this story: N. The line is composed when the inspection finishes, before the verifier has read anything, so routing was the only thing true at that moment — the old wording described a destination in the tense of a thing already done. What became of them is written afterwards, as its own record carrying routed and acted_on.

A re-entry says how much of it is the Inspector's

A correction pass or retry raised from routed findings now says how many of the findings it carries are among them. Before, a pass spent on the Inspector's reading and one spent on the verifier's own read identically, and telling them apart meant opening the artifact and the verdict and comparing.

A note on this run

Its own events read routed to this story: 2 with 0 filed on both attempts, and its final verdict records zero blocking and zero correctable. Those four findings went the old way, because the harness executing a run is the one the developer invoked rather than the one on the branch. This is the last run that can happen to.

Planned from the brief filed under 302.

🤖 Generated with Claude Code

https://claude.ai/code/session_01NJzpgnY9aJ7K2godyjrJJR

@jerodw
jerodw merged commit 93a6365 into main Sep 16, 2026
3 checks passed
@jerodw
jerodw deleted the story/story-152 branch September 16, 2026 17:58
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