Pre-mission Checklist Widget
Widget Type: rc-pre-mission-checklist

Runs a list of health checks before allowing the operator to trigger a mission action. The action button is enabled only when every check passes (unless an override is allowed).
Configuration
checks Array of health checks, using the same shape as the Healthcheck Widget:
id,name,source,sourceType(telemetryorservice),expression, optionaltimeoutMs, optionalpayload(forservicechecks).
action The action triggered when the user presses the button:
label: button labelservice(optional): service path to callpayload(optional): JSON-encoded payload for the service callmessages(optional): array of additional messages to publish — each withtarget, optionalpayload, optionalmeta(record of string→string)
enableOverride (optional) When true, the operator may run the action even if checks fail. Defaults to false.
Example
{
"checks": [
{
"id": "heartbeat",
"name": "Heartbeat",
"source": "/rocos/agent/telemetry/heartbeat",
"sourceType": "telemetry",
"expression": "(args) => !!args?.payload?.tim"
},
{
"id": "ping",
"name": "Ping",
"source": "/rocos/agent/ping",
"sourceType": "service",
"expression": "(args) => true",
"payload": "{}"
}
],
"action": {
"label": "Start mission",
"service": "/rocos/agent/startMission",
"payload": "{\"missionId\":\"abc\"}"
},
"enableOverride": false
}