Files
neuron-tai/.scratch/proxy-stream-cancellation/PRD.md
2026-07-13 10:27:45 +03:00

1.3 KiB

PRD: Streaming proxy cancellation delivery

Overview

A tracker proxy route can be selected and registered as active, but a direct SSE upstream may not deliver its first frame to the downstream client until the upstream response completes. A dashboard cancellation request made after the upstream emitted and flushed an SSE frame can therefore arrive after the tracker has already finalized and unregistered the proxy, returning 404.

Goal

Preserve immediate SSE frame delivery and keep the active-proxy record cancelable until the streaming response actually completes or is canceled.

Quality gates

  • Run the focused tracker streaming/cancellation tests.
  • Run full python -m pytest -q and record unrelated failures exactly.
  • Do not weaken billing, disconnect handling, proxy-inflight accounting, or cancel authorization.

User story

PSC-001: Cancel an active direct SSE proxy

As a dashboard operator, I need a cancellation request to reach an active direct SSE proxy after its first streamed frame, so I can stop long-running inference without a race-induced 404.

Non-goals

  • Do not change route selection or quantization policy.
  • Do not alter relay transport behavior unless needed to share the same cancellation invariant.
  • Do not introduce client-visible buffering.