AI-code in productie: 9 rode vlaggen die je niet wilt missen

AI kan snel code schrijven, maar ook snel risico’s introduceren. Dit is een pragmatische checklist voor teams: tests, dependencies, security, reviews en release-veiligheid.

AI-code in productie: 9 rode vlaggen die je niet wilt missen

AI-code is geweldig voor snelheid. Maar in productie betaal je niet voor snelheid. Je betaalt voor betrouwbaarheid.

Het probleem met AI-gegenereerde code is niet dat het “altijd fout” is. Het probleem is dat fouten vaak plausibel zijn. En plausibele fouten glippen door reviews, zeker als je onder tijdsdruk werkt.

In 20 seconden

  • Behandel AI-code als code van een nieuwe collega: nuttig, maar nog onvoorspelbaar.
  • Zonder tests en dependency checks is AI-code een versneller van technische schuld.
  • Zet één extra gate neer in je workflow: security en review op de plekken waar schade groot is.

De 9 rode vlaggen

1) Geen tests, wel vertrouwen

Als er geen tests zijn (of ze zijn oppervlakkig), heb je geen vangnet. AI-code kan er netjes uitzien en toch verkeerd zijn.

Fix: minimaal unit tests voor kernlogica en één integratietest voor de belangrijkste flow.

2) “Het werkt op mijn machine” code

AI schrijft soms code die impliciet leunt op een lokale setup, globale state of toevallige configuratie.

Fix: run het in CI en in een schone environment.

3) Dependency drift

AI voegt libraries toe die je niet nodig hebt, of kiest versies die niet passen bij je stack.

Fix: dependency allowlist, lockfiles, en automatische dependency scanning.

4) Nieuwe code, maar geen logging of metrics

AI maakt iets werkend, maar vergeet observability. Dan ontdek je problemen pas bij klanten.

Fix: standaard logging en een minimale set metrics voor nieuwe paden.

5) Silent failure

Try/catch zonder actie, errors wegslikken, of “default values” gebruiken waar je juist moet falen.

Fix: fail fast op kritieke paden, en log errors altijd met context.

6) Security blind spots

Denk aan input validation, auth checks, SSRF, prompt injection (als je met LLM’s werkt), of onveilige parsing.

Fix: security linting, SAST, dependency scanning, en een korte threat model check voor nieuwe features.

7) Copy-paste patroon zonder begrip

AI herhaalt patronen die “vaak werken” maar niet passen bij jouw domein. Bijvoorbeeld caching waar je consistentie nodig hebt.

Fix: review op intentie: waarom is dit nodig, wat is het risico?

8) Complexiteit neemt toe zonder reden

Meer abstractions, meer layers, meer configuratie. Het voelt professioneel, maar het maakt onderhoud duur.

Fix: vraag: wat is de simpelste oplossing die voldoet?

9) Geen rollback plan

Als het misgaat, wil je binnen minuten terug kunnen. AI-code maakt het verleidelijk om sneller te shippen dan je releaseproces aankan.

Fix: feature flags, canary releases, en een duidelijke rollback knop.


Praktische workflow (zo maak je dit saai en veilig)

  1. AI maakt een eerste versie.
  2. Jij dwingt tests af (minimaal voor kernlogica).
  3. CI draait: lint, tests, dependency scan.
  4. Review: intentie, security, en onderhoudbaarheid.
  5. Release met rollback (flag of canary).

Prompt die beter werkt dan “maak dit even”

Je bent een senior engineer. Review deze code alsof hij morgen in productie gaat.

Geef:
1) 10 concrete risico’s (bugs, security, performance, maintainability)
2) Welke tests ontbreken (en welke testcases)
3) Welke dependencies verdacht zijn
4) Wat de simpelste versie is die hetzelfde doet

Antwoord kort en met bullets. Als je iets niet zeker weet, stel 1 vraag terug.

Optionele bron (als je het proces wil formaliseren)

OWASP Top 10
Handig als basis voor security checks bij nieuwe features en inputs.

Camiel van Ik werk met AI