Koden er testet, buildet er grønt — men har du faktisk set indholdet af den zip-fil, brugerne downloader? Her er en tjekliste med syv tjek og de præcise kommandoer, du kan køre på 30 sekunder.
Opdateret august 2026 · 5 minutters læsning
I vores eget projekt udgav vi to versioner af en browser-udvidelse, hvor zip-filen manglede de nyeste fejlrettelser — mens alle tests var grønne. Årsagen: testene læste kernekildekoden, zippen indeholdt en glemt manuel kopi. Hele historien står i casen om release integrity.
Mønsteret er udbredt, fordi det føles sikkert: buildet virker, tests er grønne, så zips bygges sidst og hurtigt. Netop dét sidste trin er det eneste, brugerne egentlig rører ved.
produkt-v1.3.7.zip). En fil uden version i navnet bliver før eller siden forvekslet med en gammel.1) Se præcis hvad zippen indeholder (fanger skrald og manglende filer):
unzip -l produkt.zip | sort -k4
2) Parity-tjek: matcher filen i zippen kilden? Udpak i en temp-mappe og sammenlign:
rm -rf /tmp/ziptest && mkdir /tmp/ziptest
unzip -q produkt.zip -d /tmp/ziptest
diff /tmp/ziptest/kernen.js src/kernen.js \
&& echo "PARITY OK" || echo "PARITY FEJLEDE"
3) Versions-sweep: find gammelt versionsnummer i artefaktet:
grep -rn "1\.3\.6" /tmp/ziptest \
&& echo "GAMMEL VERSION I PAKKEN" || echo "version OK"
Læg de tre trin i et script, og kald det fra dit bygge-script som det absolut sidste trin. Fejler ét tjek, fejler buildet — og der udgives ingenting.
Test det, brugerne modtager. Alt andet — grønne tests, pæne builds, gode intentionslister — er om vejen, ikke målet. Én parity-test mod selve artefaktet havde fanget vores fejl, før nogen bruger så den.
Det samme princip gælder uden for software: det dokumentet kunden downloader, den fil der lægges op til markedspladsen, det billede siden viser — åbn det, se på det, verificér det efter udgivelsen. Det tager minutter og sparer tillid.
Fordi dine tests kører mod kildekoden — ikke mod artefaktet. Zip-filen er bygget af et separat trin, som kan pakke ældre filer, glemme nye eller medtage skrald. En test kan kun garantere det, den faktisk indlæser.
En test der sammenligner filen i zippen med dens kilde byte-for-byte. Hvis de adskiller sig, fejler buildet. Det fanger den klassiske fejl hvor samme kode vedligeholdes to steder, og kopien bliver glemt ved en udgivelse.
Ja — det er hele pointen. Læg kommandoerne i et script, og lad det køre som det sidste trin i dit bygge-script, før zips navngives og uploades. Hvis et tjek fejler, fejler buildet, og der kommer ingen udgivelse.
Stop udgivelsen. Find ud af hvorfor filen afveg (manuel kopi? glemt build-trin?), ret årsagen — ikke kun symptomet — bump versionsnummeret, byg igen og kør hele tjeklisten én gang til på det nye artefakt.