Beslisrecords, vijf van tien. Een architectuurbeslissing per stuk, uit een beheerst AI-agentplatform dat ik als prototype ontwierp en bouwde voor de Nederlandse lokale overheid.
De situatie
Tijdens het bouwen van het platform gebruikte ik AI-pipelines om een groot deel van het ontwerpwerk te produceren: kandidaatbeslissingen, conceptrecords, voorgestelde wijzigingen aan het componentmodel. Ze waren er goed in, en dat was het probleem. Ze produceerden beslissingskandidaten sneller dan de verantwoordelijke mens ze kon lezen, laat staan bekrachtigen. Beslislatentie, niet generatie, werd de schaarse bron.
De voor de hand liggende oplossing is de pipeline zijn eigen output laten goedkeuren. Twee principes waar ik me al aan had gecommitteerd verboden dat. Een criticus mag zijn eigen werk niet goedkeuren. Een model mag nooit de enige goedkeurder zijn van iets met gevolgen. Die zijn niet willekeurig; het zijn dezelfde principes die het platform afdwingt voor de agents die het draait, en een bouwproces dat ze voor het gemak negeert heeft geen recht van spreken om ze aan anderen op te leggen.
De vraag was dus niet “mens of machine”. De vraag was: welke beslissingen kunnen worden gedelegeerd, op welke grond, en hoe blijft een mens verantwoordelijk zonder voor alles de bottleneck te zijn?
De beslissing
Vier klassen, geordend op blast radius.
Klasse 0 is mechanisch onderhoud: opmaak, indexen opnieuw genereren, hernummeren. Autonoom. Als het misgaat, laat een diff het zien en lost een revert het op.
Klasse 1 is bewijsoordelen: heeft deze bewering een bron, slaagt deze test, past dit record bij zijn schema. Autonoom, omdat een externe bron het orakel is. De pipeline oordeelt niet; hij toetst aan iets buiten zichzelf. En de markeringen die hij produceert zijn append-only, zodat een verkeerd oordeel zichtbaar naast het juiste staat in plaats van het te vervangen.
Klasse 2 is niet-bindende concepten: voorgestelde beslistekst, voorgestelde amendementen, voorgestelde structuur. Autonoom met instemming van meerdere rollen, wat betekent dat meer dan een pipelinerol het eens moet zijn voordat het concept wordt vastgelegd. Een audit bij de volgende run herleest elke output van klasse 2. Botsingen, waarbij twee concepten elkaar tegenspreken, worden gemeld en nooit door de pipeline opgelost. Een mens lost ze op.
Klasse 3 is bindend: alles met een getal erin, alles met rechtsgevolg, alles wat de delegatieregels zelf verandert. Alleen menselijk. Expliciete instemming, geen deadline, en stilte betekent nog niet besloten. Een item van klasse 3 dat niemand heeft beantwoord is open, niet goedgekeurd.
Later heb ik dit aangepast. Omkeerbare interne “hoe”-beslissingen, keuzes over structuur en methode die zonder extern effect ongedaan gemaakt konden worden, gingen naar een AI-raad onder audit: meerdere modelrollen met verschillende opdrachten die het eens moeten zijn. Getallen, rechtsgevolg en de delegatieregels zelf bleven menselijk.
Stilte betekent “nog niet besloten”. In de meeste organisaties betekent stilte “goedgekeurd”, en zo keuren de meeste organisaties dingen goed waarvan niemand zich herinnert ze besloten te hebben.
Wat ik afwees, en waarom
Volledige delegatie. Als de pipeline zijn eigen beslissingen als geaccepteerd kon markeren, zou “geaccepteerd” alleen betekenen dat de machinerie geen bezwaar had. Dat is geen beslissing, het is een afwezigheid van foutmeldingen, en het is precies hoe een criticus die zijn eigen werk goedkeurt eruitziet.
Instemming via deadline. Voorstellen, een week wachten, stilte als ja behandelen. Zo werken veel organisaties in de praktijk en het is een stempel met een kalender eraan. De timeout weet niet of de mens aan het nadenken was of op vakantie.
Status quo. Alles door een mens bekrachtigd. Daar begon ik en de latentie maakte het onwerkbaar. Een governance-schema dat een wachtrij produceert die niemand kan wegwerken is geen governance; het is een achterstand met een geweten.
Wat het kost
Een classificatiestap op elke output: iemand, of iets, moet zeggen tot welke klasse een kandidaat behoort, en de classificeerder zelf is een concept van klasse 2 dat onder audit valt. Instemming van meerdere rollen vermenigvuldigt de modelaanroepen voor werk van klasse 2. De audit bij de volgende run betekent dat elke run een deel van zijn budget besteedt aan het herlezen van de vorige.
En er is een eerlijk risico dat ik wil benoemen in plaats van begraven. De raad produceert werk van klasse 2 en de raad bekrachtigt het ook. Dat zijn verschillende rollen met verschillende opdrachten, maar ze delen dezelfde onderliggende modellen, en ze kunnen blinde vlekken delen met hun auditor. Instemming van meerdere rollen beschermt tegen de fout van een enkele rol. Het beschermt niet tegen een fout die elke rol op dezelfde manier maakt.
Wat het niet doet
Het maakt de concepten niet goed. Het maakt ze traceerbaar en omkeerbaar. Kwaliteit komt nog steeds uit de opdrachten en uit de mens die de output leest.
En een opmerking over waar dit is geëindigd. De pipeline die dit schema beheerste is later gepauzeerd, om de tijd in werkende software te steken. De klassen en de principes erachter zijn overgenomen in het eigen goedkeuringsmodel van het platform. De pipeline zelf heeft de confrontatie met de vraag wat eigenlijk de moeite van het bouwen waard was, niet overleefd.
Als je een ding meeneemt
Neem de laatste tien beslissingen die een geautomatiseerd proces in je organisatie heeft genomen en sorteer ze in drie stapels: omkeerbaar zonder extern effect, toetsbaar aan een externe bron, en bindend. Als iets op de derde stapel is goedgekeurd door een timeout, is dat het eerste om terug te halen.
And now for something completely different: een besluitvormingsproces waarin stilte geen instemming is.
Verwijzingen
De knipogen en citaten in dit stuk, met hun herkomst:
- Monty Python’s Flying Circus: “And now for something completely different”, John Cleese’s link line.
- #Beslisrecords
- #AI-governance
- #Architectuur

Rutger Hemrika
AI-strategie en -governance voor sectorsoftware. Schrijft vanuit bouwen, niet vanuit slides; elke claim draagt een bewijsniveau.