Skip to content

[Alerts][Ticketing] Ticket as an alert target: 'ticket' notification channel type and 'create_ticket' automation action #5238

Description

@ToddHebebrand

Description

From #4984 (monitor → action → alert model): the reporter lists the alert targets they expect as Email / Teams / Webhook / Ticket, and in #4330 describes a reboot job that "creates a ticket … closes the ticket if online". Breeze has native ticketing, but an alert cannot become a ticket without a human:

  • NOTIFICATION_CHANNEL_TYPES = email, slack, teams, webhook, pagerduty, sms, pushover (packages/shared/src/constants/index.ts:43) — no ticket.
  • Automation action types = run_script, send_notification, create_alert, execute_command, deploy_software, ai_triage — no create_ticket.
  • alertRules / alertTemplates carry no ticket-creation field.

The only ticket↔alert link today is the reverse direction (an AI agent triggered by a ticket).

Proposed Fix

Two small, independently shippable pieces:

  1. ticket notification channel type: config = board/queue, default priority mapping from alert severity, assignee/team, and a "one ticket per open alert" dedupe (key on alertId, like alertNotifications). Auto-resolve of the alert adds a closing comment and optionally closes the ticket.
  2. create_ticket automation action: same payload, usable from any automation trigger (schedule/event), so workflows like "reboot batch started → open ticket → close when back online" become possible (Feature Reques Schedule Reboot and monitor I have a script that allows me more control over when server reboots are sche #4330, [Maintenance][Alerts] Post-window verification: alert (and ticket) when a device that was online before a maintenance window is still offline after it #5236).

Both should respect the dual-axis ownership already on notificationChannels / automations.

Affected Files

  • packages/shared/src/constants/index.ts (NOTIFICATION_CHANNEL_TYPES), packages/shared/src/validators/index.ts (automation action union ~L238-273)
  • apps/api/src/services/notificationDispatcher.ts (~L756-841 channel switch)
  • apps/api/src/services/automationRuntime.ts (action executor)
  • apps/api/src/db/schema/alerts.ts (channel enum), ticketing service for create/close
  • apps/web/src/components/alerts/ channel editor, apps/web/src/components/automations/AutomationForm.tsx

Reported By

stressedout9064 on Discord (#feature-suggestions / #general, 2026-08-28 and 2026-08-30) — extracted from #4984 and #4330.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions