Session captured: the FV outbound-NAT root cause and its diagnostic signature, the fv-ml1 dead man's switch, fleet identity/group/path conventions and the root:docker normalization, nh3-dev's ts-input reachability fix, ESPHome modernisation and the kb KB-search tool, and the Hermes bearer rotation release. Six new detail files. Tried-and-abandoned gains three: probing OPNsense endpoints by POSTing at them (which rebooted the FV firewall), advertising a /32 from nh3-dev, and the nh3-scale remote-site masquerade rules that fired but were not the fix. Housekeeping: 8 Recent-decisions entries archived to archival-memory.md, and 21 oversized inline entries split into detail files per the two-tier rule -- they had been sitting fully inline in the index, which is what the split exists to prevent. Two pointers to a detail file archived this run were repointed at archival-memory.md. The index is 389 lines, still over the ~300 soft cap. The archival guards stop it there: only 4 further entries are old enough to move and every one carries an open deferred-work pointer. An over-cap file that keeps live decisions beats a scannable one that lost a deferred call.
1.3 KiB
[2026-09-11] A SECOND corpus typography defect, and the D1 note that "no unwrap was needed" was right about the wrong thing
⭐⭐ A SECOND corpus typography defect, and the D1 note that "no unwrap was needed" was right about the wrong thing. Kvasir's cleaner does emit flowing paragraphs, so Brontë's hard-wrap defect genuinely does not exist here. A different one does: the Empyrean books set chapter epigraphs in small caps and the extractor rendered the run as uppercase while leaving the large initial its own token — — M AJOR A FENDRA'S G UIDE TO THE R IDERS Q UADRANT (U NAUTHORIZED E DITION), 106 lines / ~700 splits, plus 52 drop caps (T he flight field, X aden., 51 of 52 in iron-flame). That is the entire source of the entities called IDERS, UADRANT, NAUTHORIZED, DITION and seventeen bare single letters. ⭐ The restore is exact, not approximate: a split initial next to an uppercased run recovers the original mixed case, because a word WITH a split initial was capitalised in the source and an all-caps word WITHOUT one was lowercase. ⚠ Guards that matter: only lines with ≥2 splits are treated as a run (one split is a sentence next to an acronym), and I/A/O are excluded from the drop-cap join or A slow smile becomes Aslow. scripts/yarros-corpus/repair_typography.py.