- Lazy-loading semantics: an @font-face never matched by rendered text
stays "unloaded" forever - the readiness poll now waits only on faces
in "loading" state, ending the instant fetches settle (removes ~3s of
dead deadline per viewport on affected pages); unreferenced faces log
per-face informationally instead of warning
- Asset gate counts a failure only for real HTTP >= 400 or a failed
fetch whose target file is genuinely absent from the export - aborted
srcset-candidate image fetches with valid files on disk are excused,
matching the existing streaming-media treatment
458 tests pass (11 new), typecheck clean.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>