1.4 KiB
1.4 KiB
Why
Phase 3A defines gateway-only manifests and control datagrams but has no versioned contracts for the separately deployed gateway's registration, admission authority, capability intersection, lifecycle, or encoded relay framing. Phase 3C-G needs those contracts frozen before Data Plane or Connection Server consumers change.
What Changes
- Add bounded JSON bindings for gateway registration, heartbeat/drain, tunnel admission, session-scoped authority, capability selection, channel framing, provider state, and stable errors.
- Extend the tunnel protobuf descriptor with the same versioned control messages.
- Register only gateway-owned media/input flow identifiers; keep provider endpoints and credentials out of client-facing manifests.
Ownership and provenance
Protocol owns the wire contract. The contract is original VerseVDI work derived from the Phase 3A schemas and public Apollo/Moonlight behavior recorded in the Planning Hub. No GPL source is copied into this repository.
Non-goals
- Provider implementation, database policy, QUIC implementation, media decoding, or client rendering.
- Direct client-to-Apollo routing, provider endpoint exposure, or a speculative plugin ABI.
Stop conditions
Unknown versions, malformed bounds, no capability overlap, downgrade without explicit acknowledgement, forbidden provider fields, and oversized frames fail closed.