docs: fix 50 broken links pointing at repo files (yaml/rs/py/sh/README) - #9384
docs: fix 50 broken links pointing at repo files (yaml/rs/py/sh/README)#9384dagil-nvidia wants to merge 1 commit into
Conversation
The docs-website branch contains only fern/ — no examples/, lib/, components/src/, or recipes/. Markdown links to those paths render as broken docs.nvidia.com URLs because Fern publishes them as if they were docs pages. Repoint all such links to full github.com/ai-dynamo/dynamo/blob/main or tree/main URLs so they resolve correctly on both GitHub and the published docs site. Also fix two cross-tree .md README links and a broken anchor on the agentic-inference blog post. Clears the residual entries from the 2026-05-04 SW Docs link-checker scan that aren't versioned-snapshot drift. Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
WalkthroughThis PR systematically converts 24 documentation link references across 14 files from relative filesystem paths and in-page anchors to absolute GitHub URLs. All changes are documentation-only with no modifications to code logic, public APIs, or user-facing behavior. ChangesDocumentation Link Normalization to GitHub URLs
🎯 1 (Trivial) | ⏱️ ~3 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. 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 |
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 `@docs/backends/trtllm/multinode/trtllm-multinode-examples.md`:
- Around line 20-21: The two markdown links labeled "Qwen3-235B-A22B-FP8
aggregated" and "Qwen3-235B-A22B-FP8 disaggregated" point to non-existent
deploy.yaml files; update their hrefs to the parent agg/ and disagg/ directories
(or to specific hardware subdirs like hopper/ or blackwell/ with clarified link
text) so the links resolve to the actual deploy manifest locations.
🪄 Autofix (Beta)
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
Run ID: bd892841-9126-4bdf-b169-036bba722517
📒 Files selected for processing (14)
docs/api/nixl-connect/README.mddocs/backends/mocker_backend/README.mddocs/backends/sglang/README.mddocs/backends/sglang/sglang-examples.mddocs/backends/sglang/sglang-reference-guide.mddocs/backends/trtllm/multinode/trtllm-multinode-examples.mddocs/backends/trtllm/trtllm-reference-guide.mddocs/benchmarks/mocker-trace-replay.mddocs/components/router/router-testing.mddocs/components/router/standalone-indexer.mddocs/digest/agentic-inference/agentic-inference.mddocs/kubernetes/disagg-communication-guide.mddocs/kubernetes/snapshot.mddocs/mocker/mocker.md
| - [Qwen3-235B-A22B-FP8 aggregated](https://github.com/ai-dynamo/dynamo/blob/main/recipes/qwen3-235b-a22b-fp8/trtllm/agg/deploy.yaml) | ||
| - [Qwen3-235B-A22B-FP8 disaggregated](https://github.com/ai-dynamo/dynamo/blob/main/recipes/qwen3-235b-a22b-fp8/trtllm/disagg/deploy.yaml) |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Read-only verification: find the actual deploy manifests under the qwen3-235b recipe tree.
# Expected result: identify the real paths to agg/disagg manifests, then update the two markdown links.
fd -HI 'deploy*.ya?ml' recipes/qwen3-235b-a22b-fp8 -t f
rg -n --glob 'recipes/qwen3-235b-a22b-fp8/**' 'kind:\s*DynamoGraphDeployment|trtllm|agg|disagg' -SRepository: ai-dynamo/dynamo
Length of output: 8324
Update the two Qwen3 recipe links to point to the correct directories.
The markdown links at lines 20–21 reference paths that don't exist:
recipes/qwen3-235b-a22b-fp8/trtllm/agg/deploy.yaml→ no such filerecipes/qwen3-235b-a22b-fp8/trtllm/disagg/deploy.yaml→ no such file
The actual deploy manifests are hardware-specific (in hopper/ and blackwell/ subdirectories). Link to the parent directories instead:
https://github.com/ai-dynamo/dynamo/blob/main/recipes/qwen3-235b-a22b-fp8/trtllm/agg/https://github.com/ai-dynamo/dynamo/blob/main/recipes/qwen3-235b-a22b-fp8/trtllm/disagg/
Alternatively, if you want to reference specific variants, update the link text to clarify which hardware is being documented.
🤖 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 `@docs/backends/trtllm/multinode/trtllm-multinode-examples.md` around lines 20
- 21, The two markdown links labeled "Qwen3-235B-A22B-FP8 aggregated" and
"Qwen3-235B-A22B-FP8 disaggregated" point to non-existent deploy.yaml files;
update their hrefs to the parent agg/ and disagg/ directories (or to specific
hardware subdirs like hopper/ or blackwell/ with clarified link text) so the
links resolve to the actual deploy manifest locations.
|
I get the utility of pointing to a fixed reference here but will this break on release branches where the documentation for a specific version might diverge from what is on |
dmitry-tokarev-nv
left a comment
There was a problem hiding this comment.
This will lock URLs to use main - it will pass on PRs that introduce broken links and once PR is merged main will get broken
|
This PR is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days. |
|
Closing as superseded. The docs tree moved to Some of this diff would now be a regression - the multimodal pages moved inside the Fern tree, so their current relative links are correct and this PR would replace working in-site links with external GitHub URLs. A scan of the current tree found 17 cross-tree links remaining, small enough for a fresh PR rather than a rebase of this one. The reviewer concerns about pinning to |
Overview
Resolves the May 4 SW Docs broken-link scan by repointing markdown links that target repo files (not docs pages). The
docs-websitebranch ships onlyfern/, so links like](../../lib/foo/bar.rs)or](../../examples/baz/deploy.yaml)resolve asdocs.nvidia.com/dynamo/lib/...and 404 on the published site.What changed
Replaced 50 broken link targets across 14 source files with full GitHub URLs (
github.com/ai-dynamo/dynamo/blob/main/...) or, for orphan.mdpages not in the Fern nav, the same pattern Ryan used in #9378.Files:
docs/api/nixl-connect/README.mddocs/backends/mocker_backend/README.mddocs/backends/sglang/{README.md, sglang-examples.md, sglang-reference-guide.md}docs/backends/trtllm/multinode/trtllm-multinode-examples.mddocs/backends/trtllm/trtllm-reference-guide.mddocs/benchmarks/mocker-trace-replay.mddocs/components/router/{router-testing.md, standalone-indexer.md}docs/digest/agentic-inference/agentic-inference.mddocs/kubernetes/{disagg-communication-guide.md, snapshot.md}docs/mocker/mocker.mdWhy
This isn't a Fern bug or an autodoc problem — it's an authoring habit (repo-relative paths in markdown) made invisible by the docs-only branch layout.
fern checkandfern docs broken-linksdon't validate paths with non-doc extensions, so these slipped through.Validation
Out of scope
v1.0.2,v0.9.1,v0.7.1snapshots reference files that were added tomainafter the tag was cut). Those require eitherdocs-websitebranch edits or a snapshot-rewriter change — separate work.Test plan
fern check+fern docs broken-links+lychee+detect_broken_links.pyto passMade with Cursor
Summary by CodeRabbit