Repository navigation
feat(chat): Hazel channels as alert destinations through the bot - #2027
Conversation
The Hazel connector's destinations() reads the channels its bot can post in
from Hazel's GET /api/v1/organizations/{id}/bot-channels (every public
channel, and the private ones the bot was added to), so a Hazel channel is
picked as an ordinary chat alert destination and alerts post as the bot.
A 401/403 is the bot's grant (auth), a 404 the workspace (not_found).
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 14 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
Maple review🟢 Confidence 10/10 · safe to merge. A contained connector change: one new reader through the existing client-span and error-mapping helpers, pinned by three transport tests. Hazel's transport now lists the bot's channels from
Before merge
|
|
Merged with 2 steps from "Before merge" still open. If they are done, tick them on the review comment; if not, now is the time.
|
Bottom of a 2-PR stack. The second PR, #2022, deletes the old Hazel OAuth webhook integration so Maple has a single Hazel integration.
The Hazel chat connector's
destinations()now reads the channels its bot can post in from Hazel'sGET /api/v1/organizations/{id}/bot-channels(MapleTechLabs/hazel#372). Hazel channels can then be picked as ordinarychatalert destinations, and alerts post as the bot. A 401/403 maps toauth(the bot lost its grant or lackschannels:read); a 404 maps tonot_found.The manifest description and the connector README now cover alerts. The README also says the existing US and EU bots need the
channels:readscope added.Verification
outbound.test.tschecks three things: the request path and bot token, 403 mapping toauth, and an unreadable reply failing the listing.🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.