- SourceRefs trigger whitelist aligned to the /source/ serving
whitelist (drops content/, yaml-source/, broad static//tools//data
prefixes; adds .bib); existsCached no longer memoizes non-existence,
so files created under make watch are picked up (§2.5, §2.16)
- fill/stroke hex replacement is boundary-aware: #000080 and 8-digit
RGBA forms can no longer be corrupted into currentColor80 (§2.12)
- Wikilinks/Transclusion/EmbedPdf skip fenced code blocks (shared
CommonMark fence tracker), and wikilinks additionally skip inline
code spans — the syntax-documentation essay now renders its own
examples literally while live wikilinks still convert (verified both
ways in output) (§2.13)
- domainIcon matches the extracted host by label suffix instead of
substring-of-URL; extractHost also strips userinfo (§2.14)
- webpSrc escaped in srcset; internal PDF links no longer double-
classified; Smallcaps/Archive header-skip now holds at every nesting
depth via protect/restore walks (§2.17)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>