Skip to main content

Pre-mission Checklist Widget

Widget Type: rc-pre-mission-checklist

Pre-mission Checklist Widget

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 (telemetry or service), expression, optional timeoutMs, optional payload (for service checks).

action The action triggered when the user presses the button:

  • label: button label
  • service (optional): service path to call
  • payload (optional): JSON-encoded payload for the service call
  • messages (optional): array of additional messages to publish — each with target, optional payload, optional meta (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
}