dev.agentpod.check.overridden.v2
The structured half of an override’s notice: a workspace owner or admin passed a check by hand, with a comment. overridden_by is a label, never a principal id. Readers ignore properties they do not know.
How it rides
Section titled “How it rides”Content that carries suite_event_type: "dev.agentpod.check.overridden.v2".
Who sends it, who reads it
Section titled “Who sends it, who reads it”- Sent by AgentPod, SuperExchange.
- Read by SuperMessage.
The carrier is whichever service carries the board’s chat: AgentPod’s hub, or SuperExchange for a board that has moved to it.
Fields
Section titled “Fields”| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
suite_event_type |
"dev.agentpod.check.overridden.v2" |
yes | ||
schema_version |
integer | yes | at least 1 | |
board_id |
string | yes | at least 1 character; at most 200 characters | |
card_id |
string | yes | at least 1 character; at most 200 characters | |
card_title |
string | no | at most 120 characters | |
stage_key |
string | yes | at least 1 character; at most 200 characters | |
check |
yes | |||
overridden_by |
string or null | yes | ||
comment |
string | yes | pattern \S |
|
at |
string | yes | pattern ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(:\d{2}(\.\d{1,9})?)?(Z|[+-]\d{2}:\d{2})$; at most 40 characters |
|
m.relates_to |
object | no | ||
m.relates_to.rel_type |
"m.reference" |
yes | ||
m.relates_to.event_id |
string | yes | at least 1 character |
Example
Section titled “Example”From fixtures/matrix-events/examples.json, case “checks: overridden from the checks.waiting card”:
{ "suite_event_type": "dev.agentpod.check.overridden.v2", "schema_version": 1, "board_id": "brd_7c1f", "card_id": "crd_8a40", "card_title": "Ship the release", "stage_key": "review", "check": { "name": "quality", "provider": "verdict", "status": "overridden" }, "overridden_by": "rakesh", "comment": "the grader is down; read it myself", "at": "2026-11-09T12:10:00.000Z", "m.relates_to": { "rel_type": "m.reference", "event_id": "$checksWaitingEventId" }}The corpus has 2 valid cases in all:
built: an override with a comment
{ "suite_event_type": "dev.agentpod.check.overridden.v2", "schema_version": 1, "board_id": "brd_7c1f", "card_id": "crd_6b40", "card_title": "Ship it", "stage_key": "review", "check": { "name": "claims", "provider": "verdict", "status": "overridden" }, "overridden_by": "rakesh", "comment": "flaky runner", "at": "2030-01-01T09:00:00.000Z", "m.relates_to": { "rel_type": "m.reference", "event_id": "$checksWaiting" }}Refused
Section titled “Refused”Each of these must fail. The corpus says why:
- a blank comment: an override needs a reason (refused by
schema) - a check still failed: this notice is for an override (refused by
schema)
Source
Section titled “Source”- Schema:
schemas/matrix/dev.agentpod.check.overridden.v2.json - In the package:
import schema from "@superjackfruitlabs/treaty-matrix-events/schemas/dev.agentpod.check.overridden.v2.json" with { type: "json" };