Skip to content

[TAO-2523][Docs] Add codebase tour and module map; fix stale CI references - #100

Open
vpraveen-nv wants to merge 2 commits into
mainfrom
docs/tao-2523-codebase-tour
Open

[TAO-2523][Docs] Add codebase tour and module map; fix stale CI references#100
vpraveen-nv wants to merge 2 commits into
mainfrom
docs/tao-2523-codebase-tour

Conversation

@vpraveen-nv

Copy link
Copy Markdown
Contributor

Companion to NVIDIA-TAO/tao-deploy#40 and NVIDIA-TAO/tao-data-services#32 (same effort: TAO-2523, developer docs / repo-structure clarity).

What changed

  • New docs/codebase_tour.md — annotated repo tree, package module map, per-domain model family inventory (29 console commands; unregistered packages like codetr/odise/segformer_old called out), anatomy of the dino family, and a consolidated sharp-edges list (subprocess launch, LIGHTNING_EXCLUDED_NETWORKS, GPU config rewriting, ${eval:...} resolver, .tlt cookbook passphrase, CUDA extension builds, the PEP 701 f-string CI hazard, deformable_detr blast radius, marker hygiene, determinism cost).
  • New docs/assets/module_map.svg in the existing diagram style.
  • docs/index.md — links the tour and corrects the maintenance section: no pre-commit hook regenerates the README command table today, so the manual generator run is documented instead.
  • Stale-reference fixesREADME.md pointed at ci/run_static_tests.py / ci/test_changed_files.py / ci/run_functional_tests.py (no ci/ directory exists); now points at the pre-commit + GitHub Actions checks. docs/architecture.md pointed at nvidia_tao_pytorch/core/export, which does not exist; now points at third_party/onnx/utils.py.

Verification

  • Claims spot-verified against source (family counts, LIGHTNING_EXCLUDED_NETWORKS, dino's dataloader reuse from deformable_detr, the eval resolver, the two PEP 701 files, 12 CUDA extensions, 17 registered markers, duplicate ODDataModule classes).
  • python tools/update_readme_supported_commands.py --check passes; SVG valid; all relative doc links resolve; git diff --check clean.
  • Docs-only change.

JIRA: TAO-2523

…ences

Companion to the tao-deploy and tao-data-services docs refresh under TAO-2523,
addressing feedback that the repo structure, modules, and architecture are hard
for new developers to pick up:

- Add docs/codebase_tour.md: annotated repo tree, package module map, model
  family inventory per domain (29 console commands; unregistered packages
  called out), anatomy of the dino family, and a consolidated sharp-edges
  list (subprocess launch, torchrun exclusion list, GPU config rewriting,
  eval resolver, .tlt cookbook passphrase, CUDA extension builds, PEP 701
  f-string CI hazard, deformable_detr blast radius, marker hygiene,
  determinism cost).
- Add docs/assets/module_map.svg in the existing diagram style.
- Link the tour from docs/index.md and correct its maintenance section: no
  pre-commit hook regenerates the README command table today, so document the
  manual generator run instead.
- Fix stale references: README.md pointed at ci/run_static_tests.py,
  ci/test_changed_files.py, and ci/run_functional_tests.py (the ci/ directory
  no longer exists) - point at the pre-commit + GitHub Actions checks instead;
  docs/architecture.md pointed at nvidia_tao_pytorch/core/export, which does
  not exist - point at third_party/onnx/utils.py.

All claims spot-verified against source at origin/main (family counts,
LIGHTNING_EXCLUDED_NETWORKS, dino dataloader reuse, eval resolver, PEP 701
files, extension count, marker registration, duplicate ODDataModule classes).

Signed-off-by: Varun Praveen <vpraveen@nvidia.com>
@vpraveen-nv
vpraveen-nv requested a review from a team as a code owner August 13, 2026 22:18
@tao-pr-bot

tao-pr-bot Bot commented Aug 13, 2026

Copy link
Copy Markdown

For security reasons, CI does not run automatically on NVIDIA's runners — it must be triggered per commit.

  • Comment /build to run CI on your latest commit, and make sure blossom-ci is green before merging.
  • Re-run /build after each new push — CI is pinned to the head commit, so a stale run won't count.

Tip

Should this fix also ship in a release? Add a release/X.Y.Z label (matching the target release branch) and tao-cherry-pick-bot will backport it after merge.

Important

Before merging: every file needs a license header and every commit must be DCO signed-off — see the 📖 Contribution guide for details.

Address developer review feedback on the docs refresh:

- Architecture no longer opens with the development container launcher. New
  opening sections explain what the product is (the container it ships as and
  its user-facing console commands) and how customers run it as of TAO 7.0
  (agent + tao-skills + Execution SDK over the container CLI), with the
  removed TAO Launcher and FTMS surfaces called out explicitly as history and
  in-repo remnants labeled as legacy integration surfaces.
- New Terminology section defining service/model family, subtask,
  specification, the shared command dispatcher, and the dev-only container
  launcher - and explicitly disambiguating them from the removed TAO Launcher.
- New Test Environment Setup section: submodule init, dev container entry,
  pip install tao-core/. (the step the README missed), PYTHONPATH notes, and
  which suites need GPUs or private datasets.
- Terminology sweep: 'launcher' now refers only to the dev container tool;
  the in-repo dispatch code is the 'shared command dispatcher'.

Consumption-mode statements verified against the public docs source
(release_notes.rst 'Removed in 7.0', migrating_to_tao_7.0.rst, overview.rst
deployment-modes table).

Signed-off-by: Varun Praveen <vpraveen@nvidia.com>
@vpraveen-nv

Copy link
Copy Markdown
Contributor Author

Applied (companion change) the same review feedback raised on the data-services PR: the codebase tour now opens with product context (what ships, how customers run it as of TAO 7.0) instead of the dev container launcher; added inline terminology disambiguating subtask/specification/dispatcher/dev-launcher from the removed TAO Launcher and FTMS; added a Test Environment Setup section (submodule init + pip install tao-core/. — not in the requirements files — before anything imports).

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.

1 participant