id: agent-red-tick name: "Starter agent reachability failing" owner: "@oss" signal: dimension: agent triggers: - green_to_red - sustained_red - red_to_green conditions: escalations: - whenFailCount: 4 mention: "!channel" severity: critical guards: - minDeployAgeMin: 20 rate_limit: perKey: "{{signal.slug}}:{{triggerName}}" window: 15m suppress: when: 'trigger == "sustained_red" && lastAlertAgeMin < 15' targets: - kind: slack_webhook webhook: oss_alerts # errorDesc is pre-sanitized in showcase/harness/src/probes/drivers/sanitize.ts # โ€” triple-brace intentional so literal characters survive to Slack. template: text: | {{#trigger.green_to_red}}:red_circle: *{{signal.slug}}* โ€” agent unreachable, error: {{{signal.errorDesc}}}{{/trigger.green_to_red}} {{#trigger.sustained_red}}:red_circle: *{{signal.slug}}* โ€” agent attempt: {{signal.failCount}}, error: {{{signal.errorDesc}}}{{/trigger.sustained_red}} {{#trigger.red_to_green}}:white_check_mark: *{{signal.slug}}* agent recovered (was down since {{signal.firstFailureAt}}){{/trigger.red_to_green}} <{{{env.dashboardUrl}}}|Showcase>{{#event.runId}} ยท <{{{env.dashboardUrl}}}/runs/{{{event.runId}}}|Run>{{/event.runId}}