Skip to content

nnrp-1-preview3 Capability Catalog

This page corresponds to `nnrp-conformance/protocol/nnrp-1-preview3/mandatory-core.json`. Compared with Preview2, the current Preview3 baseline is more tightly focused on the mandatory core, so there are fewer tokens and each token maps more directly to a public protocol surface.

Always-on cases

Preview3 currently has two mandatory protocol-floor checks with no capability token: header.roundtrip.basic and header.invalid_length.reject. They require a stable common-header round-trip and correct rejection of packets whose declared length does not match the actual payload length.

Capability overview table

TokenLayersStatus reachCombination ruleDescription
handshake.basicL1mandatorynoneMinimum handshake and capability negotiation flow.
session.open_closeL1mandatorynoneSession open, maintain, and close state machine.
frame_submit.tensor.inlineL1mandatorymust also claim result_push.basicMinimum inline tensor submit path.
result_push.basicL1mandatorymust also claim frame_submit.tensor.inlineResult return compatible with the minimum submit path.
transport.quicL3optionalnonePreview3 minimum QUIC interoperability transport.
transport.tcpL3optionalnonePreview3 minimum TCP interoperability transport.
flow_updateL1experimentalnoneFlow-control semantics not yet frozen into the mandatory core.

Detailed explanations

handshake.basic

This is the entry token for the Preview3 mandatory core. Claiming it means the implementation accepts a public CI contract for the minimum handshake, version confirmation, and capability-negotiation path rather than proving only that it can connect to itself.

session.open_close

This token is about the state machine, not a single message type. The implementation must open a session, maintain protocol state, and close the session without violating the currently frozen Preview3 transition boundaries.

frame_submit.tensor.inline

This is the current minimum data-plane submit capability in Preview3. It requires the implementation to accept an inline tensor submit packet and complete the round-trip in the same public semantic frame as the result path. Because that loop inherently depends on a result return, it is paired with result_push.basic.

result_push.basic

This token means the implementation can return the minimum result packet shape. In the current baseline it is not validated independently from submit; the minimum submit/result path only becomes selected when frame_submit.tensor.inline is also claimed.

transport.quic

Once claimed, this token activates the Preview3 QUIC optional smoke case. It covers the minimum interoperable bring-up rather than advanced transport optimizations; the goal is first to prove that different implementations can establish the same public path successfully.

transport.tcp

This token mirrors transport.quic, but targets TCP. It remains optional today and is suitable for implementations that first deliver a minimal TCP path and want the extra coverage explicitly.

flow_update

Preview3 flow-control semantics have not yet been folded into the mandatory core, so this token is still experimental. Claiming it does not create a hard gate yet, but it moves related behavior into the informational report so semantic drift can be observed before the surface is frozen.

NNRP Documentation