> This page is for NeMo Relay, version dev.
> For other versions, use one of these documentation indexes:
> - Latest (v0.11.1) (default): https://docs.nvidia.com/nemo/relay/latest/llms.txt
> - dev: https://docs.nvidia.com/nemo/relay/dev/llms.txt
> - v0.11.1: https://docs.nvidia.com/nemo/relay/v0.11.1/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.

# Enum Diagnostic Read Reason

> Canonical diagnostic read reason values from the shared runtime types.

Generated from `cargo doc --no-deps -p nemo-relay-builtins -p nemo-relay-diagnostics -p nemo-relay-logging -p nemo-relay-plugin-host -p nemo-relay-codecs -p nemo-relay -p nemo-relay-runtime -p nemo-relay-model-pricing -p nemo-relay-resource-metrics -p nemo-relay-observability -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`.

```rust
#[repr(i32)]pub enum DiagnosticReadReason {
    Unspecified = 0,
    Disabled = 1,
    QueryDisabled = 2,
    UnsupportedSchema = 3,
    InvalidQuery = 4,
    InvalidCursor = 5,
    Busy = 6,
    SnapshotCapacity = 7,
    InvalidLimits = 8,
    AllocationFailed = 9,
    Internal = 10,
}
```

Canonical diagnostic read reason values from the shared runtime types.

## Variants

### `Unspecified = 0`

<pre />

No value supplied; invalid where an explicit value is required.

### `Disabled = 1`

<pre />

Collection was disabled at startup.

### `QueryDisabled = 2`

<pre />

Collection is enabled but snapshot workspaces were disabled.

### `UnsupportedSchema = 3`

<pre />

Requested snapshot version is unsupported.

### `InvalidQuery = 4`

<pre />

Malformed, oversized, unknown, or inadmissible query input.

### `InvalidCursor = 5`

<pre />

Continuation source, selection, or revision no longer matches.

### `Busy = 6`

<pre />

Core or adapter concurrency permits are temporarily exhausted.

### `SnapshotCapacity = 7`

<pre />

The page cannot fit its required metadata or a complete row.

### `InvalidLimits = 8`

<pre />

Invalid startup capacity profile, including arithmetic overflow.

### `AllocationFailed = 9`

<pre />

An admitted allocation could not be reserved.

### `Internal = 10`

<pre />

An unexpected internal read failure; no original error text is exposed.

## Implementations

### `impl DiagnosticReadReason`

<pre />

#### `is_valid`

<pre />

Returns `true` if `value` is a variant of `DiagnosticReadReason`.

#### `from_i32`

<pre />

Converts an `i32` to a `DiagnosticReadReason`, or `None` if `value` is not a valid variant.

### `impl DiagnosticReadReason`

<pre />

#### `as_str_name`

<pre />

String value of the enum field names used in the ProtoBuf definition.

The values are not transformed in any way and thus are considered stable (if the ProtoBuf definition does not change) and safe for programmatic use.

#### `from_str_name`

<pre />

Creates an enum from field names used in the ProtoBuf definition.

## Trait Implementations

### `impl Clone for DiagnosticReadReason`

<pre />

#### `clone`

<pre />

#### `clone_from`

<pre />

### `impl Debug for DiagnosticReadReason`

<pre />

#### `fmt`

<pre />

### `impl Default for DiagnosticReadReason`

<pre />

#### `default`

<pre />

### `impl From<DiagnosticReadReason> for i32`

<pre />

#### `from`

<pre />

### `impl Hash for DiagnosticReadReason`

<pre />

#### `hash`

<pre />

#### `hash_slice`

<pre />

### `impl Ord for DiagnosticReadReason`

<pre />

#### `cmp`

<pre />

#### `max`

<pre />

#### `min`

<pre />

#### `clamp`

<pre />

### `impl PartialEq for DiagnosticReadReason`

<pre />

#### `eq`

<pre />

#### `ne`

<pre />

### `impl PartialOrd for DiagnosticReadReason`

<pre />

#### `partial_cmp`

<pre />

#### `lt`

<pre />

#### `le`

<pre />

#### `gt`

<pre />

#### `ge`

<pre />

### `impl TryFrom<i32> for DiagnosticReadReason`

<pre />

#### `Error`

<pre />

#### `try_from`

<pre />

### `impl Copy for DiagnosticReadReason`

<pre />

### `impl Eq for DiagnosticReadReason`

<pre />

### `impl StructuralPartialEq for DiagnosticReadReason`

<pre />