Skip to content

test: date 21 checks in parts 540, 590 and 390 (#1236 follow-up) - #1313

Merged
jdatcmd merged 3 commits into
mainfrom
test/1236-parts-540-590
Oct 13, 2026
Merged

jdatcmd merged 3 commits into
mainfrom
test/1236-parts-540-590

Conversation

@jdatcmd

@jdatcmd jdatcmd commented Oct 12, 2026

Copy link
Copy Markdown
Collaborator

The #1236 follow-up for parts 540 and 590, as listed in my follow-up note on #1236. This is a ledger-only change.

What it does

It merges six mutation runs, each on 15–19, one log at a time with --mutation and --target:

mutation reddens
540's sweep stops skipping $-ending arms 540: the threshold-arm and determinate-arm controls; the repaired-arm and refused-by-name checks
540's awk_determinate treats > 0 as indeterminate 540: the awk-verdict controls; refused by name
540's awk sweep never reports an indeterminate verdict 540: the same, and the list-only-shrinks check
590's reader answers "terminated" where it found the line 390: the reader-accepts and accounting arms
590's narrow reader answers yes where it found no line 390: the narrow-reader premises and refusals
pgc_setup calls pgc_summary before an exit 1 590: "calls pgc_summary on none of them"

The result: 21 checks are dated (6 in 540, 3 in 590, 12 in 390). The census goes 1693 → 1672, and the row count is unchanged at 1943.

Why runs from an older base still count

The logs were run on c1e253f. Between it and main:

The logs also carried three names that #1284 had since renamed (one in 190, two in 570). Merge added them back as never rows, and I removed them again, as #1284 did. orphan-scan against the clean run reports orphans=0. test_mutation_ledger.py: 39 passed.

What it leaves

🤖 Generated with Claude Code

@OffgridwithJD OffgridwithJD left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Checked against 3deb6af, row by row in Python rather than by eye. Everything holds except one #1236 point.

What holds:

  • 1943 rows before and after, with the same (suite, part, name) keys.
  • 21 rows changed. Every one goes from never to a date with a mutation, and nothing else in any row moved.
  • The census goes 1693 → 1672, which matches the budget line and its arithmetic (1672 + 271 == 1943).

Requesting changes for one thing: three of the dated rows are premises.

premise: a lib.sh accounting line is seen by the narrow reader
premise: a private tally is NOT seen by the narrow reader
premise: and a log with neither is seen by neither

They're dated by "part 590's narrow reader answers yes where it found no accounting line". A check that a repository change reddens is not a premise (#1236). That's the rule you applied to #1302's arms, and the one I applied to #1297's "rows within the covered range go in" and to two of #1295's checks tonight. The fix is to drop the premise: prefix in part 390 and re-run that one mutation, plus the five clean majors, so the logs carry the new names. rename-scan only reports, as I found tonight, so the old logs can't be carried over.

One more thought, not blocking: 390's narrow-reader premises reddening under a 590 mutation means 390 measures 590's reader, so they're arms of 390 about 590's code. If you agree, a line in 390's header saying so would help the next reader.

🤖 Generated with Claude Code

@jdatcmd

jdatcmd commented Oct 13, 2026

Copy link
Copy Markdown
Collaborator Author

Right, and thank you: dating a premise is exactly the error the #1236 rule exists to catch. Head is now 78b5cfd, rebased onto d7c9951 (#1312).

The three are arms now (ff72833). I dropped the premise: prefix in part 390, and the block now says why: they call run_all_versions.sh's own readers, so a change to those readers reddens them. That's also why 590's mutations redden part 390, which covers your second note. The old-name rows are removed.

Dated from fresh runs on this tree, as you said the old logs can't be carried. A clean run and both 590 reader mutations, on each of 15–19:

  • clean: 1223/1223 on every major;
  • 'terminated' reader: 7 reds per major, including "a lib.sh accounting line is seen by the narrow reader";
  • yes-where-none reader: 7 reds per major, including "a private tally is NOT seen by the narrow reader" and "and a log with neither is seen by neither".

Merged one log at a time with --mutation and --target. The same runs re-observe 20 rows this PR had already dated, so their last-observed-red date moves to 2026-10-13, which is what merge does with a later observation.

Totals: rows 1945, census 1694 → 1673 (the 21 dated), orphan-scan orphans=0, test_mutation_ledger 39 passed.

I checked the rest of this PR's dated rows for the same mistake: no other dated row is a premise.

@jdatcmd
jdatcmd force-pushed the test/1236-parts-540-590 branch from 922c119 to 78b5cfd Compare October 13, 2026 00:07
jdatcmd added a commit that referenced this pull request Oct 13, 2026
…1313 review)

They call run_all_versions.sh's own readers, and two mutations of the narrow
reader reddened them on all five majors, so a repository change reddens
them and by #1236 they are not premises (OffgridwithJD's review). The
prefix is dropped and the block says why. The three old-name rows are
removed; the next commit dates the new names from fresh runs, because
rename-scan only reports and the old logs carry the old names.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
jdatcmd added a commit that referenced this pull request Oct 13, 2026
…#1313 review)

A clean run (1223/1223) and both part-590 reader mutations on each of
15-19, on this tree, merged with --mutation and --target. The three names
are dated; the same runs re-observe 20 other dated rows, whose last
observed red moves to 2026-10-13. Rows 1945, census 1673, unchanged from
the rebased base. orphan-scan against the clean run: orphans=0.

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

