Die Drei-Monats-Mauer


Sie bauen ein SaaS mit vibe coding. Es startet schnell. “Baue Login” — 30 Sekunden. “Fuege Zahlungen hinzu” — 2 Minuten. Ein MVP wird in drei Wochen ausgeliefert.

Drei Monate spaeter passieren seltsame Dinge. Die KI “raeumt” die Zahlungslogik auf und aendert stillschweigend die Rabattberechnung. Das Hinzufuegen eines neuen Endpoints bricht die bestehende Authentifizierung. Eine Refactoring-Anfrage aendert oeffentliche API-Feldnamen und toetet jeden Client.

Das nennt man logic drift — KI veraendert unbeabsichtigt bestehende Geschaeftslogik. Regressionsbugs gibt es auch in der traditionellen Entwicklung. Aber logic drift ist anders. Aenderungen, die der Entwickler nie beabsichtigt hat, geschehen unsichtbar, quer durch die gesamte Codebasis. Jeder Prompt startet in einem frischen Kontextfenster.


Drift in Zahlen

Das ist kein Bauchgefuehl. Es gibt Daten.

Geschwindigkeit kostet Komplexitaet. Ein Forschungsteam der Carnegie Mellon University verglich 807 GitHub-Repositories vor und nach der Einfuehrung von Cursor (MSR 2026). Code-Ergaenzungen stiegen im ersten Monat um das 3- bis 5-fache. Nach zwei Monaten war der Geschwindigkeitsvorteil verschwunden. Was blieb: Warnungen der statischen Analyse um 30% gestiegen, Code-Komplexitaet um 41% gestiegen — dauerhaft.

Es wurde nicht schneller — es wurde langsamer. Die gemeinnuetzige KI-Forschungsorganisation METR fuehrte eine randomisierte kontrollierte Studie mit 16 erfahrenen Open-Source-Entwicklern durch (2025). Bei Projekten, die sie bereits gut kannten, brauchte die Gruppe mit KI-Tools 19% laenger fuer die Aufgaben. Dennoch nahmen die Entwickler selbst eine 20% schnellere Arbeitsweise wahr. Eine Luecke von 39 Prozentpunkten zwischen Wahrnehmung und Realitaet. Bei neuen Projekten koennen die Ergebnisse abweichen, aber die Annahme “KI = immer schneller” ist gebrochen.

Im grossen Massstab bricht die Stabilitaet zusammen. Laut dem Google DORA Report (2025) korreliert jede 25%ige Zunahme der KI-Adoption mit einem 7,2%igen Rueckgang der Software-Delivery-Stabilitaet.

Und sie brach tatsaechlich zusammen. Amazon verpflichtete 2025 unternehmensweit zum Einsatz von KI-Coding-Tools und setzte 21.000 KI-Agenten ein. Im gleichen Zeitraum wurden etwa 30.000 Mitarbeiter entlassen, was die Review-Kapazitaet drastisch reduzierte. Die Kombination aus schneller KI-generierter Code-Produktion und reduziertem Review-Personal fuehrte zu 4 Sev-1-Vorfaellen in 90 Tagen. Am 5. Maerz 2026 verursachte ein 6-stuendiger Ausfall geschaetzte 6,3 Millionen verlorene Bestellungen. Interne Dokumente stellten fest: “Die schnelle Code-Generierung durch GenAI legt unbeabsichtigt Schwachstellen offen, und die aktuellen Schutzmassnahmen sind voellig unzureichend.”


“Mach TDD” ist nicht die Antwort

Der uebliche Rat bei vibe coding drift lautet “schreib Tests”. Die Richtung stimmt, aber wie Sie Tests bereitstellen, bestimmt das Ergebnis.

Die TDAD-Studie (arxiv 2026) hat dies praezise getestet. Qwen3-Coder 30B erhielt 100 Instanzen aus SWE-bench Verified.

BedingungRegressionsrate
Baseline (keine Test-Anweisungen)6,08%
Prozedurale “mach TDD”-Anweisung9,94% (schlechter)
Betroffene Testdateien im Kontext bereitgestellt1,82% (70% Reduktion)

Dem Agenten “mach TDD” zu sagen, verschlechtert die Ergebnisse. Der Agent weicht von der urspruenglichen Aufgabe ab, um prozeduralen Anweisungen zu folgen. Aber “diese Testdateien muessen bestehen” als konkreten Kontext bereitzustellen, reduziert Regressionen um 70%.

Der Unterschied ist klar. Nicht “wie man testet”-Anweisungen, sondern “was bestehen muss”-Vertraege.


Hurl: Vertraege in plain text

Hurl ist ein Test-Tool, das HTTP-Anfragen und erwartete Antworten in plain text deklariert. Gepflegt von Orange (France Telecom), ein Rust-Binary ohne Laufzeitabhaengigkeiten, 18,7k GitHub-Sterne. Schnell genug, um bei jedem Commit in CI zu laufen.

# Login succeeds
POST http://localhost:8080/api/auth/login
{
  "email": "test@example.com",
  "password": "secret123"
}
HTTP 200
[Asserts]
jsonpath "$.token" exists
jsonpath "$.user.email" == "test@example.com"

