fix(round-4): review findings — backfill keying, ratchet evasion, pull guard - #523
Merged
Conversation
This was referenced Jul 23, 2026
Merged
Merged
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:29
9bad6f4 to
4dee184
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:29
a7a8903 to
5621d00
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:30
4dee184 to
1a6fee3
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:30
5621d00 to
71413dc
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:31
1a6fee3 to
cd7d65f
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:31
71413dc to
1e57f1e
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:32
cd7d65f to
3f82897
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:32
1e57f1e to
67d3c55
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:33
3f82897 to
6904937
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:33
67d3c55 to
5d38053
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:33
6904937 to
b0aeb1b
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:34
5d38053 to
6931340
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:34
b0aeb1b to
156b9a8
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:34
6931340 to
8210dae
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:35
156b9a8 to
53df927
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:35
8210dae to
e4a9310
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:35
53df927 to
f3da7dd
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:35
e4a9310 to
24b401f
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:36
f3da7dd to
5dc5ba8
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:36
24b401f to
0c80511
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:36
5dc5ba8 to
f29e483
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:37
0c80511 to
53230ee
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:37
f29e483 to
76aedcf
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:37
53230ee to
db7ba4c
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:37
76aedcf to
db9241c
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:37
db7ba4c to
124a15d
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:38
db9241c to
5acd345
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:38
124a15d to
8e268e7
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:38
5acd345 to
51c0439
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:38
8e268e7 to
480bb9a
Compare
leeovery
force-pushed
the
test/pipeline-simulation
branch
from
July 23, 2026 12:38
51c0439 to
95387dc
Compare
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:38
480bb9a to
9572475
Compare
… pull joins the guard Round-4 fresh-eyes findings: the brief pointer backfill triggered on file absence, so briefs orphaned by an interrupted harvest (or written under the pre-fix prose) never healed — it now keys on the map item lacking brief_path, which self-heals both classes with one read. The first-phase menu placeholders wrapped across two lines, evading the templated-fence ratchet's single-line classifier — un-wrapped and pinned deliberately (complexity-check 2, first-phase-routing 1). And pull, a mutation, was missing from the shadow-field guard: a typo'd phase-headed pull answered ok:true where set/push refuse — guarded, comment corrected, refusal pinned. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
leeovery
force-pushed
the
fix/round-4-review-findings
branch
from
July 23, 2026 12:39
9572475 to
1df2ec3
Compare
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.
Summary
brief-synthesis.md): triggering on "had no brief before this write" missed briefs orphaned by a crash between the file write and the un-committedapply, and every brief first-written under the pre-fix(discovery): first-written briefs join the full brief lifecycle #521 prose. Keying on "committed topic whose map item lacksbrief_path" (onegetper written topic) self-heals both classes in-flow — no migration needed.complexity-check.mdand its siblingfirst-phase-routing.md. Un-wrapped so the ratchet counts them; pinned deliberately (these menus carry a model-authored one-line read — genuinely judgment-only prose).pulljoins the shadow-field guard (fields.cjs): a typo'd phase-headedpullansweredok:true(no-op) whereset/pushrefuse loudly; now refused identically, guard comment describes the real coverage, refusal pinned in the fields suite.Test plan
npm test1590 pass (incl. the simulation suite),test:cli, typecheck, conventions lint green.🤖 Generated with Claude Code
Stack