> This page is for NeMo Relay, version dev.
> For other versions, use one of these documentation indexes:
> - Latest (v0.10.4) (default): https://docs.nvidia.com/nemo/relay/latest/llms.txt
> - dev: https://docs.nvidia.com/nemo/relay/dev/llms.txt
> - v0.11.0: https://docs.nvidia.com/nemo/relay/v0.11.0/llms.txt
> - v0.10.4: https://docs.nvidia.com/nemo/relay/v0.10.4/llms.txt
> - v0.9.4: https://docs.nvidia.com/nemo/relay/v0.9.4/llms.txt
> - v0.8.4: https://docs.nvidia.com/nemo/relay/v0.8.4/llms.txt
> - v0.7.3: https://docs.nvidia.com/nemo/relay/v0.7.3/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/relay/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/relay/_mcp/server.

# Module abi

> Append-only native diagnostic ABI. All input spans are borrowed for one call. Nonempty spans and output pointers must be valid for their stated size; arrays must be aligned. No callback retains plugin memory. Integer tags are validated.

Generated from `cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-pii-redaction -p nemo-relay-ffi -p nemo-relay-types -p nemo-relay-plugin -p nemo-relay-worker-proto -p nemo-relay-worker`.

Append-only native diagnostic ABI. All input spans are borrowed for one call. Nonempty spans and output pointers must be valid for their stated size; arrays must be aligned. No callback retains plugin memory. Integer tags are validated.

## Structs

* [Bytes](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/struct-bytes): Borrowed bytes. A null pointer is permitted only for an empty span.
* [Capabilities](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/struct-capabilities): Non-sensitive recording capabilities; no source-wide diagnostic content.
* [Code](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/struct-code): One declaration. Kind 0 selects a built-in; kind 1 declares an extension.
* [NativeDiagnosticsApiV1](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/struct-nativediagnosticsapiv1): Frozen diagnostics callback table. Status 0 means success; other values are defined by `DiagnosticError::from_status`. Read kinds: 0 discovery, 1 snapshot, 2 memory. Read output is caller-owned; `written` is zero on any failure.
* [NativeHostApiV8WithDiagnostics](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/struct-nativehostapiv8withdiagnostics): Size-discovered tail of the unchanged ABI-8 execution table.
* [Observation](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/struct-observation): Borrowed observation. Empty optional strings mean absent values.
* [Receipt](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/struct-receipt): Allocation-free receipt written only after acceptance.
* [Registration](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/struct-registration): Borrowed registration, whose complete vocabulary is admitted together.

## Constants

* [CONTRACT_VERSION](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/constant-contract-version): Independent diagnostic transport version; execution ABI remains 8.
* [MAX_CALLS](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/constant-max-calls): Maximum concurrent native data calls per host process.
* [MAX_CLASSES](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/constant-max-classes): Maximum classes per extension.
* [MAX_CODES](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/constant-max-codes): Maximum declared codes per component.
* [MAX_COMPONENTS](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/constant-max-components): Maximum simultaneously live component registrations per activation.
* [MAX_EXTENSIONS](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/constant-max-extensions): Maximum cumulative extension declarations per activation.
* [MAX_REQUEST_BYTES](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/constant-max-request-bytes): Maximum total text bytes in a native request.
* [MAX_SESSIONS](/nemo/relay/dev/reference/api/rust-library-reference/nemo-relay-plugin/diagnostics/abi/constant-max-sessions): Maximum concurrently admitted authoring sessions per host process.