33 lines
1.4 KiB
Markdown
33 lines
1.4 KiB
Markdown
## 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.
|