S8: main DRB bot optional end to end + owner-flow integration tests (server-26#225)
- Copy: picker, admin Servers/Streams/How-it-works, org Discord card, bot /help and the server-limit refusal no longer imply the DRB server bot is required; a radio bot alone is enough. - Admin overview: per-server main_bot_present, radio_bots, linked_via, directory_source; Servers tab gets a Bots column. - discord_web docstring: states the reversed "never calls Discord" rule (plan finding 5) and the optional server bot. - Server bot directory cog: re-push (which drops C2's cached permission answers) on overwrite changes, role permission changes and role deletes. - tests/test_discord_owner_flows.py: one-bot org (BYO bot, owner-set preferred, OAuth link, picker, start, reconciler) and full setup (server bot + 4 radio bots: placement, shared channel, every refusal explained), against a modelled Discord over httpx.MockTransport. - storage.download_audio removed: no caller on main since #233. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
f49dc86111
commit
9c124d4c8b
@@ -284,7 +284,9 @@ class RadioCommands(commands.Cog):
|
||||
value=(
|
||||
"Link this server to your DRB organization — needed before anything below works. "
|
||||
"An organization owner gets the code in DRB under Settings → Organization → Discord servers; "
|
||||
"someone with Manage Server runs this."
|
||||
"someone with Manage Server runs this.\n"
|
||||
"Or skip this bot entirely: **Connect a Discord server** on that same page adds a radio bot "
|
||||
"and links the server in one step, and radio channels can be started from a node's page in DRB."
|
||||
),
|
||||
inline=False,
|
||||
)
|
||||
@@ -314,7 +316,9 @@ class RadioCommands(commands.Cog):
|
||||
name="Radio bots",
|
||||
value=(
|
||||
"A radio bot has to be a member of this server before it can join a channel — "
|
||||
"if none is, `/join` replies with an invite link.\n"
|
||||
"if none is, `/join` replies with an invite link. It needs View Channel, Connect and Speak "
|
||||
"there; if it can't, `/join` says which permission is missing and where to allow it.\n"
|
||||
"Radio bots work without this bot: it only adds these commands.\n"
|
||||
"The bot's green speaking ring lights up only while radio is transmitting."
|
||||
),
|
||||
inline=False,
|
||||
|
||||
Reference in New Issue
Block a user