raw accept --replaces-bundle: Erfolgsmeldung und Command Record nennen git diff als ganzen Editionsdiff #181

Closed
opened 2026-10-05 18:37:58 +00:00 by torben · 3 comments
Owner

Befund aus #178 (dort bewusst außerhalb des Umfangs, weil das Issue keinen Python-Code ändern sollte). Gegen den Baum geprüft am 2026-10-06, Stand a3fc8f6 (8.0.0-beta.48).

Ergebnis

Behoben in 8.0.0-beta.49, Commit cb37154. Verifiziert durch die grünen CI-Runs 565 und 566 auf diesem Commit. Die Abschlussprüfung hat keine veraltete Doku gefunden (siehe unten).

Befund

Nach raw accept incoming/<bundle> --replaces-bundle <raw-bundle> sind neu hinzugekommene Dateien (A) noch nicht von git verfolgt und erscheinen deshalb in git diff nicht. instructions/wiki-ingest/SKILL.md (Entscheidungspunkt "new edition of a captured bundle") und raw/CONTRACT.md § "Getting a repository in" sagen das seit 8.0.0-beta.43 richtig: Den Editionsdiff bildet git diff -- <raw-bundle> für M/D zusammen mit der A-Liste, die der Accept ausgibt.

Zwei Stellen im Code sagten bis 8.0.0-beta.48, git diff allein zeige die Änderungen der Edition:

  • tools/chemenu/commands/raw_cmd.py _replace_bundle: die abschließende success(...)-Zeile "... git diff on the bundle shows the edition's changes."
  • tools/chemenu/commands/raw_cmd.py: der vierte NOTES-Eintrag des raw accept-Command-Records, gerendert in tools/CONTRACT.md.

Gemildert war das dadurch, dass die Accept-Ausgabe die A-Zeilen direkt darüber druckt. Eine Sitzung, die dem Satz folgte und nur git diff las, übersah aber neue Dateien.

Änderung

Beide Sätze sind so präzisiert wie die Skill:

  • Erfolgsmeldung: "Review the pages above in this same run: the replacement and their update belong in one commit. git diff on the bundle shows the M and D files; the A files are only in the list above - they are still untracked."
  • Record-NOTE: "... the touch --page ... --add/--remove raw_files= lines that follow; git diff on the bundle shows the M and D files, the A files appear only in that list because they are still untracked."

tools/CONTRACT.md wurde über tools/wikitool docs contract --apply regeneriert.

Kein neuer Test, bewusst so entschieden. Kein Test prüfte den Text der Erfolgsmeldung oder des Records (grep über tools/chemenu/tests/ am 2026-10-06: kein Treffer auf "edition's changes" oder "Review the pages above"). Einen Test, der Prosa wortgenau festnagelt, haben wir dafür nicht angelegt – dass Code und Contract auseinanderlaufen, fängt docs verify über tools/CONTRACT.md ohnehin ab.

Akzeptanzkriterien

  • Keine Ausgabe und kein Record von raw accept behauptet mehr, git diff allein zeige den ganzen Editionsdiff; beide nennen die A-Liste für neue, noch unverfolgte Dateien. Geprüft: grep -rn "edition's changes" tools/ findet nichts mehr.
  • tools/CONTRACT.md ist über docs contract --apply neu generiert und enthält den neuen Record-Text; docs verify grün.
  • pytest grün (lokal: 2328 passed, 3 skipped); CI auf dem publizierten Commit grün (Runs 565, 566).

Betroffene Stellen

  • tools/chemenu/commands/raw_cmd.py (_replace_bundle, raw accept-Record)
  • tools/CONTRACT.md (generiert über docs contract --apply)
  • CHANGES.md: Abschnitt im Eintrag 8.0.0-beta.49, über version bump --patch --impact low

Abschlussprüfung auf veraltete Doku (2026-10-06): raw/CONTRACT.md und instructions/wiki-ingest/SKILL.md waren bereits korrekt. In docs/, README.md, INSTALL.md, DEVELOPMENT.md, EVALS.md und tools/README.md kommt die Behauptung nicht vor: kein Treffer auf git diff, nur README.md erwähnt --replaces-bundle, ohne Aussage zum Diff. Keine Installationsanweisung wurde berührt, also gab es keinen eigenen Pull-through und keinen weiteren Publish.

Versionsteil

