Rättade en sitemap där 172 av 176 URL:er delade samma ändringstidsstämpel genom att hämta datumet ur git‑historiken, efter att ha konstaterat att exporten skriver om varje fil vid varje körning.
Arbetet utfört: augusti 2026
172 datum i sitemapen som alla var ett och samma datum
Situation. Webbplatskartan talade om för sökmotorer att 172 av webbplatsens 176 sidor senast hade ändrats i samma ögonblick. Det är ingen subtil felaktighet — ett ändringsdatum är ett löfte till en sökrobot om att en sidas innehåll har ändrats, och en webbplats som ger det löftet 172 gånger samtidigt säger antingen sanningen om en fullständig omskrivning eller säger ingenting användbart till någon.
Uppgift. Datumen måste beskriva innehållet snarare än filen, utan att hitta på en precision som repot inte har.
Handling. Orsaken var att datumet hämtades från filens ändringstid och att innehållsexporten skriver om varje fil vid varje körning, så en enda synkronisering stämplade hela korpusen. Åtgärden flyttar källan till versionshistoriken, med en reservkedja som först prövar ett explicit fält, sedan commit‑historiken och sist filen. Fällan i den åtgärden är värd att dokumentera: det bokstavliga fältnamnet måste stå i listan, annars läser generatorn aldrig fältet, så en konfiguration som ser ut att föredra ett datum som författaren har angett, men som utelämnar namnet, ignorerar i tysthet varje sådant datum. Två andra beslut om datum kom ur samma arbete. Databasen anger nu när varje post skrevs och senast reviderades, avsiktligt hållet åtskilt från när arbetet utfördes — det skiljer år mellan dem, och att blanda ihop dem skulle datera en sida som skrevs i år till för ett decennium sedan. Och raderna i den filen är valfria och ingenting härleds, eftersom repots egen historik börjar senare än innehållet: ett datum som saknas lämnar fältet tomt i stället för att registrera en migrering, enligt principen att ett exakt men felaktigt tal är värre än ett som saknas, eftersom det bara är det felaktiga som blir trott.
Resultat. En ny synkronisering efter en månads innehållsändringar berör nu åtta filer av 186 i stället för samtliga, och webbplatskartan säger något som är sant. Den allmänna regeln skrevs in i metadatadokumentet vid sidan av åtgärden, eftersom samma fälla gäller för varje fält som har en reservkedja.
Ta en titt på hela portföljen.
En del av en längre historik — och den finns i sin helhet här.
Varje post är skriven på samma sätt: situationen, uppgiften, vad vi gjorde och vad som förändrades.