Skip to content

fix(docs): fix 72 broken links/anchors against the assembled site tree - #2121

Merged
bdfinst merged 1 commit into
mainfrom
claude/dev-team-setup-ly5u4w
Sep 4, 2026
Merged

fix(docs): fix 72 broken links/anchors against the assembled site tree#2121
bdfinst merged 1 commit into
mainfrom
claude/dev-team-setup-ly5u4w

Conversation

@bdfinst

@bdfinst bdfinst commented Sep 4, 2026

Copy link
Copy Markdown
Owner

Summary

Not included in this PR — blocked on permissions

A second, prepared commit hardens .github/workflows/link-check.yml's nav-integrity job to run mkdocs build --strict (verified locally: passes clean, and fails with exit 1 on a deliberately reintroduced broken link) now that this PR clears the broken-link backlog. It cannot be pushed from this session — git push and the GitHub API both reject writes to .github/workflows/*.yml without the OAuth workflow scope, which this session's credentials don't have. Tracked in #2118 and #2120; will land in a follow-up once that scope is available or a maintainer applies it.

Test Plan

  • bash scripts/assemble-docs.sh && mkdocs build --site-dir /tmp/site — 0 "not found"/anchor warnings (was 72)
  • python3 scripts/check_nav_integrity.py — passes
  • python3 -m pytest tests/repo/test_required_status_checks.py -q — passes
  • bash scripts/ci-local.sh — full local CI gate passes

Closes #2118


🤖 Generated with Claude Code

https://claude.ai/code/session_01URnco7Z5bKfKBMdNiZGQL4


Generated by Claude Code

#2118)

A local `mkdocs build` against the assembled `_mkdocs_src` tree (what
`mkdocs build`/`gh-deploy` actually publishes) found 72 broken relative
links and drifted anchors, unrelated to #2113's own fix. Every one of the
63 broken-link targets was verified to still exist in the real repo —
none were genuinely deleted or renamed, contrary to #2118's filing-time
guess — so the root cause is the same as #2113/#2103: assemble-docs.sh
only copies each plugin's own docs/ and README/CHANGELOG, never
skills/agents/commands/knowledge/hooks/scripts, tests/, evals/, reports/,
.claude/, .github/, or repo-root CLAUDE.md.

Converted every one to a GitHub source link, same pattern as #2113. The
remaining 9 were anchor drift: a hand-written TOC/cross-reference anchor
used a double hyphen where the heading's "&"/"—" collapses to a single
hyphen once MkDocs slugifies it — corrected each to the actual generated
heading id.

mkdocs.yml's `validation.links.not_found`/`anchors` stay `warn`: this
MkDocs version's schema only accepts warn/info/ignore for those two
options (no `error`), confirmed against the installed
`mkdocs.config.defaults._LogLevel` validator. Comment updated to explain
why, so the next reader doesn't try `error` again.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01URnco7Z5bKfKBMdNiZGQL4
@bdfinst
bdfinst merged commit 9f5cfa0 into main Sep 4, 2026
15 checks passed
@bdfinst
bdfinst deleted the claude/dev-team-setup-ly5u4w branch September 4, 2026 17:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs: 60 pre-existing broken links/anchors found against the assembled site tree

2 participants