<!-- ledger
id: Q-applied-0829-ledger
status: ANSWERED
todo: none
question: Were today's notes linked into the question ledger's TODO guard, the Z2 draft's last two non-fit lines fixed, and the covering-prune root corrected?
verdict: All three landed and none of them moves a result: nine of thirty notes read now name the TODO item their move executes and four TODO items carry the new ids, so `node research/qc.js` reports the ledger check clean at 0 findings; the Z2 draft's legal items 3 and 4 carry the audit's instrument rider and the quantifier-police clause the red team asked for; and the covering-prune producer now computes the root of a*ln(a/e) = 1 instead of quoting it, giving a = 3.5911214767 and a divergence constant of 7.1822 lnln x against the 7.19 the file carried, a 0.08 per cent change with nothing downstream consuming it.
-->

# The question ledger's TODO links for the 2026-08-29 notes, the Z2 draft's last two non-fit lines, and the covering-prune root

*(2026-08-29. Staging note, HELD under the publication moratorium. Three
tightening jobs, no new mathematics and no new measurement. No git command was
run. Files edited: the `todo:` line of nine ledger blocks, four `Ledger:` lines
in `TODO.md`, two paragraphs of `z2-state-draft-0829.md`,
`research/attack-beta2-05-covering-prune.js` and its embedded tail, and the
three notes plus one working document that quoted its constant.
`research/REFUTED.md` was NOT touched, by instruction; the row it owes is listed
in section 3.)*

## 0. Counts

| what | count |
|---|---|
| ledger blocks read (28 staging notes with `0829` in the name, plus `lit-scourfield-2008.md` and `zonegap-03-score.md`) | 30 |
| notes whose `todo:` moved off `none` | 9 |
| notes deliberately left at `todo: none` (pure reads, red teams, applied records, audits, the session summary) | 20 |
| notes owed a `todo:` and not touched, because another agent owns the file | 1 |
| `TODO.md` items whose `Ledger:` line changed | 4 |
| `TODO.md` items that already listed the id and needed no change | 2 |
| question ids newly named by a `Ledger:` line | 7 |
| `z2-state-draft-0829.md` paragraphs edited | 2 |
| producers re-embedded | 1 |
| documents whose quotation of the corrected constant was updated | 4 |
| `node research/qc.js` ledger findings after the pass | 0 |
| `node research/qc.js` TOTAL after the pass | 1, in another agent's in-flight file |

## 1. The todo assignments

Every note written on 2026-08-29 carried `todo: none` because the producing
agents were fenced off `TODO.md`. The re-run guard at the top of
`research/qc/questions.js` only bites when a note names the item its move
executes, so nine notes were re-pointed and the matching items were made to
acknowledge them.

| note | id | item | why that item |
|---|---|---|---|
| `measure-g2-generic-0829.md` | `Q-measure-g2-generic` | 0 | the census-matched two-class ensemble is the exponent programme's object; item 0's ledger already carries `Q-gap-spectrum` for the same reason |
| `measure-g2-provenance-0829.md` | `Q-g2-provenance-x37` | 0 | the custody-only refit of the headline exponent |
| `measure-tail-deficit-0829.md` | `Q-tail-deficit-model` | 0 | the tile's tail-deficit functional, same class as `Q-gap-spectrum` |
| `recon-0829-farfields2.md` | `Q-recon-0829-farfields2` | 0 | item 0 already carries `Q-recon-0828-farfields` for the first pass of the same sweep |
| `measure-roughpair-null-0829.md` | `Q-roughpair-null` | Z2 | null-side work on the rough-pair census error, whose parent `Q-roughpair-error` is already on Z2's line |
| `measure-record-null2-0829.md` | `Q-record-null2` | Z5 | the two un-run nulls behind Kourbatov's b, which Z5's body already narrates |
| `zone-tail-02-0829.md` | `Q-zone-tail-02` | Z4 | the tail field's per-zone law, Z4's remaining half |
| `zonegap-03-score.md` | `Q-zonegap-03-score` | Z7 | the box queue's item (2), scored on the laptop |
| `lit-scourfield-2008.md` | `Q-lit-scourfield-2008` | 9 | the divisor-distribution estimate that `varE-theta2-proof.md` section 6 leaves open is item 9's step 1 |

