# Notification rules Rule lifecycle - Create and update via Notify API or UI. - Worker evaluates rules per tenant and event. - Actions are queued with idempotency keys. - Delivery ledger references ruleId and actionId. Rule schema (summary) - ruleId, tenantId, name, enabled. - match filters for eventKinds, namespaces, labels, severity, verdicts. - VEX gates can include or exclude justifications. - actions define channel, template, digest window, throttle, locale. Match filters - eventKinds, namespaces, repositories, digests, labels. - minSeverity and kevOnly gates. - VEX justification allowlists when present. Actions, throttles, digests - actionId and channel are required. - digest windows: instant, 5m, 15m, 1h, 1d. - throttles prevent repeat deliveries for identical events. Related references - docs/notifications/rules.md - docs2/notifications/digests.md - docs2/notifications/templates.md