--patch: Geändert ist nur der Text einer Ausgabe und eines Records; Verhalten, Flags und Exit-Codes bleiben gleich, und kein kb/-Format ist berührt. Drop-in in beide Richtungen. (Die Meldung "crosses a compatibility boundary" beim Bump gilt für den laufenden 8.0.0-Kandidaten als Ganzes, nicht für diese Änderung.)

Anmerkung

Dem Commit cb37154 fehlen die Attributions-Trailer (Co-Authored-By/Claude-Session), weil sie in --message nicht mitgegeben wurden. Ohne --force lässt sich das nicht korrigieren; es bleibt so.

Befund aus #178 (dort bewusst außerhalb des Umfangs, weil das Issue keinen Python-Code ändern sollte). Gegen den Baum geprüft am 2026-10-06, Stand `a3fc8f6` (`8.0.0-beta.48`). ## Ergebnis Behoben in **`8.0.0-beta.49`**, Commit `cb37154`. Verifiziert durch die grünen CI-Runs [565](https://gitea.nehmer.net/torben/chemenu/actions/runs/565) und [566](https://gitea.nehmer.net/torben/chemenu/actions/runs/566) auf diesem Commit. Die Abschlussprüfung hat keine veraltete Doku gefunden (siehe unten). ## Befund Nach `raw accept incoming/<bundle> --replaces-bundle <raw-bundle>` sind neu hinzugekommene Dateien (`A`) noch nicht von git verfolgt und erscheinen deshalb in `git diff` nicht. `instructions/wiki-ingest/SKILL.md` (Entscheidungspunkt "new edition of a captured bundle") und `raw/CONTRACT.md` § "Getting a repository in" sagen das seit `8.0.0-beta.43` richtig: Den Editionsdiff bildet `git diff -- <raw-bundle>` für `M`/`D` zusammen mit der `A`-Liste, die der Accept ausgibt. Zwei Stellen im Code sagten bis `8.0.0-beta.48`, `git diff` allein zeige die Änderungen der Edition: - `tools/chemenu/commands/raw_cmd.py` `_replace_bundle`: die abschließende `success(...)`-Zeile "... `git diff` on the bundle shows the edition's changes." - `tools/chemenu/commands/raw_cmd.py`: der vierte NOTES-Eintrag des `raw accept`-Command-Records, gerendert in `tools/CONTRACT.md`. Gemildert war das dadurch, dass die Accept-Ausgabe die `A`-Zeilen direkt darüber druckt. Eine Sitzung, die dem Satz folgte und nur `git diff` las, übersah aber neue Dateien. ## Änderung Beide Sätze sind so präzisiert wie die Skill: - Erfolgsmeldung: "Review the pages above in this same run: the replacement and their update belong in one commit. `git diff` on the bundle shows the `M` and `D` files; the `A` files are only in the list above - they are still untracked." - Record-NOTE: "... the `touch --page ... --add/--remove raw_files=` lines that follow; `git diff` on the bundle shows the `M` and `D` files, the `A` files appear only in that list because they are still untracked." `tools/CONTRACT.md` wurde über `tools/wikitool docs contract --apply` regeneriert. **Kein neuer Test**, bewusst so entschieden. Kein Test prüfte den Text der Erfolgsmeldung oder des Records (`grep` über `tools/chemenu/tests/` am 2026-10-06: kein Treffer auf "edition's changes" oder "Review the pages above"). Einen Test, der Prosa wortgenau festnagelt, haben wir dafür nicht angelegt – dass Code und Contract auseinanderlaufen, fängt `docs verify` über `tools/CONTRACT.md` ohnehin ab. ## Akzeptanzkriterien - [x] Keine Ausgabe und kein Record von `raw accept` behauptet mehr, `git diff` allein zeige den ganzen Editionsdiff; beide nennen die `A`-Liste für neue, noch unverfolgte Dateien. Geprüft: `grep -rn "edition's changes" tools/` findet nichts mehr. - [x] `tools/CONTRACT.md` ist über `docs contract --apply` neu generiert und enthält den neuen Record-Text; `docs verify` grün. - [x] `pytest` grün (lokal: 2328 passed, 3 skipped); CI auf dem publizierten Commit grün (Runs 565, 566). ## Betroffene Stellen - `tools/chemenu/commands/raw_cmd.py` (`_replace_bundle`, `raw accept`-Record) - `tools/CONTRACT.md` (generiert über `docs contract --apply`) - `CHANGES.md`: Abschnitt im Eintrag `8.0.0-beta.49`, über `version bump --patch --impact low` **Abschlussprüfung auf veraltete Doku (2026-10-06):** `raw/CONTRACT.md` und `instructions/wiki-ingest/SKILL.md` waren bereits korrekt. In `docs/`, `README.md`, `INSTALL.md`, `DEVELOPMENT.md`, `EVALS.md` und `tools/README.md` kommt die Behauptung nicht vor: kein Treffer auf `git diff`, nur `README.md` erwähnt `--replaces-bundle`, ohne Aussage zum Diff. Keine Installationsanweisung wurde berührt, also gab es keinen eigenen Pull-through und keinen weiteren Publish. ## Versionsteil **`--patch`**: Geändert ist nur der Text einer Ausgabe und eines Records; Verhalten, Flags und Exit-Codes bleiben gleich, und kein `kb/`-Format ist berührt. Drop-in in beide Richtungen. (Die Meldung "crosses a compatibility boundary" beim Bump gilt für den laufenden 8.0.0-Kandidaten als Ganzes, nicht für diese Änderung.) ## Anmerkung Dem Commit `cb37154` fehlen die Attributions-Trailer (`Co-Authored-By`/`Claude-Session`), weil sie in `--message` nicht mitgegeben wurden. Ohne `--force` lässt sich das nicht korrigieren; es bleibt so.
torben added the prio/plannedsize/Sarea/kbkind/defect labels 2026-10-05 18:37:58 +00:00
torben added kind/build and removed kind/defect labels 2026-10-06 09:35:31 +00:00
Author
Owner

