fix(docs): repair stale documentation links - #3845
Conversation
📝 WalkthroughWalkthroughThe changes replace invalid relative documentation links in Anchor pages and ADR 0160. Anchor now references carrier server mode, centralized Tenant Admin, and Bundle Provisioning documentation. ChangesDocumentation link corrections
Estimated code review effort: 1 (Trivial) | ~5 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
thought (non-blocking): Accessibility audit (advisory)The sharded axe audit is report-only while the baseline and runtime budget mature.
Shard 1 reportShard 2 reportShard 3 report |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/docs/accelerators/anchor/overview.md`:
- Line 20: Convert the three changed cross-surface documentation links to
canonical absolute-origin URLs, preserving their existing targets:
apps/docs/accelerators/anchor/overview.md lines 20-20 (ADR 0165 server-mode
link), apps/docs/accelerators/anchor/reports-admin-scope.md lines 78-78 (Tenant
Admin block link), and lines 105-105 (Bundle Provisioning link). Use the
repository’s established absolute-origin URL format.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: adbd74d6-b629-4726-85ef-cd124736f209
📒 Files selected for processing (3)
apps/docs/accelerators/anchor/overview.mdapps/docs/accelerators/anchor/reports-admin-scope.mddocs/adrs/0160-local-human-web-identity-and-session-authority.md
| [Bridge](../bridge/overview.md) (the multi-tenant SaaS shell). Where | ||
| Bridge is "same component surface, deployed as a hosted SaaS," Anchor is | ||
| dashboard** accelerator. It is the on-device counterpart to the carrier's | ||
| [server mode](/docs/adrs/0165-full-dotnet-viability-node-served-clients-and-the-mobile-client-boundary.html) |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
pnpm kb query "Where are the CI jobs and path skip-gates for DocFX link validation?"
fd -t f -e yml -e yaml -e json -e md | xargs -r rg -n \
'docfx|warningsAsErrors|InvalidFileLink|paths-ignore|skip|exclude|apps/docs|docs/adrs'Repository: Harborline-Software/shipyard
Length of output: 50385
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
echo "== candidate workflow/docs config files =="
git ls-files | rg '(^\.github/workflows/.*|docfx\.json|packages\.json|pnpm-workspace\.yaml|README\.md|_shared/engineering/code-review-policy\.yaml)' | sed -n '1,200p'
echo
echo "== focused workflow/docfx link validation references =="
git ls-files '.github/workflows/*' 'apps/docs/**' 'docfx.json' 'packages.json' 'pnpm-workspace.yaml' | \
xargs -r rg -n -C 3 'docfx|InvalidFileLink|warningsAsErrors|docs-build|docs|build-doc|apps/docs|docs/adrs|paths-|pathsIgnore|only|if:|pull_request' | sed -n '1,240p'
echo
echo "== changed files if available =="
git diff --name-only HEAD~1..HEAD 2>/dev/null | sed -n '1,120p' || true
echo
echo "== target links currently in files =="
python3 - <<'PY'
from pathlib import Path
for p in [
Path("apps/docs/accelerators/anchor/overview.md"),
Path("apps/docs/accelerators/anchor/reports-admin-scope.md"),
]:
if p.exists():
lines = p.read_text().splitlines()
for i,l in enumerate(lines,1):
if p.name=="overview.md" and i==20:
print(f"{p}:{i}:{l}")
if p.name=="reports-admin-scope.md" and i in {78,105}:
print(f"{p}:{i}:{l}")
PYRepository: Harborline-Software/shipyard
Length of output: 37173
🏁 Script executed:
#!/usr/bin/env bash
set -euo pipefail
echo "== apps/docs/docfx.json =="
sed -n '1,220p' apps/docs/docfx.json
echo
echo "== .github/workflows/docs.yml =="
sed -n '1,240p' .github/workflows/docs.yml
echo
echo "== any other docfx warnings/errors in workflows =="
rg -n -C 3 'docfx|INVALID_FILE_LINK|InvalidFileLink|warningAs|Error|warningsAsErrors|docs\.yml|apps/docs|paths-|pathsIgnore|pull_request:' .github/workflows | sed -n '1,260p'
echo
echo "== repository absolute origin config references =="
rg -n 'github\.com/Harborline-Software/shipyard|abs.*origin|canonical|InvalidFileLink|warningsAsErrors' . --glob '!node_modules' --glob '!dist' --glob '!build' | sed -n '1,200p'Repository: Harborline-Software/shipyard
Length of output: 50384
issue [blocking]: Convert changed cross-surface links to absolute-origin URLs.
Anchor cross-surface docs links use /docs/... syntax instead of canonical absolute-origin URLs. Use repo absolute-origin URLs for these targets so generated docs links stay within the documented original source scope.
apps/docs/accelerators/anchor/overview.md#L20: ADR 0165 server-mode link.apps/docs/accelerators/anchor/reports-admin-scope.md#L78: Tenant Admin block link.apps/docs/accelerators/anchor/reports-admin-scope.md#L105: Bundle Provisioning link.
📍 Affects 2 files
apps/docs/accelerators/anchor/overview.md#L20-L20(this comment)apps/docs/accelerators/anchor/reports-admin-scope.md#L78-L78apps/docs/accelerators/anchor/reports-admin-scope.md#L105-L105
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@apps/docs/accelerators/anchor/overview.md` at line 20, Convert the three
changed cross-surface documentation links to canonical absolute-origin URLs,
preserving their existing targets: apps/docs/accelerators/anchor/overview.md
lines 20-20 (ADR 0165 server-mode link),
apps/docs/accelerators/anchor/reports-admin-scope.md lines 78-78 (Tenant Admin
block link), and lines 105-105 (Bundle Provisioning link). Use the repository’s
established absolute-origin URL format.
Source: Path instructions
Summary
server-mode, tenant-admin, and bundle-provisioning documentation.
file-validate them.
Validation
dotnet tool restorepassed.worker mode hit an environment-only preview SDK
MSB4166crash first.dotnet docfx apps/docs/docfx.json --warningsAsErrorscommand wasrun. All four requested
InvalidFileLinkwarnings are gone. This checkout'slocal DocFX 2.78.5 run still reports pre-existing .NET 11 API/xref metadata
diagnostics unrelated to this diff.
git diff --checkpassed, and generated Anchor HTML contains all replacementhrefs.
Closes #3839
Summary by CodeRabbit