Skip to content

Phone notifications

The mobile inbox uses curated event labels for the event types below. Task and workflow alerts use the listed fixed sentence; the project name is prefixed when available. Server Beat builds its body from the incident scope and summary. Backup labels are reserved in the client; no enqueue site currently sends these event types, so they have no built-in body or severity.

Event type Label Push sentence Severity When sent
task_started Task started Work on this task has started. info A task status changes to in progress.
task_blocked Task blocked Blocked. Open the task in HeyAira to see what is needed. error A task status changes to blocked.
task_completed Task completed Completed. The handoff lists the next step. attention A task status changes to done.
task_offer_unclaimed Task waiting Sent to the Mac, but not picked up yet. Open the task in HeyAira to see why. attention An offered execution remains unclaimed for five minutes.
task_publication_missing Not published Accepted, but no pull request yet. Open the task in HeyAira to see why. error Accepted work has no reported pull request after ten minutes.
task_checks_failed Checks failed Checks failed on the pull request. Open the task in HeyAira to see which. error CI fails for the current candidate.
backup_failed Backup failed Caller supplied; no built-in push sentence. not enqueued Reserved label; no current enqueue site.
backup_recovered Backup recovered Caller supplied; no built-in push sentence. not enqueued Reserved label; no current enqueue site.
server_beat_incident_opened Incident opened The incident scope and summary from Server Beat. error A monitored service goes down.
server_beat_incident_recovered Incident recovered The incident scope and summary from Server Beat. attention A monitored service recovers.
server_beat_incident_escalated Incident escalated The incident scope and summary from Server Beat. warning A continuing incident reaches escalation.

Labels and fixed task sentences are defined in src/heyaira/bridge.py; enqueue severities and triggers are defined at the task/workflow and Server Beat enqueue sites. python scripts/check_docs_contract.py checks that every curated event appears exactly once and that labels and fixed sentences match the runtime mappings. The checker reads literal runtime mappings from source, so it runs with the documentation-only dependencies used by CI.