§5 — Rotation 1 (resilient re-run) checkpoint (2026-07-20)

Evergreen: model-selection-and-global-refine §5 · driver f-docs-campaign-rotations · prior attempt rotation 1 halted.

This is the first live docs-campaign rotation on the rebuilt, resilient pipeline — the re-run the halted rotation's NEXT card called for. Purpose: prove the pipeline no longer degrades under real 200-name load (the July-18 halt was an upstream reviewer outage that collapsed the blind pair to single-reviewer), and produce a valid checkpoint the lead can treat as the go/no-go for the remaining ~$270 of rotations. Headline: the pipeline is validated. The rotation halted on a narrow, fixable false positive in the prose gate — not a pipeline defect and not a quality regression.

Quick status

ItemValue
Runc355df39 · 2026-07-20 · sn run --source dd --campaign "prose,audit:latex,audit:spelling,audit:length" --campaign-pilot 200 --include-accepted --campaign-batch-cost-cap 50 --campaign-cost-ceiling 120
Blind pairclaude-sonnet-5 + grok-4.5 (imas-codex b5b5eccb) — replaces the 429-prone qwen3.7-max + minimax-m3
Scope reachedbatch 1 of 2 — 100 names enriched (halted before batch 2 by the convergence gate)
Outcome⚠ halted after 1 batch: banned prose reintroduced in 2 doc(s) (cap 0) — both false positives (see root cause)
Spend$29.47 of the $50 batch cap · ~19 min wall (1161 s) — 8× faster than the 2.5 h estimate
Selection1,409 → ~1,311 (98 accepted docs dropped out of the defect predicates; sticky)

Checkpoint metrics — batch 1 (100 names)

Gate axisThresholdRotation 1 (resilient)Verdict
Review quorum intactblind-pair quorum on every leaf117 leaf reviews, 100% quorum_consensus; 0 degraded to single-reviewer (13 single_review are derived-parent reviews, single-model by design, ~2–3× cheaper)✅ PASS — the July-18 failure mode is eliminated
Upstream outages00 — no 429 / empty-response / governor backoff anywhere in 100 names✅ PASS
Docs acceptance≥ 90%98% (98 accepted, 2 exhausted sub-threshold)✅ PASS
Name-identity drift00 — docs-only refine events on unchanged ids; no StandardNameChange, no rename✅ PASS
Refine claim-race waste (gate a)< 5%3.4% (2 of 59 paid refine calls, ≈ $0.16) — within the documented residual for the settle-based fix✅ PASS
Banned prose reintroduced02 flagged → both false positives (legitimate "is derived from [related quantity]" provenance, not a recipe)⚠ predicate MISS — see root cause
Cost / name≈ $0.20$0.29 ($29.47 / 100) — the resilient premium review pair costs more than the retired cheap pair⚠ OVER (+47%) — re-baseline

Root cause of the halt — a narrow false positive in the estimator-recipe pattern

The two docs that halted the run — line_averaged_hydrogen_density and ratio_of_tritium_density_to_deuterium_density — were both reviewer-accepted at full quorum (0.863, 0.906) and are high quality: a precise one-line description, a single defining LaTeX relation, and clean cross-links to related names. Each tripped exactly one banned-prose pattern, the estimator_recipe arm:

\bis (?:computed|calculated|estimated|obtained|derived) (?:as|by|from)\b

matched by the phrase "It is derived from the local [hydrogen density](name:hydrogen_density)…". This is a provenance / semantic-relationship statement — the refine model's house style for any quantity defined relative to a base quantity — not a procedural estimator recipe. The pattern is meant to catch "here is how you compute it in practice"; "derived from [related name]" is the cross-referencing style the strict-normative policy actually wants.

The pattern is right about the backlog, wrong about refined provenance

Scanning all 2,200 accepted docs, 797 (36.2%) match the estimator_recipe pattern. A 12-doc stratified sample of those matches confirms they are genuine banned prose, correctly selected — the real pre-campaign backlog:

These trip the computed / obtained … by / from arms (with "In practice" procedural padding alongside) — exactly the prose the campaign exists to strip. The refine model removes that style; the only estimator_recipe residue it leaves is the "is derived from" arm on legitimate provenance. That single arm is the entire halt cause, and it recurs on any derived quantity, so it would halt every rotation until narrowed.

Before → after (archetype)

DocsRevision before-text is not retained in-graph, so per-name diffs aren't reconstructable; the archetype is unambiguous. Pre-campaign accepted docs carry the recipe/padding style above; the 98 refined-and-accepted docs in this batch are prose-clean, e.g.:

Name (accepted, batch 1)Refined doc (opening)Prose scan
power_density_due_to_fusion"Fusion power density is the local energy-release rate generated by nuclear-fusion reactions per unit volume…"CLEAN
reflected_power_of_ion_cyclotron_heating_antenna"Reflected power of an ion cyclotron heating antenna is the backward-traveling RF power at a defined reference plane…"CLEAN
radius_of_plasma_filament"Radius of a plasma filament is the geometric radius of a circular boundary of the annular cross-section…"CLEAN
absorbed_radiated_power_of_breeder_blanket_module"…the net electromagnetic photon power retained by the module after plasma radiation interacts with its plasma-facing surface…"CLEAN
line_averaged_hydrogen_density"…quantifies the chord-averaged concentration of protium ions… It is derived from the local [hydrogen density]…"estimator_recipe ×1 (false positive)

Two exhausted names (non-convergence, expected)

Also noted: ratio_of_tritium_density_to_deuterium_density carries a separate genuine name-axis finding (audit:repeated_token_check — duplicated "density" token, likely tautology). That is not a docs-campaign target; it belongs to the name-axis workstream.

Checkpoint verdict & go/no-go

Disposition: QUALIFIED GO on the remaining ~$270 — after two cheap pre-conditions the lead's own "fix root causes before the bulk pass" guardrail already calls for. The pipeline itself is proven: quorum held on 100% of leaf reviews, zero outages, 98% acceptance, zero drift, refine waste inside gate, and 8× faster than estimated. The July-18 blocker is retired.

  1. Narrow the estimator_recipe "derived from" false positive (validator root-fix). Options for the lead: (a) drop derived from the verb alternation, keeping computed|calculated|estimated|obtained — the sampled genuine recipes all use those, so coverage is retained; or (b) exempt "derived from [name:link] / the local <quantity>" provenance specifically. Either stops the spurious halts and shrinks the campaign selection to real defects. This is a doc-policy semantics call — is "is derived from [related quantity]" acceptable normative prose? — hence the lead decides which fix.
  2. Re-baseline the budget to ≈ $0.29/name. The resilient blind pair (claude-sonnet-5 + grok-4.5) is the cost driver — better discrimination and no 429s, but ~$0.09–0.11/name dearer than the retired pair. The ~1,300 remaining docs-fixable names ≈ $380, not $270. The lead accepts the premium, trims the spec (e.g. prose-only), or caps rotations.

Without fix (1) it is a NO-GO: every rotation halts on the same provenance false positive after ~1 batch. With it, rotations run clean and the self-pruning selection converges to zero over ~$380.

What's next

Land the estimator_recipe narrowing (with a regression test that the two halted docs scan clean and the 12 sampled backlog recipes still flag), re-baseline the budget, then resume the stratified rotations on the same command — the selection re-stratifies over the remaining ~1,300 and the 98 fixed names stay out. Tracked as f-docs-campaign-rotations (stays open) plus the new validator-fix followup.