Sam's Blog
Enhver endring som er verdt å bygge begynner med en intensjon
October 14, 2026
En uke med SDD: fra en første versjon til et verktøy som kontrollerer sitt eget arbeid.
Om dagen er jeg programvareingeniør og senior arkitekt. Om kveldene og i helgene maler jeg under navnet Sam Grudge: hjerter, i olje på lerret, bygget opp lag for lag til fargen gløder (hearts-colors.com). De to livene virker svært forskjellige. Mer og mer møtes de i ett spørsmål: hva ønsker jeg å gjøre med mine egne hender, og hva kan jeg overlate til en maskin?
SDD kommer fra jobben min. Det er en spesifikasjonsdrevet utviklingsmetode for AI-kodeagenter (Claude Code og Codex), og det er åpen kildekode på GitHub. Ideen er enkel. Før agenten skriver kode, skriver den en kort spesifikasjon: krav, og konkrete eksempler på hvordan de skal oppføre seg, også når noe går galt. Jeg godkjenner den. Deretter bygger agenten test-først, verifiserer den mot spesifikasjonen, og holder en levende oversikt over hvordan systemet oppfører seg.
Hva som endret seg på en uke
Den første versjonen kom ut 7. oktober. Den håndterte små endringer fra start til slutt, med én godkjenning, test-først-oppgaver og en levende spesifikasjon. Syv dager og fjorten versjoner senere:
- Større arbeid følger sin egen vei. En større endring får tre godkjenninger i stedet for én: spesifikasjonen, planen og resultatene.
- En godkjent spesifikasjon låses. Å endre den i etterkant krever en loggført, godkjent endring. Feil får sin egen flyt, og en regresjonstest legges til i den levende spesifikasjonen slik at feilen ikke kan komme tilbake ubemerket.
- En kritiker gjennomgår spesifikasjonen før noe bygges. Den reviderer hvert krav og stiller meg bare de spørsmålene det er opp til meg å avgjøre, maks fem.
- SDD utvikler nå SDD. Siden versjon 0.5 kjører prosjektet etter sin egen metode, med "produksjons"-strenghet: det nest høyeste av dets fire nivåer.
- Testsuiten gikk fra 82 til 208 tester.
Verktøyet fant hull i seg selv
Den første endringen SDD gjennomførte på seg selv var en feil det hadde oppdaget i sine egne godkjenninger. Den endelige "resultat"-godkjenningen leste ikke vurderingen fra kontrolløren, slik at arbeid merket med mangler likevel kunne godkjennes. Prosjektets grunnlov, dets ikke-forhandlingsbare regler, kunne endres etter godkjenning uten at noen merket det, inkludert senking av strenghetsnivået.
Begge deler er rettet. En godkjenning dekker nå nøyaktig det som ble godkjent. Resultatporten godtar bare en godkjent vurdering, og grunnloven bærer et fingeravtrykk: enhver senere endring blir rapportert og blokkerer fremgang inntil jeg godkjenner på nytt.
Det jeg likte best var hvordan man kom dit. Verifiseringen kjørte tre ganger, hver gang i en ny økt uten hukommelse om tidligere arbeid. De to første rundene avdekket mangler: regler spesifikasjonen fastsatte, men som ingen test beviste. Hver gang ble spesifikasjonen endret, de manglende testene skrevet, og kontrolløren så på nytt. Den tredje runden besto. Ingenting ble godkjent uten bevis.
Lag
Et av maleriene mine består av lag. De tidlige forsvinner under fargen, men de holder alt oppe. SDD fungerer på samme måte: intensjon, så spesifikasjon, plan, tester og verifisering, hver synlig og kontrollerbar under koden.
På nettsiden min sier jeg at enhver historie som er verdt å fortelle begynner med et hjerte. I programvare begynner enhver endring som er verdt å bygge med en intensjon. Den delen beholder jeg selv. Det samme gjør beslutningene og godkjenningene, som bærer mine egne ord.
Å delegere slitet
Ikke alle lag trenger en mesterhånd. En verifiseringsrunde tok omtrent 14 minutter og nesten 180 000 tokens, og mye av det var mekanisk: å spille av tester mot gammel kode, bryte regler med vilje for å bevise at en test fanger dem, samle bevis. Et skript kan gjøre den jobben, helt uten modell.
Det er neste steg. En hovedmodell vil orkestrere: den snakker med meg, holder portene og fordeler arbeidet. Uavhengige kontrollører vil fungere som separate agenter på de sterkeste modellene. Rutineoppgaver går til billigere, raskere modeller. Hver type arbeid går til verktøyet som passer, slik en pensel passer til ett strøk og en palettkniv til et annet.
Det er løftet fra AI som betyr noe for meg. Det tar ikke bort håndverket. Det tar bort slitet rundt håndverket, slik at jeg beholder delen jeg elsker. På kontoret er det arkitektur og dømmekraft. I atelieret er det det neste hjertet.
SDD er åpen kildekode under MIT-lisensen: github.com/fpapleux/sdd-skill. Utgivelsesnotatene lister opp hver versjon.



