# F-005: A live document routes the reader to the Gitea tracker that three documents declare dead category: claim-vs-reality confidence: high evidence: - The claim, stated three times and each time absolutely: - `README.md:22-27` — "**Keine Ausnahmen mehr.** … der Gitea-Tracker ist leer … **Alle Issues leben auf git.lab.**" - `hosts/overmind.md:38-42` — "**Issues nicht mehr** … der Tracker ist leer. **Ohne Ausnahme: Issues leben auf git.lab.**" - `CLAUDE.md:49` — "**Issues leben auf git.lab.** Die alten Gitea-Issues sind geschlossen und verweisen dorthin." - `hosts/cfgmon.md:176` (section CFGMON-12) resolves its status against that tracker: "**Status:** abgelöst durch [gitops#48](https://rohana.axion1337.de/sorb/axion1337.chat-gitops/issues/48) (2026-08-01, sorb: HOHE Priorität …) — Plan-Skizze und die offene Erreichbarkeits-Entscheidung git.lab-only vs. extern stehen dort". - So the substance of an open decision is said to live in an issue on the tracker that is declared empty. The link is the only pointer to it in the repo. - The number is additionally unsafe: `CLAUDE.md:50-52` warns that gitops issue numbers shifted in the migration ("z. B. Gitea#48 → GitLab#46") and that "alte „gitops#N"-Verweise meinen die Gitea-Nummer". A reader who resolves `gitops#48` on git.lab lands on a different issue than the one meant — and `analysis/data/links.tsv` records `axion1337.chat-gitops#48` as an existing GitLab issue, so nothing looks broken. - The shift is now verified by title, not only by the warning: GitLab gitops#48 is "Gäste-Invite-Workflow per Bot …" — a different topic — while GitLab gitops#46 is "Issue-Migration nach GitLab + zentrale Projekt-Roadmap …", exactly the substance CFGMON-12 describes. The Gitea#48 the doc links **is** today's GitLab#46, confirming `CLAUDE.md:51`'s example as fact (`analysis/data/gitlab_issues.json`). - CFGMON-12 has no issue of its own anywhere in the group (F-004). impact: A high-priority decision ("HOHE Priorität", plus an open reachability question) is reachable only through a link into a system the documentation says is retired, under a number the documentation says is ambiguous. Both failure modes are silent: the link resolves, and so does the wrong git.lab issue. root-cause pattern: **Decision executed in the tool, documentation not carried along** — the migration was completed and announced, but the documents that pointed into the old system were not swept. Compounded by **two backlogs, one rule** (F-004). neckbeard mechanism: Removed by construction under ADR-0002 (`docs/adr/0002-in-repo-issues.md`): with issues as files in the repo, a reference to an issue is a relative link, and `scripts/validate.py`'s `check_body_links` reports "inline link target missing" when it does not resolve — a renumbering or a retired tracker becomes a failing check instead of a working link to the wrong thing. ADR-0002 explicitly lists this as the con of forge issues: "issue ↔ artifact links leave the repo". **Gap in neckbeard:** `check_body_links` only validates repo-relative targets; external URLs are format-checked at most (`schema.yaml:22-26` applies that only to frontmatter link fields). A doc pointing at a dead external tracker stays green.