dev.superpipeline.delivery.answer.v2
A person’s answer to a delivery.v2: record_live_url with the https link as text, or switch_to_automatic, referencing the follow-up’s message. Readers ignore properties they do not know.
How it rides
Section titled “How it rides”An m.room.message whose content carries suite_event_type: "dev.superpipeline.delivery.answer.v2".
Who sends it, who reads it
Section titled “Who sends it, who reads it”- Sent by SuperMessage.
- Read by AgentPod, SuperExchange.
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 |
|---|---|---|---|---|
msgtype |
"m.text" |
yes | ||
body |
string | yes | ||
schema_version |
integer | yes | at least 1 | |
suite_event_type |
"dev.superpipeline.delivery.answer.v2" |
yes | ||
gate_id |
string | yes | at least 1 character; at most 200 characters | |
option_id |
one of "record_live_url", "switch_to_automatic" |
yes | ||
text |
string | no | at most 2000 characters | |
m.relates_to |
object | yes | ||
m.relates_to.rel_type |
"m.reference" |
yes | ||
m.relates_to.event_id |
string | yes | at least 1 character |
The schema also states these rules across fields, as written:
{ "allOf": [ { "if": { "properties": { "option_id": { "const": "record_live_url" } } }, "then": { "required": [ "text" ], "properties": { "text": { "type": "string", "pattern": "^https://[^\\s<>]+$" } } } } ]}Example
Section titled “Example”From fixtures/matrix-events/examples.json, case “the live link, as an https URL”:
{ "msgtype": "m.text", "body": "Live at https://social.example/posts/1", "schema_version": 1, "suite_event_type": "dev.superpipeline.delivery.answer.v2", "gate_id": "gate_8f3a", "option_id": "record_live_url", "text": "https://social.example/posts/1", "m.relates_to": { "rel_type": "m.reference", "event_id": "$deliveryEventId" }}The corpus has 2 valid cases in all:
switching to automatic delivery on a complete preview
{ "msgtype": "m.text", "body": "Post it automatically", "schema_version": 1, "suite_event_type": "dev.superpipeline.delivery.answer.v2", "gate_id": "gate_8f3a", "option_id": "switch_to_automatic", "m.relates_to": { "rel_type": "m.reference", "event_id": "$deliveryEventId" }}Refused
Section titled “Refused”Each of these must fail. The corpus says why:
- a link that is not https (refused by
schema) - recording the live link with no link (refused by
schema) - an option the follow-up did not offer (refused by
schema) - switching to automatic delivery on a follow-up whose preview was incomplete (refused by
recorded) - no m.relates_to, exactly as for a gate decision (refused by
schema)
Source
Section titled “Source”- Schema:
schemas/matrix/dev.superpipeline.delivery.answer.v2.json - In the package:
import schema from "@superjackfruitlabs/treaty-matrix-events/schemas/dev.superpipeline.delivery.answer.v2.json" with { type: "json" };