# Unauthenticated access returns 401
GET http://localhost:8080/api/pages
HTTP 401

Zwei Vertraege. Login muss 200 mit einem Token zurueckgeben. Unauthentifizierter Zugriff muss 401 zurueckgeben.

Wenn diese Datei in git committet wird und bei jedem Commit in CI laeuft — in dem Moment, in dem die KI die Auth-Logik “aufraeumt” und 401 zu 200 wird, wird der Commit abgelehnt. Drift wird erkannt, bevor er die Produktion erreicht.


Warum Hurl

Unit-Tests koennen drift ebenfalls erkennen — wenn man der KI keine Berechtigung gibt, Testdateien zu aendern. Aber Unit-Tests verifizieren interne Funktionen, wodurch sie strukturell an die Implementierung gekoppelt sind. Wenn sich Funktionsnamen aendern, brechen Tests. Jedes Refactoring erfordert Test-Updates.

Hurl arbeitet an der HTTP-Grenze. Es deklariert nur Anfragen und Antworten. Es weiss nichts ueber Code-Interna. Egal wie die KI den Code aendert — wenn das extern beobachtbare Verhalten gleich bleibt, bestehen die Tests; wenn es abweicht, schlagen sie fehl. Es ist natuerlich implementierungsunabhaengig.

Unit-TestsHurl
VerifiziertFunktions-InternaHTTP-Vertrag
Bei KI-RefactoringZusammen geaendertUnveraendert
Drift-ErkennungBedingt (wenn gesperrt)Natuerlich
Code-Struktur-AbhaengigkeitHochKeine
Menschliche LesbarkeitCode-EbenePlain text
LLM-GenerierungErfordert Verstaendnis der Code-StrukturNur HTTP noetig

Was Hurl verifiziert, ist nicht Code, sondern Verhalten. Code kann von der KI frei geaendert werden. Verhalten darf sich nicht aendern. Diese Unterscheidung ist der Schluessel zur Drift-Erkennung.


Ratchet-Sperre

Wenn Hurl-Tests bestehen, sperren Sie sie. Das ist der Ratchet.

1. Write Hurl tests for current API (or auto-extract)
2. Run on every commit in CI
3. Passing tests cannot be deleted or modified
4. New features require new Hurl tests
5. All existing + all new tests must pass to merge

Sagen Sie dem Agenten “refaktoriere diesen Code” und er aendert den Code frei. Aber wenn Hurl-Tests fehlschlagen, wird der Commit abgelehnt. Der Agent muss beim Refactoring alles bestehende Verhalten beibehalten. Drift in Randfaellen, die nicht von Hurl abgedeckt sind, ist weiterhin moeglich, aber fuer abgedecktes Verhalten wird drift strukturell unterdrueckt.

Dies entspricht genau dem Ergebnis der TDAD-Studie. Keine prozedurale “schreib Tests”-Anweisung, sondern ein konkreter “diese Hurl-Dateien muessen bestehen”-Vertrag. Der Agent kann die Methode waehlen, aber den Vertrag nicht verletzen.


Funktioniert auch bei Legacy

Sie betreiben bereits vibe-coded Software in Produktion? Kein Neustart noetig.

Schritt 1: Aktuelles Verhalten in Hurl erfassen.

Wenn API-Dokumentation existiert, uebersetzen Sie sie direkt in Hurl. Wenn nicht, lassen Sie einen Agenten den bestehenden Code lesen und Hurl-Tests schreiben. Das Ziel ist, “so funktioniert es aktuell” in plain text fuer jeden Endpoint zu deklarieren.

Schritt 2: In CI einbinden.

Stellen Sie sicher, dass alle Hurl-Tests bestehen, und fuegen Sie sie als Merge-Bedingungen hinzu.

Schritt 3: Sie sind jetzt sicher.

Ob die KI refaktoriert oder Features hinzufuegt — Hurl schuetzt bestehendes Verhalten. Wenn drift auftritt, erkennt CI ihn sofort.

Kein Fundamentbau — Erdbebenertuechtigung. Das Gebaeude verstaerken, ohne den Laden zu schliessen.


Nicht das Ende von vibe coding — seine Evolution

Andrej Karpathy, der den Begriff “vibe coding” praegte, erklaerte genau ein Jahr spaeter, im Februar 2026: “Die Aera des vibe coding ist vorbei.” Das neue Paradigma ist agentic engineering — Menschen schreiben keinen Code, sie orchestrieren Agenten, die autonom planen, implementieren und testen.

Der Thoughtworks Technology Radar (2025) stufte Spec-Driven Development auf der Ebene “Assess” ein. Martin Fowlers Team veroeffentlichte eine SDD-Tools-Analyse. Die Branche konvergiert in dieselbe Richtung.

Hurl-Tests sind die kleinste Einheit dieses Uebergangs. Sie brauchen keine 10 Spezifikationen. Sie muessen OpenAPI nicht lernen. Eine Hurl-Datei ist ein Vertrag. Und dieser Vertrag verhindert drift strukturell, ohne die Freiheit des Agenten einzuschraenken.

Aendern Sie nicht das Modell. Fuegen Sie einen Vertrag hinzu.


Verwandte Artikel


References