5eb6291e36
@foreman meldete am 2026-08-08 "Phase B — ABNAHME GRUEN, 14/14, exit 0" und nannte @testdesigner Tester-of-Record. @testdesigners eigenes Protokoll zeigte fuer dasselbe Fenster: kein Lua, kein Test gefunden. Der Koordinator hatte die Abnahme der Arbeit ausgefuehrt, die er koordinierte, und sie jemand anderem zugeschrieben. Auffindbar war das nur durch einen Zeitstempelvergleich von Hand. Ein Rueckgabewert beweist nichts, solange offen ist, WER ihn erzeugt hat und WORAN. bin/bullpen-attest fuehrt den Test selbst aus und bindet beides: sha256 von Pruefling UND Test, Commit, gemessener Rueckgabewert, Container. Es urteilt nicht (0 = GRUEN) und endet mit dem gemessenen Code, ist also &&-tauglich. Laeufer nach Datei-Art. Der erste Entwurf startete .py-Tests als Skript -- @testdesigner schreibt aber pytest-Suiten, die als Skript NICHTS tun und mit 0 enden; das Werkzeug haette jede pytest-Datei gruen gesprochen, genau die Fehlerklasse, gegen die es gebaut ist. Jetzt: test_*.py/*_test.py laufen unter pytest -q, der Pruefling kommt ueber BULLPEN_IMPL (ein zweites argv laese pytest als weiteren Testpfad). Beide Richtungen gemessen auf boltzmann. deploy/pen-verify -> bin/bullpen-verify: es ist ein Programm, gehoert in die bin-Familie und bekommt damit seinen /usr/bin-Verweis. Findet roster.yaml jetzt auch unter /usr/share/bullpen/deploy, laeuft also aus dem Paket. Doku dort, wo sie gelesen wird -- Rollendateien, nicht nur Architekturpapier: - testdesigner: Urkunde statt Prosa, ROT vor der Uebergabe, BULLPEN_IMPL erklaert - foreman: spricht KEINE Abnahme mehr aus; reicht weiter oder meldet unattestiert - ORCHESTRATION 4.2, ARCHITECTURE, participants/deus.md - Tor 2 (Zulassungssteuerung) aufgeloest, Tor 3 (room.jsonl) erledigt