claude-code-workflow 7.2.10 → 7.2.11

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 (322) hide show
  1. package/.claude/agents/cli-planning-agent.md +3 -0
  2. package/.claude/agents/debug-explore-agent.md +1 -0
  3. package/.claude/agents/tdd-developer.md +1 -0
  4. package/.claude/agents/team-worker.md +1 -1
  5. package/.claude/agents/test-action-planning-agent.md +3 -0
  6. package/.claude/agents/test-context-search-agent.md +1 -0
  7. package/.claude/agents/test-fix-agent.md +3 -0
  8. package/.claude/skills/review-code/SKILL.md +2 -0
  9. package/.claude/skills/review-cycle/SKILL.md +4 -0
  10. package/.claude/skills/skill-simplify/phases/02-optimize.md +4 -0
  11. package/.claude/skills/spec-generator/phases/05-epics-stories.md +4 -0
  12. package/.claude/skills/team-arch-opt/specs/team-config.json +5 -5
  13. package/.claude/skills/team-frontend-debug/roles/analyzer/role.md +3 -2
  14. package/.claude/skills/team-perf-opt/roles/coordinator/commands/monitor.md +1 -1
  15. package/.claude/skills/team-perf-opt/specs/team-config.json +5 -5
  16. package/.claude/skills/team-quality-assurance/roles/executor/role.md +2 -1
  17. package/.claude/skills/team-review/roles/reviewer/role.md +2 -1
  18. package/.claude/skills/team-tech-debt/roles/scanner/role.md +2 -1
  19. package/.claude/skills/team-testing/roles/executor/role.md +2 -1
  20. package/.claude/skills/team-testing/roles/generator/role.md +2 -1
  21. package/.claude/skills/team-ultra-analyze/roles/explorer/role.md +2 -1
  22. package/.claude/skills/team-ux-improve/specs/team-config.json +6 -6
  23. package/.claude/skills/workflow-execute/phases/06-review.md +4 -4
  24. package/.claude/skills/workflow-lite-test-review/SKILL.md +2 -0
  25. package/.claude/skills/workflow-plan/phases/05-plan-verify.md +4 -0
  26. package/.claude/skills/workflow-tdd-plan/phases/02-context-gathering.md +1 -0
  27. package/.claude/skills/workflow-tdd-plan/phases/05-tdd-task-generation.md +2 -1
  28. package/.claude/skills/workflow-test-fix/phases/02-test-context-gather.md +1 -0
  29. package/.claude/skills/workflow-test-fix/phases/05-test-cycle-execute.md +2 -1
  30. package/.claude/skills/workflow-tune/SKILL.md +487 -0
  31. package/.claude/skills/workflow-tune/phases/01-setup.md +548 -0
  32. package/.claude/skills/workflow-tune/phases/02-step-execute.md +197 -0
  33. package/.claude/skills/workflow-tune/phases/03-step-analyze.md +386 -0
  34. package/.claude/skills/workflow-tune/phases/04-synthesize.md +257 -0
  35. package/.claude/skills/workflow-tune/phases/05-optimize-report.md +246 -0
  36. package/.claude/skills/workflow-tune/specs/workflow-eval-criteria.md +57 -0
  37. package/.claude/skills/workflow-tune/templates/step-analysis-prompt.md +88 -0
  38. package/.claude/skills/workflow-tune/templates/synthesis-prompt.md +90 -0
  39. package/.codex/skills/analyze-with-file/SKILL.md +2 -0
  40. package/.codex/skills/debug-with-file/SKILL.md +4 -0
  41. package/.codex/skills/issue-discover/SKILL.md +1 -0
  42. package/.codex/skills/review-cycle/phases/02-parallel-review.md +3 -0
  43. package/.codex/skills/team-designer/agents/validation-reporter.md +186 -0
  44. package/.codex/skills/team-iterdev/agents/gc-controller.md +193 -0
  45. package/.codex/skills/team-iterdev/agents/task-analyzer.md +206 -0
  46. package/.codex/skills/team-lifecycle-v4/agents/quality-gate.md +165 -0
  47. package/.codex/skills/team-lifecycle-v4/agents/requirement-clarifier.md +163 -0
  48. package/.codex/skills/team-lifecycle-v4/agents/supervisor.md +182 -0
  49. package/.codex/skills/team-uidesign/agents/completion-handler.md +177 -0
  50. package/.codex/skills/team-uidesign/agents/gc-loop-handler.md +162 -0
  51. package/.codex/skills/workflow-test-fix-cycle/phases/01-test-fix-gen.md +4 -0
  52. package/.codex/skills/workflow-test-fix-cycle/phases/02-test-cycle-execute.md +2 -0
  53. package/ccw/dist/commands/spec.d.ts.map +1 -1
  54. package/ccw/dist/commands/spec.js +9 -4
  55. package/ccw/dist/commands/spec.js.map +1 -1
  56. package/ccw/dist/core/routes/codexlens-routes.d.ts.map +1 -1
  57. package/ccw/dist/core/routes/codexlens-routes.js +3 -1
  58. package/ccw/dist/core/routes/codexlens-routes.js.map +1 -1
  59. package/ccw/dist/tools/spec-index-builder.d.ts +8 -4
  60. package/ccw/dist/tools/spec-index-builder.d.ts.map +1 -1
  61. package/ccw/dist/tools/spec-index-builder.js +8 -4
  62. package/ccw/dist/tools/spec-index-builder.js.map +1 -1
  63. package/ccw/dist/tools/spec-init.d.ts +1 -1
  64. package/ccw/dist/tools/spec-init.d.ts.map +1 -1
  65. package/ccw/dist/tools/spec-init.js +127 -0
  66. package/ccw/dist/tools/spec-init.js.map +1 -1
  67. package/ccw/dist/tools/spec-loader.d.ts.map +1 -1
  68. package/ccw/dist/tools/spec-loader.js +2 -1
  69. package/ccw/dist/tools/spec-loader.js.map +1 -1
  70. package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js → AlertDialog-BW9jiZ-p.js} +2 -2
  71. package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js.map → AlertDialog-BW9jiZ-p.js.map} +1 -1
  72. package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js → AnalysisPage-ds-w_nVO.js} +2 -2
  73. package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js.map → AnalysisPage-ds-w_nVO.js.map} +1 -1
  74. package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js → ApiSettingsPage-DlCbXxTz.js} +2 -2
  75. package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js.map → ApiSettingsPage-DlCbXxTz.js.map} +1 -1
  76. package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js → CliModeToggle-Dq3nL4fF.js} +2 -2
  77. package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js.map → CliModeToggle-Dq3nL4fF.js.map} +1 -1
  78. package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js → CliSessionSharePage-BNDkEE4u.js} +2 -2
  79. package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js.map → CliSessionSharePage-BNDkEE4u.js.map} +1 -1
  80. package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js → CliViewerPage-ChM-uNx_.js} +2 -2
  81. package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js.map → CliViewerPage-ChM-uNx_.js.map} +1 -1
  82. package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js +2 -0
  83. package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js.map +1 -0
  84. package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js → Collapsible-CRNbykXN.js} +2 -2
  85. package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js.map → Collapsible-CRNbykXN.js.map} +1 -1
  86. package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js → CommandsManagerPage-C2JWcemF.js} +2 -2
  87. package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js.map → CommandsManagerPage-C2JWcemF.js.map} +1 -1
  88. package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js → DeepWikiPage-CvleOtJy.js} +2 -2
  89. package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js.map → DeepWikiPage-CvleOtJy.js.map} +1 -1
  90. package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js → EndpointsPage-CMOWQG64.js} +2 -2
  91. package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js.map → EndpointsPage-CMOWQG64.js.map} +1 -1
  92. package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js → ExplorerPage-DaFPRlNo.js} +2 -2
  93. package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js.map → ExplorerPage-DaFPRlNo.js.map} +1 -1
  94. package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js → FixSessionPage-CC4p04Az.js} +2 -2
  95. package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js.map → FixSessionPage-CC4p04Az.js.map} +1 -1
  96. package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js → FloatingFileBrowser-DROn1xZ5.js} +2 -2
  97. package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js.map → FloatingFileBrowser-DROn1xZ5.js.map} +1 -1
  98. package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js → FloatingPanel-CmL_yhDv.js} +2 -2
  99. package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js.map → FloatingPanel-CmL_yhDv.js.map} +1 -1
  100. package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js → GraphExplorerPage-DCV5ybKE.js} +2 -2
  101. package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js.map → GraphExplorerPage-DCV5ybKE.js.map} +1 -1
  102. package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js → HistoryPage-D0fYQZgc.js} +2 -2
  103. package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js.map → HistoryPage-D0fYQZgc.js.map} +1 -1
  104. package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js → HookManagerPage-D2FuJfsM.js} +2 -2
  105. package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js.map → HookManagerPage-D2FuJfsM.js.map} +1 -1
  106. package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js → InstallationsPage-tjklillZ.js} +2 -2
  107. package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js.map → InstallationsPage-tjklillZ.js.map} +1 -1
  108. package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js → IssueHubPage-E4JVrhO1.js} +2 -2
  109. package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js.map → IssueHubPage-E4JVrhO1.js.map} +1 -1
  110. package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js → LiteTasksPage-aJuRoyLt.js} +2 -2
  111. package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js.map → LiteTasksPage-aJuRoyLt.js.map} +1 -1
  112. package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js → McpManagerPage-BJeuWJv1.js} +2 -2
  113. package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js.map → McpManagerPage-BJeuWJv1.js.map} +1 -1
  114. package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js → MemoryPage-BI4FAXhs.js} +2 -2
  115. package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js.map → MemoryPage-BI4FAXhs.js.map} +1 -1
  116. package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js → NotFoundPage-DD2svchp.js} +2 -2
  117. package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js.map → NotFoundPage-DD2svchp.js.map} +1 -1
  118. package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js → OrchestratorPage-FC__7yYa.js} +2 -2
  119. package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js.map → OrchestratorPage-FC__7yYa.js.map} +1 -1
  120. package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js → ProjectOverviewPage-DBB_-FzV.js} +2 -2
  121. package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js.map → ProjectOverviewPage-DBB_-FzV.js.map} +1 -1
  122. package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js → PromptHistoryPage-BwOAvCH8.js} +2 -2
  123. package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js.map → PromptHistoryPage-BwOAvCH8.js.map} +1 -1
  124. package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js → ReviewSessionPage-Dd1-g_gp.js} +2 -2
  125. package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js.map → ReviewSessionPage-Dd1-g_gp.js.map} +1 -1
  126. package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js → RulesManagerPage-B3RGdsKD.js} +2 -2
  127. package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js.map → RulesManagerPage-B3RGdsKD.js.map} +1 -1
  128. package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js → SessionDetailPage-DM-W5R8K.js} +2 -2
  129. package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js.map → SessionDetailPage-DM-W5R8K.js.map} +1 -1
  130. package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js → SessionsPage-BVz1KCc7.js} +2 -2
  131. package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js.map → SessionsPage-BVz1KCc7.js.map} +1 -1
  132. package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js → SettingsPage-ComW7EZS.js} +4 -4
  133. package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js.map → SettingsPage-ComW7EZS.js.map} +1 -1
  134. package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js → SkillsManagerPage-CKom9XwV.js} +2 -2
  135. package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js.map → SkillsManagerPage-CKom9XwV.js.map} +1 -1
  136. package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js → SpecsSettingsPage-DQz7WP2s.js} +2 -2
  137. package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js.map → SpecsSettingsPage-DQz7WP2s.js.map} +1 -1
  138. package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js → Switch-BPMdND9H.js} +2 -2
  139. package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js.map → Switch-BPMdND9H.js.map} +1 -1
  140. package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js → TabsNavigation-qqt70VYL.js} +2 -2
  141. package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js.map → TabsNavigation-qqt70VYL.js.map} +1 -1
  142. package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js → TaskDrawer-BqK_qiHX.js} +2 -2
  143. package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js.map → TaskDrawer-BqK_qiHX.js.map} +1 -1
  144. package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js → TeamPage-u5_i0Rgh.js} +2 -2
  145. package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js.map → TeamPage-u5_i0Rgh.js.map} +1 -1
  146. package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js → TerminalDashboardPage-rUtC9e40.js} +2 -2
  147. package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js.map → TerminalDashboardPage-rUtC9e40.js.map} +1 -1
  148. package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js → archive-C3u8YNQF.js} +2 -2
  149. package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js.map → archive-C3u8YNQF.js.map} +1 -1
  150. package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js → archive-restore-DfQ998g5.js} +2 -2
  151. package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js.map → archive-restore-DfQ998g5.js.map} +1 -1
  152. package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js → arrow-right-BshJM9Po.js} +2 -2
  153. package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js.map → arrow-right-BshJM9Po.js.map} +1 -1
  154. package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js → bookmark-plus-D03qJyOZ.js} +2 -2
  155. package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js.map → bookmark-plus-D03qJyOZ.js.map} +1 -1
  156. package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js → bot-CyzWuwq0.js} +2 -2
  157. package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js.map → bot-CyzWuwq0.js.map} +1 -1
  158. package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js → braces-BPgtyjsG.js} +2 -2
  159. package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js.map → braces-BPgtyjsG.js.map} +1 -1
  160. package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js → circle-stop-Dix1AOmw.js} +2 -2
  161. package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js.map → circle-stop-Dix1AOmw.js.map} +1 -1
  162. package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js → cpu-CCQ4Q0Zh.js} +2 -2
  163. package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js.map → cpu-CCQ4Q0Zh.js.map} +1 -1
  164. package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js → ellipsis-vertical-BpTysg-Y.js} +2 -2
  165. package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js.map → ellipsis-vertical-BpTysg-Y.js.map} +1 -1
  166. package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js → eye-DGY1rAZs.js} +2 -2
  167. package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js.map → eye-DGY1rAZs.js.map} +1 -1
  168. package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js → eye-off-D8t3JfWG.js} +2 -2
  169. package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js.map → eye-off-D8t3JfWG.js.map} +1 -1
  170. package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js → file-json-BAdJb0n8.js} +2 -2
  171. package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js.map → file-json-BAdJb0n8.js.map} +1 -1
  172. package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js → file-text-DrJFiOUB.js} +2 -2
  173. package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js.map → file-text-DrJFiOUB.js.map} +1 -1
  174. package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js → filter-CKqzYbz7.js} +2 -2
  175. package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js.map → filter-CKqzYbz7.js.map} +1 -1
  176. package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js → folder-CV8511y9.js} +2 -2
  177. package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js.map → folder-CV8511y9.js.map} +1 -1
  178. package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js → gauge-XKvmu_uU.js} +2 -2
  179. package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js.map → gauge-XKvmu_uU.js.map} +1 -1
  180. package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js → globe-C56cDUzX.js} +2 -2
  181. package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js.map → globe-C56cDUzX.js.map} +1 -1
  182. package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js → grid-3x3-Bya-suFW.js} +2 -2
  183. package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js.map → grid-3x3-Bya-suFW.js.map} +1 -1
  184. package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js → hard-drive-CmuTZpsB.js} +2 -2
  185. package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js.map → hard-drive-CmuTZpsB.js.map} +1 -1
  186. package/ccw/frontend/dist/assets/{hash-Bd1RD285.js → hash-CRPT_tJQ.js} +2 -2
  187. package/ccw/frontend/dist/assets/{hash-Bd1RD285.js.map → hash-CRPT_tJQ.js.map} +1 -1
  188. package/ccw/frontend/dist/assets/{history-eyyCQA6b.js → history-C1pJZQCL.js} +2 -2
  189. package/ccw/frontend/dist/assets/{history-eyyCQA6b.js.map → history-C1pJZQCL.js.map} +1 -1
  190. package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js → index-B6TpijCe.js} +2 -2
  191. package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js.map → index-B6TpijCe.js.map} +1 -1
  192. package/ccw/frontend/dist/assets/{index-b2C0iFd1.js → index-Bcq-7r6F.js} +2 -2
  193. package/ccw/frontend/dist/assets/{index-b2C0iFd1.js.map → index-Bcq-7r6F.js.map} +1 -1
  194. package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js → index-CI8-rBff.js} +2 -2
  195. package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js.map → index-CI8-rBff.js.map} +1 -1
  196. package/ccw/frontend/dist/assets/{index-CY6Lueph.js → index-Dmt9OiEf.js} +2 -2
  197. package/ccw/frontend/dist/assets/{index-CY6Lueph.js.map → index-Dmt9OiEf.js.map} +1 -1
  198. package/ccw/frontend/dist/assets/{index-DfeBbFXo.js → index-anSMmEF8.js} +2 -2
  199. package/ccw/frontend/dist/assets/{index-DfeBbFXo.js.map → index-anSMmEF8.js.map} +1 -1
  200. package/ccw/frontend/dist/assets/{index-B6I7GQC5.js → index-dWT2M6Ef.js} +4 -4
  201. package/ccw/frontend/dist/assets/{index-B6I7GQC5.js.map → index-dWT2M6Ef.js.map} +1 -1
  202. package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js → layout-grid-TSO0BFQE.js} +2 -2
  203. package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js.map → layout-grid-TSO0BFQE.js.map} +1 -1
  204. package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js → lightbulb-Caj6fIQD.js} +2 -2
  205. package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js.map → lightbulb-Caj6fIQD.js.map} +1 -1
  206. package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js → link-2-DE9lMxa-.js} +2 -2
  207. package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js.map → link-2-DE9lMxa-.js.map} +1 -1
  208. package/ccw/frontend/dist/assets/{link-CL4JmoHb.js → link-BZtPgLW0.js} +2 -2
  209. package/ccw/frontend/dist/assets/{link-CL4JmoHb.js.map → link-BZtPgLW0.js.map} +1 -1
  210. package/ccw/frontend/dist/assets/{list-CDmYFcio.js → list-DubWyY-U.js} +2 -2
  211. package/ccw/frontend/dist/assets/{list-CDmYFcio.js.map → list-DubWyY-U.js.map} +1 -1
  212. package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js → map-pin-DwN_48AF.js} +2 -2
  213. package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js.map → map-pin-DwN_48AF.js.map} +1 -1
  214. package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js → messages-square-bjxvaiM9.js} +2 -2
  215. package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js.map → messages-square-bjxvaiM9.js.map} +1 -1
  216. package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js → minimize-2-CGfBKD_V.js} +2 -2
  217. package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js.map → minimize-2-CGfBKD_V.js.map} +1 -1
  218. package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js → package-nzWY6ilt.js} +2 -2
  219. package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js.map → package-nzWY6ilt.js.map} +1 -1
  220. package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js → plug-CiLce49C.js} +2 -2
  221. package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js.map → plug-CiLce49C.js.map} +1 -1
  222. package/ccw/frontend/dist/assets/{power-DmIojFl-.js → power-CFLmB-U9.js} +2 -2
  223. package/ccw/frontend/dist/assets/{power-DmIojFl-.js.map → power-CFLmB-U9.js.map} +1 -1
  224. package/ccw/frontend/dist/assets/{save-BFa03OnG.js → save-DuO6OF0C.js} +2 -2
  225. package/ccw/frontend/dist/assets/{save-BFa03OnG.js.map → save-DuO6OF0C.js.map} +1 -1
  226. package/ccw/frontend/dist/assets/{send-Vet3sN4J.js → send-CZk9p0mM.js} +2 -2
  227. package/ccw/frontend/dist/assets/{send-Vet3sN4J.js.map → send-CZk9p0mM.js.map} +1 -1
  228. package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js → square-check-big-BY_1YQQg.js} +2 -2
  229. package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js.map → square-check-big-BY_1YQQg.js.map} +1 -1
  230. package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js → square-pen-CnZgm6g-.js} +2 -2
  231. package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js.map → square-pen-CnZgm6g-.js.map} +1 -1
  232. package/ccw/frontend/dist/assets/{star-BCQHcnSe.js → star-Cn1F0qy7.js} +2 -2
  233. package/ccw/frontend/dist/assets/{star-BCQHcnSe.js.map → star-Cn1F0qy7.js.map} +1 -1
  234. package/ccw/frontend/dist/assets/{style-CJsrp48L.js → style-Dxs1iXCV.js} +2 -2
  235. package/ccw/frontend/dist/assets/{style-CJsrp48L.js.map → style-Dxs1iXCV.js.map} +1 -1
  236. package/ccw/frontend/dist/assets/{target-CBzCJCB1.js → target-Bz1fLRKH.js} +2 -2
  237. package/ccw/frontend/dist/assets/{target-CBzCJCB1.js.map → target-Bz1fLRKH.js.map} +1 -1
  238. package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js → test-tube-C6qCYlDr.js} +2 -2
  239. package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js.map → test-tube-C6qCYlDr.js.map} +1 -1
  240. package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js → upload-C71kd4Qs.js} +2 -2
  241. package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js.map → upload-C71kd4Qs.js.map} +1 -1
  242. package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js → useApiSettings-CqP2BAJ7.js} +2 -2
  243. package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js.map → useApiSettings-CqP2BAJ7.js.map} +1 -1
  244. package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js → useCli-PCoPoVeM.js} +2 -2
  245. package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js.map → useCli-PCoPoVeM.js.map} +1 -1
  246. package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js → useCommands-3OfPQPw4.js} +2 -2
  247. package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js.map → useCommands-3OfPQPw4.js.map} +1 -1
  248. package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js → useDebounce-bXiFhQx9.js} +2 -2
  249. package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js.map → useDebounce-bXiFhQx9.js.map} +1 -1
  250. package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js → useFileExplorer-DEyUm46_.js} +2 -2
  251. package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js.map → useFileExplorer-DEyUm46_.js.map} +1 -1
  252. package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js → useLocale-sXTrdxcJ.js} +2 -2
  253. package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js.map → useLocale-sXTrdxcJ.js.map} +1 -1
  254. package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js → useSkills-D0W0kXYm.js} +3 -3
  255. package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js.map → useSkills-D0W0kXYm.js.map} +1 -1
  256. package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js → useSystemSettings-DZ-8lZsG.js} +2 -2
  257. package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js.map → useSystemSettings-DZ-8lZsG.js.map} +1 -1
  258. package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js → wand-sparkles-83GmAYuw.js} +2 -2
  259. package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js.map → wand-sparkles-83GmAYuw.js.map} +1 -1
  260. package/ccw/frontend/dist/index.html +1 -1
  261. package/package.json +1 -1
  262. package/.claude/skills/team-arch-opt/role-specs/analyzer.md +0 -80
  263. package/.claude/skills/team-arch-opt/role-specs/designer.md +0 -118
  264. package/.claude/skills/team-arch-opt/role-specs/refactorer.md +0 -106
  265. package/.claude/skills/team-arch-opt/role-specs/reviewer.md +0 -116
  266. package/.claude/skills/team-arch-opt/role-specs/validator.md +0 -117
  267. package/.claude/skills/team-brainstorm/role-specs/challenger.md +0 -63
  268. package/.claude/skills/team-brainstorm/role-specs/evaluator.md +0 -58
  269. package/.claude/skills/team-brainstorm/role-specs/ideator.md +0 -71
  270. package/.claude/skills/team-brainstorm/role-specs/synthesizer.md +0 -59
  271. package/.claude/skills/team-frontend/role-specs/analyst.md +0 -91
  272. package/.claude/skills/team-frontend/role-specs/architect.md +0 -85
  273. package/.claude/skills/team-frontend/role-specs/developer.md +0 -92
  274. package/.claude/skills/team-frontend/role-specs/qa.md +0 -78
  275. package/.claude/skills/team-issue/role-specs/explorer.md +0 -95
  276. package/.claude/skills/team-issue/role-specs/implementer.md +0 -89
  277. package/.claude/skills/team-issue/role-specs/integrator.md +0 -86
  278. package/.claude/skills/team-issue/role-specs/planner.md +0 -83
  279. package/.claude/skills/team-issue/role-specs/reviewer.md +0 -89
  280. package/.claude/skills/team-iterdev/role-specs/architect.md +0 -64
  281. package/.claude/skills/team-iterdev/role-specs/developer.md +0 -73
  282. package/.claude/skills/team-iterdev/role-specs/reviewer.md +0 -65
  283. package/.claude/skills/team-iterdev/role-specs/tester.md +0 -87
  284. package/.claude/skills/team-perf-opt/role-specs/benchmarker.md +0 -110
  285. package/.claude/skills/team-perf-opt/role-specs/optimizer.md +0 -102
  286. package/.claude/skills/team-perf-opt/role-specs/profiler.md +0 -73
  287. package/.claude/skills/team-perf-opt/role-specs/reviewer.md +0 -91
  288. package/.claude/skills/team-perf-opt/role-specs/strategist.md +0 -114
  289. package/.claude/skills/team-planex/role-specs/executor.md +0 -90
  290. package/.claude/skills/team-planex/role-specs/planner.md +0 -110
  291. package/.claude/skills/team-quality-assurance/role-specs/analyst.md +0 -79
  292. package/.claude/skills/team-quality-assurance/role-specs/executor.md +0 -64
  293. package/.claude/skills/team-quality-assurance/role-specs/generator.md +0 -67
  294. package/.claude/skills/team-quality-assurance/role-specs/scout.md +0 -66
  295. package/.claude/skills/team-quality-assurance/role-specs/strategist.md +0 -70
  296. package/.claude/skills/team-review/role-specs/fixer.md +0 -75
  297. package/.claude/skills/team-review/role-specs/reviewer.md +0 -66
  298. package/.claude/skills/team-review/role-specs/scanner.md +0 -70
  299. package/.claude/skills/team-roadmap-dev/role-specs/executor.md +0 -71
  300. package/.claude/skills/team-roadmap-dev/role-specs/planner.md +0 -77
  301. package/.claude/skills/team-roadmap-dev/role-specs/verifier.md +0 -73
  302. package/.claude/skills/team-tech-debt/role-specs/assessor.md +0 -70
  303. package/.claude/skills/team-tech-debt/role-specs/executor.md +0 -80
  304. package/.claude/skills/team-tech-debt/role-specs/planner.md +0 -71
  305. package/.claude/skills/team-tech-debt/role-specs/scanner.md +0 -85
  306. package/.claude/skills/team-tech-debt/role-specs/validator.md +0 -83
  307. package/.claude/skills/team-testing/role-specs/analyst.md +0 -94
  308. package/.claude/skills/team-testing/role-specs/executor.md +0 -97
  309. package/.claude/skills/team-testing/role-specs/generator.md +0 -96
  310. package/.claude/skills/team-testing/role-specs/strategist.md +0 -82
  311. package/.claude/skills/team-uidesign/role-specs/designer.md +0 -72
  312. package/.claude/skills/team-uidesign/role-specs/implementer.md +0 -74
  313. package/.claude/skills/team-uidesign/role-specs/researcher.md +0 -84
  314. package/.claude/skills/team-uidesign/role-specs/reviewer.md +0 -70
  315. package/.claude/skills/team-ux-improve/role-specs/designer.md +0 -191
  316. package/.claude/skills/team-ux-improve/role-specs/diagnoser.md +0 -110
  317. package/.claude/skills/team-ux-improve/role-specs/explorer.md +0 -109
  318. package/.claude/skills/team-ux-improve/role-specs/implementer.md +0 -164
  319. package/.claude/skills/team-ux-improve/role-specs/scanner.md +0 -117
  320. package/.claude/skills/team-ux-improve/role-specs/tester.md +0 -163
  321. package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js +0 -2
  322. package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js.map +0 -1
