Problem
The flux conformance spec (interfaces/flux/conformance/stream.spec.js) hardcodes const ENDPOINT = "/flux/stream" but the server exposes the WebSocket at /api/flux.
All other conformance specs follow the pattern:
process.env.LIVE_TRANSCRIPTION_ENDPOINT || "/api/live-transcription"
process.env.LIVE_TEXT_TO_SPEECH_ENDPOINT || "/api/live-text-to-speech"
process.env.VOICE_AGENT_ENDPOINT || "/api/voice-agent"
The flux spec is the only one that:
- Uses a different path pattern (
/flux/stream vs /api/flux)
- Has no env var override
Failures
All 8 conformance spec tests fail with "socket hang up" (ECONNRESET) because the server's upgrade handler only accepts /api/flux and destroys the socket for any other path.
The API tests (tests/flux/api/stream.test.js) pass because they use the correct endpoint /api/flux.
Fix
Update interfaces/flux/conformance/stream.spec.js to use:
const ENDPOINT = process.env.FLUX_ENDPOINT || "/api/flux";
This is a contracts submodule fix that affects all flux starters.
Problem
The flux conformance spec (
interfaces/flux/conformance/stream.spec.js) hardcodesconst ENDPOINT = "/flux/stream"but the server exposes the WebSocket at/api/flux.All other conformance specs follow the pattern:
process.env.LIVE_TRANSCRIPTION_ENDPOINT || "/api/live-transcription"process.env.LIVE_TEXT_TO_SPEECH_ENDPOINT || "/api/live-text-to-speech"process.env.VOICE_AGENT_ENDPOINT || "/api/voice-agent"The flux spec is the only one that:
/flux/streamvs/api/flux)Failures
All 8 conformance spec tests fail with "socket hang up" (ECONNRESET) because the server's upgrade handler only accepts
/api/fluxand destroys the socket for any other path.The API tests (
tests/flux/api/stream.test.js) pass because they use the correct endpoint/api/flux.Fix
Update
interfaces/flux/conformance/stream.spec.jsto use:This is a contracts submodule fix that affects all flux starters.