Skip to content

Commit 7bec06f

Browse files
author
trios-mcp-rag agent
committed
feat(brochure): v12 next wave critic-proof pass — 1 P0 + 4 P1 fixes
C15 (P0): fm-13-depin-positioning — replace 6× \tbd{real measurement pending} with plain text 'TBD: real measurement pending' (was rendering live red badge boxes inside prose). C12 (P1): unified-symmetry-article — fix smart quote (U+2019) inside Verilog literal '16'h47C0' to ASCII apostrophe. C18 (P1): insert missing \statusXxx claim-status badge on 4 chapters (gf-format-audit -> Open, gf-numeric-formats-history -> Verified, london-handout -> Open, unified-symmetry-article -> Empirical). C27/C31 (P1): append ## References {.unnumbered} to 5 chapters with inline DOI/arXiv anchors that lacked a references block (unified-symmetry-article, gf-numeric-formats-history, p2-02-epistemic-boundary, p2-03-math-preliminaries, p2-04-e8-toda). PDF rebuild: 259 pages, 3.4 MB, SHA-256 6d2e29ed32cc92b4aea32a0c639f7f16c646d94e1aa4adba97787869ec79293d. All four QA gates green (\tbd leak 0, \status leak 0, smart-quote leak 0, visual QA on pp. 46/118/151/221/226 clean). See docs/audits/build-2026-05-29-v12.md and docs/migrations/2026-05-29-v12-runbook.md for the full plan, dry-run procedure, and rollback path.
1 parent 5e19773 commit 7bec06f

3 files changed

Lines changed: 612 additions & 0 deletions

File tree

