feat(protocol): define gateway control envelopes
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
## Why
|
||||
|
||||
The RC5 tunnel register identifies a bounded sequenced-input flow but does not
|
||||
define typed input state or provider-to-client feedback. The native Apollo
|
||||
adapter cannot safely translate keyboard, mouse, UTF-8, controller, termination,
|
||||
rumble, or HDR state from an untyped payload.
|
||||
|
||||
## What Changes
|
||||
|
||||
- Define a typed, versioned gateway input envelope for keyboard, mouse, UTF-8,
|
||||
and controller state.
|
||||
- Define bounded provider-feedback and provider-termination envelopes on the
|
||||
existing reliable control direction.
|
||||
- Define a separate typed clipboard envelope and Server-owned per-session
|
||||
direction, size, and rate policy so the gateway can prevent reflected loops
|
||||
without exposing provider management material.
|
||||
- Define release semantics so gateway cleanup can emit real provider key/button
|
||||
releases without a synthetic provider command.
|
||||
- Preserve RC5 unchanged; this change requires a new immutable Protocol version
|
||||
after its fixtures and consumers are final.
|
||||
|
||||
## Capabilities
|
||||
|
||||
### New Capabilities
|
||||
|
||||
- `gateway-input-feedback`: Typed Phase 3C gateway input, provider feedback,
|
||||
termination, and release envelopes.
|
||||
|
||||
### Modified Capabilities
|
||||
|
||||
- None.
|
||||
|
||||
## Impact
|
||||
|
||||
- Protocol control and datagram registries, schemas, fixtures, and generated
|
||||
Go/Rust/Swift bindings.
|
||||
- Data Plane gateway input/clipboard translation and host-feedback forwarding.
|
||||
- Connection Server mints only immutable clipboard policy in authenticated
|
||||
provider work; it neither receives clipboard bytes nor inspects provider
|
||||
packet payloads.
|
||||
Reference in New Issue
Block a user