**Left at `todo: none`, and why.** Twenty notes execute no TODO move: the four
applied records (`applied-0829-measure-a/b/c.md`, `applied-0829-refuted.md`),
the six red teams (`redteam-0829-measure-a/b/c.md`,
`redteam-0829-objects-gb.md`, `redteam-0829-objects-zm.md`,
`redteam-0829-theorem1.md`), the four refuted-claims audits
(`refuted-audit-0829-1/2/3/4.md`), the three object reads
(`object-g2-read-0829.md`, `object-bridge-read-0829.md`,
`object-models-read-0829.md`), the Z2 state draft (`z2-state-draft-0829.md`,
which consolidates Z2, Z4, Z5 and THE TARGET without executing any of their
first moves), the session summary (`session-0829-summary.md`), and
`measure-g2z2-0829.md`, whose own header states that its question is
`object-bridge-read-0829.md` section 7 Q1, Q2, Q4 and `object-g2-read-0829.md`
section 8 Q2, Q7, that is, the object reads and not a TODO item.

**One owed and not touched.** `recon-0829-escapes.md` is being edited by
another agent this session. By the precedent that puts `Q-recon-0828-*` under
item 0 it should read `todo: 0`, and item 0's `Ledger:` line then needs
`Q-recon-0829-escapes` appended. Neither was done here.

**The `Ledger:` lines changed in `TODO.md`.**

| item | line | what changed |
|---|---|---|
| Z2 | 209 | appended `Q-roughpair-null` |
| Z7 | 322 | the item carried NO `Ledger:` line at all, so one was created: `Ledger: Q-zonegap-03-score` |
| 0 | 416 | appended `Q-measure-g2-generic, Q-g2-provenance-x37, Q-tail-deficit-model, Q-recon-0829-farfields2` |
| 9 | 563 | appended `Q-lit-scourfield-2008` |

Z4 (line 258) already listed `Q-zone-tail-02` and Z5 (line 307) already listed
`Q-record-null2`, both written before the notes carried the matching `todo:`
value; no change was needed on either. Items 1 and 6 still carry no `Ledger:`
line, which the guard does not report because no note names them, and which is
left as an observation rather than an edit.

`node research/gen-questions-index.js` was run afterwards, so
`research/QUESTIONS.md` section 1 now groups these nine questions under their
items instead of under "no TODO item".

## 2. The two Z2 draft edits

`redteam-0829-objects-zm.md` section 5's table lists twelve non-fit lines in
`z2-state-draft-0829.md`. Ten were already applied by earlier agents; the two
below were the remainder named in the brief. Both are label edits and neither
changes a number.

**Legal item 3 (rows 635 to 645 after the edit).** The red team's row reads
"legal item 3 drops the audit's 'police the instrument, not the exponent' rider
(`attack-wrongdirection-audit.md`:87)", graded "an incomplete label on a legal
target". Appended, quoting the audit's line 87 verbatim:

> The audit attaches a rider to that legality: "police the instrument, not the
> exponent: RML's legality rests on the measured floor crossing in (31, 47],
> not on a proof, and the rho -> R_H step that turns it TPC-implying is
> invisible in the delivered exponent" (`attack-wrongdirection-audit.md`:87).
> The (i) label belongs to the exponent alone; the instrument that would
> deliver it carries its own label and must be graded separately.

The audit's own text uses italic and unicode markup for the same sentence; the
draft is ASCII throughout, so `ρ → R_H` is written `rho -> R_H` here, which is
the draft's convention elsewhere.

**Legal item 4 (rows 646 to 654 after the edit).** The red team's row reads
"legal item 4 carries no quantifier-police clause where items 7 and 11 carry
one for the same exposure", graded "internal inconsistency in the labelling
scheme". Item 7's clause is "Police the quantifier: the unconditional form,
asserted at every p without the definedness clause, is (ii)"; item 11's grade
is (iii) because an asymptotic for maximal twin gaps is "at least
Kourbatov-conjecture strength". Appended:

