FRAMEWORK-BEFUNDE: drei Befunde zur Arbeitsweise, alle belegt
Von sorb benannt, im Repo nachgeprueft statt bestaetigt oder bestritten: FB-08 Dokumente werden angelesen, nicht durchgelesen. roadmap.md wurde am 20.08. vollstaendig ausgegeben - 94 Zeilen - und die AAR-Pflicht in Zeile 94 nicht gesehen; sie steht dort seit dem 12.08. Danach wurde dieselbe Datei sogar bearbeitet. Gleiches Muster: der .npmrc-Kommentar sagt den 404 woertlich voraus und wurde erst nach dem Fehlschlag gelesen. FB-09 Gelesene Anweisungen werden nicht befolgt. AGENTS.md Zeile 81 sagt, dass ADRs nie editiert werden. Die Datei war gelesen. FB-10 Gesperrte Dateien werden bearbeitet. Commit6652125hat die angenommene ADR-0022 veraendert - committet und gepusht, zurueckgenommen erst mit6731d2a, und zwar nicht durch eine Pruefung, sondern durch Zufall beim Oeffnen der Vorlage. Die drei sind als Klasse 'Arbeitsweise' gefuehrt, nicht als Verfahrenslueck: FB-09 ist die gefaehrlichste, weil das Wissen vorhanden war und nicht abgerufen wurde. Der Vergleich, der es belegt: STATUS.md traegt dasselbe Verbot wie die ADRs und wurde kein einziges Mal verletzt - weil gen_status --check widerspricht.
This commit is contained in:
@@ -27,6 +27,9 @@
|
||||
| FB-05 | Dashboards und Prüfungen ohne Datenbeleg | Fehlerklasse | offen |
|
||||
| FB-06 | Dokumente werden ergänzt, aber nicht revidiert | Fehlerklasse | offen |
|
||||
| FB-07 | Werkzeuge messen unbemerkt die falsche Instanz | Fehlerklasse | offen |
|
||||
| FB-08 | Dokumente werden angelesen, nicht durchgelesen | Arbeitsweise | offen |
|
||||
| FB-09 | Gelesene Anweisungen werden nicht befolgt | Arbeitsweise | offen |
|
||||
| FB-10 | Gesperrte Dateien werden bearbeitet | Arbeitsweise | offen |
|
||||
|
||||
---
|
||||
|
||||
@@ -171,6 +174,68 @@ seit dem 2026-08-19. Das Muster gehört in die Werkzeug-Vorlage, nicht in jedes
|
||||
|
||||
---
|
||||
|
||||
## FB-08 — Dokumente werden angelesen, nicht durchgelesen
|
||||
|
||||
**Beschreibung.** `roadmap.md` wurde am 2026-08-20 **vollständig ausgegeben** — alle 94
|
||||
Zeilen — um den Aufbau für eine Ergänzung zu verstehen. Die AAR-Pflicht steht dort in
|
||||
Zeile 94 und war seit dem 2026-08-12 unverändert vorhanden. Sie wurde nicht gesehen.
|
||||
Anschließend wurde dieselbe Datei **bearbeitet**, ohne dass die Regel auffiel — und
|
||||
sechsmal verletzt.
|
||||
|
||||
Dasselbe Muster mehrfach am selben Tag: Der Kommentar in der `.npmrc` sagt den
|
||||
404-Fehlschlag wörtlich voraus; gelesen wurde er **nach** dem Fehlschlag. Der Kommentar in
|
||||
`docker-compose.yml` erklärt, dass der Verzeichnis-Mount die Inode-Falle bereits beseitigt;
|
||||
trotzdem wurde `--force-recreate` in zwei Übergaben weitergetragen.
|
||||
|
||||
**Ursachen-Einschätzung.** Dokumente werden als **Nachschlagewerk für die gerade
|
||||
anstehende Frage** behandelt, nicht als bindender Rahmen, den man vor dem Handeln
|
||||
verinnerlicht. Gelesen wird, um zu *finden* — nicht, um sich zu *binden*. Deshalb bleibt
|
||||
eine Regel unsichtbar, die drei Zeilen unter der bearbeiteten Stelle steht.
|
||||
|
||||
**Vorschlag.** Vor einer Änderung an einer Datei: deren eigenen Kopf und die Regeln zu
|
||||
ihrer Gattung vollständig lesen und im Arbeitsergebnis benennen, welche davon einschlägig
|
||||
waren. Das kostet Zeilen und spart Wiederholungen.
|
||||
|
||||
## FB-09 — Gelesene Anweisungen werden nicht befolgt
|
||||
|
||||
**Beschreibung.** `AGENTS.md` Zeile 81: *„`docs/adr/` — binding; never edited, only
|
||||
superseded."* Die Datei war gelesen. Trotzdem wurde ADR-0022 um einen Nachtrag ergänzt,
|
||||
committet und gepusht.
|
||||
|
||||
**Ursachen-Einschätzung.** Zwischen „gelesen" und „angewandt" fehlt der Schritt, in dem
|
||||
die eigene geplante Handlung gegen die Regel gehalten wird. Die Regel war bekannt; die
|
||||
Frage *„darf ich das?"* wurde vor der Handlung nicht gestellt, sondern erst, als zufällig
|
||||
die Vorlage geöffnet wurde.
|
||||
|
||||
⚠️ Diese Klasse ist gefährlicher als FB-08: Bei FB-08 fehlt Wissen, hier ist es vorhanden
|
||||
und wird nicht abgerufen. Kein Werkzeug kann das auffangen, das nicht die Absicht kennt.
|
||||
|
||||
**Vorschlag.** Für die kleine Zahl **harter** Verbote (ADRs nicht editieren, nicht nach
|
||||
Gitea pushen, `docs/sources/` unveränderlich, `STATUS.md` nicht von Hand) eine Prüfung, die
|
||||
den Verstoß im Commit findet statt im Nachhinein — etwa ein `pre-commit`-Hook oder eine
|
||||
CI-Regel, die geänderte Pfade gegen eine Sperrliste hält.
|
||||
|
||||
## FB-10 — Gesperrte Dateien werden bearbeitet
|
||||
|
||||
**Beschreibung.** Commit `6652125` veränderte die angenommene ADR-0022. Der Verstoß wurde
|
||||
gepusht und erst mit `6731d2a` zurückgenommen — nicht durch eine Prüfung, sondern durch
|
||||
Zufall.
|
||||
|
||||
**Ursachen-Einschätzung.** Es gibt keine technische Sperre. `validate.py` prüft Schema und
|
||||
Verweise, nicht **Bearbeitbarkeit**. Der Schutz einer bindenden Entscheidung besteht heute
|
||||
ausschließlich aus einem Satz in einer Kommentarzeile der Vorlage und einer Zeile in
|
||||
`AGENTS.md`.
|
||||
|
||||
Zum Vergleich: `STATUS.md` trägt dieselbe Art Verbot („nicht von Hand ändern") — und wurde
|
||||
kein einziges Mal verletzt, weil `gen_status.py --check` widerspricht. Derselbe Befund wie
|
||||
FB-01, an anderem Gegenstand.
|
||||
|
||||
**Vorschlag.** Sperrliste in der CI: Änderungen an `docs/adr/*` mit `status: accepted`,
|
||||
an `docs/sources/**` und an generierten Dateien brechen die Pipeline, sofern der Commit
|
||||
nicht ausdrücklich eine Ablösung ist (neue ADR mit `supersedes`).
|
||||
|
||||
---
|
||||
|
||||
*Angelegt 2026-08-20 auf Wunsch von sorb, nach einer Sitzung, in der mehrere dieser
|
||||
Befunde gleichzeitig sichtbar wurden. Erstbefüllung stammt von der Seite, die die
|
||||
Abweichungen verursacht hat — das ist kein Argument gegen die Befunde, aber ein Grund,
|
||||
|
||||
Reference in New Issue
Block a user