Four states of the escalation-channel picker after the scope reduction (Peyton, 2026-09-07):
the list shows public channels only, MystFlo joins the channel the moment she picks it, and a
failed join says so out loud instead of dying silently. Frames inherit the panel and picker
language already signed in assistant-flows/on-brand-support.html frame 9e — this
file only draws what 9e never drew: the open dropdown, and what happens after the tap.
Public channels only for now
Public channels only for now
Public channels only for now
CommandList scrolls out of sight on the first flick, which is exactly when a founder is hunting for the missing private channel.fg-40, sentence case, no icon, no warning colour, one line: “Public channels only for now”. No “coming soon” — copy never promises what isn't built (catalog-copy hard rule). Final wording routes through chief-writer.Lock icon branch is now unreachable in both shipped call sites. Leave the row markup alone in this PR; it's dead-code cleanup, not design.field.description line above the trigger. It's permanently on screen for a founder who never opens the list, and it answers a question she hasn't asked yet.Joining #retreat-alerts…
Couldn't join #retreat-alerts — your replies there won't reach the guest yet.
Try againJoining #retreat-alerts…
Couldn't join #retreat-alerts — your replies there won't reach the guest yet.
Try againJoining #retreat-alerts…
Couldn't join #retreat-alerts — your replies there won't reach the guest yet.
Try againtetheredPicks.tsx renders “Saving…” / the amber “Pick a channel” line right below the control. The join reuses that slot; it does not add a second line. Save and join are one wait, one message: the founder never sees “Saving…” then “Joining…” stacked or in sequence — if both are in flight, the line reads “Joining #retreat-alerts…”, because that's the part that can fail.text-destructive + a “Try again” link), left-aligned under the control instead of centred inside the popover, because the popover has closed by then.channels:join was added to the manifest will fail this call until the founder re-consents. That's a distinct failure from “rate-limited”, and it wants a distinct line (“Reconnect Slack to finish setting this up”, routing to /connects) rather than a generic “Try again”. Not drawn here — flagged, because it will be the most common failure in the first week.assistant-flows/on-brand-support.html frame 9e, which already draws the closed picker in all three of its states — this file is the open-dropdown and post-tap half 9e never had. Keep one drawing per state; do not leave both.