This example expects an event-stream endpoint at
/api/dq-stream. Without one, the initial fetch still
renders and the banner above shows the stream's transient state.
Existing rows are never cleared by a stream failure.