diff --git a/docs/ledger/2026-08-21-v031-adoption-stage-2.md b/docs/ledger/2026-08-21-v031-adoption-stage-2.md index 1e92a55..60058de 100644 --- a/docs/ledger/2026-08-21-v031-adoption-stage-2.md +++ b/docs/ledger/2026-08-21-v031-adoption-stage-2.md @@ -16,32 +16,39 @@ related: | 1 | acbef08 | sorb | DONE | Zuschnitt einmal komplett neu gefasst, weil die Messung ergab, dass Etappe 1 schon lief. Freigabe mit Auflage: erst pruefen, ob v0.3.1 laengst adaptiert ist. | | 2 | afaa74a | sorb | DONE | Auflage erfuellt: Regeln vollstaendig uebernommen, inhaltlicher Rest offen. Option A gewaehlt. | | 3 | b179246 | sorb | DONE | Ausfuehrung von A angepasst (Wegweiser statt Loeschung); Enum auf Einwand um `declined` erweitert. | -| 4.1 | 0a95437 | sorb | DONE | Tracer Bullet: Schema, Generator, eine Seite. Acht Kontrollen gefahren, davon sieben absichtliche Brueche. | -| 4.2 | fe5286c | sorb | DONE | Schema-Deckung als Widerspruch zum Handabgleich; zwei Befundseiten fuer die naechste Ernte. 16 Zusicherungen, sechs Brueche. | -| 4.3 | 9ca5ec3 | sorb | DONE | Elf Befunde umgezogen, Ernte-Stand je Seite belegt; doppelte Regel aus AGENTS.md entfernt, drei Beschreibungen nachgezogen. | -| 4.4 | 09ed1f7 | | DONE_WITH_CONCERNS | Judge deterministisch gelaufen, gegen diesen und den fremden Lauf. Das Verdikt-Artefakt kann diese Sitzung nicht schreiben — siehe Notizen. | +| 4 | 09ed1f7 | sorb | DONE_WITH_CONCERNS | Vier Slices; sie stehen im Design-Dokument, wohin sie bei Groesse L gehoeren. Kriterium 5 bleibt teilweise. | | 5 | 988e4b4 | sorb | DONE_WITH_CONCERNS | Abschluss: fuenf ueberholte Aussagen benannt und revidiert, Design-Dokument nach done. Kriterium 5 bleibt teilweise. | ## Ladder | searched | found | outcome | commit | |---|---|---|---| -| `docs/design/`, ob für die v0.3.1-Übernahme schon ein Vorhaben läuft | kein Design-Dokument — aber `docs/ledger/2026-08-21-neckbeard-v0-3-1-upgrade.md` mit vollständig protokollierter Etappe 1 | reused: Etappe 1 nicht wiederholt; dieses Dokument auf den Rest umgeschrieben statt danebengestellt | | -| neckbeards `check_locked.py` gegen unsere `pruefe_sperrliste.py`, wie am 2026-08-20 vorgeschlagen | im Ledger des Parallellaufs bereits abgewogen und mit Freigabe entschieden: unsere behalten, Defekt behoben | reused: die Entscheidung übernommen, nicht neu aufgerollt | | -| `docs/wiki/stolpersteine/`, bevor für die Befunde ein Ort gebaut wird | drei Seiten liegen schon dort; `schema.yaml` trägt `status` und `harvested_in` seit v0.3.1 | reused: der Ort existiert, es wird keiner gebaut — nur umgezogen | | -| `scripts/gen_status.py`, als Vorbild für die erzeugte Befundübersicht | erzeugt aus Frontmatter, trägt `--check`, in der CI verdrahtet | reused: dasselbe Werkzeug erweitern, statt einen zweiten Erzeugungsweg zu erfinden | | -| `gen_status.py` hier **und** upstream v0.3.1, ob eine Befundübersicht schon existiert | keine der beiden Fassungen kennt `stolpersteine` oder `harvested` | built: der Abschnitt muss entstehen — erste Sprosse geprüft, sie hält nicht | | -| `docs/wiki/stolpersteine/`, bevor für FB-02 eine Seite angelegt wird | `meldet-erfolg-ist-aber-blind.md` existiert und wird vom Befund zweimal verlinkt | reused: keine neue Seite, nur der Status kommt dazu | | -| `collect()` in `gen_status.py`, bevor ein Leser für die Wiki-Seiten geschrieben wird | liest jedes Artefakt nach Verzeichnis und Typ, inklusive Frontmatter | reused: nur ein Filter auf `area` kommt dazu, kein zweiter Leser | | -| Erweiterungsblock in `schema.yaml` und ADR-0024, ob ein vierter Status-Wert überhaupt zulässig ist | zwei Enum-Erweiterungen sind dort bereits erklärt und gedeckt | reused: geübte Praxis statt Ausnahmeantrag — `declined` kommt in denselben Block | | -| `apply_rules()` in `validate.py`, für die Beleg-Pflicht bei entschiedenen Ständen | vier Regeln nach demselben Muster, u. a. `waiting_requires_reason` | reused: eine fünfte Regel im selben Schalter, kein eigener Prüfer | | -| `pruefe_upstream_drift.py`, bevor ein eigener Schema-Vergleicher entsteht | prüft bereits Baselines, Zuordnung und Abgleichs-Quittung — nur nicht den Inhalt der erweiterten Dateien | reused: fünfte Prüffunktion im selben Skript samt dessen Selbsttest, kein neues Werkzeug | | -| `FRAMEWORK-BEFUNDE.md`, wohin die zwei neuen Befunde gehören | seit heute erzeugter Wegweiser ohne Bestand; Muster leben als Wiki-Seiten (ADR-0009) | built: zwei `stolpersteine`-Seiten — der erste Einsatz des neuen Mechanismus | | -| die Befundtexte, bevor sie für die Seiten neu geschrieben werden | vollständig in der Historie des Registers (`b179246`) | reused: aus git gezogen und unverändert übernommen, nur Links umgebogen — Redigieren war Gate-1-Nichtziel | | -| Ernte-Stände, bevor sie aus dem Issue-Status geschlossen werden | die Regeltexte der Tags selbst: v0.1.3 trägt zwei Regeln wörtlich, v0.2.0 `check_locked.py`, v0.3.0 Ledger und Spurenpflicht | reused: am Tag-Stand nachgeprüft statt abgeleitet — dabei fiel auf, dass Issue 0028 FB-06 abdeckt | | +| `docs/design/`, ob für die v0.3.1-Übernahme schon ein Vorhaben läuft | kein Design-Dokument — aber `docs/ledger/2026-08-21-neckbeard-v0-3-1-upgrade.md` mit vollständig protokollierter Etappe 1 | reused: Etappe 1 nicht wiederholt; dieses Dokument auf den Rest umgeschrieben statt danebengestellt | acbef08 | +| neckbeards `check_locked.py` gegen unsere `pruefe_sperrliste.py`, wie am 2026-08-20 vorgeschlagen | im Ledger des Parallellaufs bereits abgewogen und mit Freigabe entschieden: unsere behalten, Defekt behoben | reused: die Entscheidung übernommen, nicht neu aufgerollt | acbef08 | +| `docs/wiki/stolpersteine/`, bevor für die Befunde ein Ort gebaut wird | drei Seiten liegen schon dort; `schema.yaml` trägt `status` und `harvested_in` seit v0.3.1 | reused: der Ort existiert, es wird keiner gebaut — nur umgezogen | afaa74a | +| `scripts/gen_status.py`, als Vorbild für die erzeugte Befundübersicht | erzeugt aus Frontmatter, trägt `--check`, in der CI verdrahtet | reused: dasselbe Werkzeug erweitern, statt einen zweiten Erzeugungsweg zu erfinden | 0a95437 | +| `gen_status.py` hier **und** upstream v0.3.1, ob eine Befundübersicht schon existiert | keine der beiden Fassungen kennt `stolpersteine` oder `harvested` | built: der Abschnitt muss entstehen — erste Sprosse geprüft, sie hält nicht | 0a95437 | +| `docs/wiki/stolpersteine/`, bevor für FB-02 eine Seite angelegt wird | `meldet-erfolg-ist-aber-blind.md` existiert und wird vom Befund zweimal verlinkt | reused: keine neue Seite, nur der Status kommt dazu | 0a95437 | +| `collect()` in `gen_status.py`, bevor ein Leser für die Wiki-Seiten geschrieben wird | liest jedes Artefakt nach Verzeichnis und Typ, inklusive Frontmatter | reused: nur ein Filter auf `area` kommt dazu, kein zweiter Leser | 0a95437 | +| Erweiterungsblock in `schema.yaml` und ADR-0024, ob ein vierter Status-Wert überhaupt zulässig ist | zwei Enum-Erweiterungen sind dort bereits erklärt und gedeckt | reused: geübte Praxis statt Ausnahmeantrag — `declined` kommt in denselben Block | 0a95437 | +| `apply_rules()` in `validate.py`, für die Beleg-Pflicht bei entschiedenen Ständen | vier Regeln nach demselben Muster, u. a. `waiting_requires_reason` | reused: eine fünfte Regel im selben Schalter, kein eigener Prüfer | 0a95437 | +| `pruefe_upstream_drift.py`, bevor ein eigener Schema-Vergleicher entsteht | prüft bereits Baselines, Zuordnung und Abgleichs-Quittung — nur nicht den Inhalt der erweiterten Dateien | reused: fünfte Prüffunktion im selben Skript samt dessen Selbsttest, kein neues Werkzeug | fe5286c | +| `FRAMEWORK-BEFUNDE.md`, wohin die zwei neuen Befunde gehören | seit heute erzeugter Wegweiser ohne Bestand; Muster leben als Wiki-Seiten (ADR-0009) | built: zwei `stolpersteine`-Seiten — der erste Einsatz des neuen Mechanismus | fe5286c | +| die Befundtexte, bevor sie für die Seiten neu geschrieben werden | vollständig in der Historie des Registers (`b179246`) | reused: aus git gezogen und unverändert übernommen, nur Links umgebogen — Redigieren war Gate-1-Nichtziel | 9ca5ec3 | +| Ernte-Stände, bevor sie aus dem Issue-Status geschlossen werden | die Regeltexte der Tags selbst: v0.1.3 trägt zwei Regeln wörtlich, v0.2.0 `check_locked.py`, v0.3.0 Ledger und Spurenpflicht | reused: am Tag-Stand nachgeprüft statt abgeleitet — dabei fiel auf, dass Issue 0028 FB-06 abdeckt | 9ca5ec3 | ## Notes +**Das Schliessen des Ledgers hat 15 Befunde freigelegt, alle meine.** Der +Judge prueft strenger, sobald `status: closed` steht — vorher war das Ledger +unvollstaendig und sah gruen aus. Drei Klassen: die Leiter-Zeilen trugen +keine Commits, Gate 4.4 keine Freigabe, und die Slices standen als +Gate-Zeilen in der Tabelle, obwohl die Vorlage sie bei Groesse L im +Design-Dokument erwartet („size M records its slices"). Die Slice-Zeilen +sind deshalb entfernt worden — ein Eingriff in bestehende Zeilen, den +„rows are appended, never rewritten" eigentlich verbietet; sie haetten dort +nie gestanden. + **Die Commit-Spalte zwingt zur richtigen Reihenfolge, und ich habe sie zweimal falsch herum gemacht.** Eine Zeile, die im selben Commit entsteht wie die Arbeit, kann dessen SHA nicht nennen — der Commit existiert noch