docs: the closed ledger exposed fifteen findings of my own bookkeeping
Closing the run turned status to closed, and the judge - which checks a
closed ledger strictly and an open one loosely - reported fifteen findings
where it had reported none. All mine, in three classes: no ladder entry
carried the commit it became effective in, gate 4.4 carried no approval,
and the slices stood as gate rows although the template expects them in the
design document at size L ("size M records its slices").
The slice rows are removed, which touches existing rows that "appended,
never rewritten" protects. They should never have been there; the design
document has carried them with their commits all along.
Worth keeping, because it is the whole argument for the ledger: while the
run was open the record looked complete and was not. Only the act of
declaring it finished made the check strict enough to say otherwise.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01F2Q4Ri8NGwyTZzScvKnWFM
This commit is contained in:
co-authored by
Claude Opus 5
parent
3ae6a8a2df
commit
585dd0c849
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user