Diagnostic workflow for failed debug runs and deployed case process runs. All commands require uip login.
--folder-keyis required forincident get. Mostinstancesubcommands accept--folder-key <FOLDER_KEY>and auto-detect from the authenticated folder if omitted, butincident getrequires it explicitly. Get the folder key fromuip orchestrator folder list --output jsonor from the job/process context.
Investigate in this order — each step adds context, stop when you have enough to diagnose the root cause:
- Incidents (error message + faulting element)
- Runtime variables (data state at failure)
- Case definition correlation (map element to
caseplan.jsonnode) - Traces (last resort — verbose full timeline)
The debug output (Data.instanceId) or job status response contains the instance ID. If you only have a job key:
uip maestro case job status <JOB_KEY> --output jsonParse the instance ID and folder key from the response.
No instance ID /
job statusfails → halt. Report job key to user; downstream steps need the instance ID.
Failed cases always have an incident. Start here — incidents give you the error category, message, and the faulting element.
uip maestro case instance incidents <INSTANCE_ID> --folder-key <FOLDER_KEY> --output jsonDrill into a specific incident for full detail:
uip maestro case incident get <INCIDENT_ID> --folder-key <FOLDER_KEY> --output jsonTo get a cross-process incident overview:
uip maestro case incident summary --output jsonFor all incidents on a specific case process:
uip maestro case processes incidents <PROCESS_KEY> --folder-key <FOLDER_KEY> --output jsonEmpty incidents → skip to Step 3. Invalid instance ID error → recheck Step 1 output.
Get the variable values at the time of failure to understand what data each stage/task was working with:
uip maestro case instance variables <INSTANCE_ID> --folder-key <FOLDER_KEY> --output jsonScope to a specific element (stage or task):
uip maestro case instance variables <INSTANCE_ID> --folder-key <FOLDER_KEY> --parent-element-id <ELEMENT_ID> --output jsonEmpty variables → skip to Step 4.
Use the incident's faulting element ID and the variable state to locate the failure point in caseplan.json. Map the element ID to the corresponding stage, task, edges etc., check its data.inputs[], upstream edges, and the variable values flowing into it.
If the local caseplan.json may differ from what was deployed, fetch the deployed case definition:
uip maestro case instance asset <INSTANCE_ID> --folder-key <FOLDER_KEY> --output json
instance assetfails → fall back to localcaseplan.json.
Additional instance inspection commands:
uip maestro case instance element-executions <INSTANCE_ID> --folder-key <FOLDER_KEY> --output json # per-element execution details
uip maestro case instance cursors <INSTANCE_ID> --folder-key <FOLDER_KEY> --output json # current execution cursor positionsTraces are verbose but contain the full execution timeline. Use them only when incidents and variables are insufficient:
uip maestro case job traces <JOB_KEY> --output json
uip maestro case job traces <JOB_KEY> --pretty # human-readable formAlways use CLI commands for troubleshooting — never call the underlying APIs directly.
- Stop early on root cause. Once a step yields actionable cause (error + faulting element + variable state), stop. Skip remaining steps.
- Empty result → next step. If a step returns empty/missing data, move to the next step. Do not retry the same command.
- One retry on transient failure (auth, network). Second failure: halt that step, continue.
- Max one full pass through Steps 1–5. No looping.
- Escalate to user if Steps 1–5 yield no root cause, or all paths blocked. Report: instance ID, folder key, incident IDs/messages, faulting element ID, variable snapshot. Do not propose
caseplan.jsonedits without confirmed cause.
For full flag tables and all subcommands, see case-commands.md:
uip maestro case instance— list/get/incidents/variables/asset/cursors/element-executions and lifecycle (pause/resume/cancel/retry/migrate/goto)uip maestro case incident—summary,getuip maestro case processes incidents <PROCESS_KEY>— all incidents on a processuip maestro case job—status,traces
Append --output json to any command whose output you parse.