--- type: design status: gate-1 date: 2026-08-11 size: L related: - "PROJECT.md" - "decisions/0005-pm-framework-kanban.md" - "decisions/0009-commit-konventionen-und-historien-anonymisierung.md" - "decisions/0010-haertung-eigener-meilenstein.md" --- # Design: Migration des Management-Systems auf neckbeard Grundlage: der Feldtest-Report auf dem Branch `Neckbeard-v0.1.1-analyse-1` (Session 1, eingefroren; Befunde F-001…F-017), gemessen gegen neckbeard v0.1.1 @ `823a08cac6b03a47d7e2f661200a49ac6e09d38d`. Bindende Vorgabe aus der Übergabe: **erst die Fehlermuster beider Ansätze durcharbeiten und den Wert des alten Ansatzes in neckbeard einfalten — Übernahme erst danach.** ## Gate 1 — Produkt ### Problem Das Management-Repo steuert fünf Komponenten-Repos und sich selbst mit einem eigenen Regelwerk. Der Feldtest zeigt: Das Regelwerk ist nicht verfallen, sondern **ungleich durchgesetzt**. Wo ein Werkzeug die Regel hält, hält sie vollständig — alle 71 offenen Issues haben genau einen Meilenstein, das WIP-Limit steht, 0 von 161 Dokument-Links sind tot (F-014). Wo nichts prüft — Prosa, Git-Metadaten, Übereinstimmung zweier Dateien — versagt dasselbe Regelwerk wiederholt, in vier Mustern: - **A** — Entscheidung im Werkzeug vollzogen, Doku nicht nachgezogen: M5 existiert und trägt 14 Issues, aber `roadmap.md` stellt ihn als offene Frage dar und die kanonische Arbeitsgrundlage bindet Issues an „M1–M4" (F-001; ferner F-005, F-007, F-010, F-017). - **B** — Regel repo-weit erklärt, auf eine Teilmenge angewandt: Zeitstempel-Anonymisierung erreicht 1 von 6 Repos, 5 Autor-Identitäten einer Person überleben, 4 von 5 Komponenten haben kein versprochenes CLAUDE.md, fünf Komponenten tragen vier Namensschemata (F-002, F-003, F-008, F-011). - **C** — zwei Backlogs, eine Regel: fünf offene Arbeitspunkte leben nur in `hosts/`-Markdown, unsichtbar für Board, Meilenstein und Priorität (F-004, F-009). - **D** — Artefakte überleben ihren Zweck ohne Eigentümer: verwaiste Branches publizieren Vor-Rewrite-Historie, zitierte SHAs sind unauflösbar (F-006, F-012). Betroffen sind sorb und jede Agenten-Session: Jede neue Session wird von der kanonischen Datei falsch geprimt und würde vollzogene Entscheidungen rückgängig machen. Neckbeard adressiert genau diese Klasse — hält aber selbst sieben im Feldtest belegte Lücken, allen voran: ADR-0001 löst „ein Repo, viele Harnesse", dieses Projekt ist „viele Repos, ein Regelwerk", und für die Frage, wo die 71 offenen GitLab-Issues nach der Migration leben, existiert nur eine aufgeschobene Option C. Beide Entscheidungen fallen in Gate 2, jeweils als ADR. Das Produkt dieser Undertaking: das Management-System dieses Repos auf neckbeard umziehen, so dass die vorhandene Disziplin von Stellen, die nur ein Mensch prüfen kann, an Stellen wandert, die ein Skript prüft — nachdem der Wert des alten Ansatzes (F-013…F-016, Meilenstein-/ Prioritäts-Evidenz, Mirror-Topologie-Prosa) in neckbeard eingefaltet wurde. ### Akzeptanzkriterien (verifizierbar) 1. **Deterministische Gates grün:** `scripts/validate.py` meldet auf dem migrierten Repo 0 Fehler; `scripts/gen_status.py --check` meldet STATUS.md aktuell. 2. **Entscheidungen portiert:** alle 10 Entscheidungen (`decisions/0001…0010`) liegen als ADRs mit schema-konformem Frontmatter unter `docs/adr/` — 10/10 validieren. 3. **Ein Backlog:** die fünf Arbeitspunkte aus F-004 (OVERMIND-01, CFGMON-11/12/13, MATRIX-05) existieren als Issues im kanonischen System — 5/5; 0 offene „Nächste Schritte" in `hosts/` ohne Issue-Referenz. 4. **Generierte statt behaupteter Zustand:** 0 handgepflegte Zählungen und „Stand"-Etiketten in kanonischen Dateien, wo ein Generat sie ersetzt; kein kanonisches Dokument widerspricht dem Werkzeugstand bei den Meilensteinen (M1–M5). 5. **Muster → Mechanismus:** für jedes Driftmuster A–D benennt das Design mindestens einen deterministischen Check, und pro Muster feuert mindestens ein Check nachweislich auf dem Vor-Migrations-Stand — 4/4 demonstriert. 6. **Ernte dokumentiert:** 7/7 neckbeard-Lücken mit Disposition (eingefaltet / als Framework-Issue notiert / verworfen mit Grund); 4/4 Works-well-Befunde mit benanntem Erhaltungsmechanismus oder begründetem Verzicht. ### Nicht-Ziele - **Keine Historien-Umschreibung.** Die F-002/F-003-Remediation ist ein eigener Vorgang mit eigener bindender Auflage (Zuordnung im Stil von `shared/commit-zuordnung-2026-08-07.md`); diese Undertaking darf ihr nur nicht im Weg stehen. - **Kein Push** nach git.lab oder Gitea; der Branch bleibt lokal bis zur Freigabe durch sorb. - **Keine Änderung am neckbeard-Upstream.** Lücken werden hier dispositioniert; sie dort einzureichen ist ein eigener Akt. - **Kein Rollout in die fünf Komponenten-Repos** über das hinaus, was die Shared-Ruleset-Entscheidung (Gate 2) zwingend erfordert; der Rollout wird als Folge-Issues angelegt, nicht hier gebaut. - **Kein Forge-Zustand wird zerstört:** keine Löschung von GitLab-Issues, Labels, Meilensteinen oder dem Board durch die Migration selbst. - **`analysis/` bleibt eingefroren** — der Branch von Session 1 wird weder verändert noch umgebaut. - **Kein inhaltliches Umschreiben** des Host-/Visions-/Verfahrenswissens: Umzug, Frontmatter und Korrektur werkzeugwidersprechender Aussagen ja, Neuformulierung nein. ### Ankündigung Das Management-Repo der Gruppe axion1337.chat zieht auf das neckbeard-Framework um. Die vorhandene Disziplin — Meilensteinpflicht, Status-Disziplin, ADR-Pflicht, AARs — bleibt erhalten, wandert aber von Stellen, die nur ein Mensch prüfen kann, an Stellen, die ein Skript prüft: Frontmatter statt Prosa, generiertes STATUS.md statt handgepflegter Zählungen, `validate.py` statt Konventionstreue aus dem Gedächtnis. Die vier Driftmuster des Feldtests bekommen je einen deterministischen Check, und was der alte Ansatz besser kann als neckbeard, wird zuerst ins Framework eingefaltet statt verworfen. Zielgruppe sind sorb und alle Agenten-Sessions, die künftig von einer Quelle starten, die sich nicht selbst widerspricht. ### UI Keine UI beteiligt — Artefakte sind Markdown-Dateien, die Oberfläche bleibt GitLab/Obsidian/Editor. Mockups entfallen.