Skip to content

dev.agentpod.checks.waiting.v2

The card an escalation of overdue checks posts, so a suite client can offer Override on each pending or failed check. An override references this event. Readers ignore properties they do not know. x-uniqueBy lists paths whose values must not repeat (JSON Schema cannot say so): a[].b is field b of each item of list a.

An m.room.message whose content carries suite_event_type: "dev.agentpod.checks.waiting.v2".

The carrier is whichever service carries the board’s chat: AgentPod’s hub, or SuperExchange for a board that has moved to it.

Field Type Required Description Constraints
msgtype "m.text" yes
body string yes
suite_event_type "dev.agentpod.checks.waiting.v2" yes
schema_version integer yes at least 1
board_id string yes at least 1 character
card_id string yes at least 1 character
card_title string yes at most 120 characters
stage_key string yes
checks array of object yes at least 1 item; at most 5 items
checks[].name string yes pattern ^[^/\s]([^/]*[^/\s])?$; at least 1 character; at most 40 characters
checks[].provider one of "ci", "verdict" yes
checks[].status one of "pending", "passed", "failed", "overridden" yes
checks[].url string no pattern ^https://[^\s<>]+$; at most 2048 characters
deep_link string no

x-uniqueBy: the values at these paths must not repeat, the one rule JSON Schema cannot state. a[].b is field b of each item of list a.

  • checks[].name

From fixtures/matrix-events/examples.json, case “checks: a CI check passed and a verdict still pending past the stage’s timeout”:

{
"msgtype": "m.text",
"body": "Checks overdue on “Ship the release” at Review: build (CI) ✓, quality (verdict) pending. A workspace owner or admin may override a check, with a comment. [Open the card](https://superpipeline.dev/b/brd_7c1f/c/crd_8a40)",
"suite_event_type": "dev.agentpod.checks.waiting.v2",
"schema_version": 1,
"board_id": "brd_7c1f",
"card_id": "crd_8a40",
"card_title": "Ship the release",
"stage_key": "review",
"checks": [
{
"name": "build",
"provider": "ci",
"status": "passed",
"url": "https://forge.example/acme/app/actions/runs/412"
},
{
"name": "quality",
"provider": "verdict",
"status": "pending"
}
],
"deep_link": "https://superpipeline.dev/b/brd_7c1f/c/crd_8a40"
}

The corpus has 2 valid cases in all:

built: two checks overdue
{
"msgtype": "m.text",
"body": "Checks overdue on “Ship it” at Review: build (CI) pending, claims (verdict) failed. A workspace owner or admin may override a check, with a comment. [Open the card](https://superpipeline.dev/b/brd_7c1f/c/crd_6b40)",
"suite_event_type": "dev.agentpod.checks.waiting.v2",
"schema_version": 1,
"board_id": "brd_7c1f",
"card_id": "crd_6b40",
"card_title": "Ship it",
"stage_key": "review",
"checks": [
{
"name": "build",
"provider": "ci",
"status": "pending"
},
{
"name": "claims",
"provider": "verdict",
"status": "failed"
}
],
"deep_link": "https://superpipeline.dev/b/brd_7c1f/c/crd_6b40"
}

Each of these must fail. The corpus says why:

  • no checks: there is nothing to override (refused by schema)
  • six checks: a stage has at most five (refused by schema)
  • one check twice (refused by unique)