Files
Claude-Code-Workflow/ccw/docs-site/build/assets/js/fe8e3dcf.548de575.js
catlog22 c6093ef741 feat: add CLI Command Node and Prompt Node components for orchestrator
- Implemented CliCommandNode component for executing CLI tools with AI models.
- Implemented PromptNode component for constructing AI prompts with context.
- Added styling for mode and tool badges in both components.
- Enhanced user experience with command and argument previews, execution status, and error handling.

test: add comprehensive tests for ask_question tool

- Created direct test for ask_question tool execution.
- Developed end-to-end tests to validate ask_question tool integration with WebSocket and A2UI surfaces.
- Implemented simple and integrated WebSocket tests to ensure proper message handling and surface reception.
- Added tool registration test to verify ask_question tool is correctly registered.

chore: add WebSocket listener and simulation tests

- Added WebSocket listener for A2UI surfaces to facilitate testing.
- Implemented frontend simulation test to validate complete flow from backend to frontend.
- Created various test scripts to ensure robust testing of ask_question tool functionality.
2026-02-03 23:10:36 +08:00

1 line
20 KiB
JavaScript

"use strict";(globalThis.webpackChunkccw_docs=globalThis.webpackChunkccw_docs||[]).push([[971],{1105(e,r,n){n.r(r),n.d(r,{assets:()=>l,contentTitle:()=>o,default:()=>a,frontMatter:()=>c,metadata:()=>s,toc:()=>u});const s=JSON.parse('{"id":"commands/issue/issue-execute","title":"issue:execute","description":"Execute issue queue with DAG-based parallel orchestration","source":"@site/docs/commands/issue/issue-execute.md","sourceDirName":"commands/issue","slug":"/commands/issue/issue-execute","permalink":"/docs/docs/commands/issue/issue-execute","draft":false,"unlisted":false,"editUrl":"https://github.com/ccw/docs/tree/main/docs/commands/issue/issue-execute.md","tags":[],"version":"current","sidebarPosition":5,"frontMatter":{"title":"issue:execute","sidebar_label":"issue:execute","sidebar_position":5,"description":"Execute issue queue with DAG-based parallel orchestration"},"sidebar":"docs","previous":{"title":"issue:queue","permalink":"/docs/docs/commands/issue/issue-queue"},"next":{"title":"issue:from-brainstorm","permalink":"/docs/docs/commands/issue/issue-from-brainstorm"}}');var t=n(2540),i=n(1184);const c={title:"issue:execute",sidebar_label:"issue:execute",sidebar_position:5,description:"Execute issue queue with DAG-based parallel orchestration"},o="issue",l={},u=[{value:"Description",id:"description",level:2},{value:"Key Features",id:"key-features",level:3},{value:"Usage",id:"usage",level:2},{value:"Arguments",id:"arguments",level:3},{value:"Executor Selection",id:"executor-selection",level:3},{value:"Examples",id:"examples",level:2},{value:"Execute Queue (Interactive)",id:"execute-queue-interactive",level:3},{value:"Queue ID Not Provided",id:"queue-id-not-provided",level:3},{value:"Execute with Worktree",id:"execute-with-worktree",level:3},{value:"Resume Existing Worktree",id:"resume-existing-worktree",level:3},{value:"Issue Lifecycle Flow",id:"issue-lifecycle-flow",level:2},{value:"Execution Model",id:"execution-model",level:2},{value:"DAG-Based Batching",id:"dag-based-batching",level:3},{value:"Solution Execution (Within Executor)",id:"solution-execution-within-executor",level:3},{value:"Executor Dispatch",id:"executor-dispatch",level:2},{value:"Codex Executor",id:"codex-executor",level:3},{value:"Gemini Executor",id:"gemini-executor",level:3},{value:"Agent Executor",id:"agent-executor",level:3},{value:"Worktree Management",id:"worktree-management",level:2},{value:"Create New Worktree",id:"create-new-worktree",level:3},{value:"Resume Existing Worktree",id:"resume-existing-worktree-1",level:3},{value:"Worktree Completion",id:"worktree-completion",level:3},{value:"CLI Endpoints",id:"cli-endpoints",level:2},{value:"Queue Operations",id:"queue-operations",level:3},{value:"Solution Operations",id:"solution-operations",level:3},{value:"Commit Message Format",id:"commit-message-format",level:2},{value:"Related Commands",id:"related-commands",level:2},{value:"Best Practices",id:"best-practices",level:2},{value:"Troubleshooting",id:"troubleshooting",level:2}];function d(e){const r={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",mermaid:"mermaid",ol:"ol",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,i.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(r.header,{children:(0,t.jsxs)(r.h1,{id:"issue",children:["issue",":execute"]})}),"\n",(0,t.jsx)(r.p,{children:"Minimal orchestrator that dispatches solution IDs to executors. Each executor receives a complete solution with all tasks and commits once per solution."}),"\n",(0,t.jsx)(r.h2,{id:"description",children:"Description"}),"\n",(0,t.jsxs)(r.p,{children:["The ",(0,t.jsx)(r.code,{children:"issue:execute"})," command executes queued solutions using DAG-based parallel orchestration. Each executor receives a complete solution with all tasks, executes tasks sequentially, and commits once per solution. Supports optional git worktree isolation for clean workspace management."]}),"\n",(0,t.jsx)(r.h3,{id:"key-features",children:"Key Features"}),"\n",(0,t.jsxs)(r.ul,{children:["\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"DAG-based parallelism"}),": Automatic parallel execution of independent solutions"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Solution-level execution"}),": Each executor handles all tasks in a solution"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Single commit per solution"}),": Clean git history with formatted summaries"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Worktree isolation"}),": Optional isolated workspace for queue execution"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Multiple executors"}),": Codex, Gemini, or Agent support"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Resume capability"}),": Recover from interruptions with existing worktree"]}),"\n"]}),"\n",(0,t.jsx)(r.h2,{id:"usage",children:"Usage"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:"# Execute specific queue (REQUIRED)\r\n/issue:execute --queue QUE-xxx\r\n\r\n# Execute in isolated worktree\r\n/issue:execute --queue QUE-xxx --worktree\r\n\r\n# Resume in existing worktree\r\n/issue:execute --queue QUE-xxx --worktree /path/to/worktree\r\n\r\n# Dry-run (show DAG without executing)\r\n/issue:execute --queue QUE-xxx\r\n# Select: Dry-run mode\n"})}),"\n",(0,t.jsx)(r.h3,{id:"arguments",children:"Arguments"}),"\n",(0,t.jsxs)(r.table,{children:[(0,t.jsx)(r.thead,{children:(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.th,{children:"Argument"}),(0,t.jsx)(r.th,{children:"Required"}),(0,t.jsx)(r.th,{children:"Description"})]})}),(0,t.jsxs)(r.tbody,{children:[(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"--queue &lt;id&gt;"})}),(0,t.jsx)(r.td,{children:"Yes"}),(0,t.jsx)(r.td,{children:"Queue ID to execute (required)"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"--worktree"})}),(0,t.jsx)(r.td,{children:"No"}),(0,t.jsx)(r.td,{children:"Create isolated worktree for execution"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:(0,t.jsx)(r.code,{children:"--worktree &lt;path&gt;"})}),(0,t.jsx)(r.td,{children:"No"}),(0,t.jsx)(r.td,{children:"Resume in existing worktree"})]})]})]}),"\n",(0,t.jsx)(r.h3,{id:"executor-selection",children:"Executor Selection"}),"\n",(0,t.jsx)(r.p,{children:"Interactive prompt selects:"}),"\n",(0,t.jsxs)(r.ul,{children:["\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Codex"})," (Recommended): Autonomous coding with 2hr timeout"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Gemini"}),": Large context analysis and implementation"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Agent"}),": Claude Code sub-agent for complex tasks"]}),"\n"]}),"\n",(0,t.jsx)(r.h2,{id:"examples",children:"Examples"}),"\n",(0,t.jsx)(r.h3,{id:"execute-queue-interactive",children:"Execute Queue (Interactive)"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:"/issue:execute --queue QUE-20251227-143000\r\n# Output:\r\n# ## Executing Queue: QUE-20251227-143000\r\n# ## Queue DAG (Solution-Level)\r\n# - Total Solutions: 5\r\n# - Ready: 2\r\n# - Completed: 0\r\n# - Parallel in batch 1: 2\r\n#\r\n# Select executor:\r\n# [1] Codex (Recommended)\r\n# [2] Gemini\r\n# [3] Agent\r\n# Select mode:\r\n# [1] Execute (Recommended)\r\n# [2] Dry-run\r\n# Use git worktree?\r\n# [1] Yes (Recommended)\r\n# [2] No\n"})}),"\n",(0,t.jsx)(r.h3,{id:"queue-id-not-provided",children:"Queue ID Not Provided"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:"/issue:execute\r\n# Output:\r\n# Available Queues:\r\n# ID Status Progress Issues\r\n# -----------------------------------------------------------\r\n# \u2192 QUE-20251215-001 active 3/10 ISS-001, ISS-002\r\n# QUE-20251210-002 active 0/5 ISS-003\r\n# QUE-20251205-003 completed 8/8 ISS-004\r\n#\r\n# Which queue would you like to execute?\r\n# [1] QUE-20251215-001 - 3/10 completed, Issues: ISS-001, ISS-002\r\n# [2] QUE-20251210-002 - 0/5 completed, Issues: ISS-003\n"})}),"\n",(0,t.jsx)(r.h3,{id:"execute-with-worktree",children:"Execute with Worktree"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:"/issue:execute --queue QUE-xxx --worktree\r\n# Output:\r\n# Created queue worktree: /repo/.ccw/worktrees/queue-exec-QUE-xxx\r\n# Branch: queue-exec-QUE-xxx\r\n# ### Executing Solutions (DAG batch 1): S-1, S-2\r\n# [S-1] Executor launched (codex, 2hr timeout)\r\n# [S-2] Executor launched (codex, 2hr timeout)\r\n# \u2713 S-1 completed: 3 tasks, 1 commit\r\n# \u2713 S-2 completed: 2 tasks, 1 commit\n"})}),"\n",(0,t.jsx)(r.h3,{id:"resume-existing-worktree",children:"Resume Existing Worktree"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:"# Find existing worktrees\r\ngit worktree list\r\n# /repo/.ccw/worktrees/queue-exec-QUE-123\r\n\r\n# Resume execution\r\n/issue:execute --queue QUE-123 --worktree /repo/.ccw/worktrees/queue-exec-QUE-123\r\n# Output:\r\n# Resuming in existing worktree: /repo/.ccw/worktrees/queue-exec-QUE-123\r\n# Branch: queue-exec-QUE-123\r\n# ### Executing Solutions (DAG batch 2): S-3\n"})}),"\n",(0,t.jsx)(r.h2,{id:"issue-lifecycle-flow",children:"Issue Lifecycle Flow"}),"\n",(0,t.jsx)(r.mermaid,{value:"graph TB\r\n A[Start] --\x3e B{Queue ID\r\nProvided?}\r\n B --\x3e|No| C[List Queues]\r\n B --\x3e|Yes| D[Validate Queue]\r\n C --\x3e E[User Selects]\r\n E --\x3e D\r\n D --\x3e F{Use\r\nWorktree?}\r\n F --\x3e|Yes| G[Create/Resume\r\nWorktree]\r\n F --\x3e|No| H[Main Workspace]\r\n G --\x3e I[Get DAG]\r\n H --\x3e I\r\n I --\x3e J[Parallel Batches]\r\n J --\x3e K[Dispatch Batch 1]\r\n K --\x3e L1[Executor 1:\r\nS-1 Detail]\r\n K --\x3e L2[Executor 2:\r\nS-2 Detail]\r\n K --\x3e L3[Executor N:\r\nS-N Detail]\r\n L1 --\x3e M1[Execute All Tasks]\r\n L2 --\x3e M2[Execute All Tasks]\r\n L3 --\x3e M3[Execute All Tasks]\r\n M1 --\x3e N1[Commit Once]\r\n M2 --\x3e N2[Commit Once]\r\n M3 --\x3e N3[Commit Once]\r\n N1 --\x3e O[Mark Done]\r\n N2 --\x3e O\r\n N3 --\x3e O\r\n O --\x3e P{More Batches?}\r\n P --\x3e|Yes| I\r\n P --\x3e|No| Q{Worktree\r\nUsed?}\r\n Q --\x3e|Yes| R{All Complete?}\r\n Q --\x3e|No| S[Done]\r\n R --\x3e|Yes| T[Merge Strategy]\r\n R --\x3e|No| I\r\n T --\x3e U1[Create PR]\r\n T --\x3e U2[Merge Main]\r\n T --\x3e U3[Keep Branch]"}),"\n",(0,t.jsx)(r.h2,{id:"execution-model",children:"Execution Model"}),"\n",(0,t.jsx)(r.h3,{id:"dag-based-batching",children:"DAG-Based Batching"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{children:"Batch 1 (Parallel): S-1, S-2 \u2192 No file conflicts\r\nBatch 2 (Parallel): S-3, S-4 \u2192 No conflicts, waits for Batch 1\r\nBatch 3 (Sequential): S-5 \u2192 Depends on S-3\n"})}),"\n",(0,t.jsx)(r.h3,{id:"solution-execution-within-executor",children:"Solution Execution (Within Executor)"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{children:"ccw issue detail S-1 \u2192 Get full solution with all tasks\r\n\u2193\r\nFor each task T1, T2, T3...:\r\n - Follow implementation steps\r\n - Run test commands\r\n - Verify acceptance criteria\r\n\u2193\r\nAfter ALL tasks pass:\r\n git commit -m \"feat(scope): summary\r\n\r\n Solution: S-1\r\n Tasks completed: T1, T2, T3\r\n\r\n Changes:\r\n - file1: what changed\r\n - file2: what changed\r\n\r\n Verified: all tests passed\"\r\n\u2193\r\nccw issue done S-1 --result '{summary, files, commit}'\n"})}),"\n",(0,t.jsx)(r.h2,{id:"executor-dispatch",children:"Executor Dispatch"}),"\n",(0,t.jsx)(r.h3,{id:"codex-executor",children:"Codex Executor"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:'ccw cli -p "## Execute Solution: S-1\r\n..." --tool codex --mode write --id exec-S-1\r\n# Timeout: 2 hours (7200000ms)\r\n# Background: true\n'})}),"\n",(0,t.jsx)(r.h3,{id:"gemini-executor",children:"Gemini Executor"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:'ccw cli -p "## Execute Solution: S-1\r\n..." --tool gemini --mode write --id exec-S-1\r\n# Timeout: 1 hour (3600000ms)\r\n# Background: true\n'})}),"\n",(0,t.jsx)(r.h3,{id:"agent-executor",children:"Agent Executor"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-javascript",children:"Task({\r\n subagent_type: 'code-developer',\r\n run_in_background: false,\r\n description: 'Execute solution S-1',\r\n prompt: '...' // Full execution prompt\r\n})\n"})}),"\n",(0,t.jsx)(r.h2,{id:"worktree-management",children:"Worktree Management"}),"\n",(0,t.jsx)(r.h3,{id:"create-new-worktree",children:"Create New Worktree"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:"# One worktree for entire queue execution\r\ngit worktree add .ccw/worktrees/queue-exec-QUE-xxx -b queue-exec-QUE-xxx\r\n# All solutions execute in this isolated workspace\r\n# Main workspace remains untouched\n"})}),"\n",(0,t.jsx)(r.h3,{id:"resume-existing-worktree-1",children:"Resume Existing Worktree"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:"# Find interrupted executions\r\ngit worktree list\r\n# Output:\r\n# /repo/.ccw/worktrees/queue-exec-QUE-123 abc1234 [queue-exec-QUE-123]\r\n\r\n# Resume with worktree path\r\n/issue:execute --queue QUE-123 --worktree /repo/.ccw/worktrees/queue-exec-QUE-123\n"})}),"\n",(0,t.jsx)(r.h3,{id:"worktree-completion",children:"Worktree Completion"}),"\n",(0,t.jsx)(r.p,{children:"After all batches complete:"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:'# Prompt for merge strategy\r\nQueue complete. What to do with worktree branch "queue-exec-QUE-xxx"?\r\n [1] Create PR (Recommended)\r\n [2] Merge to main\r\n [3] Keep branch\r\n\r\n# Create PR\r\ngit push -u origin queue-exec-QUE-xxx\r\ngh pr create --title "Queue QUE-xxx" --body "Issue queue execution"\r\ngit worktree remove .ccw/worktrees/queue-exec-QUE-xxx\r\n\r\n# OR Merge to main\r\ngit merge --no-ff queue-exec-QUE-xxx -m "Merge queue QUE-xxx"\r\ngit branch -d queue-exec-QUE-xxx\r\ngit worktree remove .ccw/worktrees/queue-exec-QUE-xxx\n'})}),"\n",(0,t.jsx)(r.h2,{id:"cli-endpoints",children:"CLI Endpoints"}),"\n",(0,t.jsx)(r.h3,{id:"queue-operations",children:"Queue Operations"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:'# List queues\r\nccw issue queue list --brief --json\r\n\r\n# Get DAG\r\nccw issue queue dag --queue QUE-xxx\r\n# Returns: {parallel_batches: [["S-1","S-2"], ["S-3"]]}\n'})}),"\n",(0,t.jsx)(r.h3,{id:"solution-operations",children:"Solution Operations"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:'# Get solution details (READ-ONLY)\r\nccw issue detail S-1\r\n# Returns: Full solution with all tasks\r\n\r\n# Mark solution complete\r\nccw issue done S-1 --result \'{"summary":"...","files_modified":[...],"commit":{...},"tasks_completed":3}\'\r\n\r\n# Mark solution failed\r\nccw issue done S-1 --fail --reason \'{"task_id":"T2","error_type":"test_failure","message":"..."}\'\n'})}),"\n",(0,t.jsx)(r.h2,{id:"commit-message-format",children:"Commit Message Format"}),"\n",(0,t.jsx)(r.pre,{children:(0,t.jsx)(r.code,{className:"language-bash",children:"feat(auth): implement OAuth2 login flow\r\n\r\nSolution: S-1\r\nTasks completed: T1, T2, T3\r\n\r\nChanges:\r\n- src/auth/oauth.ts: Implemented OAuth2 flow\r\n- src/auth/login.ts: Integrated OAuth with existing login\r\n- tests/auth/oauth.test.ts: Added comprehensive tests\r\n\r\nVerified: all tests passed\n"})}),"\n",(0,t.jsxs)(r.p,{children:[(0,t.jsx)(r.strong,{children:"Commit Types"}),":"]}),"\n",(0,t.jsxs)(r.ul,{children:["\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.code,{children:"feat"}),": New feature"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.code,{children:"fix"}),": Bug fix"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.code,{children:"refactor"}),": Code refactoring"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.code,{children:"docs"}),": Documentation"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.code,{children:"test"}),": Test updates"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.code,{children:"chore"}),": Maintenance tasks"]}),"\n"]}),"\n",(0,t.jsx)(r.h2,{id:"related-commands",children:"Related Commands"}),"\n",(0,t.jsxs)(r.ul,{children:["\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:(0,t.jsxs)(r.a,{href:"/docs/docs/commands/issue/issue-queue",children:["issue",":queue"]})})," - Form execution queue before executing"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:(0,t.jsxs)(r.a,{href:"/docs/docs/commands/issue/issue-plan",children:["issue",":plan"]})})," - Plan solutions before queuing"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"ccw issue retry"})," - Reset failed solutions for retry"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"ccw issue queue dag"})," - View dependency graph"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"ccw issue detail <id>"})," - View solution details"]}),"\n"]}),"\n",(0,t.jsx)(r.h2,{id:"best-practices",children:"Best Practices"}),"\n",(0,t.jsxs)(r.ol,{children:["\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Use Codex executor"}),": Best for long-running autonomous work"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Enable worktree"}),": Keeps main workspace clean during execution"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Check DAG first"}),": Use dry-run to see execution plan"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Monitor progress"}),": Executors run in background, check completion"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Resume on failure"}),": Use existing worktree path to continue"]}),"\n",(0,t.jsxs)(r.li,{children:[(0,t.jsx)(r.strong,{children:"Review commits"}),": Each solution produces one formatted commit"]}),"\n"]}),"\n",(0,t.jsx)(r.h2,{id:"troubleshooting",children:"Troubleshooting"}),"\n",(0,t.jsxs)(r.table,{children:[(0,t.jsx)(r.thead,{children:(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.th,{children:"Error"}),(0,t.jsx)(r.th,{children:"Cause"}),(0,t.jsx)(r.th,{children:"Resolution"})]})}),(0,t.jsxs)(r.tbody,{children:[(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:"No queue specified"}),(0,t.jsx)(r.td,{children:"--queue argument missing"}),(0,t.jsx)(r.td,{children:"List queues and select one"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:"No ready solutions"}),(0,t.jsx)(r.td,{children:"Dependencies blocked"}),(0,t.jsx)(r.td,{children:"Check DAG for blocking issues"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:"Executor timeout"}),(0,t.jsx)(r.td,{children:"Solution too complex"}),(0,t.jsx)(r.td,{children:"Break into smaller solutions"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:"Worktree exists"}),(0,t.jsx)(r.td,{children:"Previous incomplete execution"}),(0,t.jsx)(r.td,{children:"Resume with --worktree <path>"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:"Partial task failure"}),(0,t.jsx)(r.td,{children:"Task reports failure"}),(0,t.jsx)(r.td,{children:"Check ccw issue done --fail output"})]}),(0,t.jsxs)(r.tr,{children:[(0,t.jsx)(r.td,{children:"Git conflicts"}),(0,t.jsx)(r.td,{children:"Parallel executors touched same files"}),(0,t.jsx)(r.td,{children:"DAG should prevent this"})]})]})]})]})}function a(e={}){const{wrapper:r}={...(0,i.R)(),...e.components};return r?(0,t.jsx)(r,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},1184(e,r,n){n.d(r,{R:()=>c,x:()=>o});var s=n(3696);const t={},i=s.createContext(t);function c(e){const r=s.useContext(i);return s.useMemo(function(){return"function"==typeof e?e(r):{...r,...e}},[r,e])}function o(e){let r;return r=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:c(e.components),s.createElement(i.Provider,{value:r},e.children)}}}]);