251 verified pairs, reconstructed from the backup branches: every pair had to match on both tree hash and commit message before being accepted, and all 251 did.
This keeps older references resolvable without editing what was written at the time. Rewriting historical issue comments would remove the record of what someone actually wrote, and a lookup table costs nothing by comparison.
Applies to every repo in the axion1337.chat group and the ThreadNet services, effective 2026-08-07 (sorb).
Two warnings are part of the rule, not decoration. First: both GIT_AUTHOR_DATE and GIT_COMMITTER_DATE must be set - setting only the author date leaves the committer date in the object, visible via git log --format=%cd and in every web UI. Second: the rule only covers git history. Push times, issue and comment timestamps, pipeline runs and package publishes still carry real times and sit in the same GitLab and on the public Gitea mirror; anyone who genuinely wants no derivable pattern has to address those too.
Zwei Luecken, die das Board driften liessen. Erstens: 34 Issues trugen ein [HIGH]/[MEDIUM]/[LOW] im Titel, zwei davon mit anderer Aussage als ihr Label - wer nach Titel sortierte, sah etwas anderes als wer nach Label sortierte. Zwei Wahrheiten ueber dieselbe Sache sind schlimmer als eine unvollstaendige.
Zweitens: 32 von 70 Issues hingen an keinem Meilenstein und tauchten damit in keiner Roadmap-Ansicht auf. Label und Meilenstein beantworten verschiedene Fragen - wie dringend gegen worauf es einzahlt.
Dazu festgehalten, dass M1-M4 bewusst kein Enddatum haben: sie buendeln, Termindruck steht als Datum am einzelnen Issue.
Die Konventionen stehen kanonisch in CLAUDE.md, aber eine Session liest sie nur,
wenn sie dazu aufgefordert wird. Diese fuenf Bloecke sind die Aufforderung:
Session-Start, Host-Session, Deploy-Uebergabe, Abschluss, Entscheidungsvorlage.
Zwei Gestaltungsentscheidungen, beide aus Fehlern dieser Woche:
Die Bausteine VERWEISEN auf die Regeln, statt sie zu wiederholen. Waeren sie
ausgeschrieben, gaebe es eine zweite Fassung, die driftet - genau das ist am
2026-08-02 passiert, als gitops/CLAUDE.md 'keine Gitea-Ausnahme mehr' behauptete,
waehrend management/CLAUDE.md zwei nannte.
Und hoechstens acht Zeilen je Block, maschinell geprueft. Der Test ist banal: Wer
zum Kopieren scrollen muss, benutzt es nicht. Der Host-Block musste dafuer zweimal
umgeschrieben werden; die Deploy-/AAR-Zeile ist rausgeflogen und steht jetzt als
Prosa daneben - Prosa muss niemand kopieren.
Die Inhalte sind nicht ausgedacht, sondern die Fehler der Woche: erfundene
Theme-Paletten statt gelesener Quelle, ein Sweep nach dem Pfad statt nach dem
Namen, ein zur Haelfte gelesenes Issue samt uebersehenem Korrekturkommentar, die
.netrc-gegen-PRIVATE-TOKEN-Falle und der Ping, der immer fehlschlaegt.
Pflegeregel dabei: ergaenzt wird ein Baustein, wenn derselbe Fehler ZWEIMAL
passiert ist - nicht vorsorglich. Sonst wachsen sie, bis sie niemand mehr kopiert.
Verlinkt aus CLAUDE.md und verfahren/README.md. 59 relative Links geprueft,
keiner tot.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PKhFj1S3UdD6xL2fbWPeYj
Die letzte Ausnahme von ADR-0002 ist erledigt. Sie bestand, weil CFGMON git.lab
nicht erreichte; mit dem Site-to-Site-Tunnel (ADR-0004) ist der Grund weg.
Umgezogen mit dem Werkzeug der ersten Migration (verfahren/issue-migration/
migrate.py), damit derselbe Fusstext und dieselbe Idempotenz gelten:
- sorb/management#1 (offen) -> management#25
- sorb/management#2 (geschlossen) -> management#26, mit allen 11 Kommentaren
Original-Autor und -Zeitstempel sind erhalten (der Admin-Token darf created_at
setzen); die Gitea-Issues sind geschlossen und verweisen auf ihr Gegenstueck.
Der Gitea-Tracker ist damit leer.
Issue-Vorlage konvertiert statt kopiert: Gitea nutzt YAML-Issue-Forms, GitLab
Markdown-Templates. Die Feld-Begruendungen - der eigentliche Wert der Vorlage,
weil jedes Feld fuer eine real schiefgegangene Uebergabe steht - sind als
Kommentare erhalten. .gitea/ ist entfernt, damit dort keine neuen Uebergaben
mehr angelegt werden koennen.
Nachgezogen: README, roadmap, CLAUDE.md, ADR-0002 (Ausnahme durchgestrichen +
als zurueckgebaut markiert), ADR-0004 (Ernte eingeloest), hosts/overmind.md,
hosts/cfgmon.md, verfahren/README.md, verfahren/deploy-uebergabe.md.
55 relative Links geprueft, keiner tot.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PKhFj1S3UdD6xL2fbWPeYj
Spiegelt gitops-Commit. Zwei Ergaenzungen:
Warum zwei Orte: git.lab haelt die Bauplaene, Gitea eine Kopie, die der Cluster
ohne verfuegbares Lab erreicht - die Produktion darf nicht an einem Host haengen,
der nur im Lab antwortet. Mit ausdruecklicher Warnung, die Flux-Quelle nicht auf
git.lab 'geradezuziehen'.
Die TURN-Ausnahme ist keine Handarbeit mehr: der taegliche CI-Job
canonize_rotation erledigt die Kanonisierung. Rote Pipeline statt Kalendereintrag.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PKhFj1S3UdD6xL2fbWPeYj
Die Konventionspruefung zeigte: homelab/docs, /wiki und /wiki-bookstack haben
keine Push-Mirrors - das war weder entschieden noch dokumentiert, sondern
stillschweigend so. Jetzt bewusst festgehalten: gespiegelt wird nur
axion1337.chat; die homelab-Gruppe ist lab-intern und seit ADR-0004 auch fuer
Host-Sessions ueber den Tunnel erreichbar. Konsequenz benannt: Betriebslehren
gehoeren in die AARs (gespiegelt), nicht nur in Lab-READMEs.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PKhFj1S3UdD6xL2fbWPeYj
Drei auseinandergelaufene Dokustaende aufgeloest: Gitea-Wiki-Repo (gepflegt,
nicht gespiegelt), wiki-Branch (Mai-Abzug von docs/), docs/ im main. Wiki liegt
jetzt im GitLab-Wiki; homelab/wiki baut daraus + homelab/docs + diesem Repo eine
Docusaurus-Seite. Damit entfaellt die letzte direkt-zu-Gitea-Ausnahme.
CLAUDE.md + README entsprechend nachgezogen; Rollout-Restarbeit als #18,
Branch-Entscheidung als #19.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PKhFj1S3UdD6xL2fbWPeYj
Uebergreifende Teile der gitops-CLAUDE.md (ThreadNet Server Suite) hierher
gehoben und erweitert: Topologie-Regeln, Kanban-Framework (ADR-0005),
Secrets-Handling, gelebte Lehren; Karpathy-Guidelines wortgleich uebernommen
(unantastbar). Lesbar von ueberall via Gitea-Mirror sorb/management.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PKhFj1S3UdD6xL2fbWPeYj