{
  "type": "excalidraw",
  "version": 2,
  "source": "claude",
  "elements": [
    {
      "type": "text",
      "id": "title",
      "x": 200,
      "y": 20,
      "width": 500,
      "height": 70,
      "text": "Base Coat Bootstrap Flow",
      "fontSize": 28,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "left",
      "verticalAlign": "top"
    },
    {
      "type": "text",
      "id": "subtitle",
      "x": 200,
      "y": 88,
      "width": 500,
      "height": 35,
      "text": "scripts/bootstrap.ps1 — 4-phase idempotent setup",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "left",
      "verticalAlign": "top"
    },
    {
      "type": "ellipse",
      "id": "start",
      "x": 370,
      "y": 140,
      "width": 160,
      "height": 60,
      "strokeColor": "#2f9e44",
      "backgroundColor": "#b2f2bb",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "boundElements": [{ "type": "text", "id": "start-text" }]
    },
    {
      "type": "text",
      "id": "start-text",
      "x": 370,
      "y": 140,
      "width": 160,
      "height": 60,
      "text": "pwsh bootstrap.ps1",
      "fontSize": 13,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "start"
    },
    {
      "type": "arrow",
      "id": "arr-start-p1",
      "x": 450,
      "y": 200,
      "width": 0,
      "height": 30,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,30]]
    },
    {
      "type": "rectangle",
      "id": "phase1",
      "x": 280,
      "y": 230,
      "width": 340,
      "height": 80,
      "strokeColor": "#1864ab",
      "backgroundColor": "#a5d8ff",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "phase1-text" }]
    },
    {
      "type": "text",
      "id": "phase1-text",
      "x": 280,
      "y": 230,
      "width": 340,
      "height": 80,
      "text": "Phase 1 — Repo Setup\nVerify git, gh CLI · check repo structure\nValidate instructions/agents/skills/prompts",
      "fontSize": 13,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "phase1"
    },
    {
      "type": "arrow",
      "id": "arr-p1-p2",
      "x": 450,
      "y": 310,
      "width": 0,
      "height": 30,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,30]]
    },
    {
      "type": "rectangle",
      "id": "phase2",
      "x": 280,
      "y": 340,
      "width": 340,
      "height": 80,
      "strokeColor": "#e67700",
      "backgroundColor": "#fff3bf",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "phase2-text" }]
    },
    {
      "type": "text",
      "id": "phase2-text",
      "x": 280,
      "y": 340,
      "width": 340,
      "height": 80,
      "text": "Phase 2 — Memory Layer\nCheck memory-index.instructions.md\nOptional: create shared memory repo",
      "fontSize": 13,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "phase2"
    },
    {
      "type": "arrow",
      "id": "arr-p2-p3",
      "x": 450,
      "y": 420,
      "width": 0,
      "height": 30,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,30]]
    },
    {
      "type": "rectangle",
      "id": "phase3",
      "x": 280,
      "y": 450,
      "width": 340,
      "height": 80,
      "strokeColor": "#862e9c",
      "backgroundColor": "#f3d9fa",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "phase3-text" }]
    },
    {
      "type": "text",
      "id": "phase3-text",
      "x": 280,
      "y": 450,
      "width": 340,
      "height": 80,
      "text": "Phase 3 — Secrets Checklist\nVerify COPILOT_GITHUB_TOKEN\nCheck PRODUCTION_REPO_TOKEN",
      "fontSize": 13,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "phase3"
    },
    {
      "type": "arrow",
      "id": "arr-p3-p4",
      "x": 450,
      "y": 530,
      "width": 0,
      "height": 30,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,30]]
    },
    {
      "type": "rectangle",
      "id": "phase4",
      "x": 280,
      "y": 560,
      "width": 340,
      "height": 80,
      "strokeColor": "#0c8599",
      "backgroundColor": "#99e9f2",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "roundness": { "type": 3 },
      "boundElements": [{ "type": "text", "id": "phase4-text" }]
    },
    {
      "type": "text",
      "id": "phase4-text",
      "x": 280,
      "y": 560,
      "width": 340,
      "height": 80,
      "text": "Phase 4 — Validation\npwsh tests/run-tests.ps1\npwsh scripts/validate-basecoat.ps1",
      "fontSize": 13,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "phase4"
    },
    {
      "type": "arrow",
      "id": "arr-p4-end",
      "x": 450,
      "y": 640,
      "width": 0,
      "height": 30,
      "strokeColor": "#495057",
      "strokeWidth": 2,
      "points": [[0,0],[0,30]]
    },
    {
      "type": "ellipse",
      "id": "end-pass",
      "x": 310,
      "y": 670,
      "width": 160,
      "height": 60,
      "strokeColor": "#2f9e44",
      "backgroundColor": "#b2f2bb",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "boundElements": [{ "type": "text", "id": "end-pass-text" }]
    },
    {
      "type": "text",
      "id": "end-pass-text",
      "x": 310,
      "y": 670,
      "width": 160,
      "height": 60,
      "text": "✅ Ready",
      "fontSize": 16,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "end-pass"
    },
    {
      "type": "ellipse",
      "id": "end-fail",
      "x": 490,
      "y": 670,
      "width": 160,
      "height": 60,
      "strokeColor": "#c92a2a",
      "backgroundColor": "#ffc9c9",
      "fillStyle": "hachure",
      "strokeWidth": 2,
      "boundElements": [{ "type": "text", "id": "end-fail-text" }]
    },
    {
      "type": "text",
      "id": "end-fail-text",
      "x": 490,
      "y": 670,
      "width": 160,
      "height": 60,
      "text": "❌ Fix errors\nexit code 1",
      "fontSize": 14,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "end-fail"
    },
    {
      "type": "text",
      "id": "flags-label",
      "x": 40,
      "y": 310,
      "width": 220,
      "height": 100,
      "text": "Flags:\n-Silent  (no prompts)\n-SkipTests\n-SharedMemoryRepo",
      "fontSize": 13,
      "fontFamily": 3,
      "strokeColor": "#000000",
      "textAlign": "left",
      "verticalAlign": "top"
    },
    {
      "type": "text",
      "id": "idempotent-label",
      "x": 640,
      "y": 370,
      "width": 240,
      "height": 60,
      "text": "All phases are idempotent\n— safe to re-run anytime",
      "fontSize": 13,
      "fontFamily": 1,
      "strokeColor": "#000000",
      "textAlign": "left",
      "verticalAlign": "top"
    }
  ],
  "appState": { "viewBackgroundColor": "#ffffff" }
}
