Skip to content

docs: clarify events and skill-load detection - #703

Open
afourniernv wants to merge 2 commits into
NVIDIA:mainfrom
afourniernv:docs/relay-612-618-events
Open

docs: clarify events and skill-load detection#703
afourniernv wants to merge 2 commits into
NVIDIA:mainfrom
afourniernv:docs/relay-612-618-events

Conversation

@afourniernv

@afourniernv afourniernv commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Overview

Clarifies the two ATOF event kinds and the limits of automatic skill-load detection.

  • I confirm this contribution is my own work, or I have the right to submit it under this project's license.
  • I searched existing issues and open pull requests, and this does not duplicate existing work.

Details

  • Compares scope and mark duration, pairing, parentage, and common uses.
  • Renames the shared-envelope section around the fields readers actually use.
  • Explains that missed skill-load detections undercount analytics without changing tool execution.
  • Defines supported shell wrappers and separates attempted, executed, and inferred loads.

Where should the reviewer start?

Review Event Kinds and Automatic Skill-Load Marks in docs/about-nemo-relay/concepts/events.mdx.

Related Issues: (use one of the action keywords Closes / Fixes / Resolves / Relates to)

Summary by CodeRabbit

  • Documentation
    • Expanded event documentation with details on ATOF fields, scopes, marks, timestamps, delivery behavior, and event handoff.
    • Clarified skill-load detection, including shell-wrapper support and inferred versus observed skill events.
    • Documented sanitization before subscriber and exporter handoff, while noting runtime-controlled identity and lifecycle fields.
    • Added guidance on exporter handling and downstream event projections.

Signed-off-by: Alex Fournier <afournier@nvidia.com>
@copy-pr-bot

copy-pr-bot Bot commented Aug 4, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@coderabbitai

coderabbitai Bot commented Aug 4, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: 3bb6d3c7-c4d3-46f9-885c-52bc370c4637

📥 Commits

Reviewing files that changed from the base of the PR and between 81167be and a61d438.

📒 Files selected for processing (1)
  • docs/about-nemo-relay/concepts/events.mdx
📜 Recent review details
🧰 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/concepts/events.mdx
{docs,examples}/**/*

📄 CodeRabbit inference engine (.agents/skills/rename-surfaces/SKILL.md)

Update docs and examples.

Files:

  • docs/about-nemo-relay/concepts/events.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, use maintain-dynamic-plugins and 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, prefer uv run pre-commit run --files <changed files...>.
Before review or handoff, run uv run pre-commit run --all-files.

**/*: Use release tags in raw Rust-compatible SemVer without a leading v; tags such as v0.1.0 are prohibited.
Use branch prefixes feat/, fix/, docs/, test/, or refactor/ according to the change purpose.
Every commit in a pull request must include a DCO Signed-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 latest main are complete.
Use commit messages in the form type: short description, with a valid type and a first line under 72 characters.

Files:

  • docs/about-nemo-relay/concepts/events.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/concepts/events.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 as RELEASING.md, rather than user-facing documentation pages or CHANGELOG.md.
Use stable user-facing wrappers at the scripts/ 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, and grpc-v1 protocol details on separate pages.
Dynamic plugin manifests in documentation and examples should use compat.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.
Run just docs when the documentation site changes; retain ./scripts/build-docs.sh html as the compatibility wrapper.

Files:

  • docs/about-nemo-relay/concepts/events.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/concepts/events.mdx
docs/**/*.{md,mdx}

📄 CodeRabbit inference engine (CONTRIBUTING.md)

Update relevant reference documentation when public behavior or APIs change.

Files:

  • docs/about-nemo-relay/concepts/events.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/concepts/events.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/concepts/events.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/concepts/events.mdx
🪛 LanguageTool
docs/about-nemo-relay/concepts/events.mdx

[style] ~39-~39: This phrase is redundant. Consider writing “point” or “time”.
Context: ...h a start and end time | Represents one point in time | | Pairing | Start and end share a UUI...

(MOMENT_IN_TIME)

🔇 Additional comments (2)
docs/about-nemo-relay/concepts/events.mdx (2)

55-55: 📐 Maintainability & Code Quality

Verify links after renaming section headings.

The changes rename Shared Envelope and Event Contract Boundary. These headings generate new anchors. Search docs/ for #shared-envelope and #event-contract-boundary, update any inbound links, and confirm that #fields-common-to-every-event resolves.

Run just docs and just docs-linkcheck before handoff.

As per coding guidelines, run just docs-linkcheck when documentation links change and run just docs when the documentation site changes. As per path instructions, review documentation for technical accuracy and consistency across the documentation set.

Also applies to: 139-143, 162-163

Sources: Coding guidelines, Path instructions


3-3: LGTM!

Also applies to: 37-54, 88-89, 153-153, 164-168, 228-233, 285-290, 306-306, 321-321


Walkthrough

The Events documentation now covers ATOF event fields, scope and mark distinctions, sanitized handoff, skill-load detection, shell wrappers, inferred events, exporter behavior, and downstream projections.

Changes

ATOF events documentation

Layer / File(s) Summary
Event model and field relationships
docs/about-nemo-relay/concepts/events.mdx
The page describes common event fields, scope and mark distinctions, checkpoint metadata, UUIDs, parentage, and field relationships.
Event handoff and skill detection
docs/about-nemo-relay/concepts/events.mdx
The page documents sanitized event handoff, skill-load detection limits, supported shell wrappers, and observed versus inferred skill events.
Exporter and downstream projections
docs/about-nemo-relay/concepts/events.mdx
The page clarifies ATOF mark preservation, raw ATOF export, and downstream ATIF and OpenTelemetry projections.

Estimated code review effort: 2 (Simple) | ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title uses the required Conventional Commits format and accurately summarizes the documentation changes.
Description check ✅ Passed The description includes all required sections, completed contribution checks, review guidance, and related issues.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added size:S PR is small Documentation documentation-related labels Aug 4, 2026
Signed-off-by: Alex Fournier <afournier@nvidia.com>
@afourniernv
afourniernv marked this pull request as ready for review August 4, 2026 21:51
@afourniernv
afourniernv requested review from a team as code owners August 4, 2026 21:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Documentation documentation-related size:S PR is small

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant