CedarCopilot wants to merge 0 commits into staging from fix/automation-agent-allow-email-channel
Live on prod, no production signal yet
Strict CloudWatch fallback found 1 prod failure log lines for [run-chat-agent-sdk] query() failed (Claude Code process aborted by user) in the last 24h while checking notifytool, notify-user, channel:"email", success: true, send-email.
Libra has verdicts on 0 of 3 tracked behaviors on prod; 3 are still being checked. Libra has 1 low-confidence degraded verdict it is still confirming. Libra checks hourly for 3 days after each deploy.
Align the headless notification surfaces with what notify-user actually does, and give the consolidated notify tool a real way to request email.
notify family tool: add an optional channel (email|slack|imessage|whatsapp) to send, forwarded to notify-user; correct its description + text wording + file-header rationale.On current staging, notify-user delivers to the ONE channel the user chose (resolvePrimaryChannel) , and that set includes email , with a named email fallback. The prompt/skill/tool text all still said email was never a notification channel, and the notify family send had no channel param at all, so an agent instructed to email couldn't reliably do it.
Real tool descriptions, record-only stubs, 8 trials, claude-sonnet-5. Target = deliver via notify-user(channel:"email"), no draft:
| old prompt | this PR | |
|---|---|---|
| meeting-prep-style instruction | 6/8 | 8/8 |
| digest-style instruction | 8/8 | 8/8 |
Keeps the rule that prevented the original incident (a dead Slack grant ā unrequested mail): never create a draft, or otherwise reroute, to route around a failed channel. Email is a caller-chosen channel, never inferred from a delivery failure.
No behavior change for users who don't ask for email , notify-user/notify send still resolve each user's own chosen channel by default. Verified: 30/30 notify unit tests pass; @zero/server typecheck clean.
š¤ Generated with Claude Code
Libra has not measured any production surfaces for this change yet.