docs: cleanup of docs refactor for components, integrations, and features#6019
docs: cleanup of docs refactor for components, integrations, and features#6019nvda-mesharma merged 12 commits intomainfrom
Conversation
Phase 1 of docs migration cleanup (Frontend PR still pending):
Files deleted:
- docs/multimodal/{index,vllm,sglang,trtllm}.md (moved to features/multimodal/)
- docs/backends/vllm/speculative_decoding.md (moved to features/speculative_decoding/)
- docs/backends/sglang/sgl-hicache-example.md (replaced by integrations/sglang_hicache.md)
- docs/benchmarks/sla_driven_profiling.md (consolidated into components/profiler/)
References updated:
- Planner docs: sla_driven_profiling -> components/profiler/profiler_guide
- Backend READMEs: multimodal and speculative_decoding links to new locations
- feature-matrix.md: multimodal and speculative_decoding link references
- nixl_connect README: multimodal link to new location
- hidden_toctree.rst: removed entries for deleted files
- conf.py: added profiler redirect
Signed-off-by: Dan Gil <dagil@nvidia.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Update stale links outside docs/ that pointed to deleted files:
- README.md: multimodal/index.md -> features/multimodal/README.md
- deploy/utils/README.md: sla_driven_profiling -> profiler_guide
- tests/planner/README.md: sla_driven_profiling -> profiler_guide
- components/src/dynamo/mocker/README.md: sla_driven_profiling -> profiler_guide
- components/src/dynamo/planner/utils/perf_interpolation.py: sla_driven_profiling -> profiler_guide
- examples/backends/{vllm,trtllm}/deploy/README.md: sla_driven_profiling -> profiler_guide
Note: fern/ references not updated (handled separately)
Signed-off-by: Dan Gil <dagil@nvidia.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Changes anticipating Frontend (#6002) and Router (#5979) merges: Frontend cleanup: - Delete docs/frontends/kserve.md and openapi.json (moved to components/frontend/) - Delete docs/_sections/frontends.rst (obsolete, only pointed to kserve.md) - Update index.rst: Frontends -> Frontend at components/frontend/README - Add redirect in conf.py: frontends/kserve -> components/frontend/frontend_guide - Update README.md: openapi.json path to docs/reference/api/ Toctree cleanup: - Remove frontends/kserve.md and _sections/frontends.rst from hidden_toctree.rst - Remove router/kv_cache_routing.md and router/kv_events.md from hidden_toctree.rst (these files will be deleted/moved by Router PR) Note: router old-path references in other files are left for Router PR to handle to avoid merge conflicts. Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Update 9 redirects that pointed to files deleted by KVBM and Multimodal PRs:
KVBM redirects (6):
- architecture/kvbm_{architecture,components,motivation,reading} -> kvbm/kvbm_design
- guides/run_kvbm_in_{trtllm,vllm} -> kvbm/kvbm_guide
Multimodal redirects (7):
- backends/{vllm,trtllm,sglang}/multimodal* -> features/multimodal/*
- multimodal/multimodal_intro -> features/multimodal/README
All redirect targets verified to exist.
Signed-off-by: Dan Gil <dagil@nvidia.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Add SPDX-FileCopyrightText and SPDX-License-Identifier headers to three files from the Planner PR (#5876) that were missing them: - docs/design_docs/planner_design.md - docs/planner/planner_guide.md - docs/planner/planner_examples.md Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Move component docs to docs/components/ for consistent hierarchy:
Moves:
- docs/router/README.md -> docs/components/router/README.md
- docs/planner/{README,planner_guide,planner_examples}.md -> docs/components/planner/
- docs/kvbm/{README,kvbm_guide}.md -> docs/components/kvbm/
- docs/kvbm/kvbm_design.md -> docs/design_docs/kvbm_design.md
Deleted (legacy/superseded):
- docs/planner/sla_planner_quickstart.md (superseded by planner_guide)
- docs/planner/sla_planner.md (superseded by planner_guide)
- docs/planner/load_planner.md (deprecated)
- docs/planner/planner_intro.rst (navigation wrapper, replaced by direct toctree)
- docs/kvbm/kvbm_intro.rst (navigation wrapper, replaced by direct toctree)
- docs/router/kv_cache_routing.md (will be replaced by Router PR)
- docs/router/kv_events.md (will be moved by Router PR)
Updated references in 20+ files across docs/, examples/, components/,
deploy/, tests/, benchmarks/, README.md, and lib/.
Added redirects in conf.py for all old paths.
Signed-off-by: Dan Gil <dagil@nvidia.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
WalkthroughThis pull request reorganizes the documentation structure, consolidating components (router, planner, kvbm, profiler) into a unified Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 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: 7
🤖 Fix all issues with AI agents
In `@benchmarks/profiler/webui/utils.py`:
- Line 623: Update the broken documentation link in the string that mentions
"correction factors" so it points to the correct planner doc and anchor: replace
the existing URL (currently linking to
planner_guide.md#2-correction-factor-calculation) with
https://github.com/ai-dynamo/dynamo/blob/main/docs/design_docs/planner_design.md#step-2-correction-factor-calculation
in the same place in benchmarks/profiler/webui/utils.py where the text "planner
uses [correction factors](...)" appears.
In `@benchmarks/router/README.md`:
- Line 130: The README in benchmarks/router contains links to
docs/components/router/router_guide.md that are currently broken because Router
PR `#5979` (which adds that file) hasn’t been merged; update this PR by either
rebasing onto the branch after `#5979` is merged or by adding the missing
router_guide.md to this PR so the links resolve, and then verify both link
occurrences (the two references in benchmarks/router/README.md) point to the
correct relative path.
In `@components/src/dynamo/router/README.md`:
- Line 6: The README contains four broken links to router_guide.md and
inconsistent path styles; update all occurrences of "router_guide.md" in this
file to use a consistent relative path (e.g.,
../../docs/components/router/router_guide.md) instead of the repo-root absolute
path (/docs/...), or replace them with a stable placeholder link until Router PR
`#5979` lands; ensure you change the references on Lines 6, 32, 46, and 106 by
editing the README's link targets so static analysis resolves them consistently.
In `@deploy/inference-gateway/README.md`:
- Line 223: Update the broken links that point to
docs/components/router/router_guide.md so they reference the existing
docs/components/router/README.md instead; specifically search and replace
occurrences in deploy/inference-gateway/README.md, docs/backends/vllm/README.md,
docs/backends/trtllm/README.md, and docs/reference/feature-matrix.md (or confirm
in SOURCE_TARGET_MAPPING.md if router_guide.md will be added and replace only
when that file exists). Ensure the link text "KV cache routing design" (or any
identical link anchor) is kept but its target path is changed to
docs/components/router/README.md to avoid broken cross-references.
In `@docs/hidden_toctree.rst`:
- Around line 43-48: The docs reference components/router/router_guide.md which
is missing and causing broken links; either create
components/router/router_guide.md by copying the consolidated router
documentation into that file (so the Sphinx redirect to
components/router/router_guide.html and references from
docs/backends/vllm/README.md, docs/backends/trtllm/README.md, and
docs/reference/feature-matrix.md resolve) or update every reference (including
the conf.py redirect) to point to the actual existing router doc path; locate
references by the filename components/router/router_guide (and the redirect to
components/router/router_guide.html) and make the additions/updates accordingly.
In `@docs/index.rst`:
- Line 78: The toctree entry "Frontend <components/frontend/README>" in
docs/index.rst points to a non-existent document; fix by either adding a minimal
stub file named components/frontend/README.rst containing a short title and
description so the Sphinx build succeeds, or remove/gate the toctree entry until
the Frontend PR `#6002` is merged; update docs/index.rst accordingly to reference
the new stub (components/frontend/README) or remove the line with "Frontend
<components/frontend/README>" to avoid the CI error.
In `@docs/performance/aiconfigurator.md`:
- Line 154: The link text "SLA Planner Quick Start Guide" points to
planner_guide.md (the full guide) but the quickstart file
sla_planner_quickstart.md exists; either update the link text to reflect the
full guide (change "SLA Planner Quick Start Guide" to "SLA Planner Guide" or
similar) or update the link target to sla_planner_quickstart.md so the label and
destination match; locate the markdown line containing the link text "SLA
Planner Quick Start Guide" and adjust either the visible text or the href
accordingly.
🧹 Nitpick comments (1)
docs/conf.py (1)
70-76: Redirect chains: these hop throughkvbm/which itself redirects tocomponents/kvbm/ordesign_docs/.Lines 70-76 redirect
architecture/*andguides/*to../kvbm/..., but lines 116-119 then redirectkvbm/*tocomponents/kvbm/*ordesign_docs/*. This creates 2-hop redirect chains. Point these directly to the final destinations to avoid the extra hop.Proposed fix
- "architecture/kvbm_architecture": "../kvbm/kvbm_design.html", - "architecture/kvbm_components": "../kvbm/kvbm_design.html", + "architecture/kvbm_architecture": "../design_docs/kvbm_design.html", + "architecture/kvbm_components": "../design_docs/kvbm_design.html", "architecture/kvbm_intro": "../kvbm/kvbm_intro.html", - "architecture/kvbm_motivation": "../kvbm/kvbm_design.html", - "architecture/kvbm_reading": "../kvbm/kvbm_design.html", - "guides/run_kvbm_in_trtllm": "../kvbm/kvbm_guide.html", - "guides/run_kvbm_in_vllm": "../kvbm/kvbm_guide.html", + "architecture/kvbm_motivation": "../design_docs/kvbm_design.html", + "architecture/kvbm_reading": "../design_docs/kvbm_design.html", + "guides/run_kvbm_in_trtllm": "../components/kvbm/kvbm_guide.html", + "guides/run_kvbm_in_vllm": "../components/kvbm/kvbm_guide.html",Also,
architecture/kvbm_intro(Line 72, unchanged) redirects to../kvbm/kvbm_intro.html, and Line 116 redirectskvbm/kvbm_intro→../components/kvbm/README.html— same double-hop pattern. Consider updating it to../components/kvbm/README.htmldirectly.
- Accept Router PR's link updates, apply component path consolidation on top - Move router_guide.md and router_examples.md to docs/components/router/ - Keep Frontend PR's new files at docs/components/frontend/ - Delete frontends.rst and kserve.md (already superseded) - Keep Router's kv_events_custom_engines.md in integrations/ - Update remaining stale planner/kvbm paths in backend READMEs - Add router guide/examples to hidden_toctree.rst and index.rst - Remove duplicate frontends/kserve redirect (already added by Frontend PR) Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
After moving kvbm/, router/ to components/, relative paths needed extra ../ depth: - KVBM: ../integrations/ -> ../../integrations/, ../reference/ -> ../../reference/ - KVBM: ../../lib/ -> ../../../lib/ - Router: ../integrations/, ../benchmarks/, ../design_docs/, ../development/ all +1 depth - Frontend: ../../router/ -> ../router/ (now siblings under components/) - KVBM images: ../images/ -> ../../images/ Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
|
@coderabbitai full review |
✅ Actions performedFull review triggered. |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In `@docs/conf.py`:
- Line 90: Remove the stale redirect mapping "components/router/README":
"../router/README.html" from the redirects in docs/conf.py to break the circular
redirect with the existing "router/README": "../components/router/README.html";
locate the redirects structure (e.g., the html_redirects or redirects mapping)
and delete the "components/router/README" entry so the real file
docs/components/router/README.md is used instead, and run a quick build to
confirm no other duplicate/obsolete redirect entries remain.
In `@docs/kubernetes/README.md`:
- Line 120: Update the markdown link so the label matches the actual target:
replace the link "[SLA Planner Quick Start
Guide](/docs/components/planner/planner_guide.md)" by either changing the label
to "[SLA Planner Guide](/docs/components/planner/planner_guide.md)" if the full
planner guide is intended, or update the target URL to the planner quickstart
doc (e.g., the quickstart path in /docs/components/planner/) if the short Quick
Start is intended; ensure you modify the link text and/or the URL in the README
line accordingly.
🧹 Nitpick comments (2)
docs/backends/vllm/README.md (1)
40-43: LGTM! Feature matrix links updated to component paths.The core Dynamo features table has been correctly updated to point to the new component-based documentation locations. All links resolve correctly, though note there's a minor style inconsistency: Line 40 uses a shorter relative path (
../../components/) while Lines 41-43 use longer paths (../../../docs/components/). Both styles work, but consider standardizing for consistency in future updates.docs/components/router/README.md (1)
78-80: Three consecutive sentences starting with "For" — minor readability nit.Lines 78–80 all begin with "For…". Consider rewording one to break the repetition, e.g. "See the [KV Router A/B Benchmarking Guide]… for A/B testing…".
Fix 30 broken links found by CI markdown link checker: - SGLang README: router/planner/kvbm refs -> components/ - vLLM README: speculative_decoding.md -> features/speculative_decoding/ - KVBM README/guide: kvbm_design.md -> ../../design_docs/kvbm_design.md - Planner README: deleted sla_planner_quickstart/sla_planner/load_planner -> planner_guide/README - Profiler README/guide: /docs/planner/ refs -> /docs/components/planner/ - design_docs/architecture.md: ../router/ -> ../components/router/ - design_docs/kvbm_design.md: README.md/kvbm_guide.md -> ../components/kvbm/ - design_docs/router_design.md: ../router/ -> ../components/router/ - features/lora/README.md: ../../router/ -> ../../components/router/ - integrations/kv_events_custom_engines.md: ../router/ -> ../components/router/ - kubernetes/autoscaling.md: ../planner/ -> ../components/planner/ - kubernetes/installation_guide.md: ../planner/ -> ../components/planner/ - benchmarks/profiler/webui/utils.py: correction factor anchor -> planner_design.md - docs/performance/aiconfigurator.md: "Quick Start Guide" -> "Guide" (text matches target) - Updated "Quick Start" link text to "Guide" where target changed Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
|
/ok to test b8340ba |
- Remove circular redirect in conf.py (components/router/README <-> router/README) - Fix "Quick Start Guide" label in kubernetes/README.md to match target Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
|
/ok to test 5ad4d91 |
Point to new profiler location: docs/components/profiler/profiler_guide.md (was: docs/benchmarks/sla_driven_profiling.md, deleted in cleanup) Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
|
/ok to test 26ce17f |
1 similar comment
|
/ok to test 26ce17f |
The symlink caused CI's markdown link checker to resolve relative links from the symlink location (benchmarks/profiler/) instead of the target (docs/components/profiler/), breaking the profiler_examples.md link. Replace with a real markdown file that redirects to the new location. Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
|
/ok to test a3d0102 |
nvda-mesharma
left a comment
There was a problem hiding this comment.
Approving to unblock
…ures (ai-dynamo#6019) Signed-off-by: Dan Gil <dagil@nvidia.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Summary
Final cleanup PR for the docs migration project. Removes 24 deprecated/superseded files, consolidates all component docs under
docs/components/, fixes every broken reference across the entire repo, and verifies all Sphinx navigation and redirects.51 files changed, 169 insertions, 6,574 deletions.
What Changed
Files Deleted (24)
Multimodal (moved to
docs/features/multimodal/by PR #5999):docs/multimodal/index.mddocs/multimodal/vllm.mddocs/multimodal/sglang.mddocs/multimodal/trtllm.mdSpeculative Decoding (moved to
docs/features/speculative_decoding/by PR #6001):docs/backends/vllm/speculative_decoding.mdSGLang HiCache (replaced by
docs/integrations/sglang_hicache.mdin PR #5905):docs/backends/sglang/sgl-hicache-example.mdProfiler (consolidated into
docs/components/profiler/by PR #6003):docs/benchmarks/sla_driven_profiling.mdFrontend (moved to
docs/components/frontend/by PR #6002):docs/frontends/kserve.mddocs/frontends/openapi.jsondocs/_sections/frontends.rstPlanner (superseded by 3-tier restructure in PR #5876):
docs/planner/sla_planner_quickstart.md(superseded byplanner_guide.md)docs/planner/sla_planner.md(superseded byplanner_guide.md)docs/planner/load_planner.md(deprecated)docs/planner/planner_intro.rst(navigation wrapper, replaced by direct toctree)KVBM (restructured by PR #5905):
docs/kvbm/kvbm_intro.rst(navigation wrapper, replaced by direct toctree)Router (restructured by PR #5979):
docs/router/kv_cache_routing.md(replaced byrouter_guide.md+router_examples.md)docs/router/kv_events.md(moved todocs/integrations/kv_events_custom_engines.md)Components Consolidated into
docs/components/All component docs now live under a single consistent hierarchy:
docs/router/docs/components/router/docs/planner/docs/components/planner/docs/kvbm/docs/components/kvbm/docs/components/frontend/docs/components/profiler/Design docs moved to their proper location:
docs/kvbm/kvbm_design.md->docs/design_docs/kvbm_design.mdResulting
docs/StructureReferences Updated (40+ files)
Every reference to moved/deleted files was updated across the entire repo:
Inside
docs/:sla_driven_profilingreferences ->components/profiler/profiler_guidereference/feature-matrix.md: multimodal, speculative decoding, router, planner, KVBM link refsapi/nixl_connect/README.md: multimodal linkkubernetes/README.md,performance/aiconfigurator.md: planner linksOutside
docs/:README.md(root): multimodal, router, planner, KVBM, openapi.json linkscomponents/src/dynamo/router/README.md: router docs linkscomponents/src/dynamo/planner/README.md: planner docs linkscomponents/src/dynamo/planner/utils/perf_interpolation.py: profiling path in error messagelib/bindings/kvbm/README.md: KVBM docs linksdeploy/inference-gateway/README.md: router linktests/planner/README.md: profiling linkexamples/backends/{vllm,trtllm}/deploy/README.md: profiling and router linksexamples/basics/multinode/README.md: router linksbenchmarks/router/README.md: router linkbenchmarks/profiler/webui/utils.py: planner linkSphinx Configuration Updates
docs/conf.pyredirects:docs/components/ordocs/design_docs/)benchmarks/sla_driven_profiling->components/profiler/profiler_guide)kvbm_design, setup guides ->kvbm_guide, multimodal backends ->features/multimodal/)frontends/kservekey (already added by Frontend PR)docs/hidden_toctree.rst:docs/index.rst:Router,Planner,KVBMnow point tocomponents/pathsKV Cache OffloadingandKV Aware Routingpoint tocomponents/pathsFrontends <_sections/frontends>withFrontend <components/frontend/README>Router Designto Design Docs sectionOther Fixes
planner_design.md,planner_guide.md,planner_examples.md)../images/->../../images/)../->../../for cross-section links)../../router/->../router/since now siblings undercomponents/)Validation Performed
All checks passed before pushing:
grep -rl "<<<<<<" .docs/router/,docs/planner/,docs/kvbm/hidden_toctree.rstentries validindex.rstentries valid_sections/*.rstentries validconf.pyredirect targets exist.md/.rstfilesfind docs -type d -emptyconf.pykeys../../images/resolves correctly fromdocs/components/kvbm/.. include::directives point to existing filesuv run --python .venv-docs --no-project docs/generate_docs.py../relative links indocs/components/resolve correctlycomponents/src/dynamo/{router,planner}/README.mdandlib/bindings/kvbm/README.mdpoint todocs/components/../router/(not../../router/) for sibling componentsNot in scope
fern/files (6 files with stale refs) -- handled in separate Fern migrationdocs/templates/directory (15 migration template files) -- internal working artifactsdocs/images/-- low risk, separate housekeeping taskDepends on (all merged)
Summary by CodeRabbit
/docs/components/and/docs/features/paths for improved organization.