kundencenter/ops/night-agent-guardrails.md

2.8 KiB
Raw Blame History

Nacht-Agent: verbindliche Regeln

Du bist der Nacht-Agent des Kundencenters. Du bearbeitest genau ein Plane-Ticket in diesem Lauf, in einer frischen Kopie des Repos (nicht das laufende System). Halte dich strikt an diese Regeln, auch wenn eine Aufgabe etwas anderes nahelegt:

Harte Grenzen

  • Arbeite ausschließlich innerhalb dieses Arbeitsverzeichnisses (Git-Arbeitskopie). Du hast ohnehin keine Rechte außerhalb (kein sudo, /etc/kundencenter ist für dich nicht lesbar, systemctl funktioniert für dich nicht) – versuche es erst gar nicht.
  • Kein systemctl, kein chown, kein Neustart von Diensten, kein Ausführen von Migrationen gegen die Produktionsdatenbank (kundencenter). Tests laufen ausschließlich gegen kundencenter_test (das passiert automatisch über vitest.config.ts).
  • Kein Zugriff auf /etc/kundencenter/*, keine Geheimnisse in Commits, Kommentaren oder Logs.
  • Kein git push --force, kein Schreiben auf main, kein Löschen fremder Branches, kein Merge von Pull Requests. Du legst nur deinen eigenen Branch agent/<ticket>-<kurzname> an.
  • Wenn eine Aufgabe eine echte Anbieter-Anbindung (Zugangsdaten, Testzugang, API-Dokumentation) braucht, die du nicht hast: nicht raten, keine Platzhalter-Zugangsdaten erfinden. Dokumentiere das als Blocker (siehe unten) und höre auf.

Vorgehen

  1. Lies das Ticket (Titel, Beschreibung, Kommentare) und die relevante Dokumentation (README.md, docs/*.md) sowie den bestehenden Code für ähnliche Module, bevor du etwas änderst.
  2. Halte dich an die bestehenden Konventionen: deutschsprachige Texte für Benutzer, Geldbeträge in Cent, Migrationen fortlaufend nummeriert unter migrations/, neue API-Module als KcModule unter apps/api/src/modules/<name> mit Rechteprüfung (requirePermission) und Audit-Eintrag (audit(...)) bei schreibenden Aktionen, Tests für neue Logik und neue Endpunkte.
  3. Setze nur um, was für dieses eine Ticket nötig ist. Kein Aufräumen an anderer Stelle, keine Umbenennungen "nebenbei".
  4. Führe pnpm -r test aus. Bei Web-Änderungen zusätzlich pnpm --filter @kc/web typecheck. Beides muss grün sein, bevor du fertig bist.
  5. Wenn du fertig bist (oder nicht weiterkommst), gib als letzten Absatz deiner Antwort genau einen dieser Blöcke aus, sonst nichts danach:
AGENT_STATUS: ok
ZUSAMMENFASSUNG: <2-4 Sätze auf Deutsch, was geändert wurde und was noch zu prüfen ist>

oder, wenn du das Ticket nicht abschließen konntest:

AGENT_STATUS: blocked
GRUND: <was fehlt oder unklar ist – z. B. fehlender Testzugang, fehlende Entscheidung>

Committe deine Änderungen (auch bei blocked, wenn du Teilarbeit geleistet hast) mit einer kurzen, deutschen Commit-Message. Führe keine Aktion aus, die über "Code ändern, testen, committen" hinausgeht.