feat(topbar): the action follows the armed output; Test is an explicit ask again
Unit C (creator ruling 2026-11-12). - Local MP4: one button, "Start Recording". - YouTube: "Private Test Stream" beside "Review & Go Live", the latter with the primary face because it is the default ask. - Running: "End Live Stream" (or "End Test" for a test run, "Stop Recording" for a local one). The behavioural change underneath: SessionStartDecision.For no longer takes `editing`. Since 2026-10-30 EDIT silently chose test-vs-real, which meant the same button did two different things depending on a toggle three inches away. With Test as its own button that inference has no job, so For() now reads only the armed output and ON-AIR always means the real livestream. That supersedes the 2026-10-30 ruling; SessionStartDecisionTests is rewritten to pin the new matrix rather than the old one. A signed-out press still starts the sign-in flow instead of sitting dead (no-dead-ends), unchanged from before — now stated in one place, the two new commands, instead of inside a route table. 680 pass, 0 warnings. Scope justification: Assets/starting-background.jpg is outside this unit — the creator's replacement art, still awaiting their visual check.
This commit is contained in:
+13
-5
@@ -145,11 +145,19 @@
|
||||
</Border>
|
||||
<TextBlock Text="One output at a time" FontSize="11" VerticalAlignment="Center"
|
||||
Foreground="{StaticResource Brush.OnSurfaceVariant}" Margin="8,0,0,0"/>
|
||||
<!-- Go face names the world: "Start Recording" vs "Go Live".
|
||||
(Signed-out ON-AIR Start routes to the sign-in — StartSession.) -->
|
||||
<Button Content="{Binding PrimaryStartButtonLabel}" Style="{StaticResource YtButton}"
|
||||
Height="32" Margin="10,0,0,0" Command="{Binding PrimaryStartCommand}"
|
||||
Visibility="{Binding ShowPrimaryStartButton, Converter={StaticResource BoolToVis}}"/>
|
||||
<!-- The action follows the armed output (creator ruling 2026-11-12).
|
||||
MP4: one button. YouTube: the test run AND the real one, side by side — Test is
|
||||
something the creator asks for now, not something inferred from EDIT — with
|
||||
Review & Go Live carrying the primary face because it is the default ask. -->
|
||||
<Button Content="Start Recording" Style="{StaticResource YtButton}"
|
||||
Height="32" Margin="10,0,0,0" Command="{Binding StartRecordingCommand}"
|
||||
Visibility="{Binding ShowStartRecordingAction, Converter={StaticResource BoolToVis}}"/>
|
||||
<Button Content="Private Test Stream" Style="{StaticResource YtButtonSecondary}"
|
||||
Height="32" Margin="10,0,0,0" Command="{Binding TestStreamCommand}"
|
||||
Visibility="{Binding ShowYouTubeStartActions, Converter={StaticResource BoolToVis}}"/>
|
||||
<Button Content="Review & Go Live" Style="{StaticResource YtButton}"
|
||||
Height="32" Margin="8,0,0,0" Command="{Binding GoLiveCommand}"
|
||||
Visibility="{Binding ShowYouTubeStartActions, Converter={StaticResource BoolToVis}}"/>
|
||||
<!-- TASK 32·3: the drop ended this broadcast. YouTube cannot resume a completed one, so
|
||||
the only honest action is a new broadcast — one click, saved details, and the title
|
||||
says it is a resume so the channel shows what happened. -->
|
||||
|
||||
Reference in New Issue
Block a user