Paket D aus #185. #187 (Gerüst) und #190 (INSTALL.md/README.md auf ihre Tutorial-Teile reduziert) sind abgeschlossen; dieses Paket schließt den Umbau der Wurzeldokumente ab.
Stand: abgeschlossen. Gebaut und publiziert als 9.0.0-beta.7 in fe1de63 (PATCH auf dem laufenden Kandidaten), verifiziert durch CI-Lauf 591 (verify mit Fresh-Instance-Replay, pwsh) und Release-Lauf 592 (Veröffentlichung für den Beta-Kandidaten korrekt übersprungen). Die Abschlussprüfung zog zwei How-to-Seiten nach, 61e18dc, verifiziert durch CI-Lauf 594 (§ Abschlussprüfung). Ein Release ist nicht geschnitten – das entscheidet der Betreiber.
Was gebaut wurde
1. INSTALL.md bleibt an der Wurzel und ist das Installations-Tutorial – auf Englisch
Entscheidung: Die Datei wird nicht nach docs/tutorials/ verschoben. Ihr Name ist in instructions/setup-instance.md, tools/chemenu/install_doc.py (INSTALL_DOC), dist_cmd.ROOT_FILES und im Release-Ablauf verankert, und wer eine Instanz einrichten will, findet sie an der Wurzel zuerst. docs/tutorials/README.md listet INSTALL.md als erstes Tutorial.
Titel „Install a Chemenu instance“; Abschnitte übersetzt: § What you need first, § The sentence for the agent, § What the agent asks you, § When the agent stops, § Check the instance, § Next steps (früher „Danach“, verlinkt jetzt zuerst das neue Tutorial). Der Satz für den Agenten ist englisch.
Generierte Regionen (<!-- wikitool:prerequisites… -->) und die acht <!-- setup-question: <key> -->-Marker unverändert.
Verweise nachgezogen: instructions/dev/doc-pull-through.md (§ "What the agent asks you"); install_doc.py – Docstring (beide Dokumente englisch, AGENTS.md § File naming; die Begründungen für das Weglassen des why-Felds und für den Marker-Schlüssel neu gefasst, weil „zwei Sprachen“ nicht mehr trägt), der Abschnittsname steht jetzt in der Konstante QUESTIONS_SECTION und in der Meldung von check_setup_questions; dieselbe veraltete Begründung im docs prerequisites-Datensatz (docs_verify.py) → tools/CONTRACT.md und docs/reference/commands/types-instructions-and-docs.md regeneriert. Tests: Fixture englisch, neuer Test test_this_repos_install_doc_has_the_section_the_finding_names (die Überschrift, die die Meldung nennt, existiert in INSTALL.md), bestehender Fehlende-Frage-Test prüft den Abschnittsnamen in der Meldung.
Acht Schritte in einer frischen Instanz: Beispielquelle nach incoming/kopieren → „Ingest“ → sagen, was zählt (und dass nichts zu tun ist) → fidelity/authority beantworten (verbatim, reporting) → den Agenten publizieren lassen → ansehen, was entstand (raw/, Quellseite mit den zwei Antworten, Entitäts-/Konzeptseiten mit Fußnoten, kb/log.md) → in einer neuen Sitzung zwei Fragen stellen (eine mit Quellen beantwortbar, eine, für die die Wiki keine Quelle hat) → optional Obsidian. Leitplanke 1 aus #185 eingehalten: kein Schritt erzählt wiki-ingest nach.
Beispielquelledocs/tutorials/sample-source.md: 48 Zeilen, englisch, selbst verfasst, als erfunden gekennzeichnet; Entitäten Atlas (Dateiserver) und restic, Konzept 3-2-1-Regel, Beziehung Atlas nutzt restic.
Gegenüber dem Entwurf aus dem Durchspielen korrigiert: Schritt 5 hieß „Approve the publish“ und behauptete, ein erster Ingest löse das Mass-Update-Gate aus. Tut er nicht – generierte Indexe und Log zählen nicht, der Lauf hatte 11 Dateien, davon 5 gezählt. Schritt 5 heißt jetzt „Let the agent publish“ und nennt das Gate nur für größere Quellen. Schritt 3 sagt jetzt, dass der Agent die Capture-Fragen oft schon in derselben Nachricht stellt und den nicht getesteten Restore als Aufgabe anbieten kann.
3. README.md als Landeseite
Einleitung, Getting started, Documentation (Tutorials-Zeile nennt INSTALL.md als Anfang), Your first ingestion (jetzt zwei Zeilen mit Link auf das neue Tutorial), Changelog, Resources, License – letztere drei hatte #190 bewusst stehen lassen, keine docs/-Seite trägt sie. 101 Zeilen.
Durchspiel-Test (Akzeptanzkriterium 3)
2026-10-07, Claude Code (claude -p, Standardmodell), Instanz aus dem dist export des Arbeitsbaums im Scratchpad, eingerichtet wie der CI-Schritt „The distribution works as a fresh instance“ (Vorlagen ohne Sentinel, dist adopt, Indexe). Basis-Commit in der Testinstanz per git commit, kein Remote.
Schritte 1–4: Der Agent stellte Takeaways, vier vorgeschlagene Seiten, die Aufgaben-Frage (bot den nicht getesteten Full-Restore als Aufgabe an) und fidelity/authority in einer Nachricht. Antwort wörtlich aus dem Tutorial.
Schritt 5: publish scheiterte zuerst am fehlenden origin (Eigenheit der Testinstanz – eine echte lokale Instanz klärt das im Setup), danach mit --no-push committet: 11 Dateien, kein Gate (→ Korrektur oben).
Schritt 6: Quellseite kb/sources/notes/Source - Home lab backups - how they work now.md mit fidelity: verbatim, authority: reporting, raw_files: [raw/2026/10/home-lab-backups.md]; Atlas (system), restic (tool), 3-2-1 backup rule (pattern), Kanten Atlas uses restic / implements 3-2-1; Fußnoten an den Fakten; Log-Eintrag.
Schritt 7, je neue Sitzung: Brand-Frage → Storage-Box als einzige Kopie außer Haus, 3-2-1-Regel, Quellen genannt. Restore-Dauer → „nobody has done one yet“, keine Schätzung, Quelle genannt.
Nebenbefund: Die Seiten-Typ-Specs, die dist export ausliefert, sind deutsch, obwohl kb/CONVENTIONS.md.template Englisch vorgibt; new schrieb deutsche Überschriften, der Agent hat sie von Hand angepasst. Nicht Teil dieses Pakets → #196.
Abschlussprüfung (stack-close)
Veraltete Aussagen gesucht: Verweise auf den früheren Stand („Nothing is here yet“ in docs/tutorials/README.md, deutsche Abschnittsnamen, „Your first ingestion“-Schritte) – außer der jetzt verlinkenden README-Überschrift keine Fundstelle. Gelesen ohne Abweichung: AGENTS.md (Bootstrap, File naming Punkt 3), docs/explanation/language-boundaries.md § The stack's human documentation, docs/explanation/architecture.md (Baum), docs/how-to/README.md, docs/how-to/troubleshoot.md (verweist für Preflight-Stopps weiter auf INSTALL.md), docs/dev/development.md, tools/README.md (install_doc.py-Zeile), der CHANGES.md-Abschnitt.
Eine Abweichung, nachgezogen:docs/how-to/ingest-a-source.md und docs/how-to/maintain-the-wiki.md sagten, ein Publish mit zehn oder mehr Dateien halte am Mass-Update-Gate – ohne dass generierte Dateien nicht zählen (git_publish.is_exempt/is_generated). Der Durchspiel-Test hat es widerlegt, und das neue Tutorial sagte es schon richtig. Beide Seiten nennen jetzt die Ausnahme (61e18dc, nur docs/, kein Bump nötig), CI-Lauf 594 grün.
Installationsinstruktionen: Der Diff berührt keine (setup-instance.md, preflight.md, bootstrap.md, upgrade-instance.md unverändert); INSTALL.md wurde beim Übersetzen Abschnitt für Abschnitt gegen setup-instance.md gelesen (Fragen, Gate beim ersten Commit, Neustart der Sitzung, Prüfreihenfolge) – keine Abweichung.
Version
PATCH – keine Schnittstelle ändert sich; tools/ nur in Docstrings, Meldungen, einem Datensatztext und Tests. Drop-in in beide Richtungen. version bump --patch --impact medium: 9.0.0-beta.7; CHANGES.md mit Bump-Titel plus Themenabschnitt „Tutorials: installation in English, and a first source to a first answer (#191)“. Der Nachzieh-Commit 61e18dc berührt nur docs/ und braucht keinen Bump.
Akzeptanzkriterien
INSTALL.md ist vollständig englisch; install_doc-Checks grün; docs prerequisites meldet „already current“; die Menge der setup-question-Schlüssel ist unverändert (acht).
grep -rn "Was der Agent dich fragt\|Was vorher da sein muss\|Wenn der Agent anhält" außerhalb von CHANGES.md, kb/, raw/, reports/ findet nichts.
Das Tutorial lässt sich in einer frischen, per dist export erzeugten Instanz von Anfang bis Ende durchspielen – § Durchspiel-Test.
README.md hat höchstens 150 Zeilen (101) und keinen Abschnitt, dessen Inhalt eine Seite unter docs/ schon trägt.
docs/tutorials/README.md listet beide Tutorials.
dist export + docs verify im Zielbaum grün (nach dist adopt und kb/CONVENTIONS.md aus der Vorlage); docs/tutorials/ mit allen drei Dateien im Export, docs/dev/ nicht. In CI zusätzlich der Schritt „The distribution works as a fresh instance“ in Lauf 591.
Paket D aus #185. #187 (Gerüst) und #190 (`INSTALL.md`/`README.md` auf ihre Tutorial-Teile reduziert) sind abgeschlossen; dieses Paket schließt den Umbau der Wurzeldokumente ab.
**Stand: abgeschlossen.** Gebaut und publiziert als **9.0.0-beta.7** in `fe1de63` (PATCH auf dem laufenden Kandidaten), verifiziert durch CI-Lauf [591](https://gitea.nehmer.net/torben/chemenu/actions/runs/591) (`verify` mit Fresh-Instance-Replay, `pwsh`) und Release-Lauf [592](https://gitea.nehmer.net/torben/chemenu/actions/runs/592) (Veröffentlichung für den Beta-Kandidaten korrekt übersprungen). Die Abschlussprüfung zog zwei How-to-Seiten nach, `61e18dc`, verifiziert durch CI-Lauf [594](https://gitea.nehmer.net/torben/chemenu/actions/runs/594) (§ Abschlussprüfung). Ein Release ist nicht geschnitten – das entscheidet der Betreiber.
## Was gebaut wurde
### 1. `INSTALL.md` bleibt an der Wurzel und *ist* das Installations-Tutorial – auf Englisch
Entscheidung: Die Datei wird **nicht** nach `docs/tutorials/` verschoben. Ihr Name ist in `instructions/setup-instance.md`, `tools/chemenu/install_doc.py` (`INSTALL_DOC`), `dist_cmd.ROOT_FILES` und im Release-Ablauf verankert, und wer eine Instanz einrichten will, findet sie an der Wurzel zuerst. `docs/tutorials/README.md` listet `INSTALL.md` als erstes Tutorial.
- Titel „Install a Chemenu instance“; Abschnitte übersetzt: § What you need first, § The sentence for the agent, § What the agent asks you, § When the agent stops, § Check the instance, § Next steps (früher „Danach“, verlinkt jetzt zuerst das neue Tutorial). Der Satz für den Agenten ist englisch.
- Generierte Regionen (`<!-- wikitool:prerequisites… -->`) und die acht `<!-- setup-question: <key> -->`-Marker unverändert.
- Verweise nachgezogen: `instructions/dev/doc-pull-through.md` (§ "What the agent asks you"); `install_doc.py` – Docstring (beide Dokumente englisch, `AGENTS.md` § File naming; die Begründungen für das Weglassen des `why`-Felds und für den Marker-Schlüssel neu gefasst, weil „zwei Sprachen“ nicht mehr trägt), der Abschnittsname steht jetzt in der Konstante `QUESTIONS_SECTION` und in der Meldung von `check_setup_questions`; dieselbe veraltete Begründung im `docs prerequisites`-Datensatz (`docs_verify.py`) → `tools/CONTRACT.md` und `docs/reference/commands/types-instructions-and-docs.md` regeneriert. Tests: Fixture englisch, neuer Test `test_this_repos_install_doc_has_the_section_the_finding_names` (die Überschrift, die die Meldung nennt, existiert in `INSTALL.md`), bestehender Fehlende-Frage-Test prüft den Abschnittsnamen in der Meldung.
### 2. Neues Tutorial `docs/tutorials/first-source-to-first-answer.md`
Acht Schritte in einer frischen Instanz: Beispielquelle nach `incoming/` *kopieren* → „Ingest“ → sagen, was zählt (und dass nichts zu tun ist) → `fidelity`/`authority` beantworten (`verbatim`, `reporting`) → den Agenten publizieren lassen → ansehen, was entstand (`raw/`, Quellseite mit den zwei Antworten, Entitäts-/Konzeptseiten mit Fußnoten, `kb/log.md`) → in einer neuen Sitzung zwei Fragen stellen (eine mit Quellen beantwortbar, eine, für die die Wiki keine Quelle hat) → optional Obsidian. Leitplanke 1 aus #185 eingehalten: kein Schritt erzählt `wiki-ingest` nach.
- **Beispielquelle** `docs/tutorials/sample-source.md`: 48 Zeilen, englisch, selbst verfasst, als erfunden gekennzeichnet; Entitäten Atlas (Dateiserver) und restic, Konzept 3-2-1-Regel, Beziehung Atlas nutzt restic.
- **Gegenüber dem Entwurf aus dem Durchspielen korrigiert:** Schritt 5 hieß „Approve the publish“ und behauptete, ein erster Ingest löse das Mass-Update-Gate aus. Tut er nicht – generierte Indexe und Log zählen nicht, der Lauf hatte 11 Dateien, davon 5 gezählt. Schritt 5 heißt jetzt „Let the agent publish“ und nennt das Gate nur für größere Quellen. Schritt 3 sagt jetzt, dass der Agent die Capture-Fragen oft schon in derselben Nachricht stellt und den nicht getesteten Restore als Aufgabe anbieten kann.
### 3. `README.md` als Landeseite
Einleitung, *Getting started*, *Documentation* (Tutorials-Zeile nennt `INSTALL.md` als Anfang), *Your first ingestion* (jetzt zwei Zeilen mit Link auf das neue Tutorial), *Changelog*, *Resources*, *License* – letztere drei hatte #190 bewusst stehen lassen, keine `docs/`-Seite trägt sie. 101 Zeilen.
## Durchspiel-Test (Akzeptanzkriterium 3)
2026-10-07, **Claude Code** (`claude -p`, Standardmodell), Instanz aus dem `dist export` des Arbeitsbaums im Scratchpad, eingerichtet wie der CI-Schritt „The distribution works as a fresh instance“ (Vorlagen ohne Sentinel, `dist adopt`, Indexe). Basis-Commit in der Testinstanz per `git commit`, kein Remote.
- Schritte 1–4: Der Agent stellte Takeaways, vier vorgeschlagene Seiten, die Aufgaben-Frage (bot den nicht getesteten Full-Restore als Aufgabe an) und `fidelity`/`authority` in **einer** Nachricht. Antwort wörtlich aus dem Tutorial.
- Schritt 5: `publish` scheiterte zuerst am fehlenden `origin` (Eigenheit der Testinstanz – eine echte lokale Instanz klärt das im Setup), danach mit `--no-push` committet: 11 Dateien, **kein Gate** (→ Korrektur oben).
- Schritt 6: Quellseite `kb/sources/notes/Source - Home lab backups - how they work now.md` mit `fidelity: verbatim`, `authority: reporting`, `raw_files: [raw/2026/10/home-lab-backups.md]`; `Atlas` (system), `restic` (tool), `3-2-1 backup rule` (pattern), Kanten Atlas `uses` restic / `implements` 3-2-1; Fußnoten an den Fakten; Log-Eintrag.
- Schritt 7, je neue Sitzung: Brand-Frage → Storage-Box als einzige Kopie außer Haus, 3-2-1-Regel, Quellen genannt. Restore-Dauer → „nobody has done one yet“, keine Schätzung, Quelle genannt.
- **Nebenbefund:** Die Seiten-Typ-Specs, die `dist export` ausliefert, sind deutsch, obwohl `kb/CONVENTIONS.md.template` Englisch vorgibt; `new` schrieb deutsche Überschriften, der Agent hat sie von Hand angepasst. Nicht Teil dieses Pakets → **#196**.
## Abschlussprüfung (`stack-close`)
- **Veraltete Aussagen gesucht:** Verweise auf den früheren Stand („Nothing is here yet“ in `docs/tutorials/README.md`, deutsche Abschnittsnamen, „Your first ingestion“-Schritte) – außer der jetzt verlinkenden README-Überschrift keine Fundstelle. Gelesen ohne Abweichung: `AGENTS.md` (Bootstrap, File naming Punkt 3), `docs/explanation/language-boundaries.md` § The stack's human documentation, `docs/explanation/architecture.md` (Baum), `docs/how-to/README.md`, `docs/how-to/troubleshoot.md` (verweist für Preflight-Stopps weiter auf `INSTALL.md`), `docs/dev/development.md`, `tools/README.md` (`install_doc.py`-Zeile), der `CHANGES.md`-Abschnitt.
- **Eine Abweichung, nachgezogen:** `docs/how-to/ingest-a-source.md` und `docs/how-to/maintain-the-wiki.md` sagten, ein Publish mit zehn oder mehr Dateien halte am Mass-Update-Gate – ohne dass generierte Dateien nicht zählen (`git_publish.is_exempt`/`is_generated`). Der Durchspiel-Test hat es widerlegt, und das neue Tutorial sagte es schon richtig. Beide Seiten nennen jetzt die Ausnahme (`61e18dc`, nur `docs/`, kein Bump nötig), CI-Lauf 594 grün.
- **Installationsinstruktionen:** Der Diff berührt keine (`setup-instance.md`, `preflight.md`, `bootstrap.md`, `upgrade-instance.md` unverändert); `INSTALL.md` wurde beim Übersetzen Abschnitt für Abschnitt gegen `setup-instance.md` gelesen (Fragen, Gate beim ersten Commit, Neustart der Sitzung, Prüfreihenfolge) – keine Abweichung.
## Version
**PATCH** – keine Schnittstelle ändert sich; `tools/` nur in Docstrings, Meldungen, einem Datensatztext und Tests. Drop-in in beide Richtungen. `version bump --patch --impact medium`: **9.0.0-beta.7**; `CHANGES.md` mit Bump-Titel plus Themenabschnitt „Tutorials: installation in English, and a first source to a first answer (#191)“. Der Nachzieh-Commit `61e18dc` berührt nur `docs/` und braucht keinen Bump.
## Akzeptanzkriterien
- [x] `INSTALL.md` ist vollständig englisch; `install_doc`-Checks grün; `docs prerequisites` meldet „already current“; die Menge der `setup-question`-Schlüssel ist unverändert (acht).
- [x] `grep -rn "Was der Agent dich fragt\|Was vorher da sein muss\|Wenn der Agent anhält"` außerhalb von `CHANGES.md`, `kb/`, `raw/`, `reports/` findet nichts.
- [x] Das Tutorial lässt sich in einer frischen, per `dist export` erzeugten Instanz von Anfang bis Ende durchspielen – § Durchspiel-Test.
- [x] `README.md` hat höchstens 150 Zeilen (101) und keinen Abschnitt, dessen Inhalt eine Seite unter `docs/` schon trägt.
- [x] `docs/tutorials/README.md` listet beide Tutorials.
- [x] `dist export` + `docs verify` im Zielbaum grün (nach `dist adopt` und `kb/CONVENTIONS.md` aus der Vorlage); `docs/tutorials/` mit allen drei Dateien im Export, `docs/dev/` nicht. In CI zusätzlich der Schritt „The distribution works as a fresh instance“ in Lauf 591.
- [x] `pytest` (2433 bestanden, 3 übersprungen), `docs verify`, `instructions verify` lokal grün; CI-Lauf 591 (`fe1de63`) grün, Release-Lauf 592 grün mit übersprungener Veröffentlichung; CI-Lauf 594 (`61e18dc`) grün.
Changelog: Gebaut, publiziert als 9.0.0-beta.7 in fe1de63, CI 591/Release 592 grün. status/blocked entfernt (#187, #190 geschlossen). Body vom Plan auf „Was gebaut wurde“ umgeschrieben; neu: § Durchspiel-Test (Claude Code, frische Instanz) mit zwei Korrekturen am Tutorial (Schritt 5: erster Ingest löst das Gate nicht aus; Schritt 3: Capture-Fragen kommen oft in derselben Nachricht) und dem Nebenbefund deutscher Seitengerüste in englischen Instanzen → #196. Zusätzlich gegenüber dem Plan: Konstante install_doc.QUESTIONS_SECTION mit Test, und die veraltete Zwei-Sprachen-Begründung im docs prerequisites-Datensatz. Alle Kriterien abgehakt.
**Changelog:** Gebaut, publiziert als 9.0.0-beta.7 in `fe1de63`, CI 591/Release 592 grün. `status/blocked` entfernt (#187, #190 geschlossen). Body vom Plan auf „Was gebaut wurde“ umgeschrieben; neu: § Durchspiel-Test (Claude Code, frische Instanz) mit zwei Korrekturen am Tutorial (Schritt 5: erster Ingest löst das Gate nicht aus; Schritt 3: Capture-Fragen kommen oft in derselben Nachricht) und dem Nebenbefund deutscher Seitengerüste in englischen Instanzen → #196. Zusätzlich gegenüber dem Plan: Konstante `install_doc.QUESTIONS_SECTION` mit Test, und die veraltete Zwei-Sprachen-Begründung im `docs prerequisites`-Datensatz. Alle Kriterien abgehakt.
Changelog: Abschlussprüfung ergänzt (§ Abschlussprüfung): eine Abweichung gefunden und nachgezogen – ingest-a-source.md und maintain-the-wiki.md nennen jetzt, dass generierte Dateien nicht zum Mass-Update-Gate zählen (61e18dc, CI 594 grün). Sonst keine veraltete Aussage. Stand auf „abgeschlossen“; geschlossen.
**Changelog:** Abschlussprüfung ergänzt (§ Abschlussprüfung): eine Abweichung gefunden und nachgezogen – `ingest-a-source.md` und `maintain-the-wiki.md` nennen jetzt, dass generierte Dateien nicht zum Mass-Update-Gate zählen (`61e18dc`, CI 594 grün). Sonst keine veraltete Aussage. Stand auf „abgeschlossen“; geschlossen.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Paket D aus #185. #187 (Gerüst) und #190 (
INSTALL.md/README.mdauf ihre Tutorial-Teile reduziert) sind abgeschlossen; dieses Paket schließt den Umbau der Wurzeldokumente ab.Stand: abgeschlossen. Gebaut und publiziert als 9.0.0-beta.7 in
fe1de63(PATCH auf dem laufenden Kandidaten), verifiziert durch CI-Lauf 591 (verifymit Fresh-Instance-Replay,pwsh) und Release-Lauf 592 (Veröffentlichung für den Beta-Kandidaten korrekt übersprungen). Die Abschlussprüfung zog zwei How-to-Seiten nach,61e18dc, verifiziert durch CI-Lauf 594 (§ Abschlussprüfung). Ein Release ist nicht geschnitten – das entscheidet der Betreiber.Was gebaut wurde
1.
INSTALL.mdbleibt an der Wurzel und ist das Installations-Tutorial – auf EnglischEntscheidung: Die Datei wird nicht nach
docs/tutorials/verschoben. Ihr Name ist ininstructions/setup-instance.md,tools/chemenu/install_doc.py(INSTALL_DOC),dist_cmd.ROOT_FILESund im Release-Ablauf verankert, und wer eine Instanz einrichten will, findet sie an der Wurzel zuerst.docs/tutorials/README.mdlistetINSTALL.mdals erstes Tutorial.<!-- wikitool:prerequisites… -->) und die acht<!-- setup-question: <key> -->-Marker unverändert.instructions/dev/doc-pull-through.md(§ "What the agent asks you");install_doc.py– Docstring (beide Dokumente englisch,AGENTS.md§ File naming; die Begründungen für das Weglassen deswhy-Felds und für den Marker-Schlüssel neu gefasst, weil „zwei Sprachen“ nicht mehr trägt), der Abschnittsname steht jetzt in der KonstanteQUESTIONS_SECTIONund in der Meldung voncheck_setup_questions; dieselbe veraltete Begründung imdocs prerequisites-Datensatz (docs_verify.py) →tools/CONTRACT.mdunddocs/reference/commands/types-instructions-and-docs.mdregeneriert. Tests: Fixture englisch, neuer Testtest_this_repos_install_doc_has_the_section_the_finding_names(die Überschrift, die die Meldung nennt, existiert inINSTALL.md), bestehender Fehlende-Frage-Test prüft den Abschnittsnamen in der Meldung.2. Neues Tutorial
docs/tutorials/first-source-to-first-answer.mdAcht Schritte in einer frischen Instanz: Beispielquelle nach
incoming/kopieren → „Ingest“ → sagen, was zählt (und dass nichts zu tun ist) →fidelity/authoritybeantworten (verbatim,reporting) → den Agenten publizieren lassen → ansehen, was entstand (raw/, Quellseite mit den zwei Antworten, Entitäts-/Konzeptseiten mit Fußnoten,kb/log.md) → in einer neuen Sitzung zwei Fragen stellen (eine mit Quellen beantwortbar, eine, für die die Wiki keine Quelle hat) → optional Obsidian. Leitplanke 1 aus #185 eingehalten: kein Schritt erzähltwiki-ingestnach.docs/tutorials/sample-source.md: 48 Zeilen, englisch, selbst verfasst, als erfunden gekennzeichnet; Entitäten Atlas (Dateiserver) und restic, Konzept 3-2-1-Regel, Beziehung Atlas nutzt restic.3.
README.mdals LandeseiteEinleitung, Getting started, Documentation (Tutorials-Zeile nennt
INSTALL.mdals Anfang), Your first ingestion (jetzt zwei Zeilen mit Link auf das neue Tutorial), Changelog, Resources, License – letztere drei hatte #190 bewusst stehen lassen, keinedocs/-Seite trägt sie. 101 Zeilen.Durchspiel-Test (Akzeptanzkriterium 3)
2026-10-07, Claude Code (
claude -p, Standardmodell), Instanz aus demdist exportdes Arbeitsbaums im Scratchpad, eingerichtet wie der CI-Schritt „The distribution works as a fresh instance“ (Vorlagen ohne Sentinel,dist adopt, Indexe). Basis-Commit in der Testinstanz pergit commit, kein Remote.fidelity/authorityin einer Nachricht. Antwort wörtlich aus dem Tutorial.publishscheiterte zuerst am fehlendenorigin(Eigenheit der Testinstanz – eine echte lokale Instanz klärt das im Setup), danach mit--no-pushcommittet: 11 Dateien, kein Gate (→ Korrektur oben).kb/sources/notes/Source - Home lab backups - how they work now.mdmitfidelity: verbatim,authority: reporting,raw_files: [raw/2026/10/home-lab-backups.md];Atlas(system),restic(tool),3-2-1 backup rule(pattern), Kanten Atlasusesrestic /implements3-2-1; Fußnoten an den Fakten; Log-Eintrag.dist exportausliefert, sind deutsch, obwohlkb/CONVENTIONS.md.templateEnglisch vorgibt;newschrieb deutsche Überschriften, der Agent hat sie von Hand angepasst. Nicht Teil dieses Pakets → #196.Abschlussprüfung (
stack-close)docs/tutorials/README.md, deutsche Abschnittsnamen, „Your first ingestion“-Schritte) – außer der jetzt verlinkenden README-Überschrift keine Fundstelle. Gelesen ohne Abweichung:AGENTS.md(Bootstrap, File naming Punkt 3),docs/explanation/language-boundaries.md§ The stack's human documentation,docs/explanation/architecture.md(Baum),docs/how-to/README.md,docs/how-to/troubleshoot.md(verweist für Preflight-Stopps weiter aufINSTALL.md),docs/dev/development.md,tools/README.md(install_doc.py-Zeile), derCHANGES.md-Abschnitt.docs/how-to/ingest-a-source.mdunddocs/how-to/maintain-the-wiki.mdsagten, ein Publish mit zehn oder mehr Dateien halte am Mass-Update-Gate – ohne dass generierte Dateien nicht zählen (git_publish.is_exempt/is_generated). Der Durchspiel-Test hat es widerlegt, und das neue Tutorial sagte es schon richtig. Beide Seiten nennen jetzt die Ausnahme (61e18dc, nurdocs/, kein Bump nötig), CI-Lauf 594 grün.setup-instance.md,preflight.md,bootstrap.md,upgrade-instance.mdunverändert);INSTALL.mdwurde beim Übersetzen Abschnitt für Abschnitt gegensetup-instance.mdgelesen (Fragen, Gate beim ersten Commit, Neustart der Sitzung, Prüfreihenfolge) – keine Abweichung.Version
PATCH – keine Schnittstelle ändert sich;
tools/nur in Docstrings, Meldungen, einem Datensatztext und Tests. Drop-in in beide Richtungen.version bump --patch --impact medium: 9.0.0-beta.7;CHANGES.mdmit Bump-Titel plus Themenabschnitt „Tutorials: installation in English, and a first source to a first answer (#191)“. Der Nachzieh-Commit61e18dcberührt nurdocs/und braucht keinen Bump.Akzeptanzkriterien
INSTALL.mdist vollständig englisch;install_doc-Checks grün;docs prerequisitesmeldet „already current“; die Menge dersetup-question-Schlüssel ist unverändert (acht).grep -rn "Was der Agent dich fragt\|Was vorher da sein muss\|Wenn der Agent anhält"außerhalb vonCHANGES.md,kb/,raw/,reports/findet nichts.dist exporterzeugten Instanz von Anfang bis Ende durchspielen – § Durchspiel-Test.README.mdhat höchstens 150 Zeilen (101) und keinen Abschnitt, dessen Inhalt eine Seite unterdocs/schon trägt.docs/tutorials/README.mdlistet beide Tutorials.dist export+docs verifyim Zielbaum grün (nachdist adoptundkb/CONVENTIONS.mdaus der Vorlage);docs/tutorials/mit allen drei Dateien im Export,docs/dev/nicht. In CI zusätzlich der Schritt „The distribution works as a fresh instance“ in Lauf 591.pytest(2433 bestanden, 3 übersprungen),docs verify,instructions verifylokal grün; CI-Lauf 591 (fe1de63) grün, Release-Lauf 592 grün mit übersprungener Veröffentlichung; CI-Lauf 594 (61e18dc) grün.Changelog: Gebaut, publiziert als 9.0.0-beta.7 in
fe1de63, CI 591/Release 592 grün.status/blockedentfernt (#187, #190 geschlossen). Body vom Plan auf „Was gebaut wurde“ umgeschrieben; neu: § Durchspiel-Test (Claude Code, frische Instanz) mit zwei Korrekturen am Tutorial (Schritt 5: erster Ingest löst das Gate nicht aus; Schritt 3: Capture-Fragen kommen oft in derselben Nachricht) und dem Nebenbefund deutscher Seitengerüste in englischen Instanzen → #196. Zusätzlich gegenüber dem Plan: Konstanteinstall_doc.QUESTIONS_SECTIONmit Test, und die veraltete Zwei-Sprachen-Begründung imdocs prerequisites-Datensatz. Alle Kriterien abgehakt.Changelog: Abschlussprüfung ergänzt (§ Abschlussprüfung): eine Abweichung gefunden und nachgezogen –
ingest-a-source.mdundmaintain-the-wiki.mdnennen jetzt, dass generierte Dateien nicht zum Mass-Update-Gate zählen (61e18dc, CI 594 grün). Sonst keine veraltete Aussage. Stand auf „abgeschlossen“; geschlossen.