This repository has been archived on 2026-09-17. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
nixos-config/docs/review/board-automatic-review-correction-loop.md
pijukka 05575df408 docs: commit backlog of already-resolved intent/review corpus files
board-agent's own README documents docs/intent/ and docs/research-intent/
as tracked corpus directories, and docs/review/<slug>.md as the reviewer's
persisted report per card - but the pipeline only writes these files to
the checkout, it never commits them itself. This had built up a backlog
of intent/review docs for cards already marked deployed or archiviert in
the live board state, which were sitting uncommitted in the working tree.

Adds that backlog as-is: the originating intents, their reviewer reports,
the research-intent/research pair for the board UX evaluation, and one
standalone process-retrospective report (board-review-pipeline-context-
overhead.md, same genre as the two already-tracked audit reports in
docs/review/). No code changes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01T7UVrKsttMP9a6FiGFna9b
2026-09-10 12:06:53 +02:00

4.3 KiB

Geprüfter Commit: 1d15acdb5a (reviewer: strukturiertes Korrekturfeld-Set bei "zurück zur Planung" als bewusste Ausnahme)

Scope: Einzige geänderte Datei agents/reviewer.md (39 Einfügungen, 4 Löschungen), role-version 1.7.0 → 1.8.0. Diff-Basis: git diff 1d15acd~1 1d15acd. Einstufung: riskant nach den geltenden Kriterien (mehr als ~10 geänderte Zeilen in einer Datei), daher volle Prüftiefe.

Tatsächlich ausgeführte Prüfmethoden:

  1. git show --stat / git diff 1d15acd~1 1d15acd — vollständigen Diff gelesen.
  2. docs/intent/board-automatic-review-correction-loop.md vollständig gelesen und mit dem Diff abgeglichen.
  3. agents/reviewer.md (finaler Stand) vollständig gelesen, um den geänderten Abschnitt im Kontext der Gesamtrolle zu prüfen.
  4. git grep nach dem geänderten Bezeichner (CORRECTION-ITEMS, role-version: 1.7.0, auto_correction_attempts) über den Repo-Baum, um verwaiste Referenzen oder fehlende Konsumenten zu finden.
  5. Existenzprüfung agents/catalog.json (Pfadverifikation, kein inhaltlicher Abgleich nötig, da nicht im Diff-Scope).

Nicht ausgeführte Prüfungen: Kein Test-/Lint-Lauf, da reine Prosa-/Markdown-Änderung ohne ausführbaren Code; kein Zugriff auf Board-Watcher-Code, da dieser laut Intent-Scope noch nicht existiert (auch der git grep bestätigt: keine andere Datei referenziert ===CORRECTION-ITEMS===).

Befunde:

  • medium — agents/reviewer.md:172-177: Das Marker-Block-Schema erlaubt severity: blocker|high|medium|low, während der umgebende Fließtext (Zeile 168-169 und 180-186) verlangt, dass der Block nur Einträge mit blocker- oder high-Schweregrad enthält und bei ausschließlich medium/low-Befunden ein leerer Block zu liefern ist. Ein zukünftiger Reviewer-Lauf könnte daraus lesen, dass medium/low-Einträge im Block zulässig sind, obwohl sie laut Text nie dort landen sollen. Empfehlung: Enum im Schema auf blocker|high einschränken oder den Fließtext präzisieren, dass medium/low als gültiger Feldwert nur in Kombination mit mindestens einem blocker/high-Eintrag im selben Block vorkommen dürfen (falls das beabsichtigt ist).

  • low (Unsicherheit, kein Blocker) — Die Änderung ist inhaltlich deckungsgleich mit docs/intent/board-automatic-review-correction-loop.md, löst aber selbst noch keine Automatisierung aus: Es gibt laut git grep noch keinen Konsumenten des neuen ===CORRECTION-ITEMS===-Blocks (Board-Worker/Completion-Watcher, state.json-Zähler, Catalog-Badge sind laut Intent-Scope separate, noch ausstehende Änderungen). Das ist im Rahmen dieses Einzelcommits unproblematisch, aber die im Intent-Dokument selbst offen gelassene Frage „kein Auto-Retry bei riskantem Diff" (Secrets/Netzwerk/Firewall/sshd/Auth/systemd) bleibt in diesem Rollentext unadressiert — bei Umsetzung der Watcher-Seite besteht das Risiko, dass auch bei sicherheitskritischen Diffs automatisch bis zu zwei Korrekturläufe angestoßen werden, ohne dass reviewer.md das einschränkt.

  • low (Beobachtung, kein Blocker) — Selbstreferenzielle Natur der Änderung: Der Reviewer prüft hier eine Änderung an seinem eigenen Rollenvertrag, die künftigen Board-Läufen (auf Basis seiner eigenen zurück zur Planung-Entscheidung) mehr automatisierte Handlungsmacht einräumt. Das ist laut Rollendefinition (Board-getriggerter Review) ausdrücklich vorgesehen und keine Abweichung vom Scope, aber als Kontext für die menschliche Freigabeentscheidung erwähnenswert, da die Freigabe faktisch eine bewusste Umkehr einer bisherigen Sicherheitsregel bestätigt (im Intent-Dokument selbst so benannt).

Positive Beobachtungen: Die neue Regel wahrt konsequent alle bestehenden Arbeitsgrenzen (keine neuen Schreibrechte, keine Aktivierungs-/Deployment-/Veröffentlichungsfreigabe, weiterhin keine automatische Planner-Session), ist als bewusste Ausnahme klar benannt und referenziert den auslösenden Intent-Pfad korrekt. Die Marker-Block-Syntax folgt demselben etablierten Muster wie ===REVIEW-REPORT===.

Unsicherheiten: Ob das Board tatsächlich mit dem günstigen Profil gpt-5.6-luna/none zuverlässig strukturierte Felder statt Freitext liefert, ist laut Intent-Dokument selbst ungeprüft und außerhalb des Prüfbereichs dieses Commits (betrifft Laufzeitverhalten, nicht den Rollentext).

Entscheidung: bereit für Deployment