claude-code-workflow 7.2.28 → 7.2.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (348) hide show
  1. package/.ccw/workflows/cli-templates/schemas/plan-overview-base-schema.json +2 -2
  2. package/.ccw/workflows/cli-templates/schemas/task-schema.json +14 -7
  3. package/.claude/agents/action-planning-agent.md +7 -4
  4. package/.claude/agents/cli-explore-agent.md +77 -63
  5. package/.claude/agents/cli-lite-planning-agent.md +11 -10
  6. package/.claude/agents/issue-plan-agent.md +421 -426
  7. package/.claude/commands/workflow/spec/setup.md +1 -1
  8. package/.claude/skills/ccw-chain/SKILL.md +119 -0
  9. package/.claude/skills/ccw-chain/chains/ccw-cycle.json +21 -0
  10. package/.claude/skills/ccw-chain/chains/ccw-exploration.json +47 -0
  11. package/.claude/skills/ccw-chain/chains/ccw-issue.json +33 -0
  12. package/.claude/skills/ccw-chain/chains/ccw-lightweight.json +57 -0
  13. package/.claude/skills/ccw-chain/chains/ccw-main.json +52 -0
  14. package/.claude/skills/ccw-chain/chains/ccw-standard.json +39 -0
  15. package/.claude/skills/ccw-chain/chains/ccw-team.json +10 -0
  16. package/.claude/skills/ccw-chain/chains/ccw-with-file.json +31 -0
  17. package/.claude/skills/ccw-chain/phases/analyze-with-file.md +788 -0
  18. package/.claude/skills/ccw-chain/phases/brainstorm/SKILL.md +408 -0
  19. package/.claude/skills/ccw-chain/phases/brainstorm/phases/01-mode-routing.md +207 -0
  20. package/.claude/skills/ccw-chain/phases/brainstorm/phases/02-artifacts.md +567 -0
  21. package/.claude/skills/ccw-chain/phases/brainstorm/phases/03-role-analysis.md +748 -0
  22. package/.claude/skills/ccw-chain/phases/brainstorm/phases/04-synthesis.md +827 -0
  23. package/.claude/skills/ccw-chain/phases/brainstorm-with-file.md +482 -0
  24. package/.claude/skills/ccw-chain/phases/collaborative-plan-with-file.md +639 -0
  25. package/.claude/skills/ccw-chain/phases/debug-with-file.md +656 -0
  26. package/.claude/skills/ccw-chain/phases/integration-test-cycle.md +936 -0
  27. package/.claude/skills/ccw-chain/phases/issue-convert-to-plan.md +720 -0
  28. package/.claude/skills/ccw-chain/phases/issue-discover.md +483 -0
  29. package/.claude/skills/ccw-chain/phases/issue-execute.md +629 -0
  30. package/.claude/skills/ccw-chain/phases/issue-from-brainstorm.md +382 -0
  31. package/.claude/skills/ccw-chain/phases/issue-plan.md +343 -0
  32. package/.claude/skills/ccw-chain/phases/issue-queue.md +464 -0
  33. package/.claude/skills/ccw-chain/phases/refactor-cycle.md +852 -0
  34. package/.claude/skills/ccw-chain/phases/review-cycle/SKILL.md +132 -0
  35. package/.claude/skills/ccw-chain/phases/review-cycle/phases/review-fix.md +760 -0
  36. package/.claude/skills/ccw-chain/phases/review-cycle/phases/review-module.md +764 -0
  37. package/.claude/skills/ccw-chain/phases/review-cycle/phases/review-session.md +775 -0
  38. package/.claude/skills/ccw-chain/phases/roadmap-with-file.md +544 -0
  39. package/.claude/skills/ccw-chain/phases/spec-generator/SKILL.md +338 -0
  40. package/.claude/skills/ccw-chain/phases/spec-generator/phases/01-5-requirement-clarification.md +404 -0
  41. package/.claude/skills/ccw-chain/phases/spec-generator/phases/01-discovery.md +257 -0
  42. package/.claude/skills/ccw-chain/phases/spec-generator/phases/02-product-brief.md +274 -0
  43. package/.claude/skills/ccw-chain/phases/spec-generator/phases/03-requirements.md +184 -0
  44. package/.claude/skills/ccw-chain/phases/spec-generator/phases/04-architecture.md +248 -0
  45. package/.claude/skills/ccw-chain/phases/spec-generator/phases/05-epics-stories.md +178 -0
  46. package/.claude/skills/ccw-chain/phases/spec-generator/phases/06-5-auto-fix.md +144 -0
  47. package/.claude/skills/ccw-chain/phases/spec-generator/phases/06-readiness-check.md +480 -0
  48. package/.claude/skills/ccw-chain/phases/team-planex.md +123 -0
  49. package/.claude/skills/ccw-chain/phases/ui-design-explore-auto.md +678 -0
  50. package/.claude/skills/ccw-chain/phases/unified-execute-with-file.md +870 -0
  51. package/.claude/skills/ccw-chain/phases/workflow-execute/SKILL.md +625 -0
  52. package/.claude/skills/ccw-chain/phases/workflow-execute/phases/06-review.md +215 -0
  53. package/.claude/skills/ccw-chain/phases/workflow-lite-plan.md +616 -0
  54. package/.claude/skills/ccw-chain/phases/workflow-multi-cli-plan.md +424 -0
  55. package/.claude/skills/ccw-chain/phases/workflow-plan/SKILL.md +466 -0
  56. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/01-session-discovery.md +99 -0
  57. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/02-context-gathering.md +338 -0
  58. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/03-conflict-resolution.md +422 -0
  59. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/04-task-generation.md +440 -0
  60. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/05-plan-verify.md +395 -0
  61. package/.claude/skills/ccw-chain/phases/workflow-plan/phases/06-replan.md +594 -0
  62. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/SKILL.md +527 -0
  63. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/01-session-discovery.md +57 -0
  64. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/02-context-gathering.md +407 -0
  65. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/03-test-coverage-analysis.md +172 -0
  66. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/04-conflict-resolution.md +426 -0
  67. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/05-tdd-task-generation.md +473 -0
  68. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/06-tdd-structure-validation.md +189 -0
  69. package/.claude/skills/ccw-chain/phases/workflow-tdd-plan/phases/07-tdd-verify.md +635 -0
  70. package/.claude/skills/ccw-chain/phases/workflow-test-fix/SKILL.md +482 -0
  71. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/01-session-start.md +60 -0
  72. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/02-test-context-gather.md +493 -0
  73. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/03-test-concept-enhanced.md +150 -0
  74. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/04-test-task-generate.md +346 -0
  75. package/.claude/skills/ccw-chain/phases/workflow-test-fix/phases/05-test-cycle-execute.md +538 -0
  76. package/.claude/skills/ccw-chain/specs/auto-mode.md +47 -0
  77. package/.claude/skills/ccw-chain/specs/intent-patterns.md +60 -0
  78. package/.claude/skills/chain-loader/SKILL.md +78 -0
  79. package/.claude/skills/chain-loader/phases/01-analyze-skill.md +53 -0
  80. package/.claude/skills/chain-loader/phases/02-design-graph.md +73 -0
  81. package/.claude/skills/chain-loader/phases/03-generate-validate.md +75 -0
  82. package/.claude/skills/chain-loader/specs/chain-schema.md +99 -0
  83. package/.claude/skills/chain-loader/specs/design-patterns.md +99 -0
  84. package/.claude/skills/chain-loader/templates/chain-json.md +63 -0
  85. package/.claude/skills/review-cycle/phases/review-module.md +764 -764
  86. package/.claude/skills/review-cycle/phases/review-session.md +775 -775
  87. package/.claude/skills/workflow-multi-cli-plan/SKILL.md +2 -2
  88. package/.claude/skills/workflow-plan/phases/03-conflict-resolution.md +422 -422
  89. package/.claude/skills/workflow-plan/phases/05-plan-verify.md +395 -395
  90. package/.claude/skills/workflow-tdd-plan/phases/02-context-gathering.md +407 -407
  91. package/.claude/skills/workflow-tdd-plan/phases/04-conflict-resolution.md +426 -426
  92. package/.claude/skills/workflow-test-fix/phases/02-test-context-gather.md +493 -493
  93. package/.codex/skills/brainstorm/SKILL.md +3 -3
  94. package/.codex/skills/clean/SKILL.md +3 -3
  95. package/.codex/skills/issue-discover/SKILL.md +13 -13
  96. package/.codex/skills/issue-discover/phases/02-discover.md +4 -4
  97. package/.codex/skills/issue-discover/phases/03-discover-by-prompt.md +3 -3
  98. package/.codex/skills/parallel-dev-cycle/SKILL.md +4 -4
  99. package/.codex/skills/parallel-dev-cycle/phases/02-agent-execution.md +6 -6
  100. package/.codex/skills/parallel-dev-cycle/phases/03-result-aggregation.md +10 -10
  101. package/.codex/skills/review-cycle/SKILL.md +10 -10
  102. package/.codex/skills/review-cycle/phases/02-parallel-review.md +6 -6
  103. package/.codex/skills/review-cycle/phases/04-iterative-deep-dive.md +4 -4
  104. package/.codex/skills/review-cycle/phases/07-fix-parallel-planning.md +4 -4
  105. package/.codex/skills/review-cycle/phases/08-fix-execution.md +2 -2
  106. package/.codex/skills/roadmap-with-file/SKILL.md +14 -14
  107. package/.codex/skills/spec-generator/README.md +1 -1
  108. package/.codex/skills/spec-generator/SKILL.md +184 -88
  109. package/.codex/skills/spec-generator/phases/01-5-requirement-clarification.md +4 -7
  110. package/.codex/skills/spec-generator/phases/01-discovery.md +30 -11
  111. package/.codex/skills/spec-generator/phases/02-product-brief.md +2 -5
  112. package/.codex/skills/spec-generator/phases/03-requirements.md +4 -6
  113. package/.codex/skills/spec-generator/phases/04-architecture.md +4 -6
  114. package/.codex/skills/spec-generator/phases/05-epics-stories.md +4 -6
  115. package/.codex/skills/spec-generator/phases/06-5-auto-fix.md +4 -5
  116. package/.codex/skills/spec-generator/phases/06-readiness-check.md +8 -8
  117. package/.codex/skills/spec-generator/phases/07-issue-export.md +2 -2
  118. package/.codex/skills/spec-setup/SKILL.md +4 -4
  119. package/.codex/skills/workflow-plan/SKILL.md +6 -6
  120. package/.codex/skills/workflow-tdd-plan/SKILL.md +5 -5
  121. package/.codex/skills/workflow-test-fix-cycle/SKILL.md +19 -19
  122. package/.codex/skills/workflow-test-fix-cycle/phases/01-test-fix-gen.md +5 -5
  123. package/.codex/skills/workflow-test-fix-cycle/phases/02-test-cycle-execute.md +5 -5
  124. package/README.md +14 -0
  125. package/ccw/dist/core/routes/litellm-api-routes.d.ts.map +1 -1
  126. package/ccw/dist/core/routes/litellm-api-routes.js +0 -23
  127. package/ccw/dist/core/routes/litellm-api-routes.js.map +1 -1
  128. package/ccw/dist/tools/chain-loader.d.ts +10 -0
  129. package/ccw/dist/tools/chain-loader.d.ts.map +1 -0
  130. package/ccw/dist/tools/chain-loader.js +642 -0
  131. package/ccw/dist/tools/chain-loader.js.map +1 -0
  132. package/ccw/dist/tools/index.d.ts.map +1 -1
  133. package/ccw/dist/tools/index.js +2 -0
  134. package/ccw/dist/tools/index.js.map +1 -1
  135. package/ccw/dist/tools/json-builder.js +20 -0
  136. package/ccw/dist/tools/json-builder.js.map +1 -1
  137. package/ccw/dist/types/chain-types.d.ts +72 -0
  138. package/ccw/dist/types/chain-types.d.ts.map +1 -0
  139. package/ccw/dist/types/chain-types.js +5 -0
  140. package/ccw/dist/types/chain-types.js.map +1 -0
  141. package/ccw/frontend/dist/assets/{AlertDialog-BjP1ydDR.js → AlertDialog-exlTDW81.js} +3 -3
  142. package/ccw/frontend/dist/assets/{AlertDialog-BjP1ydDR.js.map → AlertDialog-exlTDW81.js.map} +1 -1
  143. package/ccw/frontend/dist/assets/{AnalysisPage-CAX3xqMf.js → AnalysisPage-cgV9LfAI.js} +2 -2
  144. package/ccw/frontend/dist/assets/{AnalysisPage-CAX3xqMf.js.map → AnalysisPage-cgV9LfAI.js.map} +1 -1
  145. package/ccw/frontend/dist/assets/{ApiSettingsPage-CtWlmztq.js → ApiSettingsPage-Dk5jJdWt.js} +2 -2
  146. package/ccw/frontend/dist/assets/{ApiSettingsPage-CtWlmztq.js.map → ApiSettingsPage-Dk5jJdWt.js.map} +1 -1
  147. package/ccw/frontend/dist/assets/{CliModeToggle-hR4a-eLX.js → CliModeToggle-Be9xsPiv.js} +2 -2
  148. package/ccw/frontend/dist/assets/{CliModeToggle-hR4a-eLX.js.map → CliModeToggle-Be9xsPiv.js.map} +1 -1
  149. package/ccw/frontend/dist/assets/{CliSessionSharePage-DzNPkFN9.js → CliSessionSharePage-Bh9jBtPI.js} +2 -2
  150. package/ccw/frontend/dist/assets/{CliSessionSharePage-DzNPkFN9.js.map → CliSessionSharePage-Bh9jBtPI.js.map} +1 -1
  151. package/ccw/frontend/dist/assets/{CliViewerPage-BPEGN4TT.js → CliViewerPage-BrE-oyEq.js} +2 -2
  152. package/ccw/frontend/dist/assets/{CliViewerPage-BPEGN4TT.js.map → CliViewerPage-BrE-oyEq.js.map} +1 -1
  153. package/ccw/frontend/dist/assets/{CodexLensPage-Cf0r2RHY.js → CodexLensPage-Cd3nrC93.js} +2 -2
  154. package/ccw/frontend/dist/assets/{CodexLensPage-Cf0r2RHY.js.map → CodexLensPage-Cd3nrC93.js.map} +1 -1
  155. package/ccw/frontend/dist/assets/{Collapsible-DEm1rJ4h.js → Collapsible-DXFl3VKF.js} +2 -2
  156. package/ccw/frontend/dist/assets/{Collapsible-DEm1rJ4h.js.map → Collapsible-DXFl3VKF.js.map} +1 -1
  157. package/ccw/frontend/dist/assets/{CommandsManagerPage-BpeWw8HO.js → CommandsManagerPage-IV8zpjgX.js} +2 -2
  158. package/ccw/frontend/dist/assets/{CommandsManagerPage-BpeWw8HO.js.map → CommandsManagerPage-IV8zpjgX.js.map} +1 -1
  159. package/ccw/frontend/dist/assets/{DeepWikiPage-BEsmh2vF.js → DeepWikiPage-CpDxtmRX.js} +2 -2
  160. package/ccw/frontend/dist/assets/{DeepWikiPage-BEsmh2vF.js.map → DeepWikiPage-CpDxtmRX.js.map} +1 -1
  161. package/ccw/frontend/dist/assets/{EndpointsPage-B30SFdtU.js → EndpointsPage-BchjWe7s.js} +2 -2
  162. package/ccw/frontend/dist/assets/{EndpointsPage-B30SFdtU.js.map → EndpointsPage-BchjWe7s.js.map} +1 -1
  163. package/ccw/frontend/dist/assets/{ExplorerPage-BVvMpg1O.js → ExplorerPage-CbWvaJ0y.js} +2 -2
  164. package/ccw/frontend/dist/assets/{ExplorerPage-BVvMpg1O.js.map → ExplorerPage-CbWvaJ0y.js.map} +1 -1
  165. package/ccw/frontend/dist/assets/{FixSessionPage-CL73dHbh.js → FixSessionPage-YMjVRiCk.js} +2 -2
  166. package/ccw/frontend/dist/assets/{FixSessionPage-CL73dHbh.js.map → FixSessionPage-YMjVRiCk.js.map} +1 -1
  167. package/ccw/frontend/dist/assets/{FloatingFileBrowser-BL-28lMZ.js → FloatingFileBrowser-JW2ehYY_.js} +2 -2
  168. package/ccw/frontend/dist/assets/{FloatingFileBrowser-BL-28lMZ.js.map → FloatingFileBrowser-JW2ehYY_.js.map} +1 -1
  169. package/ccw/frontend/dist/assets/{FloatingPanel-BzZDciHZ.js → FloatingPanel-BtqzqDVq.js} +2 -2
  170. package/ccw/frontend/dist/assets/{FloatingPanel-BzZDciHZ.js.map → FloatingPanel-BtqzqDVq.js.map} +1 -1
  171. package/ccw/frontend/dist/assets/{GraphExplorerPage-CDp6-d8P.js → GraphExplorerPage-BsJL_W4d.js} +3 -3
  172. package/ccw/frontend/dist/assets/{GraphExplorerPage-CDp6-d8P.js.map → GraphExplorerPage-BsJL_W4d.js.map} +1 -1
  173. package/ccw/frontend/dist/assets/{HistoryPage-fZY_7O9n.js → HistoryPage-BuWpQ7k5.js} +2 -2
  174. package/ccw/frontend/dist/assets/{HistoryPage-fZY_7O9n.js.map → HistoryPage-BuWpQ7k5.js.map} +1 -1
  175. package/ccw/frontend/dist/assets/{HookManagerPage-4LJeC9bq.js → HookManagerPage-D0BtMIWy.js} +2 -2
  176. package/ccw/frontend/dist/assets/{HookManagerPage-4LJeC9bq.js.map → HookManagerPage-D0BtMIWy.js.map} +1 -1
  177. package/ccw/frontend/dist/assets/{InstallationsPage-Bpigrbhw.js → InstallationsPage-C7dwsAKG.js} +2 -2
  178. package/ccw/frontend/dist/assets/{InstallationsPage-Bpigrbhw.js.map → InstallationsPage-C7dwsAKG.js.map} +1 -1
  179. package/ccw/frontend/dist/assets/{IssueHubPage-BP0zJc1R.js → IssueHubPage-D0nCNaeB.js} +2 -2
  180. package/ccw/frontend/dist/assets/{IssueHubPage-BP0zJc1R.js.map → IssueHubPage-D0nCNaeB.js.map} +1 -1
  181. package/ccw/frontend/dist/assets/{LiteTasksPage-CSt2oVKQ.js → LiteTasksPage-B5c2Kb9r.js} +3 -3
  182. package/ccw/frontend/dist/assets/{LiteTasksPage-CSt2oVKQ.js.map → LiteTasksPage-B5c2Kb9r.js.map} +1 -1
  183. package/ccw/frontend/dist/assets/{McpManagerPage-B-xaMA0w.js → McpManagerPage-C-S5CehM.js} +2 -2
  184. package/ccw/frontend/dist/assets/{McpManagerPage-B-xaMA0w.js.map → McpManagerPage-C-S5CehM.js.map} +1 -1
  185. package/ccw/frontend/dist/assets/{MemoryPage-CJqo_7DY.js → MemoryPage-P_B0JVUQ.js} +2 -2
  186. package/ccw/frontend/dist/assets/{MemoryPage-CJqo_7DY.js.map → MemoryPage-P_B0JVUQ.js.map} +1 -1
  187. package/ccw/frontend/dist/assets/{NotFoundPage-ibZeQA-Y.js → NotFoundPage-S4Jn9LUE.js} +2 -2
  188. package/ccw/frontend/dist/assets/{NotFoundPage-ibZeQA-Y.js.map → NotFoundPage-S4Jn9LUE.js.map} +1 -1
  189. package/ccw/frontend/dist/assets/{OrchestratorPage-DgJ4ctPQ.js → OrchestratorPage-C2Zlr7AC.js} +2 -2
  190. package/ccw/frontend/dist/assets/{OrchestratorPage-DgJ4ctPQ.js.map → OrchestratorPage-C2Zlr7AC.js.map} +1 -1
  191. package/ccw/frontend/dist/assets/{ProjectOverviewPage-Cit0Yq0D.js → ProjectOverviewPage-CMVfz8s5.js} +2 -2
  192. package/ccw/frontend/dist/assets/{ProjectOverviewPage-Cit0Yq0D.js.map → ProjectOverviewPage-CMVfz8s5.js.map} +1 -1
  193. package/ccw/frontend/dist/assets/{PromptHistoryPage-Ce1HDIK0.js → PromptHistoryPage-YEMjFARX.js} +3 -3
  194. package/ccw/frontend/dist/assets/{PromptHistoryPage-Ce1HDIK0.js.map → PromptHistoryPage-YEMjFARX.js.map} +1 -1
  195. package/ccw/frontend/dist/assets/{ReviewSessionPage-J1KikNrk.js → ReviewSessionPage-DnTm55nG.js} +2 -2
  196. package/ccw/frontend/dist/assets/{ReviewSessionPage-J1KikNrk.js.map → ReviewSessionPage-DnTm55nG.js.map} +1 -1
  197. package/ccw/frontend/dist/assets/{RulesManagerPage-CdBjTmth.js → RulesManagerPage-CUwebtO2.js} +2 -2
  198. package/ccw/frontend/dist/assets/{RulesManagerPage-CdBjTmth.js.map → RulesManagerPage-CUwebtO2.js.map} +1 -1
  199. package/ccw/frontend/dist/assets/{SessionDetailPage-B9ZK7LvX.js → SessionDetailPage-0qyH1Z5P.js} +2 -2
  200. package/ccw/frontend/dist/assets/{SessionDetailPage-B9ZK7LvX.js.map → SessionDetailPage-0qyH1Z5P.js.map} +1 -1
  201. package/ccw/frontend/dist/assets/{SessionsPage-CW_nS5UR.js → SessionsPage-BpgP4087.js} +2 -2
  202. package/ccw/frontend/dist/assets/{SessionsPage-CW_nS5UR.js.map → SessionsPage-BpgP4087.js.map} +1 -1
  203. package/ccw/frontend/dist/assets/SettingsPage-C3SJajeT.js +150 -0
  204. package/ccw/frontend/dist/assets/SettingsPage-C3SJajeT.js.map +1 -0
  205. package/ccw/frontend/dist/assets/SkillsManagerPage-vD9PTsmy.js +7 -0
  206. package/ccw/frontend/dist/assets/SkillsManagerPage-vD9PTsmy.js.map +1 -0
  207. package/ccw/frontend/dist/assets/{SpecsSettingsPage-DJpi9XQL.js → SpecsSettingsPage-DT-yTVkD.js} +4 -4
  208. package/ccw/frontend/dist/assets/{SpecsSettingsPage-DJpi9XQL.js.map → SpecsSettingsPage-DT-yTVkD.js.map} +1 -1
  209. package/ccw/frontend/dist/assets/{Switch-Ac6Ov7uy.js → Switch-CYSPdqWk.js} +2 -2
  210. package/ccw/frontend/dist/assets/{Switch-Ac6Ov7uy.js.map → Switch-CYSPdqWk.js.map} +1 -1
  211. package/ccw/frontend/dist/assets/{TabsNavigation-DZAAspqR.js → TabsNavigation-CPh6Zor1.js} +2 -2
  212. package/ccw/frontend/dist/assets/{TabsNavigation-DZAAspqR.js.map → TabsNavigation-CPh6Zor1.js.map} +1 -1
  213. package/ccw/frontend/dist/assets/{TaskDrawer-BJkwfhIZ.js → TaskDrawer-Ds-8830B.js} +2 -2
  214. package/ccw/frontend/dist/assets/{TaskDrawer-BJkwfhIZ.js.map → TaskDrawer-Ds-8830B.js.map} +1 -1
  215. package/ccw/frontend/dist/assets/{TeamPage-BJgjxBgb.js → TeamPage-CJODUxBk.js} +2 -2
  216. package/ccw/frontend/dist/assets/{TeamPage-BJgjxBgb.js.map → TeamPage-CJODUxBk.js.map} +1 -1
  217. package/ccw/frontend/dist/assets/{TerminalDashboardPage-D1WekoOy.js → TerminalDashboardPage-Cn3fGUuO.js} +3 -3
  218. package/ccw/frontend/dist/assets/{TerminalDashboardPage-D1WekoOy.js.map → TerminalDashboardPage-Cn3fGUuO.js.map} +1 -1
  219. package/ccw/frontend/dist/assets/{archive-DxemgIhF.js → archive-CjwVpw6k.js} +2 -2
  220. package/ccw/frontend/dist/assets/{archive-DxemgIhF.js.map → archive-CjwVpw6k.js.map} +1 -1
  221. package/ccw/frontend/dist/assets/{archive-restore-CjS83f1V.js → archive-restore-2vZa9Ic3.js} +2 -2
  222. package/ccw/frontend/dist/assets/{archive-restore-CjS83f1V.js.map → archive-restore-2vZa9Ic3.js.map} +1 -1
  223. package/ccw/frontend/dist/assets/{arrow-right-B5PUcn8I.js → arrow-right-CUU5XDgT.js} +2 -2
  224. package/ccw/frontend/dist/assets/{arrow-right-B5PUcn8I.js.map → arrow-right-CUU5XDgT.js.map} +1 -1
  225. package/ccw/frontend/dist/assets/{bookmark-plus-DCc9aPbb.js → bookmark-plus-Cc3nKRZ5.js} +2 -2
  226. package/ccw/frontend/dist/assets/{bookmark-plus-DCc9aPbb.js.map → bookmark-plus-Cc3nKRZ5.js.map} +1 -1
  227. package/ccw/frontend/dist/assets/{bot-DOwFtzak.js → bot-BwpSRDUa.js} +2 -2
  228. package/ccw/frontend/dist/assets/{bot-DOwFtzak.js.map → bot-BwpSRDUa.js.map} +1 -1
  229. package/ccw/frontend/dist/assets/{braces-96qH3aFh.js → braces-DBzUW1XC.js} +2 -2
  230. package/ccw/frontend/dist/assets/{braces-96qH3aFh.js.map → braces-DBzUW1XC.js.map} +1 -1
  231. package/ccw/frontend/dist/assets/{circle-stop-CCxSuil1.js → circle-stop-CGNNsjvE.js} +2 -2
  232. package/ccw/frontend/dist/assets/{circle-stop-CCxSuil1.js.map → circle-stop-CGNNsjvE.js.map} +1 -1
  233. package/ccw/frontend/dist/assets/{cpu-CZNSJFdq.js → cpu-D27G86Ul.js} +2 -2
  234. package/ccw/frontend/dist/assets/{cpu-CZNSJFdq.js.map → cpu-D27G86Ul.js.map} +1 -1
  235. package/ccw/frontend/dist/assets/{ellipsis-vertical-h8xtvw2_.js → ellipsis-vertical-C1Ij47Yz.js} +2 -2
  236. package/ccw/frontend/dist/assets/{ellipsis-vertical-h8xtvw2_.js.map → ellipsis-vertical-C1Ij47Yz.js.map} +1 -1
  237. package/ccw/frontend/dist/assets/{eye-D3NY0bm6.js → eye-C6MOB7Au.js} +2 -2
  238. package/ccw/frontend/dist/assets/{eye-D3NY0bm6.js.map → eye-C6MOB7Au.js.map} +1 -1
  239. package/ccw/frontend/dist/assets/{eye-off-Cy2vkc8p.js → eye-off-BxfBlZ26.js} +2 -2
  240. package/ccw/frontend/dist/assets/{eye-off-Cy2vkc8p.js.map → eye-off-BxfBlZ26.js.map} +1 -1
  241. package/ccw/frontend/dist/assets/{file-json-Bzq3U1Mx.js → file-json-NI237wA-.js} +2 -2
  242. package/ccw/frontend/dist/assets/{file-json-Bzq3U1Mx.js.map → file-json-NI237wA-.js.map} +1 -1
  243. package/ccw/frontend/dist/assets/{file-text-DwuwPDPi.js → file-text-Byn2_2v6.js} +2 -2
  244. package/ccw/frontend/dist/assets/{file-text-DwuwPDPi.js.map → file-text-Byn2_2v6.js.map} +1 -1
  245. package/ccw/frontend/dist/assets/{filter-q9g-bknU.js → filter-D-7PhZjx.js} +2 -2
  246. package/ccw/frontend/dist/assets/{filter-q9g-bknU.js.map → filter-D-7PhZjx.js.map} +1 -1
  247. package/ccw/frontend/dist/assets/{folder-CL6vb42J.js → folder-BoAsK_FL.js} +2 -2
  248. package/ccw/frontend/dist/assets/{folder-CL6vb42J.js.map → folder-BoAsK_FL.js.map} +1 -1
  249. package/ccw/frontend/dist/assets/{gauge-BkrcQBly.js → gauge-DCSxJIS4.js} +2 -2
  250. package/ccw/frontend/dist/assets/{gauge-BkrcQBly.js.map → gauge-DCSxJIS4.js.map} +1 -1
  251. package/ccw/frontend/dist/assets/{globe-BQbwyNeV.js → globe-CHS3prza.js} +2 -2
  252. package/ccw/frontend/dist/assets/{globe-BQbwyNeV.js.map → globe-CHS3prza.js.map} +1 -1
  253. package/ccw/frontend/dist/assets/{grid-3x3-x5_7DrN7.js → grid-3x3-D7K35U7S.js} +2 -2
  254. package/ccw/frontend/dist/assets/{grid-3x3-x5_7DrN7.js.map → grid-3x3-D7K35U7S.js.map} +1 -1
  255. package/ccw/frontend/dist/assets/{hard-drive-DTyWXwzf.js → hard-drive-eq9xE07G.js} +2 -2
  256. package/ccw/frontend/dist/assets/{hard-drive-DTyWXwzf.js.map → hard-drive-eq9xE07G.js.map} +1 -1
  257. package/ccw/frontend/dist/assets/{hash-80O0kJO7.js → hash-C1DMpBua.js} +2 -2
  258. package/ccw/frontend/dist/assets/{hash-80O0kJO7.js.map → hash-C1DMpBua.js.map} +1 -1
  259. package/ccw/frontend/dist/assets/{history-DDlN2Bwa.js → history-Di5SBCY-.js} +2 -2
  260. package/ccw/frontend/dist/assets/{history-DDlN2Bwa.js.map → history-Di5SBCY-.js.map} +1 -1
  261. package/ccw/frontend/dist/assets/{index-mbeo62f8.js → index--_R7COnA.js} +2 -2
  262. package/ccw/frontend/dist/assets/{index-mbeo62f8.js.map → index--_R7COnA.js.map} +1 -1
  263. package/ccw/frontend/dist/assets/{index-rLgoBCfV.js → index-BUol9HDD.js} +3 -3
  264. package/ccw/frontend/dist/assets/{index-rLgoBCfV.js.map → index-BUol9HDD.js.map} +1 -1
  265. package/ccw/frontend/dist/assets/{index-Bs80iCX0.js → index-CT9oykfw.js} +2 -2
  266. package/ccw/frontend/dist/assets/{index-Bs80iCX0.js.map → index-CT9oykfw.js.map} +1 -1
  267. package/ccw/frontend/dist/assets/{index-B9A3Hnrk.js → index-Ddwvf87H.js} +2 -2
  268. package/ccw/frontend/dist/assets/{index-B9A3Hnrk.js.map → index-Ddwvf87H.js.map} +1 -1
  269. package/ccw/frontend/dist/assets/{layout-grid-C1niOWJx.js → layout-grid-LiX0qZbN.js} +2 -2
  270. package/ccw/frontend/dist/assets/{layout-grid-C1niOWJx.js.map → layout-grid-LiX0qZbN.js.map} +1 -1
  271. package/ccw/frontend/dist/assets/{lightbulb-BTmI7SUg.js → lightbulb-CL3DVEwb.js} +2 -2
  272. package/ccw/frontend/dist/assets/{lightbulb-BTmI7SUg.js.map → lightbulb-CL3DVEwb.js.map} +1 -1
  273. package/ccw/frontend/dist/assets/{link-2-CB9HKeuZ.js → link-2-CC5cFeq6.js} +2 -2
  274. package/ccw/frontend/dist/assets/{link-2-CB9HKeuZ.js.map → link-2-CC5cFeq6.js.map} +1 -1
  275. package/ccw/frontend/dist/assets/{link-koEYiemK.js → link-ngFQ9bs0.js} +2 -2
  276. package/ccw/frontend/dist/assets/{link-koEYiemK.js.map → link-ngFQ9bs0.js.map} +1 -1
  277. package/ccw/frontend/dist/assets/{list-v2_GaLdC.js → list-BEU6I0KK.js} +2 -2
  278. package/ccw/frontend/dist/assets/{list-v2_GaLdC.js.map → list-BEU6I0KK.js.map} +1 -1
  279. package/ccw/frontend/dist/assets/{map-pin-BQNfAqG_.js → map-pin-BWZdLA6y.js} +2 -2
  280. package/ccw/frontend/dist/assets/{map-pin-BQNfAqG_.js.map → map-pin-BWZdLA6y.js.map} +1 -1
  281. package/ccw/frontend/dist/assets/{messages-square-Dzq5LGg9.js → messages-square-K6_Chm7n.js} +2 -2
  282. package/ccw/frontend/dist/assets/{messages-square-Dzq5LGg9.js.map → messages-square-K6_Chm7n.js.map} +1 -1
  283. package/ccw/frontend/dist/assets/{minimize-2-CtkoJXcz.js → minimize-2-CWkphauf.js} +2 -2
  284. package/ccw/frontend/dist/assets/{minimize-2-CtkoJXcz.js.map → minimize-2-CWkphauf.js.map} +1 -1
  285. package/ccw/frontend/dist/assets/{package-CH3smL37.js → package-DrNgkamn.js} +2 -2
  286. package/ccw/frontend/dist/assets/{package-CH3smL37.js.map → package-DrNgkamn.js.map} +1 -1
  287. package/ccw/frontend/dist/assets/{plug-CZ0aL_yF.js → plug-CMo3sw5_.js} +2 -2
  288. package/ccw/frontend/dist/assets/{plug-CZ0aL_yF.js.map → plug-CMo3sw5_.js.map} +1 -1
  289. package/ccw/frontend/dist/assets/{power-F2A_J4l6.js → power-DppNTW5e.js} +2 -2
  290. package/ccw/frontend/dist/assets/{power-F2A_J4l6.js.map → power-DppNTW5e.js.map} +1 -1
  291. package/ccw/frontend/dist/assets/{save-Byxot0YU.js → save-CD8aPMbZ.js} +2 -2
  292. package/ccw/frontend/dist/assets/{save-Byxot0YU.js.map → save-CD8aPMbZ.js.map} +1 -1
  293. package/ccw/frontend/dist/assets/{send-JjqhUkpw.js → send-B4z90fQD.js} +2 -2
  294. package/ccw/frontend/dist/assets/{send-JjqhUkpw.js.map → send-B4z90fQD.js.map} +1 -1
  295. package/ccw/frontend/dist/assets/{settings-2--SuN9rAt.js → settings-2-CAKRU_QC.js} +2 -2
  296. package/ccw/frontend/dist/assets/{settings-2--SuN9rAt.js.map → settings-2-CAKRU_QC.js.map} +1 -1
  297. package/ccw/frontend/dist/assets/{square-check-big-BbngGB2h.js → square-check-big-KhI3HrzX.js} +2 -2
  298. package/ccw/frontend/dist/assets/{square-check-big-BbngGB2h.js.map → square-check-big-KhI3HrzX.js.map} +1 -1
  299. package/ccw/frontend/dist/assets/{square-pen-CgrHgZSl.js → square-pen-BtdGIpuq.js} +2 -2
  300. package/ccw/frontend/dist/assets/{square-pen-CgrHgZSl.js.map → square-pen-BtdGIpuq.js.map} +1 -1
  301. package/ccw/frontend/dist/assets/{star-BU3TQr7Z.js → star-ZoBUkXoD.js} +2 -2
  302. package/ccw/frontend/dist/assets/{star-BU3TQr7Z.js.map → star-ZoBUkXoD.js.map} +1 -1
  303. package/ccw/frontend/dist/assets/{style-CKs7nnn3.js → style-CltxQP-P.js} +2 -2
  304. package/ccw/frontend/dist/assets/{style-CKs7nnn3.js.map → style-CltxQP-P.js.map} +1 -1
  305. package/ccw/frontend/dist/assets/{target-DW5tsDW6.js → target-C32OUSGf.js} +2 -2
  306. package/ccw/frontend/dist/assets/{target-DW5tsDW6.js.map → target-C32OUSGf.js.map} +1 -1
  307. package/ccw/frontend/dist/assets/{test-tube-BHm7w3ON.js → test-tube-0IxoyAVZ.js} +2 -2
  308. package/ccw/frontend/dist/assets/{test-tube-BHm7w3ON.js.map → test-tube-0IxoyAVZ.js.map} +1 -1
  309. package/ccw/frontend/dist/assets/{upload-DYR7PWwt.js → upload-4eKCkyBn.js} +2 -2
  310. package/ccw/frontend/dist/assets/{upload-DYR7PWwt.js.map → upload-4eKCkyBn.js.map} +1 -1
  311. package/ccw/frontend/dist/assets/{useApiSettings-D0TVgQD_.js → useApiSettings-zLTUWqhi.js} +2 -2
  312. package/ccw/frontend/dist/assets/{useApiSettings-D0TVgQD_.js.map → useApiSettings-zLTUWqhi.js.map} +1 -1
  313. package/ccw/frontend/dist/assets/{useCli-DfY8mAP8.js → useCli-BtN2vpOX.js} +2 -2
  314. package/ccw/frontend/dist/assets/{useCli-DfY8mAP8.js.map → useCli-BtN2vpOX.js.map} +1 -1
  315. package/ccw/frontend/dist/assets/{useCommands-CGusDp0F.js → useCommands-_spj49qL.js} +2 -2
  316. package/ccw/frontend/dist/assets/{useCommands-CGusDp0F.js.map → useCommands-_spj49qL.js.map} +1 -1
  317. package/ccw/frontend/dist/assets/{useDebounce-CIwh0fF1.js → useDebounce-Bm9KFZvd.js} +2 -2
  318. package/ccw/frontend/dist/assets/{useDebounce-CIwh0fF1.js.map → useDebounce-Bm9KFZvd.js.map} +1 -1
  319. package/ccw/frontend/dist/assets/{useFileExplorer-FMyFv39K.js → useFileExplorer-DOmpm6v9.js} +2 -2
  320. package/ccw/frontend/dist/assets/{useFileExplorer-FMyFv39K.js.map → useFileExplorer-DOmpm6v9.js.map} +1 -1
  321. package/ccw/frontend/dist/assets/{useLocale-B2qhsoTb.js → useLocale-D2rj4rea.js} +2 -2
  322. package/ccw/frontend/dist/assets/{useLocale-B2qhsoTb.js.map → useLocale-D2rj4rea.js.map} +1 -1
  323. package/ccw/frontend/dist/assets/{useSkills-cxKXMBm3.js → useSkills-OskEpomF.js} +3 -3
  324. package/ccw/frontend/dist/assets/{useSkills-cxKXMBm3.js.map → useSkills-OskEpomF.js.map} +1 -1
  325. package/ccw/frontend/dist/assets/{useSystemSettings-B-xUT_z-.js → useSystemSettings-BjMgsNSF.js} +2 -2
  326. package/ccw/frontend/dist/assets/{useSystemSettings-B-xUT_z-.js.map → useSystemSettings-BjMgsNSF.js.map} +1 -1
  327. package/ccw/frontend/dist/assets/{wand-sparkles-DZV_3lPr.js → wand-sparkles-CLhyYWa7.js} +2 -2
  328. package/ccw/frontend/dist/assets/{wand-sparkles-DZV_3lPr.js.map → wand-sparkles-CLhyYWa7.js.map} +1 -1
  329. package/ccw/frontend/dist/index.html +1 -1
  330. package/ccw/scripts/prepublish-clean.mjs +0 -1
  331. package/package.json +1 -3
  332. package/ccw/frontend/dist/assets/SettingsPage-B2PYzSoO.js +0 -150
  333. package/ccw/frontend/dist/assets/SettingsPage-B2PYzSoO.js.map +0 -1
  334. package/ccw/frontend/dist/assets/SkillsManagerPage-CTnWrrwp.js +0 -7
  335. package/ccw/frontend/dist/assets/SkillsManagerPage-CTnWrrwp.js.map +0 -1
  336. package/ccw-litellm/README.md +0 -180
  337. package/ccw-litellm/pyproject.toml +0 -35
  338. package/ccw-litellm/src/ccw_litellm/__init__.py +0 -47
  339. package/ccw-litellm/src/ccw_litellm/cli.py +0 -108
  340. package/ccw-litellm/src/ccw_litellm/clients/__init__.py +0 -12
  341. package/ccw-litellm/src/ccw_litellm/clients/litellm_embedder.py +0 -270
  342. package/ccw-litellm/src/ccw_litellm/clients/litellm_llm.py +0 -198
  343. package/ccw-litellm/src/ccw_litellm/config/__init__.py +0 -22
  344. package/ccw-litellm/src/ccw_litellm/config/loader.py +0 -343
  345. package/ccw-litellm/src/ccw_litellm/config/models.py +0 -162
  346. package/ccw-litellm/src/ccw_litellm/interfaces/__init__.py +0 -14
  347. package/ccw-litellm/src/ccw_litellm/interfaces/embedder.py +0 -52
  348. package/ccw-litellm/src/ccw_litellm/interfaces/llm.py +0 -45