> Police the quantifier: b as posed here is a finite-height coefficient, and an
> unconditional all-heights derivation of it would be an asymptotic statement
> about maximal twin gaps, which is at least item 11's grade, (iii), not (i).

The draft's own header for item 4 still reads **(i)**, which is correct for the
target as posed there (a mechanism for a finite-height coefficient and a
sharper in-house estimate). The clause polices the widening, it does not
re-grade the item, and that is the same shape items 7 and 11 use.

## 3. The root in `attack-beta2-05-covering-prune.js`

`refuted-audit-0829-2.md` section 2 records the defect: lines 370 and 608
declared `a = 3.594` as the root of `a*ln(a/e) = 1`, where the root is
3.5911214767, so the divergence constant reads 7.1822 rather than the 7.19 the
file carried. The audit prices the error at 0.08 per cent in the leading
constant of a divergence already about 6.8 orders of magnitude above the
measured law, and section 4 records that nothing downstream turns on it.

**The producer's embedded elapsed was 20.8 s**, well under the ten-minute
threshold the brief set, so the fix was applied and the file re-run.

- The constant is now COMPUTED, not quoted: bisection on [2, 8] of
  `g(a) = a*(ln a - 1) - 1`, which is strictly increasing there, 200 halvings,
  and the (E2) header prints `a = 3.5911214767, 2a = 7.1822; the superseded
  3.594 returns 1.00368`. Both figures reproduce the audit's own bisection
  digit for digit, which is a check on the audit and on this fix at once.
- Readings 6 and the FIGURE PROVENANCE block were re-quoted to 3.5911214767
  and 7.1822, which is what the printed block now contains, so the
  readings-traceability tier has the figures in the output above them.
- Re-embedded with `node research/qc/embed.js
  research/attack-beta2-05-covering-prune.js --timeout 1200 --force -- --full`.
  **The `--force` is disclosed here and is stamped in the tail**: embed refused
  the first, unforced run because the bound tail changed, while reporting that
  every old figure reproduced and the difference was prose. The forced stamp
  reads `2026-08-29, 0 of 236 figures in the replaced block not reproduced`, so
  no datum moved. New `code-sha256 28149f5a...`, `out-sha256 fbaf77b8...`,
  114 lines, 23.4 s. The embed's closing note that 16 figures in the READINGS
  are not in the output is pre-existing and is exactly what the file's own
  FIGURE PROVENANCE block was written in 2026-08-20 to explain.

**Where the constant was re-quoted.** Grep over `research/` for `7.19` and
`3.594` returns the consumers below; the audit's claim that "nothing else in
the corpus consumes the constant" is WRONG on one count, since
`research/sift-limit-attack.md` is a working document and carries both figures.

| file | what changed |
|---|---|
| `research/history/staging/attack-beta2-05-covering-pruning-bound.md` | the producer's own note: ledger verdict, section 0, and the three occurrences at its lines 270, 273 and 275 |
| `research/history/staging/recon-0828-covering.md` | two occurrences of "diverges like 7.19 lnln x" |
| `research/sift-limit-attack.md` | line 524, `7.19*lnln x` and threshold `3.594`, the one WORKING document that consumes the constant |

**Not touched, and owed to the orchestrator.**

1. `research/REFUTED.md`:51, the row "the covering economy asymptotically, and
   the hybrid", carries `β_pure diverges like 7.19 lnln x`. A sibling agent is
   editing that row for other reasons, so it was left alone by instruction.
   It should read `7.182` (audit 2 section 4 proposed `7.18`; either is right
   to the digits it prints, and `7.182` matches what the producer now says).
2. `research/attack-hybrid-bound.js` carries `7.19 lnln x` at line 11 and
   `3.594` at lines 61, 261 and 426. Line 261 is a `console.log` and 426 sits
   inside that script's own bound OUTPUT block, so correcting them needs a
   re-embed of a different producer and is outside this pass's edit scope.
   `research/history/staging/attack-hybrid-bound.md`:115 quotes the same
   `3.594` from its own producer and should move with it, not before it.
3. `research/history/staging/object-g2-read-0829.md`:496 quotes the REFUTED row
   verbatim, including its `7.19`. It should be corrected when the row is, and
   not before, or the quotation stops reproducing and `qc.js quotes` fires.

