# ECP-0031: HDHomeRun End-to-End Test (Single Host, Two Nodes) Status: Draft ## Problem We need a real end-to-end test that exercises the full ingestion and transport path against a real HDHomeRun on the LAN. Unit tests cover a lot of logic, but they cannot validate: - live TS ingest from the tuner - chunking on real packets - manifest creation/signing - stream encryption/decryption - MoQ publish/subscribe over QUIC between two nodes - subscriber verification and HLS write-out ## Decision Add an ignored integration test that: - spawns `ec-node moq-publish hdhr ...` against a user-provided HDHomeRun host and channel - reads the publisher's printed endpoint addr, broadcast name, and track name - spawns `ec-node moq-subscribe ... --subscribe-manifests --require-manifest --network-secret ...` - asserts that the subscriber writes `index.m3u8` and at least one `segment_*` file The test is opt-in and runs only when environment variables are present: - `EVERY_CHANNEL_E2E_HDHR_HOST` - `EVERY_CHANNEL_E2E_HDHR_CHANNEL` ## Details - Publisher uses `--publish-manifests --epoch-chunks 1 --network-secret `. - Subscriber uses `--require-manifest --max-invalid-chunks 0` to enforce verification. - A new subscriber flag `--stop-after N` allows deterministic termination. ## Consequences - Local developers can validate true end-to-end behavior before sharing builds. - CI remains unaffected unless explicitly enabled.