verify_claims.py gives all 813 claim rows a mechanical disposition; the 28 flags were adjudicated by hand (REPORT.md appendix). Two survived as genuine drift (F-017): a closed issue still described as open in shared/lab-netzwerk.md, and a 'pending' decision block in hosts/cfgmon.md whose premise the same file records as executed. Also: narrow the vendored-path filter (it silently dropped 7 tracked icon files and produced false path-miss flags), record the confirmed canonical author identity in F-003, verify the Gitea#48->GitLab#46 numbering shift by title in F-005, and add the ADR-0010 draft under analysis/drafts/ for the human to git-mv into decisions/. Branch renamed to Neckbeard-v0.1.1-analyse-1 per the human.
50 lines
3.2 KiB
Markdown
50 lines
3.2 KiB
Markdown
# 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.
|