Oregami
Repositories/oxedyne/fe2o3

oxedyne/fe2o3/fe2o3_austenite/tests/oracle/fixtures/oxeweb_techspec_repin_20260921/NOTE.md

3.3 KiB, 1 run

created by r1870400018:59359, which is this file's identity for as long as the history lasts, whatever it is later renamed to

download · who wrote it · its history

1# oxeweb-techspec re-pin — 2026-09-21
2
3Golden-file re-pin of the `oxeweb-techspec` oracle root, following the inline
4mid-prose content-fn expansion change (reader-completeness item 3). Lead
5sign-off: coordinator, rc-3 slot.
6
7## Hash change
8
9| | sha256 |
10|---|---|
11| BEFORE (`bac7751`, current pin) | `9a142b10b67a29a48cf151e9705bb90d6911ab3dbf8f56cc89c4f705185d400d` |
12| AFTER (this change) | `18c263888e8cc159cce1b96cbf9cc9fee1617eeb56a99ed9dff1e9fc48e44708` |
13
14Pages 141 → 141, anchors 574 → 574 (structure unchanged; only inline `#oxe`
15glyph occurrences differ).
16
17## Why this is a self-pin, not a Typst-validated pin
18
19`oxeweb-techspec` has NO Typst oracle: `typst` 0.15.1 cannot compile it. Its
20`utils.typ` (shared with `oxeweb-overview`) defines `cat()`/`tup()` helpers
21using the `bracket.l.double` / `angle.l.double` symbol modifiers, **removed in
220.15.1** with no glyph-identical replacement. `typst query` on the harness
23dump exits 1, so the harness has always downgraded this root's oracle
24comparison to a note (see `tests/oracle/mod.rs::corpus`). The pin is therefore
25austenite's own output, and this re-pin is backed by human-legible visual
26evidence rather than byte-acceptance.
27
28## What changed, and why it is a fidelity improvement
29
30The document's `#let oxe = [#h(..)#box(.. scale(..)[$times.circle$] ..)#h(..)]`
31binding is referenced inline mid-prose — `M#oxe`, `B#oxe` (ch08_tokens.typ).
32
33- **BEFORE:** an inline reference to a content binding was not expanded, so the
34 raw source `M#oxe` / `B#oxe` **leaked onto the page verbatim**, and was NOT
35 recorded as a refusal (a silent, untallied raw-markup leak).
36- **AFTER:** the reference expands, exactly as an own-line reference already
37 does. The binding's body is Typst layout primitives austenite does not
38 implement (`#h`, `#box`, `scale`), so they are refused and TALLIED in the
39 skip report (`#h ×4, #box ×2`), setting no ink where the ⊗ glyph would go.
40 The raw `#` no longer reaches the page.
41
42Typst itself would set the scaled circled-times glyph (`M⊗`); austenite can do
43neither engine's glyph without implementing `#box`/`scale`/`#h`, so the honest
44outcome is a tallied refusal. The change converts a **silent raw-markup leak
45into a tallied, clean refusal** — strictly better observability and no `#`
46garbage on the page.
47
48## Visual evidence (page 78, "Tokens / Units")
49
50- `page78_before_raw_oxe_leak.png` — four raw leaks: list items "written as
51 one moxe or **M#oxe**." / "written as **B#oxe**.", and the paragraph "One
52 full oxecoin is approximately **M#oxe 4,295 or B#oxe 4.3**."
53- `page78_after_refused.png` — the same four occurrences now set "M." / "B." /
54 "M 4,295 or B 4.3" with the raw `#oxe` gone.
55
56Every other pixel on the page is identical between the two renders (same
57headings, same 1/2/3 list structure, same paragraphs, same line breaks, same
58folio and footer): the ONLY delta is the four `#oxe` occurrences. No corruption,
59no structural change.
60
61## Reproduction
62
63Rendered with the austenite binary at 150 DPI, page 78 of 141. BEFORE was
64produced from the same tree with the inline-expansion pre-pass disabled, whose
65full-document hash reproduced the current pin `9a142b10…` exactly — confirming
66the probe is a faithful stand-in for `bac7751`.
67
68All 16 other pinned roots stay byte-identical; only this root moves.