Wire devtown events to human-facing notification channels via casehub-connectors.
Scope
- Review assignment notifications: when a COMMAND is dispatched to a reviewer, send Slack/Teams message with PR context, deadline, and claudony session link
- Merge success notification: batch merged — list of PRs, authors, time taken
- Merge failure notification: PR rejected after bisect — which PR, which CI failure, what to fix
- Stalled commitment alert:
WatchdogEvaluationService fires → connector delivers to #devtown-ops channel
- Case fault notification:
CaseLifecycleEvent(FAULTED) → connector alert with case ID and last known state
- Escalation notification:
EscalationPolicy.escalate() on WorkItem → connector delivery with SLA context
- Config: connector targets configurable per-repo (which Slack channel gets which repo's notifications)
Foundation gate: None — casehub-connectors SPI ✅ Production. Depends on notification consolidation (parent#5) being resolved to avoid dual-delivery with casehub-work-notifications.
Done when: A failed merge bisect delivers a Slack message identifying the faulty PR. A stalled agent triggers an ops channel alert automatically.
Wire devtown events to human-facing notification channels via casehub-connectors.
Scope
WatchdogEvaluationServicefires → connector delivers to #devtown-ops channelCaseLifecycleEvent(FAULTED)→ connector alert with case ID and last known stateEscalationPolicy.escalate()on WorkItem → connector delivery with SLA contextFoundation gate: None — casehub-connectors SPI ✅ Production. Depends on notification consolidation (parent#5) being resolved to avoid dual-delivery with casehub-work-notifications.
Done when: A failed merge bisect delivers a Slack message identifying the faulty PR. A stalled agent triggers an ops channel alert automatically.