Skip to content

fix(decisions): a later run that covers a failure's files closes it (0.24.1) - #61

Merged
taylorg009 merged 2 commits into
mainfrom
fix/decision-covering-pass
Oct 22, 2026
Merged

taylorg009 merged 2 commits into
mainfrom
fix/decision-covering-pass

Conversation

@taylorg009

Copy link
Copy Markdown
Collaborator

Why

On a real web-app PR, the agent's new tests failed in two runs that named the files, then passed in a run over their folder. Blastline 0.24.0 keyed the broader run differently, so it only stopped the failures from being called the last word, and How this PR was decided came out empty.

What changes

decisionsIn keeps every passing run with its targets. A failure is reported as "failed, then passed" when it's followed by a passing run of the same runner that covers its files: the whole suite (no targets), the same files, or a folder holding them. A later pass on unrelated files still closes nothing and keeps the failure from being called the last word, as before.

Evidence

  • That PR: two rows now, "failed, then passed" for each failing run. Before, there were none.
  • Replay on 101 checkpointed web-app commits (vs 0.24.0): 22 → 23 briefs with a decision. One other commit gains a line, checked against its transcript: the wizard test failed (1 failed | 56 passed), then passed in a later run that named it (104 passed).
  • Tests: 448 pass. New cases cover a whole-suite pass, a folder pass and an unrelated-file pass.

🤖 Generated with Claude Code

…0.24.1)

A failing run naming test files, followed by a passing run of the same
runner over the whole suite, the same files, or a folder holding them,
reads "failed, then passed". The broader pass was keyed differently and
only suppressed the failure, so the row vanished.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

PR brief: 2 agent commits · 8 of 25 test files reach this diff

Run at least these. Selection is a safe superset; it never marks a test safe to skip.

Summary PR #61 at ca6cf7f
Changed 4 files: 2 mapped to 3 symbols, 2 ignored by policy
Tests reached 8 of 25 ▮▮▮▮▮▮▯▯▯▯▯▯▯▯▯▯▯▯▯▯ 32% of the suite
Downstream code 9 files, 24 dependents · review effort high
Intent 2 of 2 commits attributed by trailer (claude-code)
Reviewed by no reviewer other than the author (taylorg009) so far · the 11 changed and reached files were last changed by Taylor Gagne (59 commits in 9 files), Taylor (18 commits in 9 files) · Taylor has no prior commit in 2 of the 11 files this change touches or reaches: src/checkpoint-write.ts, src/owners.ts
Symbols 2 changed, 1 added within the diff
Since push bba28f7 1 new commit, 0 changed files, 0 tests reached
Compared against base 8cf4e60

What each commit did

Commit Intent Files Reaches Ran before push
bba28f7 fix(decisions): a later run that covers a failure's files c… claude-code by Co-authored-by 4 files 9 files, 8 tests
ca6cf7f fix(decisions): narrowed or relocated passes close nothing claude-code by Co-authored-by 3 files 9 files, 8 tests

Claims checked

  • consistent: PR body names 1 thing in code font. every one is a changed symbol, a changed path, or in a changed line.
  • consistent: the narrative names the changed code. all 1 file with symbol changes are named.

What each changed file reaches

Read Changed file Change Reaches Tests
1 decisions.ts decisionsIn changed, testRun changed, coverageOf added 9 files 8
2 decisions.test.ts test code, selected directly 1
2 files under the repo root ignored by policy 0

Paths above are under src/ unless shown in full.

Tests to run (8)

Blast radius by changed file: 24 dependents
  • decisions.ts reaches buildBrief (brief.ts, imports it), checkpoint-write.ts (imports sessions.ts, which imports checkpoint.ts, which imports it), checkpointFor (checkpoint.ts, calls decisionsIn), cli.ts (imports checkpoint.ts, which imports decisionsIn), comment.ts (imports it), index.ts (re-exports checkpoint.ts, which imports decisionsIn), +3 files

blastline 0.24.1. Selection is advisory unless your workflow gates on it. How selection works. Graph 22a8f48. change-context budget 25715: omitted 6 impacts, 639 context entries (truncated); symbols are classified within the diff only. Intent: 0 of 2 commits, 2 attributed by trailer.

Review of #61: a pass covers everything only with no argument but flags
that report, time or schedule; any selecting flag or bare name narrows
it to nothing, also under the same key. Paths count only from the same
cd as the failure, by equality or folder prefix. A pass in the same
record keeps a failure from being called its last run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@taylorg009
taylorg009 marked this pull request as ready for review October 22, 2026 02:54
@taylorg009
taylorg009 merged commit 83b58f0 into main Oct 22, 2026
5 checks passed
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