claude-code-workflow 7.2.9 → 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.
- package/.claude/agents/cli-planning-agent.md +3 -0
- package/.claude/agents/debug-explore-agent.md +1 -0
- package/.claude/agents/tdd-developer.md +1 -0
- package/.claude/agents/team-worker.md +1 -1
- package/.claude/agents/test-action-planning-agent.md +3 -0
- package/.claude/agents/test-context-search-agent.md +1 -0
- package/.claude/agents/test-fix-agent.md +3 -0
- package/.claude/skills/review-code/SKILL.md +2 -0
- package/.claude/skills/review-cycle/SKILL.md +4 -0
- package/.claude/skills/skill-simplify/phases/02-optimize.md +4 -0
- package/.claude/skills/spec-generator/phases/05-epics-stories.md +4 -0
- package/.claude/skills/team-arch-opt/specs/team-config.json +5 -5
- package/.claude/skills/team-frontend-debug/roles/analyzer/role.md +3 -2
- package/.claude/skills/team-perf-opt/roles/coordinator/commands/monitor.md +1 -1
- package/.claude/skills/team-perf-opt/specs/team-config.json +5 -5
- package/.claude/skills/team-quality-assurance/roles/executor/role.md +2 -1
- package/.claude/skills/team-review/roles/reviewer/role.md +2 -1
- package/.claude/skills/team-tech-debt/roles/scanner/role.md +2 -1
- package/.claude/skills/team-testing/roles/executor/role.md +2 -1
- package/.claude/skills/team-testing/roles/generator/role.md +2 -1
- package/.claude/skills/team-ultra-analyze/roles/explorer/role.md +2 -1
- package/.claude/skills/team-ux-improve/specs/team-config.json +6 -6
- package/.claude/skills/workflow-execute/phases/06-review.md +4 -4
- package/.claude/skills/workflow-lite-test-review/SKILL.md +2 -0
- package/.claude/skills/workflow-plan/phases/05-plan-verify.md +4 -0
- package/.claude/skills/workflow-tdd-plan/phases/02-context-gathering.md +1 -0
- package/.claude/skills/workflow-tdd-plan/phases/05-tdd-task-generation.md +2 -1
- package/.claude/skills/workflow-test-fix/phases/02-test-context-gather.md +1 -0
- package/.claude/skills/workflow-test-fix/phases/05-test-cycle-execute.md +2 -1
- package/.claude/skills/workflow-tune/SKILL.md +487 -0
- package/.claude/skills/workflow-tune/phases/01-setup.md +548 -0
- package/.claude/skills/workflow-tune/phases/02-step-execute.md +197 -0
- package/.claude/skills/workflow-tune/phases/03-step-analyze.md +386 -0
- package/.claude/skills/workflow-tune/phases/04-synthesize.md +257 -0
- package/.claude/skills/workflow-tune/phases/05-optimize-report.md +246 -0
- package/.claude/skills/workflow-tune/specs/workflow-eval-criteria.md +57 -0
- package/.claude/skills/workflow-tune/templates/step-analysis-prompt.md +88 -0
- package/.claude/skills/workflow-tune/templates/synthesis-prompt.md +90 -0
- package/.codex/skills/analyze-with-file/SKILL.md +64 -103
- package/.codex/skills/debug-with-file/SKILL.md +4 -0
- package/.codex/skills/issue-discover/SKILL.md +1 -0
- package/.codex/skills/review-cycle/phases/02-parallel-review.md +3 -0
- package/.codex/skills/roadmap-with-file/SKILL.md +11 -17
- package/.codex/skills/team-designer/agents/validation-reporter.md +186 -0
- package/.codex/skills/team-iterdev/agents/gc-controller.md +193 -0
- package/.codex/skills/team-iterdev/agents/task-analyzer.md +206 -0
- package/.codex/skills/team-lifecycle-v4/agents/quality-gate.md +165 -0
- package/.codex/skills/team-lifecycle-v4/agents/requirement-clarifier.md +163 -0
- package/.codex/skills/team-lifecycle-v4/agents/supervisor.md +182 -0
- package/.codex/skills/team-uidesign/agents/completion-handler.md +177 -0
- package/.codex/skills/team-uidesign/agents/gc-loop-handler.md +162 -0
- package/.codex/skills/workflow-test-fix-cycle/phases/01-test-fix-gen.md +4 -0
- package/.codex/skills/workflow-test-fix-cycle/phases/02-test-cycle-execute.md +2 -0
- package/ccw/dist/commands/spec.d.ts.map +1 -1
- package/ccw/dist/commands/spec.js +9 -4
- package/ccw/dist/commands/spec.js.map +1 -1
- package/ccw/dist/core/routes/codexlens-routes.d.ts.map +1 -1
- package/ccw/dist/core/routes/codexlens-routes.js +3 -1
- package/ccw/dist/core/routes/codexlens-routes.js.map +1 -1
- package/ccw/dist/tools/spec-index-builder.d.ts +8 -4
- package/ccw/dist/tools/spec-index-builder.d.ts.map +1 -1
- package/ccw/dist/tools/spec-index-builder.js +8 -4
- package/ccw/dist/tools/spec-index-builder.js.map +1 -1
- package/ccw/dist/tools/spec-init.d.ts +1 -1
- package/ccw/dist/tools/spec-init.d.ts.map +1 -1
- package/ccw/dist/tools/spec-init.js +127 -0
- package/ccw/dist/tools/spec-init.js.map +1 -1
- package/ccw/dist/tools/spec-loader.d.ts.map +1 -1
- package/ccw/dist/tools/spec-loader.js +2 -1
- package/ccw/dist/tools/spec-loader.js.map +1 -1
- package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js → AlertDialog-BW9jiZ-p.js} +2 -2
- package/ccw/frontend/dist/assets/{AlertDialog-gTMl4gSG.js.map → AlertDialog-BW9jiZ-p.js.map} +1 -1
- package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js → AnalysisPage-ds-w_nVO.js} +2 -2
- package/ccw/frontend/dist/assets/{AnalysisPage-Bc4p4SvJ.js.map → AnalysisPage-ds-w_nVO.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js → ApiSettingsPage-DlCbXxTz.js} +2 -2
- package/ccw/frontend/dist/assets/{ApiSettingsPage-CVK108u2.js.map → ApiSettingsPage-DlCbXxTz.js.map} +1 -1
- package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js → CliModeToggle-Dq3nL4fF.js} +2 -2
- package/ccw/frontend/dist/assets/{CliModeToggle-34Sjwl05.js.map → CliModeToggle-Dq3nL4fF.js.map} +1 -1
- package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js → CliSessionSharePage-BNDkEE4u.js} +2 -2
- package/ccw/frontend/dist/assets/{CliSessionSharePage-bJZAYI38.js.map → CliSessionSharePage-BNDkEE4u.js.map} +1 -1
- package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js → CliViewerPage-ChM-uNx_.js} +2 -2
- package/ccw/frontend/dist/assets/{CliViewerPage-VYnQGjxU.js.map → CliViewerPage-ChM-uNx_.js.map} +1 -1
- package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js +2 -0
- package/ccw/frontend/dist/assets/CodexLensPage-DOcsYNQk.js.map +1 -0
- package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js → Collapsible-CRNbykXN.js} +2 -2
- package/ccw/frontend/dist/assets/{Collapsible-B_xd1Qbg.js.map → Collapsible-CRNbykXN.js.map} +1 -1
- package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js → CommandsManagerPage-C2JWcemF.js} +2 -2
- package/ccw/frontend/dist/assets/{CommandsManagerPage-Bjx1bPbH.js.map → CommandsManagerPage-C2JWcemF.js.map} +1 -1
- package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js → DeepWikiPage-CvleOtJy.js} +2 -2
- package/ccw/frontend/dist/assets/{DeepWikiPage-EgHsHvAH.js.map → DeepWikiPage-CvleOtJy.js.map} +1 -1
- package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js → EndpointsPage-CMOWQG64.js} +2 -2
- package/ccw/frontend/dist/assets/{EndpointsPage-CuwpbCzK.js.map → EndpointsPage-CMOWQG64.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js → ExplorerPage-DaFPRlNo.js} +2 -2
- package/ccw/frontend/dist/assets/{ExplorerPage-cvlx0Zw0.js.map → ExplorerPage-DaFPRlNo.js.map} +1 -1
- package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js → FixSessionPage-CC4p04Az.js} +2 -2
- package/ccw/frontend/dist/assets/{FixSessionPage-C74-MPza.js.map → FixSessionPage-CC4p04Az.js.map} +1 -1
- package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js → FloatingFileBrowser-DROn1xZ5.js} +2 -2
- package/ccw/frontend/dist/assets/{FloatingFileBrowser-x_-6y_n2.js.map → FloatingFileBrowser-DROn1xZ5.js.map} +1 -1
- package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js → FloatingPanel-CmL_yhDv.js} +2 -2
- package/ccw/frontend/dist/assets/{FloatingPanel-BGwmbJR1.js.map → FloatingPanel-CmL_yhDv.js.map} +1 -1
- package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js → GraphExplorerPage-DCV5ybKE.js} +2 -2
- package/ccw/frontend/dist/assets/{GraphExplorerPage-Bg5-aQxi.js.map → GraphExplorerPage-DCV5ybKE.js.map} +1 -1
- package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js → HistoryPage-D0fYQZgc.js} +2 -2
- package/ccw/frontend/dist/assets/{HistoryPage-C00fh0HE.js.map → HistoryPage-D0fYQZgc.js.map} +1 -1
- package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js → HookManagerPage-D2FuJfsM.js} +2 -2
- package/ccw/frontend/dist/assets/{HookManagerPage-CtVTB_ae.js.map → HookManagerPage-D2FuJfsM.js.map} +1 -1
- package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js → InstallationsPage-tjklillZ.js} +2 -2
- package/ccw/frontend/dist/assets/{InstallationsPage-CYuMQDbC.js.map → InstallationsPage-tjklillZ.js.map} +1 -1
- package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js → IssueHubPage-E4JVrhO1.js} +2 -2
- package/ccw/frontend/dist/assets/{IssueHubPage-T_VSvUMh.js.map → IssueHubPage-E4JVrhO1.js.map} +1 -1
- package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js → LiteTasksPage-aJuRoyLt.js} +2 -2
- package/ccw/frontend/dist/assets/{LiteTasksPage-DmcgvIvi.js.map → LiteTasksPage-aJuRoyLt.js.map} +1 -1
- package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js → McpManagerPage-BJeuWJv1.js} +2 -2
- package/ccw/frontend/dist/assets/{McpManagerPage-C_a7QSKz.js.map → McpManagerPage-BJeuWJv1.js.map} +1 -1
- package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js → MemoryPage-BI4FAXhs.js} +2 -2
- package/ccw/frontend/dist/assets/{MemoryPage-CWKmXY5k.js.map → MemoryPage-BI4FAXhs.js.map} +1 -1
- package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js → NotFoundPage-DD2svchp.js} +2 -2
- package/ccw/frontend/dist/assets/{NotFoundPage-B1duXK6r.js.map → NotFoundPage-DD2svchp.js.map} +1 -1
- package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js → OrchestratorPage-FC__7yYa.js} +2 -2
- package/ccw/frontend/dist/assets/{OrchestratorPage-Ib9TM6HE.js.map → OrchestratorPage-FC__7yYa.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js → ProjectOverviewPage-DBB_-FzV.js} +2 -2
- package/ccw/frontend/dist/assets/{ProjectOverviewPage-sXSWMbF8.js.map → ProjectOverviewPage-DBB_-FzV.js.map} +1 -1
- package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js → PromptHistoryPage-BwOAvCH8.js} +2 -2
- package/ccw/frontend/dist/assets/{PromptHistoryPage-B6jaqG12.js.map → PromptHistoryPage-BwOAvCH8.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js → ReviewSessionPage-Dd1-g_gp.js} +2 -2
- package/ccw/frontend/dist/assets/{ReviewSessionPage-D5qJyr3s.js.map → ReviewSessionPage-Dd1-g_gp.js.map} +1 -1
- package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js → RulesManagerPage-B3RGdsKD.js} +2 -2
- package/ccw/frontend/dist/assets/{RulesManagerPage-DyawK8QE.js.map → RulesManagerPage-B3RGdsKD.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js → SessionDetailPage-DM-W5R8K.js} +2 -2
- package/ccw/frontend/dist/assets/{SessionDetailPage-Cym_RvC9.js.map → SessionDetailPage-DM-W5R8K.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js → SessionsPage-BVz1KCc7.js} +2 -2
- package/ccw/frontend/dist/assets/{SessionsPage-Dkc1Hv8W.js.map → SessionsPage-BVz1KCc7.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js → SettingsPage-ComW7EZS.js} +4 -4
- package/ccw/frontend/dist/assets/{SettingsPage-Rik9cUIj.js.map → SettingsPage-ComW7EZS.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js → SkillsManagerPage-CKom9XwV.js} +2 -2
- package/ccw/frontend/dist/assets/{SkillsManagerPage-BGDWYAyI.js.map → SkillsManagerPage-CKom9XwV.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js → SpecsSettingsPage-DQz7WP2s.js} +2 -2
- package/ccw/frontend/dist/assets/{SpecsSettingsPage-CTiA1DMP.js.map → SpecsSettingsPage-DQz7WP2s.js.map} +1 -1
- package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js → Switch-BPMdND9H.js} +2 -2
- package/ccw/frontend/dist/assets/{Switch-BgAFC-Wk.js.map → Switch-BPMdND9H.js.map} +1 -1
- package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js → TabsNavigation-qqt70VYL.js} +2 -2
- package/ccw/frontend/dist/assets/{TabsNavigation-drSnu5jn.js.map → TabsNavigation-qqt70VYL.js.map} +1 -1
- package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js → TaskDrawer-BqK_qiHX.js} +2 -2
- package/ccw/frontend/dist/assets/{TaskDrawer-ePC__6-P.js.map → TaskDrawer-BqK_qiHX.js.map} +1 -1
- package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js → TeamPage-u5_i0Rgh.js} +2 -2
- package/ccw/frontend/dist/assets/{TeamPage-C6bdFWn8.js.map → TeamPage-u5_i0Rgh.js.map} +1 -1
- package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js → TerminalDashboardPage-rUtC9e40.js} +2 -2
- package/ccw/frontend/dist/assets/{TerminalDashboardPage-Zofi_DZM.js.map → TerminalDashboardPage-rUtC9e40.js.map} +1 -1
- package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js → archive-C3u8YNQF.js} +2 -2
- package/ccw/frontend/dist/assets/{archive-Bza1KlB9.js.map → archive-C3u8YNQF.js.map} +1 -1
- package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js → archive-restore-DfQ998g5.js} +2 -2
- package/ccw/frontend/dist/assets/{archive-restore-CpsDm-cG.js.map → archive-restore-DfQ998g5.js.map} +1 -1
- package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js → arrow-right-BshJM9Po.js} +2 -2
- package/ccw/frontend/dist/assets/{arrow-right-CibG_LVO.js.map → arrow-right-BshJM9Po.js.map} +1 -1
- package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js → bookmark-plus-D03qJyOZ.js} +2 -2
- package/ccw/frontend/dist/assets/{bookmark-plus-BheO8EgG.js.map → bookmark-plus-D03qJyOZ.js.map} +1 -1
- package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js → bot-CyzWuwq0.js} +2 -2
- package/ccw/frontend/dist/assets/{bot-BlhM0Nl0.js.map → bot-CyzWuwq0.js.map} +1 -1
- package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js → braces-BPgtyjsG.js} +2 -2
- package/ccw/frontend/dist/assets/{braces-Dqjg_eCO.js.map → braces-BPgtyjsG.js.map} +1 -1
- package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js → circle-stop-Dix1AOmw.js} +2 -2
- package/ccw/frontend/dist/assets/{circle-stop-DYZSLYU0.js.map → circle-stop-Dix1AOmw.js.map} +1 -1
- package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js → cpu-CCQ4Q0Zh.js} +2 -2
- package/ccw/frontend/dist/assets/{cpu-DWCyAOAv.js.map → cpu-CCQ4Q0Zh.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js → ellipsis-vertical-BpTysg-Y.js} +2 -2
- package/ccw/frontend/dist/assets/{ellipsis-vertical-DIyoSEHx.js.map → ellipsis-vertical-BpTysg-Y.js.map} +1 -1
- package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js → eye-DGY1rAZs.js} +2 -2
- package/ccw/frontend/dist/assets/{eye-DUy7aLEx.js.map → eye-DGY1rAZs.js.map} +1 -1
- package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js → eye-off-D8t3JfWG.js} +2 -2
- package/ccw/frontend/dist/assets/{eye-off-CGRUVRDR.js.map → eye-off-D8t3JfWG.js.map} +1 -1
- package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js → file-json-BAdJb0n8.js} +2 -2
- package/ccw/frontend/dist/assets/{file-json-BxLBtU9d.js.map → file-json-BAdJb0n8.js.map} +1 -1
- package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js → file-text-DrJFiOUB.js} +2 -2
- package/ccw/frontend/dist/assets/{file-text-BoHsW2es.js.map → file-text-DrJFiOUB.js.map} +1 -1
- package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js → filter-CKqzYbz7.js} +2 -2
- package/ccw/frontend/dist/assets/{filter-B4vOqP6B.js.map → filter-CKqzYbz7.js.map} +1 -1
- package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js → folder-CV8511y9.js} +2 -2
- package/ccw/frontend/dist/assets/{folder-BKhwCNFG.js.map → folder-CV8511y9.js.map} +1 -1
- package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js → gauge-XKvmu_uU.js} +2 -2
- package/ccw/frontend/dist/assets/{gauge-Dgf64gkT.js.map → gauge-XKvmu_uU.js.map} +1 -1
- package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js → globe-C56cDUzX.js} +2 -2
- package/ccw/frontend/dist/assets/{globe-Cus_S6Ux.js.map → globe-C56cDUzX.js.map} +1 -1
- package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js → grid-3x3-Bya-suFW.js} +2 -2
- package/ccw/frontend/dist/assets/{grid-3x3-DM08hpAN.js.map → grid-3x3-Bya-suFW.js.map} +1 -1
- package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js → hard-drive-CmuTZpsB.js} +2 -2
- package/ccw/frontend/dist/assets/{hard-drive-eCtll84F.js.map → hard-drive-CmuTZpsB.js.map} +1 -1
- package/ccw/frontend/dist/assets/{hash-Bd1RD285.js → hash-CRPT_tJQ.js} +2 -2
- package/ccw/frontend/dist/assets/{hash-Bd1RD285.js.map → hash-CRPT_tJQ.js.map} +1 -1
- package/ccw/frontend/dist/assets/{history-eyyCQA6b.js → history-C1pJZQCL.js} +2 -2
- package/ccw/frontend/dist/assets/{history-eyyCQA6b.js.map → history-C1pJZQCL.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js → index-B6TpijCe.js} +2 -2
- package/ccw/frontend/dist/assets/{index-ZnmWxcZg.js.map → index-B6TpijCe.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-b2C0iFd1.js → index-Bcq-7r6F.js} +2 -2
- package/ccw/frontend/dist/assets/{index-b2C0iFd1.js.map → index-Bcq-7r6F.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js → index-CI8-rBff.js} +2 -2
- package/ccw/frontend/dist/assets/{index-Cs2ShCCy.js.map → index-CI8-rBff.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-CY6Lueph.js → index-Dmt9OiEf.js} +2 -2
- package/ccw/frontend/dist/assets/{index-CY6Lueph.js.map → index-Dmt9OiEf.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-DfeBbFXo.js → index-anSMmEF8.js} +2 -2
- package/ccw/frontend/dist/assets/{index-DfeBbFXo.js.map → index-anSMmEF8.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-B6I7GQC5.js → index-dWT2M6Ef.js} +4 -4
- package/ccw/frontend/dist/assets/{index-B6I7GQC5.js.map → index-dWT2M6Ef.js.map} +1 -1
- package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js → layout-grid-TSO0BFQE.js} +2 -2
- package/ccw/frontend/dist/assets/{layout-grid-ChrTrCby.js.map → layout-grid-TSO0BFQE.js.map} +1 -1
- package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js → lightbulb-Caj6fIQD.js} +2 -2
- package/ccw/frontend/dist/assets/{lightbulb-CvXiTlzN.js.map → lightbulb-Caj6fIQD.js.map} +1 -1
- package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js → link-2-DE9lMxa-.js} +2 -2
- package/ccw/frontend/dist/assets/{link-2-W0Nl17ec.js.map → link-2-DE9lMxa-.js.map} +1 -1
- package/ccw/frontend/dist/assets/{link-CL4JmoHb.js → link-BZtPgLW0.js} +2 -2
- package/ccw/frontend/dist/assets/{link-CL4JmoHb.js.map → link-BZtPgLW0.js.map} +1 -1
- package/ccw/frontend/dist/assets/{list-CDmYFcio.js → list-DubWyY-U.js} +2 -2
- package/ccw/frontend/dist/assets/{list-CDmYFcio.js.map → list-DubWyY-U.js.map} +1 -1
- package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js → map-pin-DwN_48AF.js} +2 -2
- package/ccw/frontend/dist/assets/{map-pin-0Mfsw_3d.js.map → map-pin-DwN_48AF.js.map} +1 -1
- package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js → messages-square-bjxvaiM9.js} +2 -2
- package/ccw/frontend/dist/assets/{messages-square-C6h08ple.js.map → messages-square-bjxvaiM9.js.map} +1 -1
- package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js → minimize-2-CGfBKD_V.js} +2 -2
- package/ccw/frontend/dist/assets/{minimize-2-Cbu2yRzi.js.map → minimize-2-CGfBKD_V.js.map} +1 -1
- package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js → package-nzWY6ilt.js} +2 -2
- package/ccw/frontend/dist/assets/{package-CoLVUZGJ.js.map → package-nzWY6ilt.js.map} +1 -1
- package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js → plug-CiLce49C.js} +2 -2
- package/ccw/frontend/dist/assets/{plug-BYTYqsw1.js.map → plug-CiLce49C.js.map} +1 -1
- package/ccw/frontend/dist/assets/{power-DmIojFl-.js → power-CFLmB-U9.js} +2 -2
- package/ccw/frontend/dist/assets/{power-DmIojFl-.js.map → power-CFLmB-U9.js.map} +1 -1
- package/ccw/frontend/dist/assets/{save-BFa03OnG.js → save-DuO6OF0C.js} +2 -2
- package/ccw/frontend/dist/assets/{save-BFa03OnG.js.map → save-DuO6OF0C.js.map} +1 -1
- package/ccw/frontend/dist/assets/{send-Vet3sN4J.js → send-CZk9p0mM.js} +2 -2
- package/ccw/frontend/dist/assets/{send-Vet3sN4J.js.map → send-CZk9p0mM.js.map} +1 -1
- package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js → square-check-big-BY_1YQQg.js} +2 -2
- package/ccw/frontend/dist/assets/{square-check-big-B9nzZRfE.js.map → square-check-big-BY_1YQQg.js.map} +1 -1
- package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js → square-pen-CnZgm6g-.js} +2 -2
- package/ccw/frontend/dist/assets/{square-pen-C7K13x4Z.js.map → square-pen-CnZgm6g-.js.map} +1 -1
- package/ccw/frontend/dist/assets/{star-BCQHcnSe.js → star-Cn1F0qy7.js} +2 -2
- package/ccw/frontend/dist/assets/{star-BCQHcnSe.js.map → star-Cn1F0qy7.js.map} +1 -1
- package/ccw/frontend/dist/assets/{style-CJsrp48L.js → style-Dxs1iXCV.js} +2 -2
- package/ccw/frontend/dist/assets/{style-CJsrp48L.js.map → style-Dxs1iXCV.js.map} +1 -1
- package/ccw/frontend/dist/assets/{target-CBzCJCB1.js → target-Bz1fLRKH.js} +2 -2
- package/ccw/frontend/dist/assets/{target-CBzCJCB1.js.map → target-Bz1fLRKH.js.map} +1 -1
- package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js → test-tube-C6qCYlDr.js} +2 -2
- package/ccw/frontend/dist/assets/{test-tube-BYTc5mvQ.js.map → test-tube-C6qCYlDr.js.map} +1 -1
- package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js → upload-C71kd4Qs.js} +2 -2
- package/ccw/frontend/dist/assets/{upload-DzyQj7ib.js.map → upload-C71kd4Qs.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js → useApiSettings-CqP2BAJ7.js} +2 -2
- package/ccw/frontend/dist/assets/{useApiSettings-CFPww7gU.js.map → useApiSettings-CqP2BAJ7.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js → useCli-PCoPoVeM.js} +2 -2
- package/ccw/frontend/dist/assets/{useCli-ByL_a5CD.js.map → useCli-PCoPoVeM.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js → useCommands-3OfPQPw4.js} +2 -2
- package/ccw/frontend/dist/assets/{useCommands-BvKIoOzB.js.map → useCommands-3OfPQPw4.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js → useDebounce-bXiFhQx9.js} +2 -2
- package/ccw/frontend/dist/assets/{useDebounce-CmKmoP7n.js.map → useDebounce-bXiFhQx9.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js → useFileExplorer-DEyUm46_.js} +2 -2
- package/ccw/frontend/dist/assets/{useFileExplorer-G5UoArCU.js.map → useFileExplorer-DEyUm46_.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js → useLocale-sXTrdxcJ.js} +2 -2
- package/ccw/frontend/dist/assets/{useLocale-D2iHK44M.js.map → useLocale-sXTrdxcJ.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js → useSkills-D0W0kXYm.js} +3 -3
- package/ccw/frontend/dist/assets/{useSkills-CYU4zqhm.js.map → useSkills-D0W0kXYm.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js → useSystemSettings-DZ-8lZsG.js} +2 -2
- package/ccw/frontend/dist/assets/{useSystemSettings-JznNpij7.js.map → useSystemSettings-DZ-8lZsG.js.map} +1 -1
- package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js → wand-sparkles-83GmAYuw.js} +2 -2
- package/ccw/frontend/dist/assets/{wand-sparkles-DqS0VCeN.js.map → wand-sparkles-83GmAYuw.js.map} +1 -1
- package/ccw/frontend/dist/index.html +1 -1
- package/package.json +1 -1
- package/.claude/skills/team-arch-opt/role-specs/analyzer.md +0 -80
- package/.claude/skills/team-arch-opt/role-specs/designer.md +0 -118
- package/.claude/skills/team-arch-opt/role-specs/refactorer.md +0 -106
- package/.claude/skills/team-arch-opt/role-specs/reviewer.md +0 -116
- package/.claude/skills/team-arch-opt/role-specs/validator.md +0 -117
- package/.claude/skills/team-brainstorm/role-specs/challenger.md +0 -63
- package/.claude/skills/team-brainstorm/role-specs/evaluator.md +0 -58
- package/.claude/skills/team-brainstorm/role-specs/ideator.md +0 -71
- package/.claude/skills/team-brainstorm/role-specs/synthesizer.md +0 -59
- package/.claude/skills/team-frontend/role-specs/analyst.md +0 -91
- package/.claude/skills/team-frontend/role-specs/architect.md +0 -85
- package/.claude/skills/team-frontend/role-specs/developer.md +0 -92
- package/.claude/skills/team-frontend/role-specs/qa.md +0 -78
- package/.claude/skills/team-issue/role-specs/explorer.md +0 -95
- package/.claude/skills/team-issue/role-specs/implementer.md +0 -89
- package/.claude/skills/team-issue/role-specs/integrator.md +0 -86
- package/.claude/skills/team-issue/role-specs/planner.md +0 -83
- package/.claude/skills/team-issue/role-specs/reviewer.md +0 -89
- package/.claude/skills/team-iterdev/role-specs/architect.md +0 -64
- package/.claude/skills/team-iterdev/role-specs/developer.md +0 -73
- package/.claude/skills/team-iterdev/role-specs/reviewer.md +0 -65
- package/.claude/skills/team-iterdev/role-specs/tester.md +0 -87
- package/.claude/skills/team-perf-opt/role-specs/benchmarker.md +0 -110
- package/.claude/skills/team-perf-opt/role-specs/optimizer.md +0 -102
- package/.claude/skills/team-perf-opt/role-specs/profiler.md +0 -73
- package/.claude/skills/team-perf-opt/role-specs/reviewer.md +0 -91
- package/.claude/skills/team-perf-opt/role-specs/strategist.md +0 -114
- package/.claude/skills/team-planex/role-specs/executor.md +0 -90
- package/.claude/skills/team-planex/role-specs/planner.md +0 -110
- package/.claude/skills/team-quality-assurance/role-specs/analyst.md +0 -79
- package/.claude/skills/team-quality-assurance/role-specs/executor.md +0 -64
- package/.claude/skills/team-quality-assurance/role-specs/generator.md +0 -67
- package/.claude/skills/team-quality-assurance/role-specs/scout.md +0 -66
- package/.claude/skills/team-quality-assurance/role-specs/strategist.md +0 -70
- package/.claude/skills/team-review/role-specs/fixer.md +0 -75
- package/.claude/skills/team-review/role-specs/reviewer.md +0 -66
- package/.claude/skills/team-review/role-specs/scanner.md +0 -70
- package/.claude/skills/team-roadmap-dev/role-specs/executor.md +0 -71
- package/.claude/skills/team-roadmap-dev/role-specs/planner.md +0 -77
- package/.claude/skills/team-roadmap-dev/role-specs/verifier.md +0 -73
- package/.claude/skills/team-tech-debt/role-specs/assessor.md +0 -70
- package/.claude/skills/team-tech-debt/role-specs/executor.md +0 -80
- package/.claude/skills/team-tech-debt/role-specs/planner.md +0 -71
- package/.claude/skills/team-tech-debt/role-specs/scanner.md +0 -85
- package/.claude/skills/team-tech-debt/role-specs/validator.md +0 -83
- package/.claude/skills/team-testing/role-specs/analyst.md +0 -94
- package/.claude/skills/team-testing/role-specs/executor.md +0 -97
- package/.claude/skills/team-testing/role-specs/generator.md +0 -96
- package/.claude/skills/team-testing/role-specs/strategist.md +0 -82
- package/.claude/skills/team-uidesign/role-specs/designer.md +0 -72
- package/.claude/skills/team-uidesign/role-specs/implementer.md +0 -74
- package/.claude/skills/team-uidesign/role-specs/researcher.md +0 -84
- package/.claude/skills/team-uidesign/role-specs/reviewer.md +0 -70
- package/.claude/skills/team-ux-improve/role-specs/designer.md +0 -191
- package/.claude/skills/team-ux-improve/role-specs/diagnoser.md +0 -110
- package/.claude/skills/team-ux-improve/role-specs/explorer.md +0 -109
- package/.claude/skills/team-ux-improve/role-specs/implementer.md +0 -164
- package/.claude/skills/team-ux-improve/role-specs/scanner.md +0 -117
- package/.claude/skills/team-ux-improve/role-specs/tester.md +0 -163
- package/.codex/skills/analyze-with-file/EXECUTE.md +0 -716
- package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js +0 -2
- package/ccw/frontend/dist/assets/CodexLensPage-My6DnfN6.js.map +0 -1
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
prefix: MARSHAL
|
|
3
|
-
inner_loop: false
|
|
4
|
-
message_types:
|
|
5
|
-
success: queue_ready
|
|
6
|
-
conflict: conflict_found
|
|
7
|
-
error: error
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Issue Integrator
|
|
11
|
-
|
|
12
|
-
Queue orchestration, conflict detection, and execution order optimization. Uses CLI tools for intelligent queue formation with DAG-based parallel groups.
|
|
13
|
-
|
|
14
|
-
## Phase 2: Collect Bound Solutions
|
|
15
|
-
|
|
16
|
-
| Input | Source | Required |
|
|
17
|
-
|-------|--------|----------|
|
|
18
|
-
| Issue IDs | Task description (GH-\d+ or ISS-\d{8}-\d{6}) | Yes |
|
|
19
|
-
| Bound solutions | `ccw issue solutions <id> --json` | Yes |
|
|
20
|
-
| .msg/meta.json | <session>/wisdom/.msg/meta.json | No |
|
|
21
|
-
|
|
22
|
-
1. Extract issue IDs from task description via regex
|
|
23
|
-
2. Verify all issues have bound solutions:
|
|
24
|
-
|
|
25
|
-
```
|
|
26
|
-
Bash("ccw issue solutions <issueId> --json")
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
3. Check for unbound issues:
|
|
30
|
-
|
|
31
|
-
| Condition | Action |
|
|
32
|
-
|-----------|--------|
|
|
33
|
-
| All issues bound | Proceed to Phase 3 |
|
|
34
|
-
| Any issue unbound | Report error to coordinator, STOP |
|
|
35
|
-
|
|
36
|
-
## Phase 3: Queue Formation via CLI
|
|
37
|
-
|
|
38
|
-
**CLI invocation**:
|
|
39
|
-
|
|
40
|
-
```
|
|
41
|
-
Bash("ccw cli -p \"
|
|
42
|
-
PURPOSE: Form execution queue for <count> issues with conflict detection and optimal ordering; success = DAG-based queue with parallel groups written to execution-queue.json
|
|
43
|
-
|
|
44
|
-
TASK: • Load all bound solutions from .workflow/issues/solutions/ • Analyze file conflicts between solutions • Build dependency graph • Determine optimal execution order (DAG-based) • Identify parallel execution groups • Write queue JSON
|
|
45
|
-
|
|
46
|
-
MODE: analysis
|
|
47
|
-
|
|
48
|
-
CONTEXT: @.workflow/issues/solutions/**/*.json | Memory: Issues to queue: <issueIds>
|
|
49
|
-
|
|
50
|
-
EXPECTED: Queue JSON with: ordered issue list, conflict analysis, parallel_groups (issues that can run concurrently), depends_on relationships
|
|
51
|
-
Write to: .workflow/issues/queue/execution-queue.json
|
|
52
|
-
|
|
53
|
-
CONSTRAINTS: Resolve file conflicts | Optimize for parallelism | Maintain dependency order
|
|
54
|
-
\" --tool gemini --mode analysis", { run_in_background: true })
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
**Parse queue result**:
|
|
58
|
-
|
|
59
|
-
```
|
|
60
|
-
Read(".workflow/issues/queue/execution-queue.json")
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
**Queue schema**:
|
|
64
|
-
|
|
65
|
-
```json
|
|
66
|
-
{
|
|
67
|
-
"queue": [{ "issue_id": "", "solution_id": "", "order": 0, "depends_on": [], "estimated_files": [] }],
|
|
68
|
-
"conflicts": [{ "issues": [], "files": [], "resolution": "" }],
|
|
69
|
-
"parallel_groups": [{ "group": 0, "issues": [] }]
|
|
70
|
-
}
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
## Phase 4: Conflict Resolution & Reporting
|
|
74
|
-
|
|
75
|
-
**Queue validation**:
|
|
76
|
-
|
|
77
|
-
| Condition | Action |
|
|
78
|
-
|-----------|--------|
|
|
79
|
-
| Queue file exists, no unresolved conflicts | Report `queue_ready` |
|
|
80
|
-
| Queue file exists, has unresolved conflicts | Report `conflict_found` for user decision |
|
|
81
|
-
| Queue file not found | Report `error`, STOP |
|
|
82
|
-
|
|
83
|
-
**Queue metrics for report**: queue size, parallel group count, resolved conflict count, execution order list.
|
|
84
|
-
|
|
85
|
-
Update `<session>/wisdom/.msg/meta.json` under `integrator` namespace:
|
|
86
|
-
- Read existing -> merge `{ "integrator": { queue_size, parallel_groups, conflict_count } }` -> write back
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
prefix: SOLVE
|
|
3
|
-
inner_loop: false
|
|
4
|
-
additional_prefixes: [SOLVE-fix]
|
|
5
|
-
message_types:
|
|
6
|
-
success: solution_ready
|
|
7
|
-
multi: multi_solution
|
|
8
|
-
error: error
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Issue Planner
|
|
12
|
-
|
|
13
|
-
Design solutions and decompose into implementation tasks. Uses CLI tools for ACE exploration and solution generation. For revision tasks (SOLVE-fix), design alternative approaches addressing reviewer feedback.
|
|
14
|
-
|
|
15
|
-
## Phase 2: Context Loading
|
|
16
|
-
|
|
17
|
-
| Input | Source | Required |
|
|
18
|
-
|-------|--------|----------|
|
|
19
|
-
| Issue ID | Task description (GH-\d+ or ISS-\d{8}-\d{6}) | Yes |
|
|
20
|
-
| Explorer context | `<session>/explorations/context-<issueId>.json` | No |
|
|
21
|
-
| Review feedback | Task description (for SOLVE-fix tasks) | No |
|
|
22
|
-
| .msg/meta.json | <session>/wisdom/.msg/meta.json | No |
|
|
23
|
-
|
|
24
|
-
1. Extract issue ID from task description via regex: `(?:GH-\d+|ISS-\d{8}-\d{6})`
|
|
25
|
-
2. If no issue ID found -> report error, STOP
|
|
26
|
-
3. Load explorer context report (if available):
|
|
27
|
-
|
|
28
|
-
```
|
|
29
|
-
Read("<session>/explorations/context-<issueId>.json")
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
4. Check if this is a revision task (SOLVE-fix-N):
|
|
33
|
-
- If yes, extract reviewer feedback from task description
|
|
34
|
-
- Design alternative approach addressing reviewer concerns
|
|
35
|
-
5. Load wisdom files for accumulated codebase knowledge
|
|
36
|
-
|
|
37
|
-
## Phase 3: Solution Generation via CLI
|
|
38
|
-
|
|
39
|
-
**CLI invocation**:
|
|
40
|
-
|
|
41
|
-
```
|
|
42
|
-
Bash("ccw cli -p \"
|
|
43
|
-
PURPOSE: Design solution for issue <issueId> and decompose into implementation tasks; success = solution bound to issue with task breakdown
|
|
44
|
-
|
|
45
|
-
TASK: • Load issue details from ccw issue status • Analyze explorer context • Design solution approach • Break down into implementation tasks • Generate solution JSON • Bind solution to issue
|
|
46
|
-
|
|
47
|
-
MODE: analysis
|
|
48
|
-
|
|
49
|
-
CONTEXT: @**/* | Memory: Issue <issueId> - <issue.title> (Priority: <issue.priority>)
|
|
50
|
-
Explorer findings: <explorerContext.key_findings>
|
|
51
|
-
Relevant files: <explorerContext.relevant_files>
|
|
52
|
-
Complexity: <explorerContext.complexity_assessment>
|
|
53
|
-
|
|
54
|
-
EXPECTED: Solution JSON with: issue_id, solution_id, approach, tasks (ordered list with descriptions), estimated_files, dependencies
|
|
55
|
-
Write to: <session>/solutions/solution-<issueId>.json
|
|
56
|
-
Then bind: ccw issue bind <issueId> <solution_id>
|
|
57
|
-
|
|
58
|
-
CONSTRAINTS: Follow existing patterns | Minimal changes | Address reviewer feedback if SOLVE-fix task
|
|
59
|
-
\" --tool gemini --mode analysis", { run_in_background: true })
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
**Expected CLI output**: Solution file path and binding confirmation
|
|
63
|
-
|
|
64
|
-
**Parse result**:
|
|
65
|
-
|
|
66
|
-
```
|
|
67
|
-
Read("<session>/solutions/solution-<issueId>.json")
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
## Phase 4: Solution Selection & Reporting
|
|
71
|
-
|
|
72
|
-
**Outcome routing**:
|
|
73
|
-
|
|
74
|
-
| Condition | Message Type | Action |
|
|
75
|
-
|-----------|-------------|--------|
|
|
76
|
-
| Single solution auto-bound | `solution_ready` | Report to coordinator |
|
|
77
|
-
| Multiple solutions pending | `multi_solution` | Report for user selection |
|
|
78
|
-
| No solution generated | `error` | Report failure to coordinator |
|
|
79
|
-
|
|
80
|
-
Write solution summary to `<session>/solutions/solution-<issueId>.json`.
|
|
81
|
-
|
|
82
|
-
Update `<session>/wisdom/.msg/meta.json` under `planner` namespace:
|
|
83
|
-
- Read existing -> merge `{ "planner": { issue_id, solution_id, task_count, is_revision } }` -> write back
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
prefix: AUDIT
|
|
3
|
-
inner_loop: false
|
|
4
|
-
message_types:
|
|
5
|
-
success: approved
|
|
6
|
-
concerns: concerns
|
|
7
|
-
rejected: rejected
|
|
8
|
-
error: error
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Issue Reviewer
|
|
12
|
-
|
|
13
|
-
Review solution plans for technical feasibility, risk, and completeness. Quality gate role between plan and execute phases. Provides clear verdicts: approved, rejected, or concerns.
|
|
14
|
-
|
|
15
|
-
## Phase 2: Context & Solution Loading
|
|
16
|
-
|
|
17
|
-
| Input | Source | Required |
|
|
18
|
-
|-------|--------|----------|
|
|
19
|
-
| Issue IDs | Task description (GH-\d+ or ISS-\d{8}-\d{6}) | Yes |
|
|
20
|
-
| Explorer context | `<session>/explorations/context-<issueId>.json` | No |
|
|
21
|
-
| Bound solution | `ccw issue solutions <id> --json` | Yes |
|
|
22
|
-
| .msg/meta.json | <session>/wisdom/.msg/meta.json | No |
|
|
23
|
-
|
|
24
|
-
1. Extract issue IDs from task description via regex
|
|
25
|
-
2. Load explorer context reports for each issue
|
|
26
|
-
3. Load bound solutions for each issue:
|
|
27
|
-
|
|
28
|
-
```
|
|
29
|
-
Bash("ccw issue solutions <issueId> --json")
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
## Phase 3: Multi-Dimensional Review
|
|
33
|
-
|
|
34
|
-
Review each solution across three weighted dimensions:
|
|
35
|
-
|
|
36
|
-
**Technical Feasibility (40%)**:
|
|
37
|
-
|
|
38
|
-
| Criterion | Check |
|
|
39
|
-
|-----------|-------|
|
|
40
|
-
| File Coverage | Solution covers all affected files from explorer context |
|
|
41
|
-
| Dependency Awareness | Considers dependency cascade effects |
|
|
42
|
-
| API Compatibility | Maintains backward compatibility |
|
|
43
|
-
| Pattern Conformance | Follows existing code patterns (ACE semantic validation) |
|
|
44
|
-
|
|
45
|
-
**Risk Assessment (30%)**:
|
|
46
|
-
|
|
47
|
-
| Criterion | Check |
|
|
48
|
-
|-----------|-------|
|
|
49
|
-
| Scope Creep | Solution stays within issue boundary (task_count <= 10) |
|
|
50
|
-
| Breaking Changes | No destructive modifications |
|
|
51
|
-
| Side Effects | No unforeseen side effects |
|
|
52
|
-
| Rollback Path | Can rollback if issues occur |
|
|
53
|
-
|
|
54
|
-
**Completeness (30%)**:
|
|
55
|
-
|
|
56
|
-
| Criterion | Check |
|
|
57
|
-
|-----------|-------|
|
|
58
|
-
| All Tasks Defined | Task decomposition is complete (count > 0) |
|
|
59
|
-
| Test Coverage | Includes test plan |
|
|
60
|
-
| Edge Cases | Considers boundary conditions |
|
|
61
|
-
|
|
62
|
-
**Score calculation**:
|
|
63
|
-
|
|
64
|
-
```
|
|
65
|
-
total_score = round(
|
|
66
|
-
technical_feasibility.score * 0.4 +
|
|
67
|
-
risk_assessment.score * 0.3 +
|
|
68
|
-
completeness.score * 0.3
|
|
69
|
-
)
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
**Verdict rules**:
|
|
73
|
-
|
|
74
|
-
| Score | Verdict | Message Type |
|
|
75
|
-
|-------|---------|-------------|
|
|
76
|
-
| >= 80 | approved | `approved` |
|
|
77
|
-
| 60-79 | concerns | `concerns` |
|
|
78
|
-
| < 60 | rejected | `rejected` |
|
|
79
|
-
|
|
80
|
-
## Phase 4: Compile Audit Report
|
|
81
|
-
|
|
82
|
-
1. Write audit report to `<session>/audits/audit-report.json`:
|
|
83
|
-
- Per-issue: issueId, solutionId, total_score, verdict, per-dimension scores and findings
|
|
84
|
-
- Overall verdict (any rejected -> overall rejected)
|
|
85
|
-
|
|
86
|
-
2. Update `<session>/wisdom/.msg/meta.json` under `reviewer` namespace:
|
|
87
|
-
- Read existing -> merge `{ "reviewer": { overall_verdict, review_count, scores } }` -> write back
|
|
88
|
-
|
|
89
|
-
3. For rejected solutions, include specific rejection reasons and actionable feedback for SOLVE-fix task creation
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
prefix: DESIGN
|
|
3
|
-
inner_loop: false
|
|
4
|
-
message_types:
|
|
5
|
-
success: design_ready
|
|
6
|
-
revision: design_revision
|
|
7
|
-
error: error
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Architect
|
|
11
|
-
|
|
12
|
-
Technical design, task decomposition, and architecture decision records for iterative development.
|
|
13
|
-
|
|
14
|
-
## Phase 2: Context Loading + Codebase Exploration
|
|
15
|
-
|
|
16
|
-
| Input | Source | Required |
|
|
17
|
-
|-------|--------|----------|
|
|
18
|
-
| Task description | From task subject/description | Yes |
|
|
19
|
-
| Session path | Extracted from task description | Yes |
|
|
20
|
-
| .msg/meta.json | <session>/.msg/meta.json | No |
|
|
21
|
-
| Wisdom files | <session>/wisdom/ | No |
|
|
22
|
-
|
|
23
|
-
1. Extract session path and requirement from task description
|
|
24
|
-
2. Read .msg/meta.json for shared context (architecture_decisions, implementation_context)
|
|
25
|
-
3. Read wisdom files if available (learnings.md, decisions.md, conventions.md)
|
|
26
|
-
4. Explore codebase for existing patterns, module structure, dependencies:
|
|
27
|
-
- Use mcp__ace-tool__search_context for semantic discovery
|
|
28
|
-
- Identify similar implementations and integration points
|
|
29
|
-
|
|
30
|
-
## Phase 3: Technical Design + Task Decomposition
|
|
31
|
-
|
|
32
|
-
**Design strategy selection**:
|
|
33
|
-
|
|
34
|
-
| Condition | Strategy |
|
|
35
|
-
|-----------|----------|
|
|
36
|
-
| Single module change | Direct inline design |
|
|
37
|
-
| Cross-module change | Multi-component design with integration points |
|
|
38
|
-
| Large refactoring | Phased approach with milestones |
|
|
39
|
-
|
|
40
|
-
**Outputs**:
|
|
41
|
-
|
|
42
|
-
1. **Design Document** (`<session>/design/design-<num>.md`):
|
|
43
|
-
- Architecture decision: approach, rationale, alternatives
|
|
44
|
-
- Component design: responsibility, dependencies, files, complexity
|
|
45
|
-
- Task breakdown: files, estimated complexity, dependencies, acceptance criteria
|
|
46
|
-
- Integration points and risks with mitigations
|
|
47
|
-
|
|
48
|
-
2. **Task Breakdown JSON** (`<session>/design/task-breakdown.json`):
|
|
49
|
-
- Array of tasks with id, title, files, complexity, dependencies, acceptance_criteria
|
|
50
|
-
- Execution order for developer to follow
|
|
51
|
-
|
|
52
|
-
## Phase 4: Design Validation
|
|
53
|
-
|
|
54
|
-
| Check | Method | Pass Criteria |
|
|
55
|
-
|-------|--------|---------------|
|
|
56
|
-
| Components defined | Verify component list | At least 1 component |
|
|
57
|
-
| Task breakdown exists | Verify task list | At least 1 task |
|
|
58
|
-
| Dependencies mapped | All components have dependencies field | All present (can be empty) |
|
|
59
|
-
| Integration points | Verify integration section | Key integrations documented |
|
|
60
|
-
|
|
61
|
-
1. Run validation checks above
|
|
62
|
-
2. Write architecture_decisions entry to .msg/meta.json:
|
|
63
|
-
- design_id, approach, rationale, components, task_count
|
|
64
|
-
3. Write discoveries to wisdom/decisions.md and wisdom/conventions.md
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
prefix: DEV
|
|
3
|
-
inner_loop: true
|
|
4
|
-
message_types:
|
|
5
|
-
success: dev_complete
|
|
6
|
-
progress: dev_progress
|
|
7
|
-
error: error
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Developer
|
|
11
|
-
|
|
12
|
-
Code implementer. Implements code according to design, incremental delivery. Acts as Generator in Generator-Critic loop (paired with reviewer).
|
|
13
|
-
|
|
14
|
-
## Phase 2: Context Loading
|
|
15
|
-
|
|
16
|
-
| Input | Source | Required |
|
|
17
|
-
|-------|--------|----------|
|
|
18
|
-
| Task description | From task subject/description | Yes |
|
|
19
|
-
| Session path | Extracted from task description | Yes |
|
|
20
|
-
| .msg/meta.json | <session>/.msg/meta.json | Yes |
|
|
21
|
-
| Design document | <session>/design/design-001.md | For non-fix tasks |
|
|
22
|
-
| Task breakdown | <session>/design/task-breakdown.json | For non-fix tasks |
|
|
23
|
-
| Review feedback | <session>/review/*.md | For fix tasks |
|
|
24
|
-
| Wisdom files | <session>/wisdom/ | No |
|
|
25
|
-
|
|
26
|
-
1. Extract session path from task description
|
|
27
|
-
2. Read .msg/meta.json for shared context
|
|
28
|
-
3. Detect task type:
|
|
29
|
-
|
|
30
|
-
| Task Type | Detection | Loading |
|
|
31
|
-
|-----------|-----------|---------|
|
|
32
|
-
| Fix task | Subject contains "fix" | Read latest review file for feedback |
|
|
33
|
-
| Normal task | No "fix" in subject | Read design document + task breakdown |
|
|
34
|
-
|
|
35
|
-
4. Load previous implementation_context from .msg/meta.json
|
|
36
|
-
5. Read wisdom files for conventions and known issues
|
|
37
|
-
|
|
38
|
-
## Phase 3: Code Implementation
|
|
39
|
-
|
|
40
|
-
**Implementation strategy selection**:
|
|
41
|
-
|
|
42
|
-
| Task Count | Complexity | Strategy |
|
|
43
|
-
|------------|------------|----------|
|
|
44
|
-
| <= 2 tasks | Low | Direct: inline Edit/Write |
|
|
45
|
-
| 3-5 tasks | Medium | Single agent: one code-developer for all |
|
|
46
|
-
| > 5 tasks | High | Batch agent: group by module, one agent per batch |
|
|
47
|
-
|
|
48
|
-
**Fix Task Mode** (GC Loop):
|
|
49
|
-
- Focus on review feedback items only
|
|
50
|
-
- Fix critical issues first, then high, then medium
|
|
51
|
-
- Do NOT change code that was not flagged
|
|
52
|
-
- Maintain existing code style and patterns
|
|
53
|
-
|
|
54
|
-
**Normal Task Mode**:
|
|
55
|
-
- Read target files, apply changes using Edit or Write
|
|
56
|
-
- Follow execution order from task breakdown
|
|
57
|
-
- Validate syntax after each major change
|
|
58
|
-
|
|
59
|
-
## Phase 4: Self-Validation
|
|
60
|
-
|
|
61
|
-
| Check | Method | Pass Criteria |
|
|
62
|
-
|-------|--------|---------------|
|
|
63
|
-
| Syntax | tsc --noEmit or equivalent | No errors |
|
|
64
|
-
| File existence | Verify all planned files exist | All files present |
|
|
65
|
-
| Import resolution | Check no broken imports | All imports resolve |
|
|
66
|
-
|
|
67
|
-
1. Run syntax check: `tsc --noEmit` / `python -m py_compile` / equivalent
|
|
68
|
-
2. Auto-fix if validation fails (max 2 attempts)
|
|
69
|
-
3. Write dev log to `<session>/code/dev-log.md`:
|
|
70
|
-
- Changed files count, syntax status, fix task flag, file list
|
|
71
|
-
4. Update implementation_context in .msg/meta.json:
|
|
72
|
-
- task, changed_files, is_fix, syntax_clean
|
|
73
|
-
5. Write discoveries to wisdom/learnings.md
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
prefix: REVIEW
|
|
3
|
-
inner_loop: false
|
|
4
|
-
message_types:
|
|
5
|
-
success: review_passed
|
|
6
|
-
revision: review_revision
|
|
7
|
-
critical: review_critical
|
|
8
|
-
error: error
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Reviewer
|
|
12
|
-
|
|
13
|
-
Code reviewer. Multi-dimensional review, quality scoring, improvement suggestions. Acts as Critic in Generator-Critic loop (paired with developer).
|
|
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
|
-
| .msg/meta.json | <session>/.msg/meta.json | Yes |
|
|
22
|
-
| Design document | <session>/design/design-001.md | For requirements alignment |
|
|
23
|
-
| Changed files | Git diff | Yes |
|
|
24
|
-
|
|
25
|
-
1. Extract session path from task description
|
|
26
|
-
2. Read .msg/meta.json for shared context and previous review_feedback_trends
|
|
27
|
-
3. Read design document for requirements alignment
|
|
28
|
-
4. Get changed files via git diff, read file contents (limit 20 files)
|
|
29
|
-
|
|
30
|
-
## Phase 3: Multi-Dimensional Review
|
|
31
|
-
|
|
32
|
-
**Review dimensions**:
|
|
33
|
-
|
|
34
|
-
| Dimension | Weight | Focus Areas |
|
|
35
|
-
|-----------|--------|-------------|
|
|
36
|
-
| Correctness | 30% | Logic correctness, boundary handling |
|
|
37
|
-
| Completeness | 25% | Coverage of design requirements |
|
|
38
|
-
| Maintainability | 25% | Readability, code style, DRY |
|
|
39
|
-
| Security | 20% | Vulnerabilities, input validation |
|
|
40
|
-
|
|
41
|
-
Per-dimension: scan modified files, record findings with severity (CRITICAL/HIGH/MEDIUM/LOW), include file:line references and suggestions.
|
|
42
|
-
|
|
43
|
-
**Scoring**: Weighted average of dimension scores (1-10 each).
|
|
44
|
-
|
|
45
|
-
**Output review report** (`<session>/review/review-<num>.md`):
|
|
46
|
-
- Files reviewed count, quality score, issue counts by severity
|
|
47
|
-
- Per-finding: severity, file:line, dimension, description, suggestion
|
|
48
|
-
- Scoring breakdown by dimension
|
|
49
|
-
- Signal: CRITICAL / REVISION_NEEDED / APPROVED
|
|
50
|
-
- Design alignment notes
|
|
51
|
-
|
|
52
|
-
## Phase 4: Trend Analysis + Verdict
|
|
53
|
-
|
|
54
|
-
1. Compare with previous review_feedback_trends from .msg/meta.json
|
|
55
|
-
2. Identify recurring issues, improvement areas, new issues
|
|
56
|
-
|
|
57
|
-
| Verdict Condition | Message Type |
|
|
58
|
-
|-------------------|--------------|
|
|
59
|
-
| criticalCount > 0 | review_critical |
|
|
60
|
-
| score < 7 | review_revision |
|
|
61
|
-
| else | review_passed |
|
|
62
|
-
|
|
63
|
-
3. Update review_feedback_trends in .msg/meta.json:
|
|
64
|
-
- review_id, score, critical count, high count, dimensions, gc_round
|
|
65
|
-
4. Write discoveries to wisdom/learnings.md
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
prefix: VERIFY
|
|
3
|
-
inner_loop: false
|
|
4
|
-
message_types:
|
|
5
|
-
success: verify_passed
|
|
6
|
-
failure: verify_failed
|
|
7
|
-
fix: fix_required
|
|
8
|
-
error: error
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
# Tester
|
|
12
|
-
|
|
13
|
-
Test validator. Test execution, fix cycles, and regression detection.
|
|
14
|
-
|
|
15
|
-
## Phase 2: Environment Detection
|
|
16
|
-
|
|
17
|
-
| Input | Source | Required |
|
|
18
|
-
|-------|--------|----------|
|
|
19
|
-
| Task description | From task subject/description | Yes |
|
|
20
|
-
| Session path | Extracted from task description | Yes |
|
|
21
|
-
| .msg/meta.json | <session>/.msg/meta.json | Yes |
|
|
22
|
-
| Changed files | Git diff | Yes |
|
|
23
|
-
|
|
24
|
-
1. Extract session path from task description
|
|
25
|
-
2. Read .msg/meta.json for shared context
|
|
26
|
-
3. Get changed files via git diff
|
|
27
|
-
4. Detect test framework and command:
|
|
28
|
-
|
|
29
|
-
| Detection | Method |
|
|
30
|
-
|-----------|--------|
|
|
31
|
-
| Test command | Check package.json scripts, pytest.ini, Makefile |
|
|
32
|
-
| Coverage tool | Check for nyc, coverage.py, jest --coverage config |
|
|
33
|
-
|
|
34
|
-
Common commands: npm test, pytest, go test ./..., cargo test
|
|
35
|
-
|
|
36
|
-
## Phase 3: Execution + Fix Cycle
|
|
37
|
-
|
|
38
|
-
**Iterative test-fix cycle** (max 5 iterations):
|
|
39
|
-
|
|
40
|
-
| Step | Action |
|
|
41
|
-
|------|--------|
|
|
42
|
-
| 1 | Run test command |
|
|
43
|
-
| 2 | Parse results, check pass rate |
|
|
44
|
-
| 3 | Pass rate >= 95% -> exit loop (success) |
|
|
45
|
-
| 4 | Extract failing test details |
|
|
46
|
-
| 5 | Apply fix using CLI tool |
|
|
47
|
-
| 6 | Increment iteration counter |
|
|
48
|
-
| 7 | iteration >= MAX (5) -> exit loop (report failures) |
|
|
49
|
-
| 8 | Go to Step 1 |
|
|
50
|
-
|
|
51
|
-
**Fix delegation**: Use CLI tool to fix failing tests:
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
ccw cli -p "PURPOSE: Fix failing tests; success = all listed tests pass
|
|
55
|
-
TASK: • Analyze test failure output • Identify root cause in changed files • Apply minimal fix
|
|
56
|
-
MODE: write
|
|
57
|
-
CONTEXT: @<changed-files> | Memory: Test output from current iteration
|
|
58
|
-
EXPECTED: Code fixes that make failing tests pass without breaking other tests
|
|
59
|
-
CONSTRAINTS: Only modify files in changed list | Minimal changes
|
|
60
|
-
Test output: <test-failure-details>
|
|
61
|
-
Changed files: <file-list>" --tool gemini --mode write --rule development-debug-runtime-issues
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
Wait for CLI completion before re-running tests.
|
|
65
|
-
|
|
66
|
-
## Phase 4: Regression Check + Report
|
|
67
|
-
|
|
68
|
-
1. Run full test suite for regression: `<test-command> --all`
|
|
69
|
-
|
|
70
|
-
| Check | Method | Pass Criteria |
|
|
71
|
-
|-------|--------|---------------|
|
|
72
|
-
| Regression | Run full test suite | No FAIL in output |
|
|
73
|
-
| Coverage | Run coverage tool | >= 80% (if configured) |
|
|
74
|
-
|
|
75
|
-
2. Write verification results to `<session>/verify/verify-<num>.json`:
|
|
76
|
-
- verify_id, pass_rate, iterations, passed, timestamp, regression_passed
|
|
77
|
-
|
|
78
|
-
3. Determine message type:
|
|
79
|
-
|
|
80
|
-
| Condition | Message Type |
|
|
81
|
-
|-----------|--------------|
|
|
82
|
-
| passRate >= 0.95 | verify_passed |
|
|
83
|
-
| passRate < 0.95 && iterations >= MAX | fix_required |
|
|
84
|
-
| passRate < 0.95 | verify_failed |
|
|
85
|
-
|
|
86
|
-
4. Update .msg/meta.json with test_patterns entry
|
|
87
|
-
5. Write discoveries to wisdom/issues.md
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
prefix: BENCH
|
|
3
|
-
inner_loop: false
|
|
4
|
-
message_types:
|
|
5
|
-
success: bench_complete
|
|
6
|
-
error: error
|
|
7
|
-
fix: fix_required
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Performance Benchmarker
|
|
11
|
-
|
|
12
|
-
Run benchmarks comparing before/after optimization metrics. Validate that improvements meet plan success criteria and detect any regressions.
|
|
13
|
-
|
|
14
|
-
## Phase 2: Environment & Baseline Loading
|
|
15
|
-
|
|
16
|
-
| Input | Source | Required |
|
|
17
|
-
|-------|--------|----------|
|
|
18
|
-
| Baseline metrics | <session>/artifacts/baseline-metrics.json (shared) | Yes |
|
|
19
|
-
| Optimization plan / detail | Varies by mode (see below) | Yes |
|
|
20
|
-
| .msg/meta.json | <session>/.msg/meta.json | Yes |
|
|
21
|
-
|
|
22
|
-
1. Extract session path from task description
|
|
23
|
-
2. **Detect branch/pipeline context** from task description:
|
|
24
|
-
|
|
25
|
-
| Task Description Field | Value | Context |
|
|
26
|
-
|----------------------|-------|---------|
|
|
27
|
-
| `BranchId: B{NN}` | Present | Fan-out branch -- benchmark only this branch's metrics |
|
|
28
|
-
| `PipelineId: {P}` | Present | Independent pipeline -- use pipeline-scoped baseline |
|
|
29
|
-
| Neither present | - | Single mode -- full benchmark |
|
|
30
|
-
|
|
31
|
-
3. **Load baseline metrics**:
|
|
32
|
-
- Single / Fan-out: Read `<session>/artifacts/baseline-metrics.json` (shared baseline)
|
|
33
|
-
- Independent: Read `<session>/artifacts/pipelines/{P}/baseline-metrics.json`
|
|
34
|
-
|
|
35
|
-
4. **Load optimization context**:
|
|
36
|
-
- Single: Read `<session>/artifacts/optimization-plan.md` -- all success criteria
|
|
37
|
-
- Fan-out branch: Read `<session>/artifacts/branches/B{NN}/optimization-detail.md` -- only this branch's criteria
|
|
38
|
-
- Independent: Read `<session>/artifacts/pipelines/{P}/optimization-plan.md`
|
|
39
|
-
|
|
40
|
-
5. Load .msg/meta.json for project type and optimization scope
|
|
41
|
-
6. Detect available benchmark tools from project:
|
|
42
|
-
|
|
43
|
-
| Signal | Benchmark Tool | Method |
|
|
44
|
-
|--------|---------------|--------|
|
|
45
|
-
| package.json + vitest/jest | Test runner benchmarks | Run existing perf tests |
|
|
46
|
-
| package.json + webpack/vite | Bundle analysis | Compare build output sizes |
|
|
47
|
-
| Cargo.toml + criterion | Rust benchmarks | cargo bench |
|
|
48
|
-
| go.mod | Go benchmarks | go test -bench |
|
|
49
|
-
| Makefile with bench target | Custom benchmarks | make bench |
|
|
50
|
-
| No tooling detected | Manual measurement | Timed execution via Bash |
|
|
51
|
-
|
|
52
|
-
7. Get changed files scope from shared-memory:
|
|
53
|
-
- Single: `optimizer` namespace
|
|
54
|
-
- Fan-out: `optimizer.B{NN}` namespace
|
|
55
|
-
- Independent: `optimizer.{P}` namespace
|
|
56
|
-
|
|
57
|
-
## Phase 3: Benchmark Execution
|
|
58
|
-
|
|
59
|
-
Run benchmarks matching detected project type:
|
|
60
|
-
|
|
61
|
-
**Frontend benchmarks**:
|
|
62
|
-
- Compare bundle size before/after (build output analysis)
|
|
63
|
-
- Measure render performance for affected components
|
|
64
|
-
- Check for dependency weight changes
|
|
65
|
-
|
|
66
|
-
**Backend benchmarks**:
|
|
67
|
-
- Measure endpoint response times for affected routes
|
|
68
|
-
- Profile memory usage under simulated load
|
|
69
|
-
- Verify database query performance improvements
|
|
70
|
-
|
|
71
|
-
**CLI / Library benchmarks**:
|
|
72
|
-
- Measure execution time for representative workloads
|
|
73
|
-
- Compare memory peak usage
|
|
74
|
-
- Test throughput under sustained load
|
|
75
|
-
|
|
76
|
-
**All project types**:
|
|
77
|
-
- Run existing test suite to verify no regressions
|
|
78
|
-
- Collect post-optimization metrics matching baseline format
|
|
79
|
-
- Calculate improvement percentages per metric
|
|
80
|
-
|
|
81
|
-
**Branch-scoped benchmarking** (fan-out mode):
|
|
82
|
-
- Only benchmark metrics relevant to this branch's optimization (from optimization-detail.md)
|
|
83
|
-
- Still check for regressions across all metrics (not just branch-specific ones)
|
|
84
|
-
|
|
85
|
-
## Phase 4: Result Analysis
|
|
86
|
-
|
|
87
|
-
Compare against baseline and plan criteria:
|
|
88
|
-
|
|
89
|
-
| Metric | Threshold | Verdict |
|
|
90
|
-
|--------|-----------|---------|
|
|
91
|
-
| Target improvement vs baseline | Meets plan success criteria | PASS |
|
|
92
|
-
| No regression in unrelated metrics | < 5% degradation allowed | PASS |
|
|
93
|
-
| All plan success criteria met | Every criterion satisfied | PASS |
|
|
94
|
-
| Improvement below target | > 50% of target achieved | WARN |
|
|
95
|
-
| Regression detected | Any unrelated metric degrades > 5% | FAIL -> fix_required |
|
|
96
|
-
| Plan criteria not met | Any criterion not satisfied | FAIL -> fix_required |
|
|
97
|
-
|
|
98
|
-
1. Write benchmark results to output path:
|
|
99
|
-
- Single: `<session>/artifacts/benchmark-results.json`
|
|
100
|
-
- Fan-out: `<session>/artifacts/branches/B{NN}/benchmark-results.json`
|
|
101
|
-
- Independent: `<session>/artifacts/pipelines/{P}/benchmark-results.json`
|
|
102
|
-
- Content: Per-metric: name, baseline value, current value, improvement %, verdict; Overall verdict: PASS / WARN / FAIL; Regression details (if any)
|
|
103
|
-
|
|
104
|
-
2. Update `<session>/.msg/meta.json` under scoped namespace:
|
|
105
|
-
- Single: merge `{ "benchmarker": { verdict, improvements, regressions } }`
|
|
106
|
-
- Fan-out: merge `{ "benchmarker.B{NN}": { verdict, improvements, regressions } }`
|
|
107
|
-
- Independent: merge `{ "benchmarker.{P}": { verdict, improvements, regressions } }`
|
|
108
|
-
|
|
109
|
-
3. If verdict is FAIL, include detailed feedback in message for FIX task creation:
|
|
110
|
-
- Which metrics failed, by how much, suggested investigation areas
|