perf/self-hosted-fonts
Fonts are self-hosted, not loaded from third-party CDNs. Reglen perf/self-hosted-fonts kører i page-scope med severity 'error' og indgår i performance-domænet sammen med 7 andre kontrakter i frameworket.
Hvorfor self-hosted-fonts findes
Font CDNs cost an extra connection on the critical path (slower LCP) and leak visitor IPs to a third party — embedding Google Fonts without consent has been ruled a GDPR violation in the EU (LG München, 2022). Gold standard: WOFF2 files self-hosted on the site origin with font-display: swap, preloaded when critical.
Sådan håndhæves self-hosted-fonts
Reglen self-hosted-fonts evalueres på hver enkelt renderet HTML-side for sig, så et fund altid kan føres tilbage til én konkret side og én konkret rettelse i data eller template. Fejler en side, får agenten en finding, hvor fix-instruktionen for self-hosted-fonts er formuleret som en konkret arbejdsordre med filnavne og målbare krav — aldrig et vagt råd. Severity 'error' betyder at et brud på self-hosted-fonts fejler hele verifikationen med exit-kode 1, så hverken CI eller en agent kan skibe sitet før fundet er rettet.
Domænet: performance
Perf-domænet internaliserer de statisk afgørbare dele af Lighthouse: billedformater og -vægt, render-blokerende ressourcer, dimensioner mod layout shift og selvhostede fonte. Målet er ikke en score men disciplin — siden er hurtig, fordi den ikke kan bygges langsom. Netop derfor hører self-hosted-fonts hjemme her: kravet kan afgøres maskinelt, og dermed kan det håndhæves i stedet for blot at blive anbefalet.
Test og fixtures
Som alle kontrakter i frameworket har perf/self-hosted-fonts en mutant-test, der beviser at reglen fejler, når kravet brydes — en regel uden en fejlende test er ikke en regel. Golden-fixturet beviser omvendt, at en fuldt compliant side består self-hosted-fonts sammen med de øvrige 85 regler, og denne demoside er selv underlagt hele kontrakten.
Relaterede regler
Tilbage til oversigten over alle 86 regler.