spec(protocol): define terminal event receipt
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# gateway-heartbeat-telemetry Specification
|
||||
|
||||
## Purpose
|
||||
TBD - created by archiving change phase3c-gateway-heartbeat-telemetry. Update Purpose after archive.
|
||||
Define the bounded, low-cardinality gateway observations carried by authenticated heartbeats and their canonical units and exclusions.
|
||||
## Requirements
|
||||
### Requirement: Heartbeat carries observed gateway telemetry
|
||||
Every authenticated `GatewayHeartbeat` SHALL carry the bounded process-level counters, delay totals and samples, control RTT/loss/jitter, pending reliable work, reconnect count, and provider state defined by `GatewayTelemetry`.
|
||||
|
||||
@@ -40,9 +40,11 @@ an implementation-specific release-all provider command.
|
||||
The registered bidirectional reliable `control.ack.v1` flow SHALL define an ASCII `VGF1` envelope
|
||||
with a direction byte, type byte, big-endian payload length, and exact payload
|
||||
bytes. Only host termination, rumble, and HDR feedback SHALL be valid from the
|
||||
gateway to the client; only IDR and FEC/loss feedback SHALL be valid from the
|
||||
client to the gateway. The envelope SHALL contain no provider address,
|
||||
certificate, credential, or opaque provider packet.
|
||||
gateway to the client. Only IDR, FEC/loss feedback, and an empty terminal receipt
|
||||
SHALL be valid from the client to the gateway. The terminal receipt SHALL be
|
||||
valid only while the same session awaits receipt of its one terminal event and
|
||||
MUST NOT be forwarded to the provider. The envelope SHALL contain no provider
|
||||
address, certificate, credential, or opaque provider packet.
|
||||
|
||||
#### Scenario: Host termination forwarding
|
||||
- **WHEN** the Apollo adapter receives an authenticated host termination
|
||||
@@ -50,9 +52,15 @@ certificate, credential, or opaque provider packet.
|
||||
- **THEN** the gateway forwards a bounded `VGF1` termination envelope over
|
||||
reliable Verse control and reports the provider state separately.
|
||||
|
||||
#### Scenario: Terminal event receipt
|
||||
- **WHEN** a client receives the reliable typed terminal event
|
||||
- **THEN** it sends the empty terminal receipt and the gateway owns bounded
|
||||
tunnel closure without forwarding the receipt to the provider.
|
||||
|
||||
#### Scenario: Unauthorized or malformed feedback
|
||||
- **WHEN** feedback is disabled by policy, has an invalid direction/type/length,
|
||||
or contains a forbidden provider field
|
||||
contains a forbidden provider field, or sends a terminal receipt outside the
|
||||
awaiting-terminal state
|
||||
- **THEN** the gateway rejects it without forwarding or provider mutation.
|
||||
|
||||
### Requirement: Policy-bound text clipboard envelope
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# provider-stream-policy Specification
|
||||
|
||||
## Purpose
|
||||
TBD - created by archiving change phase3c-provider-stream-policy. Update Purpose after archive.
|
||||
Define immutable provider stream-policy fields and the registered ordered decode-profile intersection shared by all generated bindings.
|
||||
## Requirements
|
||||
### Requirement: Provider work carries the effective stream policy
|
||||
Authenticated `ProviderSessionWork` SHALL carry the immutable policy version and its effective resolution, frame rate, codec, target bitrate, and audio-enabled decision.
|
||||
|
||||
Reference in New Issue
Block a user