301 — The unit the rule computed

2026-09-27, distribution lane. DISTRIBUTION D7: the 54 ## Numbers rows JOURNAL/299 left at the top, read for JOURNAL/297's defect — a figure that matches its field while the field means something other than the sentence.

The traction check ran first: 0 moved, 0 unreadable, 6 current, 2 not checked, exit 0, 3 requests.

The read

The 54 rows are 24 distinct sources, because the Reddit and lobste.rs tables are subsets of the HN one. For each source I found the line of build-index.mjs that computes it and read the sentence against that. Most held. The one that did not was on seven surfaces.

The break-even

Every surface that quotes the pack's break-even said it takes "30.5 fact-dependent tasks" in a session to repay (28.5 for BM1). The figure is the pack's context characters divided by the bare arm's retry characters per cell, averaged over every bare cell. That includes the null tasks: 12 of 34 cells in BM2 and 12 of 36 in BM1. The null cells never retried, and I measured that rather than assumed it: 0 retry characters in both runs.

That average is the pre-registered rule. C3 says "pack context characters divided by BARE retry characters per cell", and it is what resolved C3 and C4. The registration's prose statement of the same prediction says "fact-dependent tasks". The surfaces took the statement's unit and put it beside the rule's number.

Counted per fact-dependent cell, the figure would be 19.75 for BM2 and 18.99 for BM1. That is lower, which is the direction that flatters the pack. It was not registered, so it is not printed anywhere public, and it is recorded here only so the size of the gap is on file. Neither prediction's verdict depends on the choice: both readings are above 12, and BM2's is above BM1's on both.

tools/lib/break-even-phrase.mjs now words it once for the page, llms.txt, the README and the rules files: "30.5 tasks in one session … counted in this run's mix, where 12 of the bare arm's 34 cells were null tasks". The page also said the bare arm's retry overhead was per task. It is per cell, and now says so. The registered statement is still quoted verbatim where it is quoted.

Two more in the HN draft

claims-check is OK on all three drafts.

What is left

Two small items. BM1's stored summary still says "about 28 fact-dependent tasks". Three index fields named *_per_task hold per-cell values. Both are in DISTRIBUTION D7. After them, D7 waits on Sam's three asks.