Lines changed: 205 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,205 @@
1+
# GOLDEN CHAIN Build Audit — v12 (Next-Wave Critic-Proof Pass)
2+
3+
**Date:** 2026-05-29
4+
**Scope:** SSOT `ssot_brochure.chapters` + derived `GOLDEN_CHAIN_2026-05-29.pdf`
5+
**Predecessor:** v11 audit — `docs/audits/build-2026-05-29-v11.md`
6+
**Trigger:** maintainer requested another forensic pass after v11
7+
("критикуй и еще подумай что улучшить чтобы критики не доебались …
8+
next wave") to surface and close any remaining anomalies a reviewer
9+
could exploit.
10+
**Outcome:** 1 P0 + 4 P1 anomalies fixed in the SSOT; PDF rebuilt
11+
cleanly with the same page count and a slightly larger byte size due
12+
to the additional References blocks and status badges.
13+
14+
## Headline Numbers (Before → After)
15+
16+
| Metric | v11 (5e19773) | v12 (this build) |
17+
|--------------------------------------------|---------------|------------------|
18+
| `\tbd` macro leaks in PDF text | 6 | **0** |
19+
| `\status` literal leaks in PDF text | 0 | **0** |
20+
| Smart quotes inside code spans (`16'h47C0`)| 1 | **0** |
21+
| Real chapters missing claim-status badge | 4 | **0** |
22+
| Long chapters missing `## References` | 5 | **0** |
23+
| Pages | 259 | 259 |
24+
| File size | 3.36 MB | 3.36 MB (3530837 B) |
25+
| SHA-256 | `25dd2b18…` | `6d2e29ed32cc92b4aea32a0c639f7f16c646d94e1aa4adba97787869ec79293d` |
26+
27+
## Anomaly Catalogue (v12 Audit, Post-v11)
28+
29+
Each finding lists its origin probe (`C{n}`), severity, target row(s)
30+
in `ssot_brochure.chapters`, the failure mode, and the chosen fix. The
31+
classes here are numbered C1–C32, continuing the v11 series.
32+
33+
### P0 — Critical (must fix)
34+
35+
#### C15 — `\tbd{real measurement pending}` macro leak (`fm-13-depin-positioning`)
36+
37+
- **Probe.** Search for `\tbd{` outside `\providecommand` blocks in
38+
the SSOT. The macro is defined in `chapter.template.tex` line 125
39+
(`\providecommand{\tbd}[1]{\hspace{0.25em}\fcolorbox{red!50}{red!5}
40+
{\textsf{\scriptsize TBD:\,#1}}}`) and is intentionally available for
41+
rare uses inside raw-LaTeX blocks. In `fm-13-depin-positioning` the
42+
string `` `\tbd{real measurement pending}` `` appears six times
43+
*inside markdown backtick code spans*. The author's intent was to
44+
show the macro **as code** — a placeholder reminding the reader of
45+
the field that needs a real measurement. Pandoc's default backtick
46+
handling escaped most of the body but the backslash-prefixed macro
47+
identifier still leaked through, so the tectonic pass rendered six
48+
live red TBD badges scattered through the chapter.
49+
- **Impact.** Visible red boxes in body prose, reviewer-bait, and a
50+
rule-5 violation (claim-status framing is reserved for the explicit
51+
badge set; ad-hoc `\tbd` boxes inside prose dilute the discipline).
52+
- **Fix.** Migration `2026-05-29-v12-fixes.sql` — replace the six
53+
occurrences of the literal string `\tbd{real measurement pending}`
54+
with the plain text `TBD: real measurement pending`. The backticks
55+
are preserved so the placeholder still reads as a code-style field
56+
marker; no badge box is emitted.
57+
- **Verification.** `pdftotext generated/out/GOLDEN_CHAIN_2026-05-29.pdf -`
58+
| `grep -c '\\tbd'` → 0. SQL `DO` block in the migration also
59+
asserts zero rows match the leak pattern.
60+
61+
### P1 — Quality / Reviewer-Bait
62+
63+
#### C12 — Smart quote inside Verilog literal (`unified-symmetry-article`)
64+
65+
- **Probe.** Search for U+2019 (right single quotation mark) inside
66+
backtick code spans. Found once at body offset 35007:
67+
`` `16’h47C0` `` (assertion `{uio_out, uo_out} == 16'h47C0`). The
68+
Verilog literal must use an ASCII apostrophe; the smart-quote form
69+
is invalid Verilog and looks unprofessional in code style.
70+
- **Fix.** Targeted `replace(body_md, '16’h47C0', "16'h47C0")` scoped
71+
to that one slug.
72+
- **Verification.** SQL `DO` block asserts no row in
73+
`unified-symmetry-article` contains the smart-quote variant.
74+
75+
#### C18 — Claim-status badge missing on 4 real chapters
76+
77+
- **Probe.** For every chapter whose `kind` is `article`, `audit`,
78+
`handout`, or `unified`, the body should open with a raw-LaTeX
79+
block that emits a status badge (`\statusVerified`,
80+
`\statusEmpirical`, `\statusOpen`, `\statusHighRisk`, or
81+
`\statusRetracted`). Four chapters had no badge:
82+
`gf-format-audit`, `gf-numeric-formats-history`, `london-handout`,
83+
`unified-symmetry-article`.
84+
- **Status assignments (rule 5).**
85+
- `gf-format-audit`**Open conjecture** — audit catalogue of
86+
GoldenFloat formats; many entries are still "Proposal" or
87+
"Experimental".
88+
- `gf-numeric-formats-history`**Verified** — historical survey
89+
of established formats (IEEE 754, posit, FP8) anchored entirely
90+
by external DOIs / arXiv IDs.
91+
- `london-handout`**Open conjecture** — talk handout collecting
92+
programmatic claims, not yet independently validated.
93+
- `unified-symmetry-article`**Empirical fit** — long article
94+
reporting partial empirical fit (symbolic regression + φ-grammar)
95+
with explicit open questions in §7.
96+
- **Fix.** Migration inserts `` ```{=latex}\n\statusXxx\n``` `` after
97+
the H1 in three chapters and prepends it to the body of
98+
`unified-symmetry-article` (which has no leading H1; the pipeline
99+
injects `# {title}` at render time, so the badge lands immediately
100+
under the injected H1).
101+
- **Verification.** SQL `DO` block asserts all four targets now match
102+
the `\\status(Verified|Empirical|Open|HighRisk|Retracted)` regex.
103+
Visual QA — page 226 shows the **Empirical fit** badge on
104+
`unified-symmetry-article`; page 221 shows the **Open conjecture**
105+
badge on `gf-format-audit`.
106+
107+
#### C27 — `## References` missing on two long chapters
108+
109+
- **Probe.** Any chapter with body length > 25 KB and no `## References`
110+
section is suspect. Two hits:
111+
- `unified-symmetry-article` (48 KB, no references section despite
112+
citing the Coq proof base, Trinity Clara, Tiny Tapeout, Fring &
113+
Korff (2005), and Coldea et al. (2010)).
114+
- `gf-numeric-formats-history` (30 KB, no references section despite
115+
inline citations of IEEE 754, Gustafson, Jacob et al., Micikevicius
116+
et al., Sun et al., Spallanzani et al.).
117+
- **Fix.** Append a properly-formatted `## References {.unnumbered}`
118+
section to each chapter, with every external anchor that already
119+
appears in body extracted into a markdown bullet list with clickable
120+
DOI / arXiv links.
121+
- **Verification.** SQL `DO` block asserts both rows now contain the
122+
pattern `## References`. Visual QA — page 221 shows the new
123+
`gf-numeric-formats-history` References block (8 entries).
124+
125+
#### C31 — `## References` missing on three P2 chapters with badges
126+
127+
- **Probe.** Paper-2 chapters carrying `\statusEmpirical` or
128+
`\statusVerified` (citation-bearing labels) but no `## References`
129+
section: `p2-02-epistemic-boundary`, `p2-03-math-preliminaries`,
130+
`p2-04-e8-toda`.
131+
- **Fix.** Same approach as C27 — append `## References {.unnumbered}`
132+
with the actual DOIs / arXiv IDs that already appear in body
133+
(Fring & Korff 2005, Coldea et al. 2010, Zamolodchikov 1997, Popper
134+
1963, Zenodo 19227877).
135+
- **Verification.** SQL `DO` block asserts all three rows now match
136+
`## References`.
137+
138+
### Deferred (intentional)
139+
140+
- **C5**`authority-outreach-templates` `Dear Professor [NAME]` is
141+
an intentional outreach template placeholder. Recorded so a future
142+
audit does not flag it.
143+
- **C24** — early false positive on math-mode escapes; on re-check,
144+
every `\xx` escape resolves to a defined LaTeX macro.
145+
146+
### Clean (probed, no actionable issue)
147+
148+
C1, C2, C4, C6, C7, C8, C9, C10, C11, C13, C14, C19, C20, C21, C22,
149+
C23, C26, C28, C32 all returned negative. The probe set is
150+
deliberately broad — it includes orphan citations, hyperref anchor
151+
drift, URL wrapping, HTML entity leaks, trailing whitespace, code
152+
fence balancing, blank-line runs, paren balance in headers, ASCII
153+
arrows in prose, empty list items, malformed table cells, zombie
154+
section references, all-caps shouting, abbreviation consistency,
155+
duplicate slugs / titles, invalid `\xx` escapes, abnormal line
156+
density, footnote / citation mixing, and status-badge placement.
157+
158+
## Deferred to v13+
159+
160+
These were noted but intentionally not changed in this pass — each is
161+
listed with the v-number at which the cost / benefit is expected to
162+
become favourable.
163+
164+
- **B17** heroes absent — `illustration_url` is NULL on all 69 rows;
165+
the image manifest needs population before re-enabling hero blocks
166+
(`TRIOS_PHD_NO_IMAGE_TRAIN` rule applies). Target v13.
167+
- **B18** PDF/UA-2 tagging — accessibility metadata is not yet
168+
emitted. Requires Lua filter for tagged structure. Target v13.
169+
- **B19** `\statusNonClaim` macro for `p1-acknowledgments` and
170+
`p2-13-phd-provenance` — these chapters intentionally carry no
171+
claim, but the audit script currently has to special-case them.
172+
Cleaner to introduce a `\statusNonClaim` badge with a neutral
173+
colour. Target v13.
174+
- **B20** `\nicefrac` migration — replace ad-hoc `1/φ` notation with
175+
`\nicefrac{1}{\varphi}` for typographic consistency. Target v14.
176+
- **B21** Pellis Definition A.1+ ASCII math wrap — long Definition
177+
blocks in the Pellis appendix render with ragged math. Target v14.
178+
- **B8(v9)** `S³AI``S3 AI` flatten in three `\addcontentsline`
179+
entries to silence a tectonic hyperref warning. Target v13.
180+
- **B3** sub-3pt overfull `hbox` in longtable paragraphs — `\hfuzz`
181+
does not silence paragraph-mode overfull warnings in longtable
182+
cells. Target v14.
183+
184+
## Build Provenance
185+
186+
- Build host: linux sandbox, tectonic via `cargo build --release`
187+
binary `target/release/trios-mcp-rag` (SHA matches v11).
188+
- Database: read-only fetch from `ssot_brochure.chapters` on
189+
`127.0.0.1:5433/railway` (local Postgres 17 mirror of Railway SSOT).
190+
All writes for this audit happened under the v12 migration's single
191+
transaction; rollback path documented in
192+
`docs/migrations/2026-05-29-v12-runbook.md`.
193+
- Reproducibility: `pandoc --version` and `tectonic --version` pinned
194+
by `Cargo.lock` workspace. Migration SQL is idempotent (every probe
195+
is a `replace()` or `regexp_replace()` that produces no further
196+
change when re-applied to the post-v12 state).
197+
198+
## Backups
199+
200+
- `/tmp/pgbackup/all_chapters_pre_v12_20260529T135422Z.tsv` (566 KB)
201+
- `/tmp/pgbackup/chapter.template.tex.pre_v12_20260529T135422Z` (9.0 KB)
202+
- `/tmp/pgbackup/GOLDEN_CHAIN_v11_20260529T135422Z.pdf` (3.4 MB)
203+
204+
Restore procedure is in
205+
`docs/migrations/2026-05-29-v12-runbook.md` §"Rollback".

0 commit comments

Comments
 (0)