Skip to content

fix(round-4): review findings — backfill keying, ratchet evasion, pull guard - #523

Merged
leeovery merged 1 commit into
mainfrom
fix/round-4-review-findings
Jul 23, 2026
Merged

fix(round-4): review findings — backfill keying, ratchet evasion, pull guard#523
leeovery merged 1 commit into
mainfrom
fix/round-4-review-findings

Conversation

@leeovery

@leeovery leeovery commented Jul 23, 2026

Copy link
Copy Markdown
Owner

Summary

  • Round-4 fresh-eyes review of the unreviewed tail (feat(scoping): promotion routes through first-phase choice + bridge #515fix(discovery): first-written briefs join the full brief lifecycle #521): 3 minors, 0 majors, all fixed here.
  • Backfill keys on the pointer, not the file (brief-synthesis.md): triggering on "had no brief before this write" missed briefs orphaned by a crash between the file write and the un-committed apply, 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 lacks brief_path" (one get per written topic) self-heals both classes in-flow — no migration needed.
  • Ratchet evasion closed: the first-phase menu placeholder wrapped across two lines, invisible to check 13's single-line classifier — in both complexity-check.md and its sibling first-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).
  • pull joins the shadow-field guard (fields.cjs): a typo'd phase-headed pull answered ok:true (no-op) where set/push refuse loudly; now refused identically, guard comment describes the real coverage, refusal pinned in the fields suite.

Test plan

  • npm test 1590 pass (incl. the simulation suite), test:cli, typecheck, conventions lint green.

🤖 Generated with Claude Code

Stack

  1. feat(engine): discovery-map add-batch — the harvest persists in one call (D7) #505
  2. feat(engine): manifest apply — batched set/delete across one work unit (D7) #506
  3. refactor(prose): task-map family folds onto existing batch forms (D7, stage 3) #507
  4. feat(engine): manifest set — two grammars, never mixed #508
  5. refactor(prose): dump/read folds — subtree gets replace per-topic loops (D7, stage 5) #509
  6. feat(engine): commit --plan — plan storage stages from recorded state (D7, stage 6) #510
  7. fix: batching-stack review round — re-resolve rewired, guards symmetric, hardening pinned #512
  8. fix: deep-dive round 2 — backbone rule flipped, pre-upgrade paths routed, flow bugs closed #513
  9. fix(review-r3): engine hardening + crash-resume seams #514
  10. feat(scoping): promotion routes through first-phase choice + bridge #515
  11. fix(spec): pin the bugfix source name to the topic #516
  12. fix(skills): gate-skip sentence accurate in gate-less phases #517
  13. fix(review-entry): name the real upstream — specification and plan #518
  14. fix(shared): strip triage-landing's unreachable superseded-research arm #519
  15. feat(engine): refuse work-unit-level fields that shadow the phases tree #520
  16. fix(discovery): first-written briefs join the full brief lifecycle #521
  17. test(sim): pipeline simulation — engine driven end-to-end as a black box #522
  18. fix(round-4): review findings — backfill keying, ratchet evasion, pull guard #523 👈 current

@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 9bad6f4 to 4dee184 Compare July 23, 2026 12:29
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from a7a8903 to 5621d00 Compare July 23, 2026 12:29
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 4dee184 to 1a6fee3 Compare July 23, 2026 12:30
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 5621d00 to 71413dc Compare July 23, 2026 12:30
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 1a6fee3 to cd7d65f Compare July 23, 2026 12:31
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 71413dc to 1e57f1e Compare July 23, 2026 12:31
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from cd7d65f to 3f82897 Compare July 23, 2026 12:32
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 1e57f1e to 67d3c55 Compare July 23, 2026 12:32
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 3f82897 to 6904937 Compare July 23, 2026 12:33
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 67d3c55 to 5d38053 Compare July 23, 2026 12:33
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 6904937 to b0aeb1b Compare July 23, 2026 12:33
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 5d38053 to 6931340 Compare July 23, 2026 12:34
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from b0aeb1b to 156b9a8 Compare July 23, 2026 12:34
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 6931340 to 8210dae Compare July 23, 2026 12:34
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 156b9a8 to 53df927 Compare July 23, 2026 12:35
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 8210dae to e4a9310 Compare July 23, 2026 12:35
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 53df927 to f3da7dd Compare July 23, 2026 12:35
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from e4a9310 to 24b401f Compare July 23, 2026 12:35
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from f3da7dd to 5dc5ba8 Compare July 23, 2026 12:36
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 24b401f to 0c80511 Compare July 23, 2026 12:36
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 5dc5ba8 to f29e483 Compare July 23, 2026 12:36
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 0c80511 to 53230ee Compare July 23, 2026 12:37
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from f29e483 to 76aedcf Compare July 23, 2026 12:37
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 53230ee to db7ba4c Compare July 23, 2026 12:37
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 76aedcf to db9241c Compare July 23, 2026 12:37
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from db7ba4c to 124a15d Compare July 23, 2026 12:37
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from db9241c to 5acd345 Compare July 23, 2026 12:38
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 124a15d to 8e268e7 Compare July 23, 2026 12:38
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 5acd345 to 51c0439 Compare July 23, 2026 12:38
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 8e268e7 to 480bb9a Compare July 23, 2026 12:38
@leeovery
leeovery force-pushed the test/pipeline-simulation branch from 51c0439 to 95387dc Compare July 23, 2026 12:38
@leeovery
leeovery force-pushed the fix/round-4-review-findings branch from 480bb9a to 9572475 Compare July 23, 2026 12:38
@leeovery
leeovery changed the base branch from test/pipeline-simulation to main July 23, 2026 12:38
… 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
leeovery force-pushed the fix/round-4-review-findings branch from 9572475 to 1df2ec3 Compare July 23, 2026 12:39
@leeovery
leeovery merged commit faad357 into main Jul 23, 2026
@leeovery
leeovery deleted the fix/round-4-review-findings branch July 23, 2026 12:43
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