## 4. `node research/qc.js`

Run after every edit above, and again after `gen-questions-index.js`:

- **`ledger` 0 findings**, 451 of 451 notes carrying a block, 424 question ids,
  18 TODO items. That is the deliverable of section 1.
- `node research/gen-questions-index.js` then reported "424 questions from 451
  indexed notes, 0 unindexed", and the gate stayed clean after the regeneration.
- `refs`, `quotes`, `crosslinks`, `scripts`, `transfers`, `calibration`,
  `absence`, `sourcing`, `widths`, `provenance`, `search-convention`: 0 each.
- `embeds` 1, and **it does not belong to this pass**:
  `research/zonegap-04-sweep-1e12.js:352`, "code changed since the tail was
  embedded", another agent's file and live at the time of the run. Four such
  findings stood mid-pass (`measure-record-null2-0829.js:665`,
  `measure-tail-deficit-0829.js:852`, `zone-tail-02.js:711`,
  `zonegap-01.js:621`) and were cleared by their owners while this pass ran.
  `research/attack-beta2-05-covering-prune.js` is in none of them, which is the
  check that the re-embed of section 3 bound correctly.
- TOTAL 1, as above.

The fast gate is syntactic by construction. It does not certify that the
assignments in section 1 are the right items, only that every item now
acknowledges every question that names it. The label judgement in section 2 and
the arithmetic in section 3 are checked against their own records, not by the
gate.

## 5. For the orchestrator: a CHANGELOG paragraph

> **The 2026-08-29 notes linked into the question ledger's re-run guard, and
> the covering-prune root corrected** (`applied-0829-ledger.md`). Every note
> written on 2026-08-29 carried `todo: none`, because the producing agents were
> fenced off `TODO.md`, so the guard at the top of `research/qc/questions.js`
> had nothing to bite on. Nine of the thirty notes read now name the item their
> move executes: `Q-measure-g2-generic`, `Q-g2-provenance-x37`,
> `Q-tail-deficit-model` and `Q-recon-0829-farfields2` under item 0,
> `Q-roughpair-null` under Z2, `Q-record-null2` under Z5, `Q-zone-tail-02`
> under Z4, `Q-zonegap-03-score` under Z7, and `Q-lit-scourfield-2008` under
> item 9. Four `Ledger:` lines in `TODO.md` were extended to acknowledge them
> and Z7 acquired the first `Ledger:` line it has ever carried; Z4 and Z5
> already listed theirs. Twenty notes stay at `none` because they execute no
> TODO move, and `recon-0829-escapes.md` is owed one. `node research/qc.js`
> reports the ledger check clean, and `research/QUESTIONS.md` was regenerated.
> Two lines of `z2-state-draft-0829.md` that
> `redteam-0829-objects-zm.md` section 5 listed as not fit for promotion were
> applied: legal item 3 now carries the wrong-direction audit's "police the
> instrument, not the exponent" rider, and legal item 4 now carries the same
> quantifier-police clause items 7 and 11 carry, saying that an unconditional
> all-heights derivation of Kourbatov's b is at least item 11's (iii) and not
> (i). Separately, the producer defect that
> `refuted-audit-0829-2.md` recorded but did not apply was applied:
> `research/attack-beta2-05-covering-prune.js` now computes the root of
> `a*ln(a/e) = 1` by bisection instead of quoting it, printing
> a = 3.5911214767 and 2a = 7.1822 against the 3.594 and 7.19 the file
> carried since 2026-08-20. The re-embed was forced and the stamp records
> 0 of 236 figures changed, so the correction is prose and no reading moves.
> The three notes and the one working document that quoted 7.19 from this
> producer were re-quoted; `research/REFUTED.md`:51,
> `research/attack-hybrid-bound.js` and `object-g2-read-0829.md`:496 still
> carry the old figure and are owed.

---

*Applied pass, HELD in staging. It ran one producer under
`research/qc/embed.js` and no other computation, wrote no new mathematics, and
ran no git command. `README.md` section Status and `research/G2-STATE.md`
section 0 are canonical and win against anything here. History layer and corpus
rule: `research/history/CHANGELOG.md`.*
