Reach the live feed on the endpoint Formula 1 still answers - #68
Open
jerome-queck wants to merge 1 commit into
Open
Reach the live feed on the endpoint Formula 1 still answers#68jerome-queck wants to merge 1 commit into
jerome-queck wants to merge 1 commit into
Conversation
Formula 1 has closed the legacy SignalR endpoint the upstream recorder used. A negotiate against `livetiming.formula1.com/signalr` now answers 401 with `WWW-Authenticate: Basic realm="Authentication"` and `Bearer`, so the live path received nothing at all — the Ingestor sat in a reconnect loop and the broker carried no records. The replacement, `livetiming.formula1.com/signalrcore`, still negotiates and subscribes without a credential. Upstream chooses between the two clients by whether `F1_TOKEN` is *set*, not by whether its value authenticates: unset omits `--auth` and takes the dead endpoint, set passes `--auth` and takes the live one. So the fix is to set it, and the value is deliberately not a credential — this project holds no F1TV token and is not becoming a system that does (ADR-0002). Whether the free subset actually arrives over an unauthenticated connection is the measurement ADR-0002 leaves outstanding; #42 settles it against a live Session. This change is what makes that measurement possible at all. Verified against the running stack: the recorder now reports `Connection established` and subscribes to all sixteen topics, `server/live.ts` connects to the broker, and a browser's WebSocket receives its seed frame stamped `mode: "live"`. Assisted-by: Claude Opus 5 (reasoning: high) Co-authored-by: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Formula 1 has closed the legacy SignalR endpoint the upstream recorder used. A negotiate against
livetiming.formula1.com/signalrnow answers401withWWW-Authenticate: Basic realm="Authentication"andBearer, so the live path received nothing at all — the Ingestor satin a reconnect loop and the broker carried no records. The replacement,
livetiming.formula1.com/signalrcore, still negotiates and subscribes without a credential.Upstream chooses between the two clients by whether
F1_TOKENis set, not by whether its valueauthenticates: unset omits
--authand takes the dead endpoint, set passes--authand takes thelive one (
real_time/recording.py). So the fix is to set it, and the value is deliberately not acredential — this project holds no F1TV token and is not becoming a system that does (ADR-0002).
Whether the free subset actually arrives over an unauthenticated connection is the measurement
ADR-0002 leaves outstanding; #42 settles it against a live Session. This change is what makes that
measurement possible at all.
Verified against the running stack
Connection establishedandSubscribed to topicsfor all sixteen topics,where before it logged only
Reconnecting in 5 seconds....server/live.tsreportsconnected to the broker.mode: "live":{"type":"session-state","state":{"sessionKey":0,"drivers":[],"mode":"live"}}.test/run,npm run typecheck,shellcheckandbin/compose configare all green.The empty field is correct — no Session is live at the time of writing. Zandvoort FP1
(
session_key11343) begins 2026-08-21T10:30:00Z and is what settles the rest.Assisted-by: Claude Opus 5 (reasoning: high)
Co-authored-by: Claude noreply@anthropic.com