{
  "type": "excalidraw",
  "version": 2,
  "source": "claude",
  "elements": [
    {
      "type": "text",
      "id": "title",
      "x": 60,
      "y": 20,
      "width": 1300,
      "height": 70,
      "text": "Task Scope Validator — Decision Tree and Dispatch Policy",
      "fontSize": 28,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "left",
      "verticalAlign": "top"
    },
    {
      "type": "text",
      "id": "subtitle",
      "x": 60,
      "y": 88,
      "width": 1400,
      "height": 35,
      "text": "Pre-dispatch classification for explore, task, and general-purpose routing",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "left",
      "verticalAlign": "top"
    },
    {
      "type": "rectangle",
      "id": "validation-panel",
      "x": 40,
      "y": 130,
      "width": 700,
      "height": 560,
      "strokeColor": "#0b7285",
      "backgroundColor": "transparent",
      "fillStyle": "solid",
      "strokeWidth": 2,
      "roundness": { "type": 3 }
    },
    {
      "type": "text",
      "id": "validation-panel-title",
      "x": 70,
      "y": 150,
      "width": 420,
      "height": 30,
      "text": "1) Decision tree: collect findings before disposition",
      "fontSize": 15,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "left",
      "verticalAlign": "top"
    },
    {
      "type": "ellipse",
      "id": "prompt",
      "x": 240,
      "y": 190,
      "width": 260,
      "height": 70,
      "strokeColor": "#1864ab",
      "backgroundColor": "#a5d8ff",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "boundElements": [{ "type": "text", "id": "prompt-text" }]
    },
    {
      "type": "text",
      "id": "prompt-text",
      "x": 240,
      "y": 190,
      "width": 260,
      "height": 70,
      "text": "Task prompt\nand constraints",
      "fontSize": 15,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "prompt"
    },
    {
      "type": "arrow",
      "id": "a1",
      "x": 370,
      "y": 260,
      "width": 0,
      "height": 30,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,30]]
    },
    {
      "type": "rectangle",
      "id": "parse",
      "x": 170,
      "y": 290,
      "width": 400,
      "height": 60,
      "strokeColor": "#495057",
      "backgroundColor": "#dee2e6",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "parse-text" }]
    },
    {
      "type": "text",
      "id": "parse-text",
      "x": 170,
      "y": 290,
      "width": 400,
      "height": 60,
      "text": "Parse and normalize\nsummary, objectives, success criteria, intended agent",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "parse"
    },
    {
      "type": "arrow",
      "id": "a2",
      "x": 370,
      "y": 350,
      "width": 0,
      "height": 30,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,30]]
    },
    {
      "type": "rectangle",
      "id": "check1",
      "x": 120,
      "y": 380,
      "width": 500,
      "height": 60,
      "strokeColor": "#0b7285",
      "backgroundColor": "#c5f6fa",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "check1-text" }]
    },
    {
      "type": "text",
      "id": "check1-text",
      "x": 120,
      "y": 380,
      "width": 500,
      "height": 60,
      "text": "Check 1 — single issue / single outcome",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "check1"
    },
    {
      "type": "arrow",
      "id": "a3",
      "x": 370,
      "y": 440,
      "width": 0,
      "height": 24,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,24]]
    },
    {
      "type": "rectangle",
      "id": "check2",
      "x": 120,
      "y": 464,
      "width": 500,
      "height": 60,
      "strokeColor": "#0b7285",
      "backgroundColor": "#c5f6fa",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "check2-text" }]
    },
    {
      "type": "text",
      "id": "check2-text",
      "x": 120,
      "y": 464,
      "width": 500,
      "height": 60,
      "text": "Check 2 — deterministic path",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "check2"
    },
    {
      "type": "arrow",
      "id": "a4",
      "x": 370,
      "y": 524,
      "width": 0,
      "height": 24,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,24]]
    },
    {
      "type": "rectangle",
      "id": "check3",
      "x": 120,
      "y": 548,
      "width": 500,
      "height": 60,
      "strokeColor": "#0b7285",
      "backgroundColor": "#c5f6fa",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "check3-text" }]
    },
    {
      "type": "text",
      "id": "check3-text",
      "x": 120,
      "y": 548,
      "width": 500,
      "height": 60,
      "text": "Check 3 — success measurable",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "check3"
    },
    {
      "type": "arrow",
      "id": "a5",
      "x": 370,
      "y": 608,
      "width": 0,
      "height": 24,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,24]]
    },
    {
      "type": "rectangle",
      "id": "check4",
      "x": 80,
      "y": 632,
      "width": 580,
      "height": 42,
      "strokeColor": "#e67700",
      "backgroundColor": "#ffe8cc",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "check4-text" }]
    },
    {
      "type": "text",
      "id": "check4-text",
      "x": 80,
      "y": 632,
      "width": 580,
      "height": 42,
      "text": "Check 4 — time bound (< 5 min explore, < 60 min task/general-purpose)",
      "fontSize": 13,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "check4"
    },
    {
      "type": "arrow",
      "id": "a6",
      "x": 370,
      "y": 674,
      "width": 0,
      "height": 26,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,26]]
    },
    {
      "type": "rectangle",
      "id": "decision",
      "x": 170,
      "y": 700,
      "width": 400,
      "height": 70,
      "strokeColor": "#862e9c",
      "backgroundColor": "#f3d9fa",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "decision-text" }]
    },
    {
      "type": "text",
      "id": "decision-text",
      "x": 170,
      "y": 700,
      "width": 400,
      "height": 70,
      "text": "Collect findings, then classify\n`automatable` | `gather-findings-only` | `defer`",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "decision"
    },
    {
      "type": "rectangle",
      "id": "dispatch-panel",
      "x": 780,
      "y": 130,
      "width": 520,
      "height": 560,
      "strokeColor": "#2f9e44",
      "backgroundColor": "transparent",
      "fillStyle": "solid",
      "strokeWidth": 2,
      "roundness": { "type": 3 }
    },
    {
      "type": "text",
      "id": "dispatch-panel-title",
      "x": 810,
      "y": 150,
      "width": 420,
      "height": 30,
      "text": "2) Dispatch policy: route by classification and confidence",
      "fontSize": 15,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "left",
      "verticalAlign": "top"
    },
    {
      "type": "rectangle",
      "id": "band-box",
      "x": 830,
      "y": 200,
      "width": 420,
      "height": 92,
      "strokeColor": "#e67700",
      "backgroundColor": "#fff3bf",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "band-text" }]
    },
    {
      "type": "text",
      "id": "band-text",
      "x": 830,
      "y": 200,
      "width": 420,
      "height": 92,
      "text": "Classification + confidence → approved_for_dispatch + recommended_agent\nautomatable >= 0.8: approved_for_dispatch true · task or general-purpose\ngather-findings-only 0.6-0.79: approved_for_dispatch true · explore only\ndefer or < 0.6: approved_for_dispatch false · escalate",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "band-box"
    },
    {
      "type": "arrow",
      "id": "d1",
      "x": 1030,
      "y": 292,
      "width": 0,
      "height": 42,
      "strokeColor": "#2f9e44",
      "strokeWidth": 2,
      "points": [[0,0],[0,42]]
    },
    {
      "type": "rectangle",
      "id": "task-box",
      "x": 830,
      "y": 334,
      "width": 420,
      "height": 74,
      "strokeColor": "#2f9e44",
      "backgroundColor": "#b2f2bb",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "task-text" }]
    },
    {
      "type": "text",
      "id": "task-text",
      "x": 830,
      "y": 334,
      "width": 420,
      "height": 74,
      "text": "Automatable\nDispatch to `task` or `general-purpose` agent",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "task-box"
    },
    {
      "type": "arrow",
      "id": "d2",
      "x": 1030,
      "y": 408,
      "width": 0,
      "height": 34,
      "strokeColor": "#fab005",
      "strokeWidth": 2,
      "points": [[0,0],[0,34]]
    },
    {
      "type": "rectangle",
      "id": "explore-box",
      "x": 830,
      "y": 442,
      "width": 420,
      "height": 74,
      "strokeColor": "#fab005",
      "backgroundColor": "#fff3bf",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "explore-text" }]
    },
    {
      "type": "text",
      "id": "explore-text",
      "x": 830,
      "y": 442,
      "width": 420,
      "height": 74,
      "text": "Gather-findings-only\nDispatch to `explore` agent",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "explore-box"
    },
    {
      "type": "arrow",
      "id": "d3",
      "x": 1030,
      "y": 516,
      "width": 0,
      "height": 34,
      "strokeColor": "#e03131",
      "strokeWidth": 2,
      "points": [[0,0],[0,34]]
    },
    {
      "type": "rectangle",
      "id": "defer-box",
      "x": 830,
      "y": 550,
      "width": 420,
      "height": 74,
      "strokeColor": "#e03131",
      "backgroundColor": "#ffc9c9",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "defer-text" }]
    },
    {
      "type": "text",
      "id": "defer-text",
      "x": 830,
      "y": 550,
      "width": 420,
      "height": 74,
      "text": "Defer\nReturn refinement guidance or escalate",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "defer-box"
    },
    {
      "type": "text",
      "id": "note",
      "x": 70,
      "y": 760,
      "width": 1240,
      "height": 28,
      "text": "Policy: collect all findings before disposition; only dispatch once the scope check is complete.",
      "fontSize": 13,
      "fontFamily": 1,
      "strokeColor": "#495057",
      "textAlign": "left",
      "verticalAlign": "top"
    }
  ]
}
