Skip to content

fix(guide): a room is on the air until its show ends (0.80.3) - #423

Merged
ralyodio merged 1 commit into
mainfrom
fix/room-on-air-not-source-live
Nov 11, 2026
Merged

ralyodio merged 1 commit into
mainfrom
fix/room-on-air-not-source-live

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

A podcast mp3 carried as a link channel (POST /api/links/play {live:true}) lists live: false the whole time it plays, because a channel's live says whether its SOURCE is a live feed. RoomProbe read that as the room being off the air, so a podcast published on live.streaming showed offline. The probe now treats a channel as on the air until it has ended (its outro).

Found while wiring auto go-live for TUI Weekly / Off The Record (new @profullstack/golive CLI). Test added in test/guide-rooms.test.ts; bun test test/guide-rooms.test.ts and tsc --noEmit pass.

🤖 Generated with Claude Code

…ts source is a live feed (0.80.3)

A podcast mp3 carried as a link channel lists live:false (its SOURCE is not
a live feed) the whole time it plays, so its live.streaming room read as
offline. The probe now asks whether the channel has ended.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@ralyodio
ralyodio merged commit 84ae840 into main Nov 11, 2026
5 checks passed
@ralyodio
ralyodio deleted the fix/room-on-air-not-source-live branch November 11, 2026 08:29
@github-actions

Copy link
Copy Markdown

ThreatCrush Security Scan

0 finding(s) in the 3 file(s) this pull request changes.

Nothing in the files this pull request changes.

56 pre-existing finding(s) elsewhere in the repository — **HIGH**: 17 | **MEDIUM**: 15 | **LOW**: 24

Not introduced by this pull request.

Severity Rule Location
HIGH secret-database-url .github/workflows/translation.yml:31
HIGH secret-generic-credential src/hls.ts:81
HIGH js-ssrf-outbound-request src/music-hub.ts:304
HIGH js-host-header-trust src/server.ts:3111
HIGH js-host-header-trust src/server.ts:3125
HIGH js-host-header-trust src/server.ts:3142
HIGH js-host-header-trust src/server.ts:3151
HIGH js-host-header-trust src/server.ts:3156
HIGH js-host-header-trust src/server.ts:3259
HIGH js-host-header-trust src/server.ts:3325
HIGH js-host-header-trust src/server.ts:3412
HIGH js-host-header-trust src/server.ts:3440
HIGH js-host-header-trust src/server.ts:3610
HIGH js-host-header-trust src/server.ts:3626
HIGH js-ssrf-outbound-request web/src/app.ts:115
HIGH js-ssrf-outbound-request web/src/app.ts:163
HIGH js-ssrf-outbound-request web/src/app.ts:167
MEDIUM js-unescaped-html-sink backtoschool/src/main.ts:95
MEDIUM js-unescaped-html-sink backtoschool/src/main.ts:241
MEDIUM js-unescaped-html-sink backtoschool/src/main.ts:257

…and 36 more; the full set is in the SARIF artifact.

Snippets are redacted; ThreatCrush never prints matched credential material.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant