Phasen als Verträge
Sobald die Leistungsbeschreibung präzise ist, unterteilen wir die Arbeit in diskrete Phasen. Jede Phase hat einen klaren Input, einen klaren Output und einen expliziten Handoff-Punkt, an dem ein Mensch überprüft, bevor der Agent fortfährt.
Ein typischer Modul-Aufbau könnte so aussehen:
Phase 1. Datenmodell. Der Agent produziert das Schema, Migrations-Dateien und eine kurze schriftliche Begründung für jede Design-Entscheidung. Wir überprüfen. Wir genehmigen oder bitten um Änderungen. Der Agent berührt keine Geschäftslogik, bis diese Phase genehmigt ist.
Phase 2. Kernlogik. Angesichts des genehmigten Schemas implementiert der Agent die Service-Schicht oder ähnliches. Keine UI. Keine Integrations-Verkabelung. Nur die Logik, mit Tests.
Phase 3. Integration. Der Agent verkabelt die Logik an alles, das sie erreichen muss: eine API, eine Queue, ein Drittanbieter-SDK. Diese Phase tendiert dazu, die meisten Überraschungen zu zeigen, was genau der Grund ist, warum wir sie isolieren.
Phase 4. UI oder Oberfläche. Falls es eine benutzergerichtete Schicht gibt, kommt sie zuletzt. Das ist der einfachste Teil zum Ändern und der am wenigsten teure zum Wiederholen.
Jede Phase endet mit einem menschlichen Kontrollpunkt. Der Agent kennt dies voraus, weil wir es in der Leistungsbeschreibung angeben. Er überspringt nicht. Falls er es versucht, ist das ein Signal, dass die Phasengrenzen nicht explizit genug waren.
Die Falle für diese Struktur. Phasengrenzen halten nur, wenn der Agent isolierten Kontext pro Phase beibehält. In der Praxis bedeutet das, ein frisches Gespräch bei jedem Handoff zu beginnen oder sehr bewusst zu sein, welchen vorherigen Kontext du mitführst. Agenten, die die vollständige Session-Historie behalten, werden manchmal auf frühere Entscheidungen verweisen und zurück zum umfassenden Plan abdriften. Saubere Kontexttrennungen sind das Reiben wert, sich relevante Hintergrundinformation manuell wieder einzuführen.