docs: reorganize concepts and framework guidance - #707
Conversation
Signed-off-by: Alex Fournier <afournier@nvidia.com>
WalkthroughThe documentation adds consolidated framework integration guidance, revises concept navigation and page ordering, updates quick-start content, removes the former concept page from shared references, and adds a redirect to the new location. ChangesFramework documentation consolidation
Estimated code review effort: 3 (Moderate) | ~20 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Signed-off-by: Alex Fournier <afournier@nvidia.com>
Signed-off-by: Alex Fournier <afournier@nvidia.com>
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 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/integrate-into-frameworks/about.mdx`:
- Line 28: Update the table header row in the documentation so “Use when”
becomes “Use When” and “What Relay handles” becomes “What Relay Handles,”
preserving the existing “Method” header and table structure.
- Around line 25-26: Update the framework-option selection guidance near “Prefer
these options in order” to use lifecycle-boundary coverage as a criterion:
prefer a managed wrapper only when it encloses the required scheduling, retries,
and callback lifecycle, and allow explicit lifecycle calls when it cannot.
Review the surrounding documentation for accuracy against the current API,
command correctness, and consistency across language bindings.
🪄 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: ASSERTIVE
Plan: Enterprise
Run ID: d45a8caf-bab1-4af3-8c73-49ddaf948f8c
📒 Files selected for processing (14)
docs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/concepts/framework-integrations.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/ecosystem.mdxdocs/contribute/runtime-contract-docs.mdxdocs/getting-started/quick-start/index.mdxdocs/integrate-into-frameworks/about.mdxdocs/resources/support-and-faqs.mdxfern/docs.yml
💤 Files with no reviewable changes (2)
- docs/about-nemo-relay/concepts/framework-integrations.mdx
- docs/contribute/runtime-contract-docs.mdx
📜 Review details
🧰 Additional context used
📓 Path-based instructions (14)
**/*.mdx
📄 CodeRabbit inference engine (.agents/skills/review-doc-style/SKILL.md)
MDX top-of-file SPDX comments must use {/* ... */} delimiters instead of HTML comment delimiters (Must-Fix)
**/*.mdx: In MDX files, top-of-file comments must use JSX comment delimiters ({/*and*/}); do not use HTML comments for MDX SPDX headers.
New or regenerated MDX files must use{/* ... */}for top-of-file SPDX comments.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
{docs,examples}/**/*
📄 CodeRabbit inference engine (.agents/skills/rename-surfaces/SKILL.md)
Update docs and examples.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
**/*
📄 CodeRabbit inference engine (.agents/skills/validate-change/SKILL.md)
**/*: Format changed files with the language-native formatter before the final lint/test pass.
If dynamic plugin behavior changed, usemaintain-dynamic-pluginsand include the native SDK, worker protocol, Python SDK, docs, packaging, and Codecov surfaces in the validation plan.
If code changes alter APIs, bindings, commands, paths, packaging behavior, observability/adaptive semantics, or documented best practices, update any dependent maintainer or consumer skills in the same branch.
During iteration, preferuv run pre-commit run --files <changed files...>.
Before review or handoff, runuv run pre-commit run --all-files.
**/*: Use release tags in raw Rust-compatible SemVer without a leadingv; tags such asv0.1.0are prohibited.
Use branch prefixesfeat/,fix/,docs/,test/, orrefactor/according to the change purpose.
Every commit in a pull request must include a DCOSigned-off-by:sign-off.
Before submitting a pull request, ensure pre-commit hooks, relevant tests, target-specific builds, documentation updates, and a rebase on the latestmainare complete.
Use commit messages in the formtype: short description, with a valid type and a first line under 72 characters.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxfern/docs.ymldocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
docs/**/*
📄 CodeRabbit inference engine (.agents/skills/validate-change/SKILL.md)
If documentation examples or commands under
docs/change, run the targeted docs checks appropriate to the change.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
**/*.{md,mdx}
📄 CodeRabbit inference engine (.agents/skills/validate-change/SKILL.md)
If links in documentation change, run
just docs-linkcheck.Use documented public APIs and stable wrapper commands in examples and user-facing documentation; do not rely on internal helpers.
**/*.{md,mdx}: Prefer the documented public API over internal shortcuts in documentation and examples.
Keep package names, repository references, and build commands current.
Contribution workflow documentation must require an issue before external contribution pull requests and note that NVIDIA contributors may use a GitHub or Linear issue.
Update entry-point documentation when examples or reading paths change.
Keep release-process and release-notes guidance in maintainer documentation such asRELEASING.md, rather than user-facing documentation pages orCHANGELOG.md.
Use stable user-facing wrappers at thescripts/root in documentation and examples; reference namespaced helper paths only for internal maintenance documentation.
When detailed dynamic plugin guides exist, keep Rust native plugin examples, Python worker plugin examples, andgrpc-v1protocol details on separate pages.
Dynamic plugin manifests in documentation and examples should usecompat.relay = ">=0.5,<1.0"unless deliberately narrower.
Render images, diagrams, tables, and other visual content at representative page widths, ensuring legibility and complete access without clipping; use responsive scaling, reflow, or overflow as appropriate and scope visual styling narrowly.
Dynamic plugin entry pages should link to native, worker, Rust example, Python example, and protocol pages when those pages exist.
Images, diagrams, tables, and custom visual content must remain legible and fully accessible at representative desktop and narrow page widths.
Release-policy documentation must point to GitHub Releases as the only release-history source of truth.
Runjust docswhen the documentation site changes; retain./scripts/build-docs.sh htmlas the compatibility wrapper.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
**/*.{md,mdx,py,go,js,ts}
📄 CodeRabbit inference engine (.agents/skills/maintain-observability/SKILL.md)
Examples and documentation must use each exporter's documented flush/deregister order before shutdown.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
docs/**/*.{md,mdx}
📄 CodeRabbit inference engine (CONTRIBUTING.md)
Update relevant reference documentation when public behavior or APIs change.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
**/*.{rs,py,go,js,jsx,ts,tsx,c,h,html,md,mdx,toml}
📄 CodeRabbit inference engine (CONTRIBUTING.md)
Include the appropriate SPDX copyright and Apache-2.0 license header in every source file.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
**/*.{md,mdx,rst}
📄 CodeRabbit inference engine (.agents/skills/review-doc-style/assets/nvidia-style-technical-docs.md)
**/*.{md,mdx,rst}: Use title case consistently for technical documentation headings and table headers; avoid quotation marks, ampersands, and exclamation marks in headings, while preserving official product, event, research, and whitepaper title case.
Format code elements, commands, parameters, package names, expressions, directories, file names, and paths in monospace; represent path placeholders with angle brackets inside monospace.
Format UI buttons, menus, fields, and labels in bold, and separate consecutive UI navigation labels with>.
Use quotation marks for error messages and strings when appropriate, italics for newly introduced terms and publication titles, and plain text for keyboard shortcuts.
Represent GitHub repositories with owner/repository link text, such as[NVIDIA/NeMo](link), rather than generic repository wording.
Introduce every code block with a complete sentence; do not let a code block complete or interrupt the grammar of surrounding prose; use syntax highlighting when supported.
Keep inline method, function, and class references consistent with nearby documentation; omit empty parentheses in prose when no call is shown.
Use descriptive link text matching the destination title when possible; avoid raw URLs, generic anchors, long-sentence links, and unnecessary links that distract from procedures.
Ensure lists have a complete lead-in sentence, more than one item, no more than two levels, parallel construction, one idea or action per item, and appropriate punctuation; use bullets for unordered items and numbers for ordered tasks.
Format definition lists with a bold term followed by a complete, parallel, punctuated definition.
Use tables for reference information, decision support, compatibility matrices, and comparable choices; flag one-row tables, missing captions or lead-ins, sentence-case headers where title case is expected, unexplained empty cells, and code or links that would be clearer as prose.
Write procedure steps as imperative ...
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
{docs/**,README.md,CONTRIBUTING.md,RELEASING.md,SECURITY.md}
⚙️ CodeRabbit configuration file
{docs/**,README.md,CONTRIBUTING.md,RELEASING.md,SECURITY.md}: Review documentation for technical accuracy against the current API, command correctness, and consistency across language bindings.
Flag stale examples, missing SPDX headers where required, and instructions that no longer match CI or pre-commit behavior.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/resources/support-and-faqs.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/getting-started/quick-start/index.mdxdocs/about-nemo-relay/concepts/plugins.mdxdocs/about-nemo-relay/agent-runtime-primer.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/architecture.mdxdocs/about-nemo-relay/concepts/index.mdxdocs/integrate-into-frameworks/about.mdx
**/*.{rs,py,js,jsx,ts,tsx,go,c,h,cc,cpp,md,toml,yml,yaml,sh}
📄 CodeRabbit inference engine (AGENTS.md)
Keep SPDX headers on source, documentation, scripts, and configuration files; the project is Apache-2.0.
Files:
fern/docs.yml
**/*.{yaml,yml,toml,json}
📄 CodeRabbit inference engine (CONTRIBUTING.md)
Maintain valid YAML, TOML, and JSON files; pre-commit hooks validate these formats.
Files:
fern/docs.yml
{README.md,docs/**/*.md,fern/**/*}
📄 CodeRabbit inference engine (.agents/skills/prepare-code-freeze/SKILL.md)
Update current-version installation commands, package examples, and configuration examples from the old version to
<next-version>where appropriate; leave intentional historical references, generated build output, and third-party attribution entries unchanged.
Files:
fern/docs.yml
docs/integrate-into-frameworks/**/*.mdx
📄 CodeRabbit inference engine (.agents/skills/contribute-integration/SKILL.md)
Update docs if activation or usage changes.
Files:
docs/integrate-into-frameworks/about.mdx
🔇 Additional comments (12)
docs/integrate-into-frameworks/about.mdx (2)
3-3: LGTM!
73-75: 📐 Maintainability & Code QualityRun the Required Documentation Validation.
Run
just docsandjust docs-linkcheckafter these route changes.
docs/integrate-into-frameworks/about.mdx#L73-L75: Validate the new Provider Codecs link.docs/resources/support-and-faqs.mdx#L405-L405: Validate the moved framework-integration link.As per coding guidelines, “If links in documentation change, run
just docs-linkcheck” and “Runjust docswhen the documentation site changes.”Source: Coding guidelines
docs/getting-started/quick-start/index.mdx (1)
98-98: LGTM!Also applies to: 118-119
docs/about-nemo-relay/concepts/events.mdx (1)
4-4: LGTM!docs/about-nemo-relay/concepts/middleware.mdx (1)
4-4: LGTM!docs/about-nemo-relay/concepts/plugins.mdx (1)
4-4: LGTM!docs/about-nemo-relay/concepts/codecs.mdx (1)
4-4: LGTM!docs/about-nemo-relay/concepts/index.mdx (1)
16-19: LGTM!Also applies to: 41-51, 85-91
docs/about-nemo-relay/agent-runtime-primer.mdx (1)
4-4: LGTM!docs/about-nemo-relay/architecture.mdx (1)
4-4: LGTM!docs/about-nemo-relay/ecosystem.mdx (1)
4-4: LGTM!fern/docs.yml (1)
21-24: LGTM!
Signed-off-by: Alex Fournier <afournier@nvidia.com>
|
@exactlyallan I took a review swing at the first section of the documentation feedback and split it across this PR series. Tagging you for a look when you have time. |
|
/ok to test 26c9705 |
|
/merge |
|
Failed to merge PR using squash strategy. |
Signed-off-by: Alex Fournier <afournier@nvidia.com>
|
/ok to test e826b98 |
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (4)
docs/about-nemo-relay/concepts/events.mdx (1)
112-114: 🔒 Security & Privacy | 🟠 Major | ⚡ Quick winDocument the data-retention risk of
enable_full_payloads.When this option is
true, the observability plugin retains complete sanitized request input and annotations for every LLM start event. Credential removal does not remove user prompts, tool data, or other PII unless configured sanitizers do so. Add a warning about sensitive-data retention, access controls, and retention limits. State the option's default.🤖 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/about-nemo-relay/concepts/events.mdx` around lines 112 - 114, Update the documentation around the observability plugin’s enable_full_payloads option to state its default value and warn that enabling it retains sanitized prompts, tool data, annotations, and other potentially sensitive information; clarify that credential removal alone does not remove this PII, and document the need for configured sanitizers, access controls, and appropriate retention limits.docs/resources/support-and-faqs.mdx (1)
513-513: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick winUse the repository’s Python test target.
CI runs
just --set ci true --set output_dir "<workspace>" test-python, notuv run pytestdirectly. Update the FAQ command tojust test-python; addjust test-python-plugin-e2efor plugin changes.🤖 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/resources/support-and-faqs.mdx` at line 513, Update the Python testing guidance in the support and FAQs documentation to use the repository target `just test-python` instead of `uv run pytest`, and add `just test-python-plugin-e2e` for plugin changes.Source: Path instructions
docs/about-nemo-relay/concepts/middleware.mdx (1)
274-276: 🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick winDefine FIFO as dispatcher enqueue order.
Concurrent starts have no guaranteed emission order. State that FIFO preserves queue insertion order, not concurrent invocation order, and align the related event-ordering documentation.
🤖 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/about-nemo-relay/concepts/middleware.mdx` around lines 274 - 276, Clarify the event-ordering documentation around the async subscriber dispatcher to define FIFO as dispatcher enqueue order, not concurrent invocation order. Update the related start/end ordering statements so concurrent starts are not described as having guaranteed emission order, while preserving that managed execution does not wait for callbacks.docs/about-nemo-relay/concepts/codecs.mdx (1)
220-225: 🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick winScope fallback and preservation guarantees to Rust CLI adapters. These fallbacks exist only in the Rust adapter layer. The raw payload is preserved, but
agent_metadatacreates normalized metadata and does not retain arbitrary input metadata. State the Rust-only scope and describe metadata as normalized rather than original.🤖 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/about-nemo-relay/concepts/codecs.mdx` around lines 220 - 225, Update the agent extraction documentation to scope synthetic identifiers and other compatibility fallbacks explicitly to Rust CLI adapters. Clarify that raw payloads remain available, while agent_metadata contains normalized metadata rather than preserving arbitrary original input metadata.Source: Path instructions
🤖 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.
Outside diff comments:
In `@docs/about-nemo-relay/concepts/codecs.mdx`:
- Around line 220-225: Update the agent extraction documentation to scope
synthetic identifiers and other compatibility fallbacks explicitly to Rust CLI
adapters. Clarify that raw payloads remain available, while agent_metadata
contains normalized metadata rather than preserving arbitrary original input
metadata.
In `@docs/about-nemo-relay/concepts/events.mdx`:
- Around line 112-114: Update the documentation around the observability
plugin’s enable_full_payloads option to state its default value and warn that
enabling it retains sanitized prompts, tool data, annotations, and other
potentially sensitive information; clarify that credential removal alone does
not remove this PII, and document the need for configured sanitizers, access
controls, and appropriate retention limits.
In `@docs/about-nemo-relay/concepts/middleware.mdx`:
- Around line 274-276: Clarify the event-ordering documentation around the async
subscriber dispatcher to define FIFO as dispatcher enqueue order, not concurrent
invocation order. Update the related start/end ordering statements so concurrent
starts are not described as having guaranteed emission order, while preserving
that managed execution does not wait for callbacks.
In `@docs/resources/support-and-faqs.mdx`:
- Line 513: Update the Python testing guidance in the support and FAQs
documentation to use the repository target `just test-python` instead of `uv run
pytest`, and add `just test-python-plugin-e2e` for plugin changes.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Enterprise
Run ID: 8976370b-8379-4f94-be4b-ca5e89bfb960
📒 Files selected for processing (5)
docs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/ecosystem.mdxdocs/resources/support-and-faqs.mdx
📜 Review details
⏰ Context from checks skipped due to timeout. (2)
- GitHub Check: Check / Run
- GitHub Check: Preview docs
🧰 Additional context used
📓 Path-based instructions (10)
**/*.mdx
📄 CodeRabbit inference engine (.agents/skills/review-doc-style/SKILL.md)
MDX top-of-file SPDX comments must use {/* ... */} delimiters instead of HTML comment delimiters (Must-Fix)
**/*.mdx: In MDX files, top-of-file comments must use JSX comment delimiters ({/*and*/}); do not use HTML comments for MDX SPDX headers.
New or regenerated MDX files must use{/* ... */}for top-of-file SPDX comments.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
{docs,examples}/**/*
📄 CodeRabbit inference engine (.agents/skills/rename-surfaces/SKILL.md)
Update docs and examples.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
**/*
📄 CodeRabbit inference engine (.agents/skills/validate-change/SKILL.md)
**/*: Format changed files with the language-native formatter before the final lint/test pass.
If dynamic plugin behavior changed, usemaintain-dynamic-pluginsand include the native SDK, worker protocol, Python SDK, docs, packaging, and Codecov surfaces in the validation plan.
If code changes alter APIs, bindings, commands, paths, packaging behavior, observability/adaptive semantics, or documented best practices, update any dependent maintainer or consumer skills in the same branch.
During iteration, preferuv run pre-commit run --files <changed files...>.
Before review or handoff, runuv run pre-commit run --all-files.
**/*: Use release tags in raw Rust-compatible SemVer without a leadingv; tags such asv0.1.0are prohibited.
Use branch prefixesfeat/,fix/,docs/,test/, orrefactor/according to the change purpose.
Every commit in a pull request must include a DCOSigned-off-by:sign-off.
Before submitting a pull request, ensure pre-commit hooks, relevant tests, target-specific builds, documentation updates, and a rebase on the latestmainare complete.
Use commit messages in the formtype: short description, with a valid type and a first line under 72 characters.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
docs/**/*
📄 CodeRabbit inference engine (.agents/skills/validate-change/SKILL.md)
If documentation examples or commands under
docs/change, run the targeted docs checks appropriate to the change.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
**/*.{md,mdx}
📄 CodeRabbit inference engine (.agents/skills/validate-change/SKILL.md)
If links in documentation change, run
just docs-linkcheck.Use documented public APIs and stable wrapper commands in examples and user-facing documentation; do not rely on internal helpers.
**/*.{md,mdx}: Prefer the documented public API over internal shortcuts in documentation and examples.
Keep package names, repository references, and build commands current.
Contribution workflow documentation must require an issue before external contribution pull requests and note that NVIDIA contributors may use a GitHub or Linear issue.
Update entry-point documentation when examples or reading paths change.
Keep release-process and release-notes guidance in maintainer documentation such asRELEASING.md, rather than user-facing documentation pages orCHANGELOG.md.
Use stable user-facing wrappers at thescripts/root in documentation and examples; reference namespaced helper paths only for internal maintenance documentation.
When detailed dynamic plugin guides exist, keep Rust native plugin examples, Python worker plugin examples, andgrpc-v1protocol details on separate pages.
Dynamic plugin manifests in documentation and examples should usecompat.relay = ">=0.5,<1.0"unless deliberately narrower.
Render images, diagrams, tables, and other visual content at representative page widths, ensuring legibility and complete access without clipping; use responsive scaling, reflow, or overflow as appropriate and scope visual styling narrowly.
Dynamic plugin entry pages should link to native, worker, Rust example, Python example, and protocol pages when those pages exist.
Images, diagrams, tables, and custom visual content must remain legible and fully accessible at representative desktop and narrow page widths.
Release-policy documentation must point to GitHub Releases as the only release-history source of truth.
Runjust docswhen the documentation site changes; retain./scripts/build-docs.sh htmlas the compatibility wrapper.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
**/*.{md,mdx,py,go,js,ts}
📄 CodeRabbit inference engine (.agents/skills/maintain-observability/SKILL.md)
Examples and documentation must use each exporter's documented flush/deregister order before shutdown.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
docs/**/*.{md,mdx}
📄 CodeRabbit inference engine (CONTRIBUTING.md)
Update relevant reference documentation when public behavior or APIs change.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
**/*.{rs,py,go,js,jsx,ts,tsx,c,h,html,md,mdx,toml}
📄 CodeRabbit inference engine (CONTRIBUTING.md)
Include the appropriate SPDX copyright and Apache-2.0 license header in every source file.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
**/*.{md,mdx,rst}
📄 CodeRabbit inference engine (.agents/skills/review-doc-style/assets/nvidia-style-technical-docs.md)
**/*.{md,mdx,rst}: Use title case consistently for technical documentation headings and table headers; avoid quotation marks, ampersands, and exclamation marks in headings, while preserving official product, event, research, and whitepaper title case.
Format code elements, commands, parameters, package names, expressions, directories, file names, and paths in monospace; represent path placeholders with angle brackets inside monospace.
Format UI buttons, menus, fields, and labels in bold, and separate consecutive UI navigation labels with>.
Use quotation marks for error messages and strings when appropriate, italics for newly introduced terms and publication titles, and plain text for keyboard shortcuts.
Represent GitHub repositories with owner/repository link text, such as[NVIDIA/NeMo](link), rather than generic repository wording.
Introduce every code block with a complete sentence; do not let a code block complete or interrupt the grammar of surrounding prose; use syntax highlighting when supported.
Keep inline method, function, and class references consistent with nearby documentation; omit empty parentheses in prose when no call is shown.
Use descriptive link text matching the destination title when possible; avoid raw URLs, generic anchors, long-sentence links, and unnecessary links that distract from procedures.
Ensure lists have a complete lead-in sentence, more than one item, no more than two levels, parallel construction, one idea or action per item, and appropriate punctuation; use bullets for unordered items and numbers for ordered tasks.
Format definition lists with a bold term followed by a complete, parallel, punctuated definition.
Use tables for reference information, decision support, compatibility matrices, and comparable choices; flag one-row tables, missing captions or lead-ins, sentence-case headers where title case is expected, unexplained empty cells, and code or links that would be clearer as prose.
Write procedure steps as imperative ...
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
{docs/**,README.md,CONTRIBUTING.md,RELEASING.md,SECURITY.md}
⚙️ CodeRabbit configuration file
{docs/**,README.md,CONTRIBUTING.md,RELEASING.md,SECURITY.md}: Review documentation for technical accuracy against the current API, command correctness, and consistency across language bindings.
Flag stale examples, missing SPDX headers where required, and instructions that no longer match CI or pre-commit behavior.
Files:
docs/about-nemo-relay/ecosystem.mdxdocs/about-nemo-relay/concepts/codecs.mdxdocs/about-nemo-relay/concepts/middleware.mdxdocs/about-nemo-relay/concepts/events.mdxdocs/resources/support-and-faqs.mdx
🪛 LanguageTool
docs/about-nemo-relay/concepts/middleware.mdx
[style] ~116-~116: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... request must change before the call. - Use an execution intercept when code mu...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~117-~117: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...ust run before or after the callback. - Use a sanitize guardrail when only subs...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
🔇 Additional comments (5)
docs/about-nemo-relay/concepts/events.mdx (1)
4-4: LGTM!Also applies to: 91-92
docs/about-nemo-relay/concepts/middleware.mdx (1)
3-4: LGTM!Also applies to: 17-17, 102-107, 113-123, 158-158, 233-262, 266-273, 285-303, 307-324
docs/about-nemo-relay/concepts/codecs.mdx (2)
2-17: LGTM!Also applies to: 21-35, 37-43, 48-84, 86-126, 128-132, 137-176, 185-202, 211-218, 229-233, 239-245
18-19: 📐 Maintainability & Code QualityRun documentation validation for all relocated and new internal links.
These changes retarget integration documentation across three pages. Validate the targets together so a stale route or missing page is not hidden by one locally valid link.
docs/about-nemo-relay/concepts/codecs.mdx#L18-L19: validate the provider-codec, response-codec, and typed-codec links.docs/about-nemo-relay/ecosystem.mdx#L141-L145: validate the framework integration, scope, tool-call, and LLM-call links.docs/resources/support-and-faqs.mdx#L405-L405: validate the new FAQ destination and the legacy redirect infern/docs.yml.As per coding guidelines, if links in documentation change, run
just docs-linkcheck, and runjust docswhen the documentation site changes. As per path instructions, documentation must be reviewed for technical accuracy against the current API, command correctness, and consistency across language bindings.Sources: Coding guidelines, Path instructions
docs/about-nemo-relay/ecosystem.mdx (1)
4-40: LGTM!Also applies to: 49-109, 111-139
Overview
Reorders the About and Concepts navigation and moves framework integration guidance into its task-oriented section.
Details
Integrate into Frameworks.This navigation draft should land after #706, which owns the Provider Codecs page title and content.
Where should the reviewer start?
Review
docs/integrate-into-frameworks/about.mdx, then the Concepts cards indocs/about-nemo-relay/concepts/index.mdx.Related Issues: (use one of the action keywords Closes / Fixes / Resolves / Relates to)
Summary by CodeRabbit