Confirmed named-trigger omission in multi-alert batches
Reviewed master at 886c36d8ebe861aa987059a1744d45b78797baae (v4.7.0). Suggested priority: P2.
Grafana's parser preserves all alerts in a webhook batch, but the webhook scheduling event takes alert_name only from the first item. The scheduler matcher compares a configured name filter only against that scalar.
Isolated reproduction
Parse a valid batch with names FIRST and SECOND; construct the handler's event and evaluate a trigger with source=grafana, alert_name=SECOND.
parsed names: ['FIRST', 'SECOND']
event alert_name: FIRST
SECOND named trigger: false
catch-all Grafana trigger: true
Independently reproduced three times from pinned parser/matcher code. No Grafana endpoint, schedule or live channel was used.
Impact / expected behavior
A schedule configured for a named alert misses that alert solely because another alert precedes it in the same valid payload. This is not a claim that all Grafana triggering is broken; catch-all and first-item matches still work.
Acceptance criteria
- Evaluate named filters against all applicable alerts in the received batch.
- Explicitly define once-per-batch versus once-per-matching-alert execution; avoid multiplying catch-all actions accidentally.
- Preserve AND matching and clarify which alert provides severity/instance metadata.
- Test matching second/later alerts, repeated matching alerts and catch-all schedules.
Behavior change: previously missed named alerts activate their schedules; batch cardinality needs a documented decision. No source changes were made.
Confirmed named-trigger omission in multi-alert batches
Reviewed
masterat886c36d8ebe861aa987059a1744d45b78797baae(v4.7.0). Suggested priority: P2.Grafana's parser preserves all alerts in a webhook batch, but the webhook scheduling event takes
alert_nameonly from the first item. The scheduler matcher compares a configured name filter only against that scalar.Isolated reproduction
Parse a valid batch with names
FIRSTandSECOND; construct the handler's event and evaluate a trigger withsource=grafana, alert_name=SECOND.Independently reproduced three times from pinned parser/matcher code. No Grafana endpoint, schedule or live channel was used.
Impact / expected behavior
A schedule configured for a named alert misses that alert solely because another alert precedes it in the same valid payload. This is not a claim that all Grafana triggering is broken; catch-all and first-item matches still work.
Acceptance criteria
Behavior change: previously missed named alerts activate their schedules; batch cardinality needs a documented decision. No source changes were made.