Skip to content

Phase 3 tells every row in four beats, and the ledger runs once per row - #302

Open
sandeep-agami wants to merge 2 commits into
ACE-121-reconcile-plain-languagefrom
ACE-122-reconcile-four-beats
Open

sandeep-agami wants to merge 2 commits into
ACE-121-reconcile-plain-languagefrom
ACE-122-reconcile-four-beats

Conversation

@sandeep-agami

@sandeep-agami sandeep-agami commented Sep 13, 2026

Copy link
Copy Markdown
Collaborator

Spec: ACE-122 (feature reconcile-evidence, brief F10)

Stacked on #300 (above #299, #298, #291, #290, #289, #288). Base is ACE-121-reconcile-plain-language. Merge the seven below it first, then retarget this to main. Do not merge without manual review.

Summary

Phase 3 presented in machinery order: summary, mismatches, your statements, errors, matches, the offer. The reader's order is four beats: how we read and checked your input; what agami did with the question and what it answered; how it got there; what to change on whichever side the evidence points, or what to keep when it already matches. Everything the beats need was already computed; this changes what is read first.

What changed

  • Phase 3 opens by naming the four beats and where each comes from: Phase 1 and the ledger and the fit reading for beat 1; Phase 2b for beat 2; the receipt, the differing claim and the semantic model's own words for beat 3; save-correction, the person's query, the question, or 3e's offer for beat 4.
  • 3a.5, every row in four beats, sits between the summary and the tables: four short paragraphs per row in the words of shared/plain-language.md, with a worked block. Beat 4 names the side and never asks anything per row; keep is 3e's one offer for the batch.
  • 3b to 3f keep their headings, first fences and pinned text; 3e opens with one sentence saying it is beat 4's keep half. tests/test_ah111_reconcile_promotion_skill.py passes untouched.
  • The ledger runs once per row, in 2e after the comparison, with --with-claims when both statements exist and without when agami's run failed. 1.5e, statement-check.md and part-ledger.md say so; no sentence asks for a second run.

Verification

Prose only. Pins in tests/test_reconcile_learning_loop_skill.py cover the opener's beats, 3a.5's position and its four lines, the 3e sentence, and the one-run wording in the skill and both references. Prose pins and the pinned suites: 102 passed.

Review round 4

One correction from a panel pass: the 3a.5 example wrote a dropped-rows count with a thousands separator the code does not emit; it now quotes the note as written, including the sentence naming the side the probe did not count.

Rebase note (2026-09-13). Replayed onto main at 99e44a8 with every branch below it; content unchanged, force-pushed with lease.

🤖 Generated with Claude Code

sandeep-agami and others added 2 commits September 13, 2026 16:33
What reconcile is for, given any input: how we read and checked it; what agami did with the
question and answered; how it got there; what to change on whichever side the evidence points, or
what to keep when it already matches. Phase 3 now opens by naming the four beats and where each
comes from, and 3a.5 tells every row in them, right after the summary. The tables (3b to 3d) and the
one offer (3e) keep their exact text as the inventories the beats draw from; the offer is beat 4's
keep half, made once for the batch. The ledger runs once per row, in 2e after the comparison, with
the claims when both statements exist; 1.5e, statement-check.md and part-ledger.md say so, and no
sentence asks for a second run.

Spec: ACE-122

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Fourth review round: no thousands separator, and the sentence naming the side that was not counted.

Spec: ACE-122

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@sandeep-agami
sandeep-agami force-pushed the ACE-121-reconcile-plain-language branch from bc4d01d to effd5c2 Compare September 13, 2026 23:36
@sandeep-agami
sandeep-agami force-pushed the ACE-122-reconcile-four-beats branch from 735c787 to edecf92 Compare September 13, 2026 23:36
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