@OffgridwithJD OffgridwithJD left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved at 78b5cfd. I re-checked it with the same row-by-row script, against d7c9951:

  • 1945 rows before and after.
  • The only key changes are the three premise: rows removed and re-added as arms under their new names, each dated 2026-10-13 from your fresh runs.
  • 18 other rows changed, every one in the date or mutation columns only.
  • never goes 1694 → 1673, which matches the budget line.
  • No premise is dated anywhere in this PR.

🤖 Generated with Claude Code

@jdatcmd

jdatcmd commented Oct 13, 2026

Copy link
Copy Markdown
Collaborator Author

Thanks for the approval at 78b5cfd. #1308 merged meanwhile and moved the budget, so I've rebased onto 2f0ffc3. Head is now d42907f; please re-approve if this holds up.

Checked against what you approved:

  • check_ledger.tsv: the +/- lines of git diff d7c9951 78b5cfd and of git diff origin/main d42907f are identical, all 42 lines, compared sorted with diff.
  • Part 390's patch: md5 ffecf566 before and ffecf566 now.
  • The budget is the only file whose text changed, restated from main's numbers: 1700 → 1679, rows 1972, dated 272 + 21 = 293.

test_mutation_ledger.py: 39 passed.

@jdatcmd
jdatcmd force-pushed the test/1236-parts-540-590 branch from 78b5cfd to d42907f Compare October 13, 2026 00:20
jdatcmd added a commit that referenced this pull request Oct 13, 2026
…1313 review)

They call run_all_versions.sh's own readers, and two mutations of the narrow
reader reddened them on all five majors, so a repository change reddens
them and by #1236 they are not premises (OffgridwithJD's review). The
prefix is dropped and the block says why. The three old-name rows are
removed; the next commit dates the new names from fresh runs, because
rename-scan only reports and the old logs carry the old names.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
jdatcmd added a commit that referenced this pull request Oct 13, 2026
…#1313 review)

A clean run (1223/1223) and both part-590 reader mutations on each of
15-19, on this tree, merged with --mutation and --target. The three names
are dated; the same runs re-observe 20 other dated rows, whose last
observed red moves to 2026-10-13. Rows 1945, census 1673, unchanged from
the rebased base. orphan-scan against the clean run: orphans=0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
jdatcmd and others added 3 commits October 13, 2026 01:13
…five majors (#1236)

The #1236 follow-up for parts 540 and 590. Six mutations, each run on
15-19, merged one log at a time with --mutation and --target: three of
part 540's sweep (the $-arm skip, awk_determinate's > 0 case, the report of
an indeterminate verdict), two of part 590's readers, and pgc_summary
before one of pgc_setup's exits. They date 6 checks in 540, 3 in 590 and 12
in part 390. Census 1693 -> 1672; rows unchanged at 1943.

The logs were run on c1e253f. Since then the three parts are unchanged and
lib.sh changed only in pgc_skip's pyarrow branch; every reddened name exists
in a clean run on #1286's tree. Three names #1284 had renamed came back as
never rows and were removed again. orphan-scan: orphans=0.

Part 540 is now clear (9 of 11 dated, the 2 never rows premises). Part 390
joins the reading list: 61 never-red checks beside 12 dated ones.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…1313 review)

They call run_all_versions.sh's own readers, and two mutations of the narrow
reader reddened them on all five majors, so a repository change reddens
them and by #1236 they are not premises (OffgridwithJD's review). The
prefix is dropped and the block says why. The three old-name rows are
removed; the next commit dates the new names from fresh runs, because
rename-scan only reports and the old logs carry the old names.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…#1313 review)

A clean run (1223/1223) and both part-590 reader mutations on each of
15-19, on this tree, merged with --mutation and --target. The three names
are dated; the same runs re-observe 20 other dated rows, whose last
observed red moves to 2026-10-13. Rows 1945, census 1673, unchanged from
the rebased base. orphan-scan against the clean run: orphans=0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jdatcmd
jdatcmd force-pushed the test/1236-parts-540-590 branch from d42907f to 0fc442e Compare October 13, 2026 01:13
@jdatcmd

jdatcmd commented Oct 13, 2026

Copy link
Copy Markdown
Collaborator Author

Main moved again (#1315, #1316, #1318), so I've rebased onto 7e6fd48. Head is now 0fc442e, which replaces d42907f in my earlier request.

  • check_ledger.tsv: the +/- lines are identical to the 42 you approved at 78b5cfd, compared sorted with diff.
  • The budget is restated from main: 1705 → 1684, rows 1984, dated 279 + 21 = 300.
  • test_mutation_ledger.py: 39 passed.

@OffgridwithJD OffgridwithJD left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approved at 0fc442e. The check_ledger.tsv +/- lines, sorted, are identical to the ones I approved at 78b5cfd. The budget restates correctly from main: 1705 − 21 = 1684.

🤖 Generated with Claude Code

@jdatcmd
jdatcmd merged commit 953c192 into main Oct 13, 2026
15 checks passed
OffgridwithJD pushed a commit to OffgridwithJD/pgcolumnar that referenced this pull request Oct 13, 2026
…be dated (commandprompt#1236)

The two never-red checks left in part 590 after commandprompt#1313. A declared suite
gaining a clean exit 0 that skips pgc_summary reddens 'every clean exit in
a declared suite reaches its summary first' on all five majors; merged with
--mutation and --target. Census 1684 -> 1683.

Removing one of the part's counter restores reddens 'the suite's own
counters are restored after every driving block' on all five majors too,
but it corrupts the run's own accounting (1223 records against 'checks run:
30'), and pgc_ledger merge refuses such a log as evidence. Any real failure
of the restore does the same, so that arm stays never, and the budget says
why. The m590e logs predate commandprompt#1313's renames; the three old-name rows they
carried back were removed, orphan-scan clean.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.

2 participants