Changelog: Gegen a3fc8f6 neu geprüft – der Befund besteht unverändert, die Zeilennummern sind nachgezogen (961/1054, tools/CONTRACT.md 1696). Ein Wortlautvorschlag für beide Sätze ist ergänzt. Kriterium 3 ist entschieden: Kein Test prüft den Text, und es wird keiner angelegt (Begründung im Body). Kriterium 1 ist jetzt per grep prüfbar. Die nicht betroffenen Dokumente sind genannt. kind/defect → kind/build: Die Spec ist fertig und wartet nur noch auf Umsetzung.

**Changelog:** Gegen `a3fc8f6` neu geprüft – der Befund besteht unverändert, die Zeilennummern sind nachgezogen (961/1054, `tools/CONTRACT.md` 1696). Ein Wortlautvorschlag für beide Sätze ist ergänzt. Kriterium 3 ist entschieden: Kein Test prüft den Text, und es wird keiner angelegt (Begründung im Body). Kriterium 1 ist jetzt per `grep` prüfbar. Die nicht betroffenen Dokumente sind genannt. `kind/defect` → `kind/build`: Die Spec ist fertig und wartet nur noch auf Umsetzung.
Author
Owner

Changelog: Gebaut und als 8.0.0-beta.49 publiziert (cb37154). Der umgesetzte Wortlaut ersetzt im Body den Vorschlag. Alle drei Kriterien sind abgehakt: lokal 2328 Tests grün, docs verify und instructions verify grün, CI-Runs 565/566 grün. Neuer Abschnitt "Stand". Hinweis: Dem Commit fehlen die Attributions-Trailer (Co-Authored-By/Claude-Session), weil ich sie in --message vergessen habe. Ohne --force lässt sich das nicht mehr korrigieren.

**Changelog:** Gebaut und als `8.0.0-beta.49` publiziert (`cb37154`). Der umgesetzte Wortlaut ersetzt im Body den Vorschlag. Alle drei Kriterien sind abgehakt: lokal 2328 Tests grün, `docs verify` und `instructions verify` grün, CI-Runs 565/566 grün. Neuer Abschnitt "Stand". Hinweis: Dem Commit fehlen die Attributions-Trailer (`Co-Authored-By`/`Claude-Session`), weil ich sie in `--message` vergessen habe. Ohne `--force` lässt sich das nicht mehr korrigieren.
Author
Owner

Changelog: Body in den Endzustand gebracht: "Stand" heißt jetzt "Ergebnis", die Abschlussprüfung auf veraltete Doku ist ergänzt (nichts veraltet, kein weiterer Publish), die Zeilennummern sind entfernt, und die fehlenden Trailer stehen als Anmerkung im Body. Geschlossen.

**Changelog:** Body in den Endzustand gebracht: "Stand" heißt jetzt "Ergebnis", die Abschlussprüfung auf veraltete Doku ist ergänzt (nichts veraltet, kein weiterer Publish), die Zeilennummern sind entfernt, und die fehlenden Trailer stehen als Anmerkung im Body. Geschlossen.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: torben/chemenu#181