@@ -0,0 +1,473 @@
1
+ # Phase 5: TDD Task Generation
2
+
3
+ > **📌 COMPACT SENTINEL [Phase 5: TDD-Task-Generation]**
4
+ > This phase contains 3 execution steps (Step 5.1 — 5.3).
5
+ > If you can read this sentinel but cannot find the full Step protocol below, context has been compressed.
6
+ > Recovery: `Read("phases/05-tdd-task-generation.md")`
7
+
8
+ Generate TDD tasks with Red-Green-Refactor cycles via action-planning-agent.
9
+
10
+ ## Objective
11
+
12
+ - Generate IMPL_PLAN.md, task JSONs, and TODO_LIST.md with TDD structure
13
+ - Each task contains internal Red-Green-Refactor cycle
14
+ - Include Phase 0 user configuration (execution method, CLI tool preference)
15
+
16
+ ## Core Philosophy
17
+
18
+ - **Agent-Driven**: Delegate execution to action-planning-agent for autonomous operation
19
+ - **Two-Phase Flow**: Discovery (context gathering) -> Output (document generation)
20
+ - **Memory-First**: Reuse loaded documents from conversation memory
21
+ - **MCP-Enhanced**: Use MCP tools for advanced code analysis and research
22
+ - **Semantic CLI Selection**: CLI tool usage determined from user's task description, not flags
23
+ - **Path Clarity**: All `focus_paths` prefer absolute paths or clear relative paths from project root
24
+ - **TDD-First**: Every feature starts with a failing test (Red phase)
25
+ - **Feature-Complete Tasks**: Each task contains complete Red-Green-Refactor cycle
26
+ - **Quantification-Enforced**: All test cases, coverage requirements, and implementation scope MUST include explicit counts and enumerations
27
+
28
+ ## Task Strategy
29
+
30
+ ### Optimized Task Structure
31
+ - **1 feature = 1 task** containing complete TDD cycle internally
32
+ - Each task executes Red-Green-Refactor phases sequentially
33
+ - Task count = Feature count (typically 5 features = 5 tasks)
34
+
35
+ ### When to Use Subtasks
36
+ - Feature complexity >2500 lines or >6 files per TDD cycle
37
+ - Multiple independent sub-features needing parallel execution
38
+ - Strong technical dependency blocking (e.g., API before UI)
39
+ - Different tech stacks or domains within feature
40
+
41
+ ### Task Limits
42
+ - **Maximum 18 tasks** (hard limit for TDD workflows)
43
+ - **Feature-based**: Complete functional units with internal TDD cycles
44
+ - **Hierarchy**: Flat (<=5 simple features) | Two-level (6-10 for complex features with sub-features)
45
+ - **Re-scope**: If >18 tasks needed, break project into multiple TDD workflow sessions
46
+
47
+ ## Execution
48
+
49
+ ### Phase 0: User Configuration (Interactive)
50
+
51
+ **Purpose**: Collect user preferences before TDD task generation.
52
+
53
+ ```javascript
54
+ AskUserQuestion({
55
+ questions: [
56
+ {
57
+ question: "Do you have supplementary materials or guidelines to include?",
58
+ header: "Materials",
59
+ multiSelect: false,
60
+ options: [
61
+ { label: "No additional materials", description: "Use existing context only" },
62
+ { label: "Provide file paths", description: "I'll specify paths to include" },
63
+ { label: "Provide inline content", description: "I'll paste content directly" }
64
+ ]
65
+ },
66
+ {
67
+ question: "Select execution method for generated TDD tasks:",
68
+ header: "Execution",
69
+ multiSelect: false,
70
+ options: [
71
+ { label: "Agent (Recommended)", description: "Claude agent executes Red-Green-Refactor cycles directly" },
72
+ { label: "Hybrid", description: "Agent orchestrates, calls CLI for complex steps (Red/Green phases)" },
73
+ { label: "CLI Only", description: "All TDD cycles via CLI tools (codex/gemini/qwen)" }
74
+ ]
75
+ },
76
+ {
77
+ question: "If using CLI, which tool do you prefer?",
78
+ header: "CLI Tool",
79
+ multiSelect: false,
80
+ options: [
81
+ { label: "Codex (Recommended)", description: "Best for TDD Red-Green-Refactor cycles" },
82
+ { label: "Gemini", description: "Best for analysis and large context" },
83
+ { label: "Qwen", description: "Alternative analysis tool" },
84
+ { label: "Auto", description: "Let agent decide per-task" }
85
+ ]
86
+ }
87
+ ]
88
+ })
89
+ ```
90
+
91
+ **Handle Materials Response**:
92
+ ```javascript
93
+ if (userConfig.materials === "Provide file paths") {
94
+ const pathsResponse = AskUserQuestion({
95
+ questions: [{
96
+ question: "Enter file paths to include (comma-separated or one per line):",
97
+ header: "Paths",
98
+ multiSelect: false,
99
+ options: [
100
+ { label: "Enter paths", description: "Provide paths in text input" }
101
+ ]
102
+ }]
103
+ })
104
+ userConfig.supplementaryPaths = parseUserPaths(pathsResponse)
105
+ }
106
+ ```
107
+
108
+ **Build userConfig**:
109
+ ```javascript
110
+ const userConfig = {
111
+ supplementaryMaterials: {
112
+ type: "none|paths|inline",
113
+ content: [...],
114
+ },
115
+ executionMethod: "agent|hybrid|cli",
116
+ preferredCliTool: "codex|gemini|qwen|auto",
117
+ enableResume: true // Always enable resume for CLI executions
118
+ }
119
+ ```
120
+
121
+ **Auto Mode**: When `workflowPreferences.autoYes` is true, skip user questions, use defaults (no materials, Agent executor).
122
+
123
+ ---
124
+
125
+ ### Phase 1: Context Preparation & Discovery
126
+
127
+ **Memory-First Rule**: Skip file loading if documents already in conversation memory
128
+
129
+ **Progressive Loading Strategy**: Load context incrementally:
130
+ - **Core**: session metadata + context-package.json (always load)
131
+ - **Selective**: synthesis_output OR (guidance + relevant role analyses) - NOT all role analyses
132
+ - **On-Demand**: conflict resolution (if conflict_risk >= medium), test context
133
+
134
+ **Session Path Structure** (provided to agent):
135
+ ```
136
+ .workflow/active/WFS-{session-id}/
137
+ ├── workflow-session.json # Session metadata
138
+ ├── .process/
139
+ │ ├── context-package.json # Context package with artifact catalog
140
+ │ ├── test-context-package.json # Test coverage analysis
141
+ │ └── conflict-resolution.json # Conflict resolution (if exists)
142
+ ├── .task/ # Output: Task JSON files
143
+ │ ├── IMPL-1.json
144
+ │ ├── IMPL-2.json
145
+ │ └── ...
146
+ ├── plan.json # Output: Structured plan overview (TDD variant)
147
+ ├── IMPL_PLAN.md # Output: TDD implementation plan
148
+ └── TODO_LIST.md # Output: TODO list with TDD phases
149
+ ```
150
+
151
+ **Discovery Actions**:
152
+
153
+ 1. **Load Session Context** (if not in memory)
154
+ ```javascript
155
+ if (!memory.has("workflow-session.json")) {
156
+ Read(`.workflow/active/${sessionId}/workflow-session.json`)
157
+ }
158
+ ```
159
+
160
+ 2. **Load Context Package** (if not in memory)
161
+ ```javascript
162
+ if (!memory.has("context-package.json")) {
163
+ Read(`.workflow/active/${sessionId}/.process/context-package.json`)
164
+ }
165
+ ```
166
+
167
+ 3. **Load Test Context Package** (if not in memory)
168
+ ```javascript
169
+ if (!memory.has("test-context-package.json")) {
170
+ Read(`.workflow/active/${sessionId}/.process/test-context-package.json`)
171
+ }
172
+ ```
173
+
174
+ 4. **Extract & Load Role Analyses** (from context-package.json)
175
+ ```javascript
176
+ const roleAnalysisPaths = contextPackage.brainstorm_artifacts.role_analyses
177
+ .flatMap(role => role.files.map(f => f.path));
178
+ roleAnalysisPaths.forEach(path => Read(path));
179
+ ```
180
+
181
+ 5. **Load Conflict Resolution** (if exists)
182
+ ```javascript
183
+ if (contextPackage.conflict_detection?.resolution_file) {
184
+ Read(contextPackage.conflict_detection.resolution_file)
185
+ } else if (contextPackage.brainstorm_artifacts?.conflict_resolution?.exists) {
186
+ Read(contextPackage.brainstorm_artifacts.conflict_resolution.path)
187
+ }
188
+ ```
189
+
190
+ 6. **Code Analysis with Native Tools** (optional)
191
+ ```bash
192
+ find . -name "*test*" -type f
193
+ rg "describe|it\(|test\(" -g "*.ts"
194
+ ```
195
+
196
+ 7. **MCP External Research** (optional)
197
+ ```javascript
198
+ mcp__exa__get_code_context_exa(
199
+ query="TypeScript TDD best practices Red-Green-Refactor",
200
+ tokensNum="dynamic"
201
+ )
202
+ ```
203
+
204
+ ---
205
+
206
+ ### Step 5.1: Execute TDD Task Generation (Agent Invocation)
207
+
208
+ **Design Note**: The agent specification (action-planning-agent.md) already defines schemas, CLI execution strategies, quantification standards, and loading algorithms. This prompt provides **instance-specific parameters** and **TDD-specific requirements** only.
209
+
210
+ ```javascript
211
+ Task(
212
+ subagent_type="action-planning-agent",
213
+ run_in_background=false,
214
+ description="Generate TDD planning documents (IMPL_PLAN.md, task JSONs, TODO_LIST.md)",
215
+ prompt=`
216
+ ## TASK OBJECTIVE
217
+ Generate TDD implementation planning documents (IMPL_PLAN.md, task JSONs, TODO_LIST.md) for workflow session ${sessionId}
218
+
219
+ ## SESSION PATHS
220
+ Session Root: .workflow/active/${sessionId}/
221
+ Input:
222
+ - Session Metadata: .workflow/active/${sessionId}/workflow-session.json
223
+ - Context Package: .workflow/active/${sessionId}/.process/context-package.json
224
+ - Test Context: .workflow/active/${sessionId}/.process/test-context-package.json
225
+
226
+ Output:
227
+ - Task Dir: .workflow/active/${sessionId}/.task/
228
+ - IMPL_PLAN: .workflow/active/${sessionId}/IMPL_PLAN.md
229
+ - TODO_LIST: .workflow/active/${sessionId}/TODO_LIST.md
230
+
231
+ ## CONTEXT METADATA
232
+ Session ID: ${sessionId}
233
+ Workflow Type: TDD
234
+ MCP Capabilities: {exa_code, exa_web, code_index}
235
+
236
+ ## PROJECT CONTEXT (MANDATORY - load before planning-notes)
237
+ These files provide project-level constraints that apply to ALL tasks:
238
+
239
+ 1. **ccw spec load --category execution** (project specs and tech analysis)
240
+ 2. **ccw spec load --category test** (test framework, coverage targets, conventions)
241
+ - Contains: tech_stack, architecture_type, key_components, build_system, test_framework, coding_conventions, naming_rules, forbidden_patterns, quality_gates, custom_constraints
242
+ - Usage: Populate plan.json shared_context, align task tech choices, set correct test commands
243
+ - Apply as HARD CONSTRAINTS on all generated tasks — task implementation steps,
244
+ acceptance criteria, and convergence.verification MUST respect these guidelines
245
+ - If empty/missing: No additional constraints (proceed normally)
246
+
247
+ Loading order: \`ccw spec load --category execution\` → \`ccw spec load --category test\` → planning-notes.md → context-package.json
248
+
249
+ ## USER CONFIGURATION (from Phase 0)
250
+ Execution Method: ${userConfig.executionMethod} // agent|hybrid|cli
251
+ Preferred CLI Tool: ${userConfig.preferredCliTool} // codex|gemini|qwen|auto
252
+ Supplementary Materials: ${userConfig.supplementaryMaterials}
253
+
254
+ ## EXPLORATION CONTEXT (from context-package.exploration_results) - SUPPLEMENT ONLY
255
+ If prioritized_context is incomplete, fall back to exploration_results:
256
+ - Use aggregated_insights.critical_files for focus_paths generation
257
+ - Apply aggregated_insights.constraints to acceptance criteria
258
+ - Reference aggregated_insights.all_patterns for implementation approach
259
+ - Use aggregated_insights.all_integration_points for precise modification locations
260
+
261
+ ## TEST CONTEXT INTEGRATION
262
+ - Load test-context-package.json for existing test patterns and coverage analysis
263
+ - Extract test framework configuration (Jest/Pytest/etc.)
264
+ - Identify existing test conventions and patterns
265
+ - Map coverage gaps to TDD Red phase test targets
266
+
267
+ ## TDD DOCUMENT GENERATION TASK
268
+
269
+ ### TDD-Specific Requirements Summary
270
+
271
+ #### Task Structure Philosophy
272
+ - **1 feature = 1 task** containing complete TDD cycle internally
273
+ - Each task executes Red-Green-Refactor phases sequentially
274
+ - Task count = Feature count (typically 5 features = 5 tasks)
275
+ - Subtasks only when complexity >2500 lines or >6 files per cycle
276
+ - **Maximum 18 tasks** (hard limit for TDD workflows)
277
+
278
+ #### TDD Cycle Mapping
279
+ - **Simple features**: IMPL-N with internal Red-Green-Refactor phases
280
+ - **Complex features**: IMPL-N (container) + IMPL-N.M (subtasks)
281
+ - Each cycle includes: test_count, test_cases array, implementation_scope, expected_coverage
282
+
283
+ #### Required Outputs Summary
284
+
285
+ ##### 1. TDD Task JSON Files (.task/IMPL-*.json)
286
+ - **Location**: .workflow/active/${sessionId}/.task/
287
+ - **Schema**: Unified flat schema (task-schema.json) with TDD-specific metadata
288
+ - meta.tdd_workflow: true (REQUIRED)
289
+ - meta.max_iterations: 3 (Green phase test-fix cycle limit)
290
+ - tdd_cycles: Array with quantified test cases and coverage
291
+ - focus_paths: Absolute or clear relative paths (enhanced with exploration critical_files)
292
+ - implementation: Exactly 3 steps with tdd_phase field
293
+ 1. Red Phase (tdd_phase: "red"): Write failing tests
294
+ 2. Green Phase (tdd_phase: "green"): Implement to pass tests
295
+ 3. Refactor Phase (tdd_phase: "refactor"): Improve code quality
296
+ - pre_analysis: Include exploration integration_points analysis
297
+
298
+ ##### 2. IMPL_PLAN.md (TDD Variant)
299
+ - **Location**: .workflow/active/${sessionId}/IMPL_PLAN.md
300
+ - **Template**: ~/.ccw/workflows/cli-templates/prompts/workflow/impl-plan-template.txt
301
+ - **TDD-Specific Frontmatter**: workflow_type="tdd", tdd_workflow=true, feature_count, task_breakdown
302
+
303
+ ##### 3. TODO_LIST.md
304
+ - **Location**: .workflow/active/${sessionId}/TODO_LIST.md
305
+ - **Format**: Hierarchical task list with internal TDD phase indicators (Red -> Green -> Refactor)
306
+
307
+ ## SUCCESS CRITERIA
308
+ - All planning documents generated successfully:
309
+ - Task JSONs valid and saved to .task/ directory
310
+ - IMPL_PLAN.md created with complete TDD structure
311
+ - TODO_LIST.md generated matching task JSONs
312
+ - Return completion status with document count and task breakdown summary
313
+
314
+ ## SESSION-SPECIFIC NOTES
315
+ - Workflow Type: TDD — tasks use Red-Green-Refactor phases
316
+ - Deliverables: Task JSONs + IMPL_PLAN.md + plan.json + TODO_LIST.md (all 4 required)
317
+ - focus_paths: Derive from exploration critical_files and test context
318
+ - All other schemas, CLI execution strategies, quantification standards: Follow agent specification
319
+ `
320
+ )
321
+ ```
322
+
323
+ **Note**: Phase 0 now includes:
324
+ - Supplementary materials collection (file paths or inline content)
325
+ - Execution method preference (Agent/Hybrid/CLI)
326
+ - CLI tool preference (Codex/Gemini/Qwen/Auto)
327
+ - These preferences are passed to agent for task generation
328
+
329
+ **CLI Tool Selection**: CLI tool usage is determined semantically from user's task description. Include "use Codex/Gemini/Qwen" in your request for CLI execution.
330
+
331
+ ### Step 5.2: Parse Output
332
+
333
+ Extract: feature count, task count, CLI execution IDs assigned
334
+
335
+ ### Step 5.3: Validate Outputs
336
+
337
+ - `plan.json` exists (structured plan overview with `_metadata.plan_type: "tdd"`)
338
+ - `IMPL_PLAN.md` exists (unified plan with TDD Implementation Tasks section)
339
+ - `IMPL-*.json` files exist (one per feature, or container + subtasks for complex features)
340
+ - `TODO_LIST.md` exists with internal TDD phase indicators
341
+ - Each IMPL task includes:
342
+ - `meta.tdd_workflow: true`
343
+ - `cli_execution.id: {session_id}-{task_id}`
344
+ - `cli_execution: { "strategy": "new|resume|fork|merge_fork", ... }`
345
+ - `implementation` with exactly 3 steps (red/green/refactor)
346
+ - Green phase includes test-fix-cycle configuration
347
+ - `focus_paths`: absolute or clear relative paths (enhanced with exploration critical_files)
348
+ - `pre_analysis`: includes exploration integration_points analysis
349
+ - `IMPL_PLAN.md` contains `workflow_type: "tdd"` in frontmatter
350
+ - User configuration applied:
351
+ - If executionMethod == "cli" or "hybrid": command field added to steps
352
+ - CLI tool preference reflected in execution guidance
353
+ - Task count <=18 (compliance with hard limit)
354
+
355
+ ### Red Flag Detection (Non-Blocking Warnings)
356
+
357
+ - Task count >18: `WARNING: Task count exceeds hard limit - request re-scope`
358
+ - Missing cli_execution.id: `WARNING: Task lacks CLI execution ID for resume support`
359
+ - Missing test-fix-cycle: `WARNING: Green phase lacks auto-revert configuration`
360
+ - Generic task names: `WARNING: Vague task names suggest unclear TDD cycles`
361
+ - Missing focus_paths: `WARNING: Task lacks clear file scope for implementation`
362
+
363
+ **Action**: Log warnings to `.workflow/active/[sessionId]/.process/tdd-warnings.log` (non-blocking)
364
+
365
+ ### TodoWrite Update (Phase 5 Skill executed - tasks attached)
366
+
367
+ ```json
368
+ [
369
+ {"content": "Phase 1: Session Discovery", "status": "completed", "activeForm": "Executing session discovery"},
370
+ {"content": "Phase 2: Context Gathering", "status": "completed", "activeForm": "Executing context gathering"},
371
+ {"content": "Phase 3: Test Coverage Analysis", "status": "completed", "activeForm": "Executing test coverage analysis"},
372
+ {"content": "Phase 5: TDD Task Generation", "status": "in_progress", "activeForm": "Executing TDD task generation"},
373
+ {"content": " -> Discovery - analyze TDD requirements", "status": "in_progress", "activeForm": "Analyzing TDD requirements"},
374
+ {"content": " -> Planning - design Red-Green-Refactor cycles", "status": "pending", "activeForm": "Designing TDD cycles"},
375
+ {"content": " -> Output - generate IMPL tasks with internal TDD phases", "status": "pending", "activeForm": "Generating TDD tasks"},
376
+ {"content": "Phase 6: TDD Structure Validation", "status": "pending", "activeForm": "Validating TDD structure"}
377
+ ]
378
+ ```
379
+
380
+ **Note**: Agent execution **attaches** task-generate-tdd's 3 tasks. Orchestrator **executes** these tasks. Each generated IMPL task will contain internal Red-Green-Refactor cycle.
381
+
382
+ **Next Action**: Tasks attached -> **Execute Phase 5.1-5.3** sequentially
383
+
384
+ ### TodoWrite Update (Phase 5 completed - tasks collapsed)
385
+
386
+ ```json
387
+ [
388
+ {"content": "Phase 1: Session Discovery", "status": "completed", "activeForm": "Executing session discovery"},
389
+ {"content": "Phase 2: Context Gathering", "status": "completed", "activeForm": "Executing context gathering"},
390
+ {"content": "Phase 3: Test Coverage Analysis", "status": "completed", "activeForm": "Executing test coverage analysis"},
391
+ {"content": "Phase 5: TDD Task Generation", "status": "completed", "activeForm": "Executing TDD task generation"},
392
+ {"content": "Phase 6: TDD Structure Validation", "status": "in_progress", "activeForm": "Validating TDD structure"}
393
+ ]
394
+ ```
395
+
396
+ **Note**: Phase 5 tasks completed and collapsed to summary. Each generated IMPL task contains complete Red-Green-Refactor cycle internally.
397
+
398
+ ## TDD Task Structure Reference
399
+
400
+ **Quick Reference**:
401
+ - Each TDD task contains complete Red-Green-Refactor cycle
402
+ - Task ID format: `IMPL-N` (simple) or `IMPL-N.M` (complex subtasks)
403
+ - Required metadata:
404
+ - `meta.tdd_workflow: true`
405
+ - `meta.max_iterations: 3`
406
+ - `cli_execution.id: "{session_id}-{task_id}"`
407
+ - `cli_execution: { "strategy": "new|resume|fork|merge_fork", ... }`
408
+ - `tdd_cycles` array with quantified test cases and coverage:
409
+ ```javascript
410
+ tdd_cycles: [
411
+ {
412
+ test_count: 5,
413
+ test_cases: ["case1", "case2"],
414
+ implementation_scope: "...",
415
+ expected_coverage: ">=85%"
416
+ }
417
+ ]
418
+ ```
419
+ - `focus_paths` use absolute or clear relative paths
420
+ - `implementation`: Exactly 3 steps with `tdd_phase` field ("red", "green", "refactor")
421
+ - `pre_analysis`: includes exploration integration_points analysis
422
+ - **meta.execution_config**: Set per `userConfig.executionMethod` (agent/cli/hybrid)
423
+
424
+ ## Output Files Structure
425
+
426
+ ```
427
+ .workflow/active/{session-id}/
428
+ ├── plan.json # Structured plan overview (TDD variant)
429
+ ├── IMPL_PLAN.md # Unified plan with TDD Implementation Tasks section
430
+ ├── TODO_LIST.md # Progress tracking with internal TDD phase indicators
431
+ ├── .task/
432
+ │ ├── IMPL-1.json # Complete TDD task (Red-Green-Refactor internally)
433
+ │ ├── IMPL-2.json # Complete TDD task
434
+ │ ├── IMPL-3.json # Complex feature container (if needed)
435
+ │ ├── IMPL-3.1.json # Complex feature subtask (if needed)
436
+ │ ├── IMPL-3.2.json # Complex feature subtask (if needed)
437
+ │ └── ...
438
+ └── .process/
439
+ ├── conflict-resolution.json # Conflict resolution results (if conflict_risk >= medium)
440
+ ├── test-context-package.json # Test coverage analysis
441
+ ├── context-package.json # Input from context-gather
442
+ └── tdd-warnings.log # Non-blocking warnings
443
+ ```
444
+
445
+ ## Validation Rules
446
+
447
+ ### Task Completeness
448
+ - Every IMPL-N must contain complete TDD workflow in `implementation`
449
+ - Each task must have 3 steps with `tdd_phase`: "red", "green", "refactor"
450
+ - Every task must have `meta.tdd_workflow: true`
451
+
452
+ ### Dependency Enforcement
453
+ - Sequential features: IMPL-N depends_on ["IMPL-(N-1)"] if needed
454
+ - Complex feature subtasks: IMPL-N.M depends_on ["IMPL-N.(M-1)"] or parent dependencies
455
+ - No circular dependencies allowed
456
+
457
+ ### Task Limits
458
+ - Maximum 18 total tasks (simple + subtasks) - hard limit for TDD workflows
459
+ - Flat hierarchy (<=5 tasks) or two-level (6-18 tasks with containers)
460
+ - Re-scope requirements if >18 tasks needed
461
+
462
+ ## Output
463
+
464
+ - **File**: `plan.json` (structured plan overview)
465
+ - **File**: `IMPL_PLAN.md` (unified plan with TDD Implementation Tasks section)
466
+ - **File**: `IMPL-*.json` (task JSONs with internal TDD cycles)
467
+ - **File**: `TODO_LIST.md` (task list with TDD phase indicators)
468
+ - **File**: `.process/tdd-warnings.log` (non-blocking warnings)
469
+ - **TodoWrite**: Mark Phase 5 completed, Phase 6 in_progress
470
+
471
+ ## Next Phase
472
+
473
+ Return to orchestrator, then auto-continue to [Phase 6: TDD Structure Validation](06-tdd-structure-validation.md).
@@ -0,0 +1,189 @@
1
+ # Phase 6: TDD Structure Validation & Plan Confirmation
2
+
3
+ > **📌 COMPACT SENTINEL [Phase 6: TDD-Structure-Validation]**
4
+ > This phase contains 4 execution steps (Step 6.1 — 6.4).
5
+ > If you can read this sentinel but cannot find the full Step protocol below, context has been compressed.
6
+ > Recovery: `Read("phases/06-tdd-structure-validation.md")`
7
+
8
+ Internal validation of TDD task structure and user decision gate for next steps.
9
+
10
+ ## Objective
11
+
12
+ - Validate Red-Green-Refactor structure in all generated tasks
13
+ - Verify TDD compliance checkpoints
14
+ - Gather evidence before claiming completion
15
+ - Present Plan Confirmation Gate to user
16
+
17
+ ## Execution
18
+
19
+ ### Step 6.1: Internal Validation
20
+
21
+ Validate each generated task contains complete TDD workflow:
22
+
23
+ 1. **Task structure validation**:
24
+ - `meta.tdd_workflow: true` in all IMPL tasks
25
+ - `cli_execution.id` present (format: {session_id}-{task_id})
26
+ - `cli_execution` strategy assigned (new/resume/fork/merge_fork)
27
+ - `implementation` has exactly 3 steps
28
+ - Each step has correct `tdd_phase`: "red", "green", "refactor"
29
+ - `focus_paths` are absolute or clear relative paths
30
+ - `pre_analysis` includes exploration integration analysis
31
+
32
+ 2. **Dependency validation**:
33
+ - Sequential features: IMPL-N depends_on ["IMPL-(N-1)"] if needed
34
+ - Complex features: IMPL-N.M depends_on ["IMPL-N.(M-1)"] for subtasks
35
+ - CLI execution strategies correctly assigned based on dependency graph
36
+
37
+ 3. **Agent assignment**: All IMPL tasks use @code-developer
38
+
39
+ 4. **Test-fix cycle**: Green phase step includes test-fix-cycle logic with max_iterations
40
+
41
+ 5. **Task count**: Total tasks ≤18 (simple + subtasks hard limit)
42
+
43
+ 6. **User configuration**:
44
+ - Execution method choice reflected in task structure
45
+ - CLI tool preference documented in implementation guidance (if CLI selected)
46
+
47
+ ### Step 6.2: Red Flag Checklist
48
+
49
+ From TDD best practices:
50
+ - [ ] No tasks skip Red phase (`tdd_phase: "red"` exists in step 1)
51
+ - [ ] Test files referenced in Red phase (explicit paths, not placeholders)
52
+ - [ ] Green phase has test-fix-cycle with `max_iterations` configured
53
+ - [ ] Refactor phase has clear completion criteria
54
+
55
+ **Non-Compliance Warning Format**:
56
+ ```
57
+ ⚠️ TDD Red Flag: [issue description]
58
+ Task: [IMPL-N]
59
+ Recommendation: [action to fix]
60
+ ```
61
+
62
+ ### Step 6.3: Evidence Gathering
63
+
64
+ Before claiming completion, verify artifacts exist:
65
+
66
+ ```bash
67
+ # Verify session artifacts exist
68
+ ls -la .workflow/active/[sessionId]/{IMPL_PLAN.md,TODO_LIST.md}
69
+ ls -la .workflow/active/[sessionId]/.task/IMPL-*.json
70
+
71
+ # Count generated artifacts
72
+ echo "IMPL tasks: $(ls .workflow/active/[sessionId]/.task/IMPL-*.json 2>/dev/null | wc -l)"
73
+
74
+ # Sample task structure verification (first task)
75
+ jq '{id, tdd: .meta.tdd_workflow, cli_id: .cli_execution.id, phases: [.implementation[].tdd_phase]}' \
76
+ "$(ls .workflow/active/[sessionId]/.task/IMPL-*.json | head -1)"
77
+ ```
78
+
79
+ **Evidence Required Before Summary**:
80
+
81
+ | Evidence Type | Verification Method | Pass Criteria |
82
+ |---------------|---------------------|---------------|
83
+ | File existence | `ls -la` artifacts | All files present |
84
+ | Task count | Count IMPL-*.json | Count matches claims (≤18) |
85
+ | TDD structure | jq sample extraction | Shows red/green/refactor + cli_execution.id |
86
+ | CLI execution IDs | jq extraction | All tasks have cli_execution.id assigned |
87
+ | Warning log | Check tdd-warnings.log | Logged (may be empty) |
88
+
89
+ ### Step 6.4: Plan Confirmation Gate
90
+
91
+ Present user with action choices:
92
+
93
+ ```javascript
94
+ console.log(`
95
+ TDD Planning complete for session: ${sessionId}
96
+
97
+ Features analyzed: [N]
98
+ Total tasks: [M] (1 task per simple feature + subtasks for complex features)
99
+
100
+ Task breakdown:
101
+ - Simple features: [K] tasks (IMPL-1 to IMPL-K)
102
+ - Complex features: [L] features with [P] subtasks
103
+ - Total task count: [M] (within 18-task hard limit)
104
+
105
+ Structure:
106
+ - IMPL-1: {Feature 1 Name} (Internal: Red → Green → Refactor)
107
+ - IMPL-2: {Feature 2 Name} (Internal: Red → Green → Refactor)
108
+ - IMPL-3: {Complex Feature} (Container)
109
+ - IMPL-3.1: {Sub-feature A} (Internal: Red → Green → Refactor)
110
+ - IMPL-3.2: {Sub-feature B} (Internal: Red → Green → Refactor)
111
+ [...]
112
+
113
+ Plans generated:
114
+ - Unified Implementation Plan: .workflow/active/[sessionId]/IMPL_PLAN.md
115
+ (includes TDD Implementation Tasks section with workflow_type: "tdd")
116
+ - Task List: .workflow/active/[sessionId]/TODO_LIST.md
117
+ (with internal TDD phase indicators and CLI execution strategies)
118
+ - Task JSONs: .workflow/active/[sessionId]/.task/IMPL-*.json
119
+ (with cli_execution.id and execution strategies for resume support)
120
+
121
+ TDD Configuration:
122
+ - Each task contains complete Red-Green-Refactor cycle
123
+ - Green phase includes test-fix cycle (max 3 iterations)
124
+ - Auto-revert on max iterations reached
125
+ - CLI execution strategies: new/resume/fork/merge_fork based on dependency graph
126
+
127
+ User Configuration Applied:
128
+ - Execution Method: [agent|hybrid|cli]
129
+ - CLI Tool Preference: [codex|gemini|qwen|auto]
130
+ - Supplementary Materials: [included|none]
131
+ - Task generation follows cli-tools-usage.md guidelines
132
+
133
+ ⚠️ ACTION REQUIRED: Before execution, ensure you understand WHY each Red phase test is expected to fail.
134
+ This is crucial for valid TDD - if you don't know why the test fails, you can't verify it tests the right thing.
135
+ `);
136
+
137
+ // Ask user for next action
138
+ const userChoice = AskUserQuestion({
139
+ questions: [{
140
+ question: "TDD Planning complete. What would you like to do next?",
141
+ header: "Next Action",
142
+ multiSelect: false,
143
+ options: [
144
+ {
145
+ label: "Verify TDD Compliance (Recommended)",
146
+ description: "Run full TDD compliance verification to check task chain structure, coverage, and Red-Green-Refactor cycle quality."
147
+ },
148
+ {
149
+ label: "Start Execution",
150
+ description: "Begin implementing TDD tasks immediately with Red-Green-Refactor cycles."
151
+ },
152
+ {
153
+ label: "Review Status Only",
154
+ description: "View TDD task breakdown and session status without taking further action."
155
+ }
156
+ ]
157
+ }]
158
+ });
159
+
160
+ // Execute based on user choice
161
+ if (userChoice === "Verify TDD Compliance (Recommended)") {
162
+ // Route to Phase 7 (tdd-verify) within this skill
163
+ // Orchestrator reads phases/07-tdd-verify.md and executes
164
+ } else if (userChoice === "Start Execution") {
165
+ Skill(skill="workflow-execute", args="--session " + sessionId);
166
+ } else if (userChoice === "Review Status Only") {
167
+ // Display session status inline
168
+ const sessionMeta = JSON.parse(Read(`.workflow/active/${sessionId}/workflow-session.json`));
169
+ const todoList = Read(`.workflow/active/${sessionId}/TODO_LIST.md`);
170
+ console.log(`\nSession: ${sessionId}`);
171
+ console.log(`Status: ${sessionMeta.status}`);
172
+ console.log(`\n--- TODO List ---\n${todoList}`);
173
+ }
174
+ ```
175
+
176
+ **Auto Mode**: When `workflowPreferences.autoYes` is true, auto-select "Verify TDD Compliance", then auto-continue to execute if quality gate is APPROVED.
177
+
178
+ ## Output
179
+
180
+ - **Validation**: TDD structure verified
181
+ - **User Decision**: Route to Phase 7 / Execute / Review
182
+ - **TodoWrite**: Mark Phase 6 completed
183
+
184
+ ## Next Phase (Conditional)
185
+
186
+ Based on user's plan confirmation choice:
187
+ - If "Verify" → [Phase 7: TDD Verification](07-tdd-verify.md)
188
+ - If "Execute" → Skill(skill="workflow-execute")
189
+ - If "Review" -> Display session status inline