Skip to content

fix(stream): hide the live/prerecorded switch once air time starts - #837

Merged
anneoneone merged 1 commit into
mainfrom
fix/836-hide-mode-switch-on-air
Nov 2, 2026
Merged

anneoneone merged 1 commit into
mainfrom
fix/836-hide-mode-switch-on-air

Conversation

@anneoneone

Copy link
Copy Markdown
Collaborator

The show page no longer shows the Live / Pre-recorded switch once air time has started. The upload exists only before air time, so a switch to pre-recorded on air only changed the label and no set could ever play. From air time on, the status strip shows the mode as text.

Found in the Step 0 smoke test: show 49 was created with its window already running, and after a short live take the host could pick pre-recorded but never upload.

Issue: #836

Validation:

  • npx vitest run: 193 passed. New: canSwitchMediaMode is true only in prep.
  • npm run lint: ok. npm run typecheck: ok. npm run build: ok.
  • prettier --check flags StatusStrip.vue, but only line 161 (announcements count), which already fails on main. It is left as is.
  • GitNexus detect_changes: risk low, no affected flows. GitNexus has no symbol for .vue files; StatusStrip has one user, ShowDetailPage.vue.

The host panel ships inside the backend image, so this reaches hosts with the next backend deploy.

Implementation and review

This is a fix to main (Step 0, https://github.com/phaabe/live.moafunk.de/milestone/37), not architecture-epic work, so the epic fields do not apply.

Epic: n/a
Executor: n/a
Lane: n/a
Reviewer: n/a
Leaf IDs: n/a

Cause. useShowPhase has prep (before air time), broadcast (until the end) and wrapup (after the end, or once a live recording exists). ShowDetailPage renders PrepUploadInline only in prep, but StatusStrip showed the toggle in prep and broadcast.

Change.

  • showMediaMode.ts: canSwitchMediaMode(phase), true only for prep.
  • StatusStrip.vue: the toggle needs canManage && canSwitchMediaMode(phase); otherwise the existing read-only mode text shows.

Not in this PR. An upload during the window: the server would accept it (scheduler every 30 s, no lateness rule), but R0 (https://github.com/phaabe/live.moafunk.de/milestone/38) picks the mode at booking, as the flow defines it.

The upload exists only before air time, but the show page kept the
switch on air. A switch to prerecorded then only changed the label, and
no set could ever play. From air time on, the strip shows the mode as
text.

Refs: #836
@vercel

vercel Bot commented Nov 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
live-moafunk-de Ready Ready Preview Nov 2, 2026 11:34pm UTC

@anneoneone
anneoneone merged commit 16c560e into main Nov 2, 2026
7 checks passed
@anneoneone
anneoneone deleted the fix/836-hide-mode-switch-on-air branch November 2, 2026 23:36

This branch was successfully deployed

1 active deployment
Preview — f53290ca Deployed Nov 2, 2026 by vercel[bot]
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