Audit, transcripten en bewaartermijn
Wie AI op bedrijfsdata loslaat, moet achteraf kunnen zeggen wat er is gebeurd. Plainwater AI legt drie dingen vast: een auditketen van gebeurtenissen, de transcripten van prompts en antwoorden, en de beoordeling van opdrachten tegen de regels die golden.
De auditketen
Elke relevante gebeurtenis wordt een regel in de audit: een run die start, een toolaanroep, een weigering, een rechtenwijziging, een ingesteld geheim (alleen de vingerafdruk). De audit is een hash-keten: elke regel bevat de hash van de vorige. Eén regel wijzigen of weghalen breekt de keten op een plek die je kunt aanwijzen.
Elk uur verankert het platform de ketens van runs in de keten van de klant. Wie een hele keten van een run weghaalt, laat daardoor ook een gat achter dat opvalt. De audit is append-only: er is geen pad om regels achteraf aan te passen.
Wat er niet in de audit staat: geheimen, de invoer van tools en de inhoud van gesprekken. De audit zegt wat er gebeurde, niet wat er gezegd werd.
Transcripten
Prompts en antwoorden worden bewaard, versleuteld met AES-256-GCM per veld. Wat bewaard wordt, is precies wat de hash dekt: de opgeslagen tekst is aantoonbaar dezelfde als wat er naar het model ging.
| Onderwerp | Hoe |
|---|---|
| Versleuteling | AES-256-GCM, per run een eigen sleutelcontext |
| Namen | Opgeslagen als pseudoniem; pas bij het lezen teruggezet |
| Lezen | Alleen door wie daar recht op heeft |
| Inzage | Elke inzage is zelf een auditgebeurtenis |
| Schrijven | Mag een run nooit laten mislukken |
Er is geen tweede kopie met echte namen. Een mens die een transcript leest, krijgt het ontsleuteld en met de echte namen terug. Het model heeft die echte namen nooit gezien.
Een audittrail die een run kan breken, is er een die iemand uitzet. Daarom gaat het werk door als het bewaren van een transcript mislukt, en wordt die mislukking zelf vastgelegd.
Bewaartermijn
Transcripten worden niet eeuwig bewaard: er geldt een bewaartermijn. Welke termijn bij jouw organisatie past, spreken we bij de inrichting af.
Richtlijnen en beoordeling achteraf
Een klant kan richtlijnen vastleggen in zijn spelregels, bijvoorbeeld: "geen persoonsnamen in opleveringen" of "elke wijziging op productie heeft een terugdraaiscript". Bij het aanmaken legt een opdracht vast welke versie van de regels gold.
Na afloop beoordeelt het platform de opdracht tegen die versie. Een bevinding bevat een regel, een oordeel en een plek (welke run, welke aanroep, welke tekenpositie), maar nooit de tekst die matchte. Wat niet automatisch te controleren valt, krijgt het oordeel mens nodig, nooit "geslaagd".
Voor de beoordeling achteraf telt de versie die gold bij het begin van de opdracht. Voor de handhaving tijdens het werk telt altijd de nieuwste versie. Een klant die vandaag het budget verlaagt, bedoelt vandaag.
Wat je kunt terugzien
- per opdracht een tijdlijn: welke agents, welke tools, welke wachtmomenten, welke opleveringen;
- per run de modelaanroepen met het beleidsbesluit en het verbruik;
- per toolaanroep de status en het resultaat (zoals de agent het zag);
- per klant de beoordelingen en hun bevindingen.
Voorbeeld
Een auditor vraagt na drie maanden: "Heeft een AI ooit salarisgegevens van onze medewerkers gezien?" De beheerder opent de opdrachten op de HR-bron. De tijdlijn laat zien dat de bron op alleen metrics stond. De toolaanroepen laten alleen tellingen en kolomprofielen zien, en de transcripten tonen pseudoniemen in plaats van kolomnamen. De auditketen is intact. Het antwoord is "nee", en het is aan te tonen.