Der Unterschied
Guardrails sind Invarianten, die bei jedem einzelnen AI-Prompt als System-Prompt injiziert werden. Sie sind damit keine Richtlinie, die jemand nachträglich prüft, sondern eine Bedingung, unter der jeder Arbeitsschritt überhaupt erst entsteht. Was gegen sie verstösst, wird nicht erst am Ende gefunden, sondern bei dem Schritt, in dem es entsteht.
Der übliche Weg ist umgekehrt: erst generieren, dann prüfen. Ein Linter, ein Scanner, ein Review — und was durchfällt, wird nachgebessert. Das funktioniert bei einzelnen Dateien.
Bei einem Projekt, das aus hunderten parallelen Arbeitsschritten entsteht, funktioniert es nicht mehr. Ein struktureller Fehler, der in Schritt 12 entsteht, hat sich bis Schritt 200 fortgepflanzt. Ihn dann zu finden ist nicht mehr Nachbessern, sondern Umbauen — und der Kontext, in dem er entstand, ist längst weg.
Die Invarianten stehen nicht in einer Dokumentation, die ein Modell gelesen haben könnte. Sie stehen in jedem Prompt.
Die mitgelieferten Invarianten sind die Grundausstattung, nicht die Grenze. Ein Team, das eigene Architekturregeln durchsetzen will — eine bestimmte Schichtung, ein Namensschema, ein Verbot bestimmter Bibliotheken — hinterlegt sie als eigene Guardrails. Sie werden genauso injiziert wie die mitgelieferten. Wer eine davon zusätzlich maschinell validieren lassen will, hinterlegt sie als maschinenlesbare Regel; als blosse Prosa wirkt sie im Prompt, aber nicht in der Validierung.
Im betriebenen Dienst sammelt das System ausserdem Vorschläge für neue Guardrails aus dem laufenden Betrieb. Angewandt wird davon nichts von selbst: der einzige Weg in den Katalog führt über eine menschliche Freigabe.
Das ist der Punkt, an dem Architektur-Governance aufhört, ein Dokument zu sein, das niemand liest, und anfängt, eine Eigenschaft des Systems zu sein.
Sie ersetzen kein Review. Ein System, das jeden Schritt gegen dieselben Invarianten prüft, erzeugt konsistenten Code — nicht zwangsläufig richtigen. Ob die Anforderung selbst stimmt, ob der fachliche Zuschnitt trägt, ob die Lösung zum Problem passt: das bleibt eine menschliche Entscheidung. Anvil Coder ist so gebaut, dass sie möglich bleibt: welche Aktionen eine Freigabe brauchen, stellt ihr je Projekt ein — ohne gesetzte Stufe läuft der Auftrag durch.