@@ -1,73 +0,0 @@
1
- ---
2
- prefix: VERIFY
3
- inner_loop: true
4
- cli_tools:
5
- - gemini --mode analysis
6
- message_types:
7
- success: verify_passed
8
- failure: gaps_found
9
- error: error
10
- ---
11
-
12
- # Verifier
13
-
14
- Goal-backward verification per phase. Reads convergence criteria from IMPL-*.json task files and checks against actual codebase state. Read-only — never modifies code. Produces verification.md with pass/fail and structured gap lists.
15
-
16
- ## Phase 2: Context Loading
17
-
18
- | Input | Source | Required |
19
- |-------|--------|----------|
20
- | Task JSONs | <session>/phase-{N}/.task/IMPL-*.json | Yes |
21
- | Summaries | <session>/phase-{N}/summary-*.md | Yes |
22
- | Wisdom | <session>/wisdom/ | No |
23
-
24
- 1. Glob IMPL-*.json files, extract convergence criteria from each task
25
- 2. Glob summary-*.md files, parse frontmatter (task, affects, provides)
26
- 3. If no task JSONs or summaries found → error to coordinator
27
-
28
- ## Phase 3: Goal-Backward Verification
29
-
30
- For each task's convergence criteria, execute appropriate check:
31
-
32
- | Criteria Type | Method |
33
- |---------------|--------|
34
- | File existence | `test -f <path>` |
35
- | Command execution | Run command, check exit code |
36
- | Pattern match | Grep for pattern in specified files |
37
- | Semantic check | Optional: Gemini CLI (`--mode analysis --rule analysis-review-code-quality`) |
38
-
39
- **Per task scoring**:
40
-
41
- | Result | Condition |
42
- |--------|-----------|
43
- | pass | All criteria met |
44
- | partial | Some criteria met |
45
- | fail | No criteria met or critical check failed |
46
-
47
- Collect all gaps from partial/failed tasks with structured format:
48
- - task ID, criteria type, expected value, actual value
49
-
50
- ## Phase 4: Compile Results
51
-
52
- 1. Aggregate per-task results: count passed, partial, failed
53
- 2. Determine overall status:
54
- - `passed` if gaps.length === 0
55
- - `gaps_found` otherwise
56
- 3. Write `<session>/phase-{N}/verification.md`:
57
-
58
- ```yaml
59
- ---
60
- phase: <N>
61
- status: passed | gaps_found
62
- tasks_checked: <count>
63
- tasks_passed: <count>
64
- gaps:
65
- - task: "<task-id>"
66
- type: "<criteria-type>"
67
- item: "<description>"
68
- expected: "<expected>"
69
- actual: "<actual>"
70
- ---
71
- ```
72
-
73
- 4. Update .msg/meta.json with verification summary
@@ -1,70 +0,0 @@
1
- ---
2
- prefix: TDEVAL
3
- inner_loop: false
4
- message_types:
5
- success: assessment_complete
6
- error: error
7
- ---
8
-
9
- # Tech Debt Assessor
10
-
11
- Quantitative evaluator for tech debt items. Score each debt item on business impact (1-5) and fix cost (1-5), classify into priority quadrants, produce priority-matrix.json.
12
-
13
- ## Phase 2: Load Debt Inventory
14
-
15
- | Input | Source | Required |
16
- |-------|--------|----------|
17
- | Session path | task description (regex: `session:\s*(.+)`) | Yes |
18
- | .msg/meta.json | <session>/.msg/meta.json | Yes |
19
- | Debt inventory | meta.json:debt_inventory OR <session>/scan/debt-inventory.json | Yes |
20
-
21
- 1. Extract session path from task description
22
- 2. Read .msg/meta.json for team context
23
- 3. Load debt_inventory from shared memory or fallback to debt-inventory.json file
24
- 4. If debt_inventory is empty -> report empty assessment and exit
25
-
26
- ## Phase 3: Evaluate Each Item
27
-
28
- **Strategy selection**:
29
-
30
- | Item Count | Strategy |
31
- |------------|----------|
32
- | <= 10 | Heuristic: severity-based impact + effort-based cost |
33
- | 11-50 | CLI batch: single gemini analysis call |
34
- | > 50 | CLI chunked: batches of 25 items |
35
-
36
- **Impact Score Mapping** (heuristic):
37
-
38
- | Severity | Impact Score |
39
- |----------|-------------|
40
- | critical | 5 |
41
- | high | 4 |
42
- | medium | 3 |
43
- | low | 1 |
44
-
45
- **Cost Score Mapping** (heuristic):
46
-
47
- | Estimated Effort | Cost Score |
48
- |------------------|------------|
49
- | small | 1 |
50
- | medium | 3 |
51
- | large | 5 |
52
- | unknown | 3 |
53
-
54
- **Priority Quadrant Classification**:
55
-
56
- | Impact | Cost | Quadrant |
57
- |--------|------|----------|
58
- | >= 4 | <= 2 | quick-win |
59
- | >= 4 | >= 3 | strategic |
60
- | <= 3 | <= 2 | backlog |
61
- | <= 3 | >= 3 | defer |
62
-
63
- For CLI mode, prompt gemini with full debt summary requesting JSON array of `{id, impact_score, cost_score, risk_if_unfixed, priority_quadrant}`. Unevaluated items fall back to heuristic scoring.
64
-
65
- ## Phase 4: Generate Priority Matrix
66
-
67
- 1. Build matrix structure: evaluation_date, total_items, by_quadrant (grouped), summary (counts per quadrant)
68
- 2. Sort within each quadrant by impact_score descending
69
- 3. Write `<session>/assessment/priority-matrix.json`
70
- 4. Update .msg/meta.json with `priority_matrix` summary and evaluated `debt_inventory`
@@ -1,80 +0,0 @@
1
- ---
2
- prefix: TDFIX
3
- inner_loop: true
4
- cli_tools:
5
- - gemini --mode write
6
- message_types:
7
- success: fix_complete
8
- progress: fix_progress
9
- error: error
10
- ---
11
-
12
- # Tech Debt Executor
13
-
14
- Debt cleanup executor. Apply remediation plan actions in worktree: refactor code, update dependencies, add tests, add documentation. Batch-delegate to CLI tools, self-validate after each batch.
15
-
16
- ## Phase 2: Load Remediation Plan
17
-
18
- | Input | Source | Required |
19
- |-------|--------|----------|
20
- | Session path | task description (regex: `session:\s*(.+)`) | Yes |
21
- | .msg/meta.json | <session>/.msg/meta.json | Yes |
22
- | Remediation plan | <session>/plan/remediation-plan.json | Yes |
23
- | Worktree info | meta.json:worktree.path, worktree.branch | Yes |
24
- | Context accumulator | From prior TDFIX tasks (inner loop) | Yes (inner loop) |
25
-
26
- 1. Extract session path from task description
27
- 2. Read .msg/meta.json for worktree path and branch
28
- 3. Read remediation-plan.json, extract all actions from plan phases
29
- 4. Group actions by type: refactor, restructure, add-tests, update-deps, add-docs
30
- 5. Split large groups (> 10 items) into sub-batches of 10
31
- 6. For inner loop (fix-verify cycle): load context_accumulator from prior TDFIX tasks, parse review/validation feedback for specific issues
32
-
33
- **Batch order**: refactor -> update-deps -> add-tests -> add-docs -> restructure
34
-
35
- ## Phase 3: Execute Fixes
36
-
37
- For each batch, use CLI tool for implementation:
38
-
39
- **Worktree constraint**: ALL file operations and commands must execute within worktree path. Use `cd "<worktree-path>" && ...` prefix for all Bash commands.
40
-
41
- **Per-batch delegation**:
42
-
43
- ```bash
44
- ccw cli -p "PURPOSE: Apply tech debt fixes in batch; success = all items fixed without breaking changes
45
- TASK: <batch-type-specific-tasks>
46
- MODE: write
47
- CONTEXT: @<worktree-path>/**/* | Memory: Remediation plan context
48
- EXPECTED: Code changes that fix debt items, maintain backward compatibility, pass existing tests
49
- CONSTRAINTS: Minimal changes only | No new features | No suppressions | Read files before modifying
50
- Batch type: <refactor|update-deps|add-tests|add-docs|restructure>
51
- Items: <list-of-items-with-file-paths-and-descriptions>" --tool gemini --mode write --cd "<worktree-path>"
52
- ```
53
-
54
- Wait for CLI completion before proceeding to next batch.
55
-
56
- **Fix Results Tracking**:
57
-
58
- | Field | Description |
59
- |-------|-------------|
60
- | items_fixed | Count of successfully fixed items |
61
- | items_failed | Count of failed items |
62
- | items_remaining | Remaining items count |
63
- | batches_completed | Completed batch count |
64
- | files_modified | Array of modified file paths |
65
- | errors | Array of error messages |
66
-
67
- After each batch, verify file modifications via `git diff --name-only` in worktree.
68
-
69
- ## Phase 4: Self-Validation
70
-
71
- All commands in worktree:
72
-
73
- | Check | Command | Pass Criteria |
74
- |-------|---------|---------------|
75
- | Syntax | `tsc --noEmit` or `python -m py_compile` | No new errors |
76
- | Lint | `eslint --no-error-on-unmatched-pattern` | No new errors |
77
-
78
- Write `<session>/fixes/fix-log.json` with fix results. Update .msg/meta.json with `fix_results`.
79
-
80
- Append to context_accumulator for next TDFIX task (inner loop): files modified, fixes applied, validation results, discovered caveats.
@@ -1,71 +0,0 @@
1
- ---
2
- prefix: TDPLAN
3
- inner_loop: false
4
- message_types:
5
- success: plan_ready
6
- revision: plan_revision
7
- error: error
8
- ---
9
-
10
- # Tech Debt Planner
11
-
12
- Remediation plan designer. Create phased remediation plan from priority matrix: Phase 1 quick-wins (immediate), Phase 2 systematic (medium-term), Phase 3 prevention (long-term). Produce remediation-plan.md.
13
-
14
- ## Phase 2: Load Assessment Data
15
-
16
- | Input | Source | Required |
17
- |-------|--------|----------|
18
- | Session path | task description (regex: `session:\s*(.+)`) | Yes |
19
- | .msg/meta.json | <session>/.msg/meta.json | Yes |
20
- | Priority matrix | <session>/assessment/priority-matrix.json | Yes |
21
-
22
- 1. Extract session path from task description
23
- 2. Read .msg/meta.json for debt_inventory
24
- 3. Read priority-matrix.json for quadrant groupings
25
- 4. Group items: quickWins (quick-win), strategic (strategic), backlog (backlog), deferred (defer)
26
-
27
- ## Phase 3: Create Remediation Plan
28
-
29
- **Strategy selection**:
30
-
31
- | Item Count (quick-win + strategic) | Strategy |
32
- |------------------------------------|----------|
33
- | <= 5 | Inline: generate steps from item data |
34
- | > 5 | CLI-assisted: gemini generates detailed remediation steps |
35
-
36
- **3-Phase Plan Structure**:
37
-
38
- | Phase | Name | Source Items | Focus |
39
- |-------|------|-------------|-------|
40
- | 1 | Quick Wins | quick-win quadrant | High impact, low cost -- immediate execution |
41
- | 2 | Systematic | strategic quadrant | High impact, high cost -- structured refactoring |
42
- | 3 | Prevention | Generated from dimension patterns | Long-term prevention mechanisms |
43
-
44
- **Action Type Mapping**:
45
-
46
- | Dimension | Action Type |
47
- |-----------|-------------|
48
- | code | refactor |
49
- | architecture | restructure |
50
- | testing | add-tests |
51
- | dependency | update-deps |
52
- | documentation | add-docs |
53
-
54
- **Prevention Actions** (generated when dimension has >= 3 items):
55
-
56
- | Dimension | Prevention Action |
57
- |-----------|-------------------|
58
- | code | Add linting rules for complexity thresholds and code smell detection |
59
- | architecture | Introduce module boundary checks in CI pipeline |
60
- | testing | Set minimum coverage thresholds in CI and add pre-commit test hooks |
61
- | dependency | Configure automated dependency update bot (Renovate/Dependabot) |
62
- | documentation | Add JSDoc/docstring enforcement in linting rules |
63
-
64
- For CLI-assisted mode, prompt gemini with debt summary requesting specific fix steps per item, grouped into phases, with dependencies and estimated time.
65
-
66
- ## Phase 4: Validate & Save
67
-
68
- 1. Calculate validation metrics: total_actions, total_effort, files_affected, has_quick_wins, has_prevention
69
- 2. Write `<session>/plan/remediation-plan.md` (markdown with per-item checklists)
70
- 3. Write `<session>/plan/remediation-plan.json` (machine-readable)
71
- 4. Update .msg/meta.json with `remediation_plan` summary
@@ -1,85 +0,0 @@
1
- ---
2
- prefix: TDSCAN
3
- inner_loop: false
4
- cli_tools:
5
- - gemini --mode analysis
6
- message_types:
7
- success: scan_complete
8
- error: error
9
- info: debt_items_found
10
- ---
11
-
12
- # Tech Debt Scanner
13
-
14
- Multi-dimension tech debt scanner. Scan codebase across 5 dimensions (code, architecture, testing, dependency, documentation), produce structured debt inventory with severity rankings.
15
-
16
- ## Phase 2: Context & Environment Detection
17
-
18
- | Input | Source | Required |
19
- |-------|--------|----------|
20
- | Scan scope | task description (regex: `scope:\s*(.+)`) | No (default: `**/*`) |
21
- | Session path | task description (regex: `session:\s*(.+)`) | Yes |
22
- | .msg/meta.json | <session>/.msg/meta.json | Yes |
23
-
24
- 1. Extract session path and scan scope from task description
25
- 2. Read .msg/meta.json for team context
26
- 3. Detect project type and framework:
27
-
28
- | Signal File | Project Type |
29
- |-------------|-------------|
30
- | package.json + React/Vue/Angular | Frontend Node |
31
- | package.json + Express/Fastify/NestJS | Backend Node |
32
- | pyproject.toml / requirements.txt | Python |
33
- | go.mod | Go |
34
- | No detection | Generic |
35
-
36
- 4. Determine scan dimensions (default: code, architecture, testing, dependency, documentation)
37
- 5. Detect perspectives from task description:
38
-
39
- | Condition | Perspective |
40
- |-----------|-------------|
41
- | `security\|auth\|inject\|xss` | security |
42
- | `performance\|speed\|optimize` | performance |
43
- | `quality\|clean\|maintain\|debt` | code-quality |
44
- | `architect\|pattern\|structure` | architecture |
45
- | Default | code-quality + architecture |
46
-
47
- 6. Assess complexity:
48
-
49
- | Score | Complexity | Strategy |
50
- |-------|------------|----------|
51
- | >= 4 | High | Triple Fan-out: CLI explore + CLI 5 dimensions + multi-perspective Gemini |
52
- | 2-3 | Medium | Dual Fan-out: CLI explore + CLI 3 dimensions |
53
- | 0-1 | Low | Inline: ACE search + Grep |
54
-
55
- ## Phase 3: Multi-Dimension Scan
56
-
57
- **Low Complexity** (inline):
58
- - Use `mcp__ace-tool__search_context` for code smells, TODO/FIXME, deprecated APIs, complex functions, dead code, missing tests
59
- - Classify findings into dimensions
60
-
61
- **Medium/High Complexity** (Fan-out):
62
- - Fan-out A: CLI exploration (structure, patterns, dependencies angles) via `ccw cli --tool gemini --mode analysis`
63
- - Fan-out B: CLI dimension analysis (parallel gemini per dimension -- code, architecture, testing, dependency, documentation)
64
- - Fan-out C (High only): Multi-perspective Gemini analysis (security, performance, code-quality, architecture)
65
- - Fan-in: Merge results, cross-deduplicate by file:line, boost severity for multi-source findings
66
-
67
- **Standardize each finding**:
68
-
69
- | Field | Description |
70
- |-------|-------------|
71
- | `id` | `TD-NNN` (sequential) |
72
- | `dimension` | code, architecture, testing, dependency, documentation |
73
- | `severity` | critical, high, medium, low |
74
- | `file` | File path |
75
- | `line` | Line number |
76
- | `description` | Issue description |
77
- | `suggestion` | Fix suggestion |
78
- | `estimated_effort` | small, medium, large, unknown |
79
-
80
- ## Phase 4: Aggregate & Save
81
-
82
- 1. Deduplicate findings across Fan-out layers (file:line key), merge cross-references
83
- 2. Sort by severity (cross-referenced items boosted)
84
- 3. Write `<session>/scan/debt-inventory.json` with scan_date, dimensions, total_items, by_dimension, by_severity, items
85
- 4. Update .msg/meta.json with `debt_inventory` array and `debt_score_before` count
@@ -1,83 +0,0 @@
1
- ---
2
- prefix: TDVAL
3
- inner_loop: false
4
- message_types:
5
- success: validation_complete
6
- error: error
7
- fix: regression_found
8
- ---
9
-
10
- # Tech Debt Validator
11
-
12
- Cleanup result validator. Run test suite, type checks, lint checks, and quality analysis to verify debt cleanup introduced no regressions. Compare before/after debt scores, produce validation-report.json.
13
-
14
- ## Phase 2: Load Context
15
-
16
- | Input | Source | Required |
17
- |-------|--------|----------|
18
- | Session path | task description (regex: `session:\s*(.+)`) | Yes |
19
- | .msg/meta.json | <session>/.msg/meta.json | Yes |
20
- | Fix log | <session>/fixes/fix-log.json | No |
21
-
22
- 1. Extract session path from task description
23
- 2. Read .msg/meta.json for: worktree.path, debt_inventory, fix_results, debt_score_before
24
- 3. Determine command prefix: `cd "<worktree-path>" && ` if worktree exists
25
- 4. Read fix-log.json for modified files list
26
- 5. Detect available validation tools in worktree:
27
-
28
- | Signal | Tool | Method |
29
- |--------|------|--------|
30
- | package.json + npm | npm test | Test suite |
31
- | pytest available | python -m pytest | Test suite |
32
- | npx tsc available | npx tsc --noEmit | Type check |
33
- | npx eslint available | npx eslint | Lint check |
34
-
35
- ## Phase 3: Run Validation Checks
36
-
37
- Execute 4-layer validation (all commands in worktree):
38
-
39
- **1. Test Suite**:
40
- - Run `npm test` or `python -m pytest` in worktree
41
- - PASS if no FAIL/error/failed keywords; FAIL with regression count otherwise
42
- - Skip with "no-tests" if no test runner available
43
-
44
- **2. Type Check**:
45
- - Run `npx tsc --noEmit` in worktree
46
- - Count `error TS` occurrences for error count
47
-
48
- **3. Lint Check**:
49
- - Run `npx eslint --no-error-on-unmatched-pattern <modified-files>` in worktree
50
- - Count error occurrences
51
-
52
- **4. Quality Analysis** (optional, when > 5 modified files):
53
- - Use gemini CLI to compare code quality before/after
54
- - Assess complexity, duplication, naming quality improvements
55
-
56
- **Debt Score Calculation**:
57
- - debt_score_after = debt items NOT in modified files (remaining unfixed items)
58
- - improvement_percentage = ((before - after) / before) * 100
59
-
60
- **Auto-fix attempt** (when total_regressions <= 3):
61
- - Use CLI tool to fix regressions in worktree:
62
- ```
63
- Bash({
64
- command: `cd "${worktreePath}" && ccw cli -p "PURPOSE: Fix regressions found in validation
65
- TASK: ${regressionDetails}
66
- MODE: write
67
- CONTEXT: @${modifiedFiles.join(' @')}
68
- EXPECTED: Fixed regressions
69
- CONSTRAINTS: Fix only regressions | Preserve debt cleanup changes | No suppressions" --tool gemini --mode write`,
70
- run_in_background: false
71
- })
72
- ```
73
- - Re-run validation checks after fix attempt
74
- })
75
- ```
76
- - Re-run checks after fix attempt
77
-
78
- ## Phase 4: Compare & Report
79
-
80
- 1. Calculate: total_regressions = test_regressions + type_errors + lint_errors; passed = (total_regressions === 0)
81
- 2. Write `<session>/validation/validation-report.json` with: validation_date, passed, regressions, checks (per-check status), debt_score_before, debt_score_after, improvement_percentage
82
- 3. Update .msg/meta.json with `validation_results` and `debt_score_after`
83
- 4. Select message type: `validation_complete` if passed, `regression_found` if not
@@ -1,94 +0,0 @@
1
- ---
2
- prefix: TESTANA
3
- inner_loop: false
4
- message_types:
5
- success: analysis_ready
6
- error: error
7
- ---
8
-
9
- # Test Quality Analyst
10
-
11
- Analyze defect patterns, identify coverage gaps, assess GC loop effectiveness, and generate a quality report with actionable recommendations.
12
-
13
- ## Phase 2: Context Loading
14
-
15
- | Input | Source | Required |
16
- |-------|--------|----------|
17
- | Task description | From task subject/description | Yes |
18
- | Session path | Extracted from task description | Yes |
19
- | Execution results | <session>/results/run-*.json | Yes |
20
- | Test strategy | <session>/strategy/test-strategy.md | Yes |
21
- | .msg/meta.json | <session>/wisdom/.msg/meta.json | Yes |
22
-
23
- 1. Extract session path from task description
24
- 2. Read .msg/meta.json for execution context (executor, generator namespaces)
25
- 3. Read all execution results:
26
-
27
- ```
28
- Glob("<session>/results/run-*.json")
29
- Read("<session>/results/run-001.json")
30
- ```
31
-
32
- 4. Read test strategy:
33
-
34
- ```
35
- Read("<session>/strategy/test-strategy.md")
36
- ```
37
-
38
- 5. Read test files for pattern analysis:
39
-
40
- ```
41
- Glob("<session>/tests/**/*")
42
- ```
43
-
44
- ## Phase 3: Quality Analysis
45
-
46
- **Analysis dimensions**:
47
-
48
- 1. **Coverage Analysis** -- Aggregate coverage by layer:
49
-
50
- | Layer | Coverage | Target | Status |
51
- |-------|----------|--------|--------|
52
- | L1 | X% | Y% | Met/Below |
53
-
54
- 2. **Defect Pattern Analysis** -- Frequency and severity:
55
-
56
- | Pattern | Frequency | Severity |
57
- |---------|-----------|----------|
58
- | pattern | count | HIGH (>=3) / MEDIUM (>=2) / LOW (<2) |
59
-
60
- 3. **GC Loop Effectiveness**:
61
-
62
- | Metric | Value | Assessment |
63
- |--------|-------|------------|
64
- | Rounds | N | - |
65
- | Coverage Improvement | +/-X% | HIGH (>10%) / MEDIUM (>5%) / LOW (<=5%) |
66
-
67
- 4. **Coverage Gaps** -- per module/feature:
68
- - Area, Current %, Gap %, Reason, Recommendation
69
-
70
- 5. **Quality Score**:
71
-
72
- | Dimension | Score (1-10) | Weight |
73
- |-----------|-------------|--------|
74
- | Coverage Achievement | score | 30% |
75
- | Test Effectiveness | score | 25% |
76
- | Defect Detection | score | 25% |
77
- | GC Loop Efficiency | score | 20% |
78
-
79
- Write report to `<session>/analysis/quality-report.md`
80
-
81
- ## Phase 4: Trend Analysis & State Update
82
-
83
- **Historical comparison** (if multiple sessions exist):
84
-
85
- ```
86
- Glob(".workflow/.team/TST-*/.msg/meta.json")
87
- ```
88
-
89
- - Track coverage trends over time
90
- - Identify defect pattern evolution
91
- - Compare GC loop effectiveness across sessions
92
-
93
- Update `<session>/wisdom/.msg/meta.json` under `analyst` namespace:
94
- - Merge `{ "analyst": { quality_score, coverage_gaps, top_defect_patterns, gc_effectiveness, recommendations } }`
@@ -1,97 +0,0 @@
1
- ---
2
- prefix: TESTRUN
3
- inner_loop: true
4
- message_types:
5
- success: tests_passed
6
- failure: tests_failed
7
- coverage: coverage_report
8
- error: error
9
- ---
10
-
11
- # Test Executor
12
-
13
- Execute tests, collect coverage, attempt auto-fix for failures. Acts as the Critic in the Generator-Critic loop. Reports pass rate and coverage for coordinator GC decisions.
14
-
15
- ## Phase 2: Context Loading
16
-
17
- | Input | Source | Required |
18
- |-------|--------|----------|
19
- | Task description | From task subject/description | Yes |
20
- | Session path | Extracted from task description | Yes |
21
- | Test directory | Task description (Input: <path>) | Yes |
22
- | Coverage target | Task description (default: 80%) | Yes |
23
- | .msg/meta.json | <session>/wisdom/.msg/meta.json | No |
24
-
25
- 1. Extract session path and test directory from task description
26
- 2. Extract coverage target (default: 80%)
27
- 3. Read .msg/meta.json for framework info (from strategist namespace)
28
- 4. Determine test framework:
29
-
30
- | Framework | Run Command |
31
- |-----------|-------------|
32
- | Jest | `npx jest --coverage --json --outputFile=<session>/results/jest-output.json` |
33
- | Pytest | `python -m pytest --cov --cov-report=json:<session>/results/coverage.json -v` |
34
- | Vitest | `npx vitest run --coverage --reporter=json` |
35
-
36
- 5. Find test files to execute:
37
-
38
- ```
39
- Glob("<session>/<test-dir>/**/*")
40
- ```
41
-
42
- ## Phase 3: Test Execution + Fix Cycle
43
-
44
- **Iterative test-fix cycle** (max 3 iterations):
45
-
46
- | Step | Action |
47
- |------|--------|
48
- | 1 | Run test command |
49
- | 2 | Parse results: pass rate + coverage |
50
- | 3 | pass_rate >= 0.95 AND coverage >= target -> success, exit |
51
- | 4 | Extract failing test details |
52
- | 5 | Delegate fix to CLI tool (gemini write mode) |
53
- | 6 | Increment iteration; >= 3 -> exit with failures |
54
-
55
- ```
56
- Bash("<test-command> 2>&1 || true")
57
- ```
58
-
59
- **Auto-fix delegation** (on failure):
60
-
61
- ```
62
- Bash({
63
- command: `ccw cli -p "PURPOSE: Fix test failures to achieve pass rate >= 0.95; success = all tests pass
64
- TASK: • Analyze test failure output • Identify root causes • Fix test code only (not source) • Preserve test intent
65
- MODE: write
66
- CONTEXT: @<session>/<test-dir>/**/* | Memory: Test framework: <framework>, iteration <N>/3
67
- EXPECTED: Fixed test files with: corrected assertions, proper async handling, fixed imports, maintained coverage
68
- CONSTRAINTS: Only modify test files | Preserve test structure | No source code changes
69
- Test failures:
70
- <test-output>" --tool gemini --mode write --cd <session>`,
71
- run_in_background: false
72
- })
73
- ```
74
-
75
- **Save results**: `<session>/results/run-<N>.json`
76
-
77
- ## Phase 4: Defect Pattern Extraction & State Update
78
-
79
- **Extract defect patterns from failures**:
80
-
81
- | Pattern Type | Detection Keywords |
82
- |--------------|-------------------|
83
- | Null reference | "null", "undefined", "Cannot read property" |
84
- | Async timing | "timeout", "async", "await", "promise" |
85
- | Import errors | "Cannot find module", "import" |
86
- | Type mismatches | "type", "expected", "received" |
87
-
88
- **Record effective test patterns** (if pass_rate > 0.8):
89
-
90
- | Pattern | Detection |
91
- |---------|-----------|
92
- | Happy path | "should succeed", "valid input" |
93
- | Edge cases | "edge", "boundary", "limit" |
94
- | Error handling | "should fail", "error", "throw" |
95
-
96
- Update `<session>/wisdom/.msg/meta.json` under `executor` namespace:
97
- - Merge `{ "executor": { pass_rate, coverage, defect_patterns, effective_patterns, coverage_history_entry } }`