ledger/lastmod-truthfulness
lastmod advances exactly when content actually changed. Reglen ledger/lastmod-truthfulness kører i site-scope med severity 'error' og indgår i build-ledger-domænet sammen med 3 andre kontrakter i frameworket.
Hvorfor lastmod-truthfulness findes
Google explicitly ignores lastmod from sites that lie about it, and fake freshness reads as deceptive. Comparing the sitemap lastmod against the ledger's content hash makes honesty mechanical: hash unchanged → lastmod must not advance; hash changed → lastmod must advance.
Sådan håndhæves lastmod-truthfulness
Reglen lastmod-truthfulness evalueres på hele sitets fakta-indeks på én gang, fordi kravet kun giver mening på tværs af sider — den enkelte side kan se perfekt ud, mens mønsteret er problemet. Fejler en side, får agenten en finding, hvor fix-instruktionen for lastmod-truthfulness er formuleret som en konkret arbejdsordre med filnavne og målbare krav — aldrig et vagt råd. Severity 'error' betyder at et brud på lastmod-truthfulness fejler hele verifikationen med exit-kode 1, så hverken CI eller en agent kan skibe sitet før fundet er rettet.
Domænet: build-ledger
Ledger-domænet er frameworkets hukommelse på tværs af builds: en committet manifest af URL'er, content-hashes og ankre. Den gør ærlighed maskinelt verificerbar — ingen URL forsvinder lydløst, lastmod må kun rykke sig når indholdet faktisk ændrede sig, og udgivelsestakten holdes under abuse-tærsklen. Netop derfor hører lastmod-truthfulness 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 ledger/lastmod-truthfulness 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 lastmod-truthfulness sammen med de øvrige 85 regler, og denne demoside er selv underlagt hele kontrakten.
Relaterede regler
Tilbage til oversigten over alle 86 regler.