Regel: Testfälle nur auf ausdrückliche Aufforderung als geprüft markieren (#16)

Die Markierung per test_audit.py markieren bestätigt eine fachliche Abnahme durch einen
Menschen. Agenten sichten und ergänzen Tests und schlagen Markierungen vor, markieren aber
erst nach ausdrücklicher Freigabe. Aufgenommen in AGENTS.md (harte Regeln, Tests),
docs/leitfaden/06_tests.md Abschnitt 7 und Skill sn-tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-29 07:39:44 +02:00
co-authored by Claude Opus 5.5
parent 1435b157b5
commit 1c4da60845
3 changed files with 14 additions and 0 deletions
+6
View File
@@ -57,6 +57,12 @@ listet Tests ohne Docstring – Stand 15.09.2026 haben nur 114 von 346 Tests ein
Testdatei per Mermaid, Filter, Suche) – lokal im Browser öffnen, kein Server nötig; Mermaid lädt von Testdatei per Mermaid, Filter, Suche) – lokal im Browser öffnen, kein Server nötig; Mermaid lädt von
`cdnjs.cloudflare.com`, ohne Internetverbindung bleiben nur die Diagramme leer. `cdnjs.cloudflare.com`, ohne Internetverbindung bleiben nur die Diagramme leer.
## Test-Audit (Prüfvermerke)
`python scripts/test_audit.py status <paket> --nur ungeprueft` zeigt offene Testfälle. **`markieren` nur auf
ausdrückliche Aufforderung** – die Markierung bedeutet „ein Mensch hat fachlich bestätigt". Ohne Freigabe:
sichten, Lücken ergänzen, mit `markieren … --trocken` die vorgeschlagenen Treffer zeigen und nachfragen.
Details: `docs/leitfaden/06_tests.md` Abschnitt 7.
## Testkonzept-Seiten ## Testkonzept-Seiten
Für fachlich wichtige Abläufe liegt in `docs/tests/<ablauf>.md` eine Seite nach `docs/vorlagen/testkonzept.md`: Für fachlich wichtige Abläufe liegt in `docs/tests/<ablauf>.md` eine Seite nach `docs/vorlagen/testkonzept.md`:
Mermaid-Diagramm des fachlichen Ablaufs, Tabelle Schritt → deckender Test → bewusst nicht getestet mit Mermaid-Diagramm des fachlichen Ablaufs, Tabelle Schritt → deckender Test → bewusst nicht getestet mit
+3
View File
@@ -45,6 +45,9 @@ Sie bleibt bewusst kurz: Details liegen in `docs/` und werden nur bei Bedarf gel
Danach `python scripts/testkatalog.py` neu erzeugen und mitcommitten. Danach `python scripts/testkatalog.py` neu erzeugen und mitcommitten.
- Tests werden nicht gelöscht, nicht mit `skip` stillgelegt und nicht in ihrer Erwartung angepasst, um grün zu werden – - Tests werden nicht gelöscht, nicht mit `skip` stillgelegt und nicht in ihrer Erwartung angepasst, um grün zu werden –
außer das Verhalten wurde bewusst geändert und der Pull Request begründet es. Details: `docs/leitfaden/06_tests.md`. außer das Verhalten wurde bewusst geändert und der Pull Request begründet es. Details: `docs/leitfaden/06_tests.md`.
- **Testfälle nur auf ausdrückliche Aufforderung als „geprüft" markieren** (`scripts/test_audit.py markieren`).
Die Markierung bestätigt, dass ein Mensch den Test fachlich abgenommen hat; ein Auftrag wie „Audit fortsetzen"
reicht dafür nicht. Agenten sichten, ergänzen Tests und schlagen die Markierung vor – markieren erst nach Freigabe.
### Code ### Code
+5
View File
@@ -150,6 +150,11 @@ python scripts/test_audit.py status sn_basis --muster TestX --code # mit Quellt
python scripts/test_audit.py markieren sn_basis TestX.test_y # als heute geprüft markieren python scripts/test_audit.py markieren sn_basis TestX.test_y # als heute geprüft markieren
``` ```
**Markiert wird nur auf ausdrückliche Aufforderung eines Menschen.** Die Markierung sagt „fachlich bestätigt",
nicht „ein Agent hat es gelesen". Ein Agent sichtet die Tests, ergänzt Lücken und nennt die Testfälle, die er zur
Markierung vorschlägt; `markieren` (ohne `--trocken`) ruft er erst auf, wenn die Person die Markierung ausdrücklich
freigibt. Ein allgemeiner Auftrag wie „Audit fortsetzen" ist keine solche Freigabe.
`markieren` nimmt exakte Bezeichner oder `fnmatch`-Muster (z. B. `"TestX.*"`) entgegen; `--trocken` zeigt die `markieren` nimmt exakte Bezeichner oder `fnmatch`-Muster (z. B. `"TestX.*"`) entgegen; `--trocken` zeigt die
Treffer, ohne zu schreiben — vor einem Muster mit vielen Treffern empfohlen. Das Skript importiert die Treffer, ohne zu schreiben — vor einem Muster mit vielen Treffern empfohlen. Das Skript importiert die
Katalog-Logik aus `scripts/testkatalog.py`, statt sie zu duplizieren. Katalog-Logik aus `scripts/testkatalog.py`, statt sie zu duplizieren.