Files
VerseVDI-Data-Plane/openspec/changes/archive/2026-07-30-gateway-terminal-receipt/proposal.md
T
sechmachine 1485f1e637
Verify Data Plane / gateway (push) Successful in 3m54s
docs(gateway): archive candidate evidence contracts
2026-07-30 12:09:35 +07:00

1.3 KiB

Why

P3C-018, P3C-019, P3C-021, and P3C-027 require terminal feedback, bounded cleanup, durable state, and explicit input release. A public independent-client regression proved that immediate QUIC closure loses the terminal event, while the old behavior left the tunnel open until the client closed it.

What Changes

  • Consume the Protocol-owned terminal receipt on control.ack.v1 inside the gateway rather than forwarding it to Apollo.
  • Quiesce media before terminal delivery and close the gateway-owned tunnel after receipt or a bounded receipt deadline.
  • Guarantee a terminal event survives saturation of the bounded native feedback queue.
  • Preserve provider cleanup, reservation release, reconnectable disconnect reporting, and cleanup_pending.

Capabilities

New Capabilities

None.

Modified Capabilities

  • provider-session-lifecycle: Make terminal delivery and gateway-owned bounded closure executable rather than dependent on client connection closure.

Impact

The pure-Go GPLv3 gateway control and native Apollo session paths change. The Protocol repository remains the wire-contract owner; the Server remains the durable authority. No cgo, sidecar, direct provider route, decode/transcode path, dependency, or proprietary source is introduced. Failure to receive a valid receipt before the bound is a hard session close, not a fallback.