maestro-flow 0.3.15 → 0.3.17
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/workflow-planner.md +24 -8
- package/.claude/commands/maestro-amend.md +300 -0
- package/.claude/commands/maestro-analyze.md +1 -49
- package/.claude/commands/maestro-execute.md +2 -56
- package/.claude/commands/maestro-fork.md +3 -50
- package/.claude/commands/maestro-merge.md +2 -26
- package/.claude/commands/maestro-milestone-audit.md +1 -5
- package/.claude/commands/maestro-milestone-complete.md +1 -7
- package/.claude/commands/maestro-plan.md +6 -127
- package/.claude/commands/maestro-roadmap.md +3 -101
- package/.claude/commands/maestro-spec-generate.md +1 -25
- package/.claude/commands/maestro-ui-design.md +14 -73
- package/.claude/commands/maestro-verify.md +1 -32
- package/.claude/commands/maestro.md +13 -30
- package/.claude/commands/manage-harvest.md +7 -44
- package/.claude/commands/manage-knowhow-capture.md +193 -0
- package/.claude/commands/{manage-memory.md → manage-knowhow.md} +77 -88
- package/.claude/commands/manage-learn.md +3 -28
- package/.claude/commands/manage-status.md +1 -20
- package/.claude/commands/manage-wiki.md +1 -1
- package/.claude/commands/quality-business-test.md +1 -1
- package/.claude/commands/quality-debug.md +3 -18
- package/.claude/commands/quality-integration-test.md +3 -23
- package/.claude/commands/quality-retrospective.md +1 -28
- package/.claude/commands/quality-review.md +3 -52
- package/.claude/commands/quality-test-gen.md +1 -10
- package/.claude/commands/quality-test.md +3 -25
- package/.claude/commands/spec-add.md +1 -21
- package/.claude/commands/spec-load.md +1 -16
- package/.claude/commands/wiki-connect.md +2 -112
- package/.claude/commands/wiki-digest.md +2 -141
- package/.codex/skills/learn-decompose/SKILL.md +2 -8
- package/.codex/skills/maestro/SKILL.md +60 -146
- package/.codex/skills/maestro-analyze/SKILL.md +52 -150
- package/.codex/skills/maestro-brainstorm/SKILL.md +36 -91
- package/.codex/skills/maestro-composer/SKILL.md +4 -76
- package/.codex/skills/maestro-execute/SKILL.md +46 -177
- package/.codex/skills/maestro-init/SKILL.md +7 -51
- package/.codex/skills/maestro-link-coordinate/SKILL.md +56 -229
- package/.codex/skills/maestro-milestone-audit/SKILL.md +7 -36
- package/.codex/skills/maestro-milestone-complete/SKILL.md +11 -93
- package/.codex/skills/maestro-overlay/SKILL.md +23 -92
- package/.codex/skills/maestro-plan/SKILL.md +70 -166
- package/.codex/skills/maestro-player/SKILL.md +24 -149
- package/.codex/skills/maestro-quick/SKILL.md +5 -48
- package/.codex/skills/maestro-roadmap/SKILL.md +21 -66
- package/.codex/skills/maestro-spec-generate/SKILL.md +20 -56
- package/.codex/skills/maestro-ui-design/SKILL.md +6 -53
- package/.codex/skills/maestro-verify/SKILL.md +39 -136
- package/.codex/skills/manage-codebase-rebuild/SKILL.md +25 -75
- package/.codex/skills/manage-codebase-refresh/SKILL.md +5 -32
- package/.codex/skills/manage-issue/SKILL.md +1 -6
- package/.codex/skills/manage-issue-discover/SKILL.md +33 -93
- package/.codex/skills/{manage-memory → manage-knowhow}/SKILL.md +95 -95
- package/.codex/skills/manage-knowhow-capture/SKILL.md +110 -0
- package/.codex/skills/manage-learn/SKILL.md +17 -71
- package/.codex/skills/manage-status/SKILL.md +4 -35
- package/.codex/skills/manage-wiki/SKILL.md +1 -1
- package/.codex/skills/quality-business-test/SKILL.md +2 -14
- package/.codex/skills/quality-debug/SKILL.md +41 -133
- package/.codex/skills/quality-integration-test/SKILL.md +36 -145
- package/.codex/skills/quality-refactor/SKILL.md +6 -59
- package/.codex/skills/quality-retrospective/SKILL.md +292 -531
- package/.codex/skills/quality-review/SKILL.md +30 -65
- package/.codex/skills/quality-sync/SKILL.md +2 -11
- package/.codex/skills/quality-test/SKILL.md +4 -45
- package/.codex/skills/quality-test-gen/SKILL.md +33 -121
- package/.codex/skills/spec-add/SKILL.md +2 -9
- package/.codex/skills/spec-load/SKILL.md +4 -14
- package/.codex/skills/spec-map/SKILL.md +4 -37
- package/.codex/skills/spec-remove/SKILL.md +3 -35
- package/.codex/skills/spec-setup/SKILL.md +2 -19
- package/.codex/skills/team-coordinate/SKILL.md +20 -132
- package/.codex/skills/team-coordinate/roles/coordinator/commands/monitor.md +61 -215
- package/.codex/skills/team-executor/SKILL.md +7 -66
- package/.codex/skills/team-executor/roles/executor/commands/monitor.md +60 -182
- package/.codex/skills/team-executor/specs/session-schema.md +22 -56
- package/.codex/skills/team-lifecycle-v4/SKILL.md +22 -143
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/monitor.md +31 -223
- package/.codex/skills/team-quality-assurance/SKILL.md +14 -88
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/monitor.md +46 -186
- package/.codex/skills/team-review/SKILL.md +12 -86
- package/.codex/skills/team-review/roles/coordinator/commands/monitor.md +49 -187
- package/.codex/skills/team-tech-debt/SKILL.md +11 -50
- package/.codex/skills/team-tech-debt/roles/coordinator/commands/monitor.md +50 -239
- package/.codex/skills/team-testing/SKILL.md +14 -99
- package/.codex/skills/team-testing/roles/coordinator/commands/monitor.md +52 -228
- package/.codex/skills/wiki-connect/SKILL.md +2 -5
- package/README.md +6 -0
- package/README.zh-CN.md +6 -0
- package/chains/_intent-map.json +7 -7
- package/chains/singles/{memory-capture.json → knowhow-capture.json} +5 -5
- package/chains/singles/{memory.json → knowhow.json} +6 -6
- package/dashboard/dist/assets/{ArtifactsPage-CUrrDGgN.js → ArtifactsPage-iJZtYsmR.js} +6 -6
- package/dashboard/dist/assets/ChatInput-DNnDLdQF.js +6 -0
- package/dashboard/dist/assets/ChatPage-BjBibfE4.js +22 -0
- package/dashboard/dist/assets/{CollabPage-DIUXeazv.js → CollabPage-8lUMUol_.js} +1 -1
- package/dashboard/dist/assets/{ExecutionPanel-VmYeADFj.js → ExecutionPanel-BKV3GZ7Q.js} +1 -1
- package/dashboard/dist/assets/{KanbanPage-DLq8v7hg.js → KanbanPage-diY3QmGd.js} +2 -2
- package/dashboard/dist/assets/{MarkdownRenderer-D7AehrnR.js → MarkdownRenderer-cYFfe1uX.js} +1 -1
- package/dashboard/dist/assets/McpPage-COjuIf7U.js +21 -0
- package/dashboard/dist/assets/MeetingRoomPage-wnvT7wlB.js +85 -0
- package/dashboard/dist/assets/{OutputPanel-B-Rjwgmv.js → OutputPanel-DDL90Idy.js} +1 -1
- package/dashboard/dist/assets/{ProblemsPanel-GEpF-oi4.js → ProblemsPanel-zFN9IIs0.js} +1 -1
- package/dashboard/dist/assets/{RequirementBoardPage-xs8uDM7I.js → RequirementBoardPage-DOPJoT0I.js} +2 -2
- package/dashboard/dist/assets/{RequirementPage-BKDSFwjA.js → RequirementPage-CEVquRgM.js} +1 -1
- package/dashboard/dist/assets/RoomsPage-D5USEWDh.js +1 -0
- package/dashboard/dist/assets/{SpecsPage-DLFb9ZH0.js → SpecsPage-BOwBin_o.js} +1 -1
- package/dashboard/dist/assets/{SupervisorPage-SOki_kgz.js → SupervisorPage-5iRyMU5T.js} +1 -1
- package/dashboard/dist/assets/TeamsPage-DlcEmr_Q.js +1 -0
- package/dashboard/dist/assets/{TreeBrowser-B9DHdULE.js → TreeBrowser-Y48Wz-QY.js} +1 -1
- package/dashboard/dist/assets/WorkflowPage-CmQaRVgL.js +6 -0
- package/dashboard/dist/assets/arrow-left-NCUOENvg.js +6 -0
- package/dashboard/dist/assets/{check-DJDk3A2a.js → check-o7nfGNHf.js} +1 -1
- package/dashboard/dist/assets/{chevron-right-C7bVDreZ.js → chevron-right-BXySK2fn.js} +1 -1
- package/dashboard/dist/assets/{circle-alert-Na1vf6qQ.js → circle-alert-DcSBokh4.js} +1 -1
- package/dashboard/dist/assets/{circle-check-CEGgy3NV.js → circle-check-Cd-jce4j.js} +1 -1
- package/dashboard/dist/assets/{circle-check-big-3JB8zRYj.js → circle-check-big-BN7Mdp4i.js} +1 -1
- package/dashboard/dist/assets/{circle-Qfgy4LB_.js → circle-cooAwnAR.js} +1 -1
- package/dashboard/dist/assets/{code-Ble63Idz.js → code-BQa9oL1n.js} +1 -1
- package/dashboard/dist/assets/{columns-3-BUcKlxve.js → columns-3-BzgxelGx.js} +1 -1
- package/dashboard/dist/assets/{download-CMqkfn8x.js → download-swRJnate.js} +1 -1
- package/dashboard/dist/assets/en-C_BD3UCD.js +1 -0
- package/dashboard/dist/assets/{folder-B9ewx9LL.js → folder-DbGbLNFN.js} +1 -1
- package/dashboard/dist/assets/index-BEUaOz_b.css +1 -0
- package/dashboard/dist/assets/{index-JTmGteaT.js → index-DIoMBMbv.js} +1 -1
- package/dashboard/dist/assets/index-DLBN_7fb.js +44 -0
- package/dashboard/dist/assets/index-uIqUCT8y.js +236 -0
- package/dashboard/dist/assets/{list-DI8Wn2aT.js → list-BTRAIvDq.js} +1 -1
- package/dashboard/dist/assets/loader-NHtB6Mdn.js +6 -0
- package/dashboard/dist/assets/{minus-Lp_BfctG.js → minus-BjMxRTET.js} +1 -1
- package/dashboard/dist/assets/{pen-line-Ch7sphzZ.js → pen-line-C4_O16H0.js} +1 -1
- package/dashboard/dist/assets/{pencil-_yRMHmGT.js → pencil-DTmKhyDY.js} +1 -1
- package/dashboard/dist/assets/{proxy-D72Y8a4Y.js → proxy-Dtx5p6IO.js} +1 -1
- package/dashboard/dist/assets/rows-2-GR1dZtRu.js +6 -0
- package/dashboard/dist/assets/{search-BS6fI6Bg.js → search-DVtgy2W7.js} +1 -1
- package/dashboard/dist/assets/{shallow-BXasQBvr.js → shallow-BOmvDNsv.js} +1 -1
- package/dashboard/dist/assets/{table-CeGlFjlP.js → table-DCzuJAFh.js} +1 -1
- package/dashboard/dist/assets/team-types-BPeOvVdA.js +6 -0
- package/dashboard/dist/assets/{terminal-BJic2yW-.js → terminal-CzogW4cl.js} +1 -1
- package/dashboard/dist/assets/{trash-2-Czz4X8Fb.js → trash-2-52LATVfW.js} +1 -1
- package/dashboard/dist/assets/users-DLFE2voE.js +6 -0
- package/dashboard/dist/assets/{zap-C3H0jVFA.js → zap-DhiYlgyZ.js} +1 -1
- package/dashboard/dist/assets/zh-CN-DvQKfow3.js +1 -0
- package/dashboard/dist/index.html +2 -2
- package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.d.ts +2 -0
- package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js +19 -11
- package/dashboard/dist-server/dashboard/src/server/agents/agent-manager.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/agent-sdk-adapter.js +5 -0
- package/dashboard/dist-server/dashboard/src/server/agents/agent-sdk-adapter.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.d.ts +1 -0
- package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js +21 -4
- package/dashboard/dist-server/dashboard/src/server/agents/claude-code-adapter.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/env-cleanup.js +8 -0
- package/dashboard/dist-server/dashboard/src/server/agents/env-cleanup.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js +6 -6
- package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.test.js +2 -2
- package/dashboard/dist-server/dashboard/src/server/coordinator/chain-map.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/index.js +14 -3
- package/dashboard/dist-server/dashboard/src/server/index.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.d.ts +24 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.js +220 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.test.d.ts +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.test.js +115 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/mcp-config-builder.test.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.d.ts +44 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.js +260 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.test.d.ts +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.test.js +194 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/meeting-room-mcp-server.test.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/stdio-bridge.d.ts +2 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/stdio-bridge.js +279 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/stdio-bridge.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.d.ts +14 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.js +131 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.test.d.ts +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.test.js +134 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/mcp-server/tcp-helpers.test.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/meeting-room-session.d.ts +51 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/meeting-room-session.js +185 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/meeting-room-session.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-agent-registry.d.ts +29 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-agent-registry.js +125 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-agent-registry.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-mailbox.d.ts +18 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-mailbox.js +63 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-mailbox.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-session-manager.d.ts +19 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-session-manager.js +45 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-session-manager.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-task-board.d.ts +25 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-task-board.js +115 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-task-board.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-types.d.ts +53 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-types.js +5 -0
- package/dashboard/dist-server/dashboard/src/server/rooms/room-types.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/routes/agents.js +6 -0
- package/dashboard/dist-server/dashboard/src/server/routes/agents.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/cli-history.js +20 -1
- package/dashboard/dist-server/dashboard/src/server/routes/cli-history.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/index.d.ts +2 -1
- package/dashboard/dist-server/dashboard/src/server/routes/index.js +8 -1
- package/dashboard/dist-server/dashboard/src/server/routes/index.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/install.js +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/install.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/mcp.js +2 -2
- package/dashboard/dist-server/dashboard/src/server/routes/mcp.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/room-mcp.d.ts +3 -0
- package/dashboard/dist-server/dashboard/src/server/routes/room-mcp.js +246 -0
- package/dashboard/dist-server/dashboard/src/server/routes/room-mcp.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/routes/rooms.d.ts +3 -0
- package/dashboard/dist-server/dashboard/src/server/routes/rooms.js +38 -0
- package/dashboard/dist-server/dashboard/src/server/routes/rooms.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js +7 -7
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.integration.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.js +1 -1
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/state/event-bus.d.ts +39 -1
- package/dashboard/dist-server/dashboard/src/server/state/event-bus.js +12 -0
- package/dashboard/dist-server/dashboard/src/server/state/event-bus.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +25 -14
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js +6 -6
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js +17 -16
- package/dashboard/dist-server/dashboard/src/server/wiki/writer-stress.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/writer.d.ts +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/writer.js +18 -7
- package/dashboard/dist-server/dashboard/src/server/wiki/writer.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.d.ts +3 -1
- package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.js +75 -1
- package/dashboard/dist-server/dashboard/src/server/ws/handlers/agent-handler.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/ws/handlers/room-handler.d.ts +17 -0
- package/dashboard/dist-server/dashboard/src/server/ws/handlers/room-handler.js +192 -0
- package/dashboard/dist-server/dashboard/src/server/ws/handlers/room-handler.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/ws/session-scoped-event-filter.d.ts +13 -0
- package/dashboard/dist-server/dashboard/src/server/ws/session-scoped-event-filter.js +37 -0
- package/dashboard/dist-server/dashboard/src/server/ws/session-scoped-event-filter.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/ws/ws-manager.d.ts +7 -1
- package/dashboard/dist-server/dashboard/src/server/ws/ws-manager.js +39 -2
- package/dashboard/dist-server/dashboard/src/server/ws/ws-manager.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/shared/constants.js +12 -0
- package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/shared/room-leader-prompt.d.ts +1 -0
- package/dashboard/dist-server/dashboard/src/shared/room-leader-prompt.js +38 -0
- package/dashboard/dist-server/dashboard/src/shared/room-leader-prompt.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/shared/team-types.d.ts +66 -0
- package/dashboard/dist-server/dashboard/src/shared/team-types.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/shared/types.d.ts +24 -3
- package/dashboard/dist-server/dashboard/src/shared/ws-protocol.d.ts +76 -2
- package/dashboard/dist-server/dashboard/src/shared/ws-protocol.js.map +1 -1
- package/dashboard/dist-server/shared/agent-types.d.ts +2 -0
- package/dashboard/dist-server/src/commands/delegate.js +11 -8
- package/dashboard/dist-server/src/commands/delegate.js.map +1 -1
- package/dist/shared/agent-types.d.ts +2 -0
- package/dist/shared/agent-types.d.ts.map +1 -1
- package/dist/src/cli.js +2 -2
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/delegate.d.ts.map +1 -1
- package/dist/src/commands/delegate.js +11 -8
- package/dist/src/commands/delegate.js.map +1 -1
- package/dist/src/commands/install-backend.d.ts +1 -1
- package/dist/src/commands/install-backend.d.ts.map +1 -1
- package/dist/src/commands/install-backend.js +1 -1
- package/dist/src/commands/install-backend.js.map +1 -1
- package/dist/src/commands/install-ui/ExecutionView.d.ts.map +1 -1
- package/dist/src/commands/install-ui/ExecutionView.js +4 -1
- package/dist/src/commands/install-ui/ExecutionView.js.map +1 -1
- package/dist/src/commands/install-ui/InstallExecution.d.ts.map +1 -1
- package/dist/src/commands/install-ui/InstallExecution.js +4 -1
- package/dist/src/commands/install-ui/InstallExecution.js.map +1 -1
- package/dist/src/commands/install.js +5 -5
- package/dist/src/commands/install.js.map +1 -1
- package/dist/src/commands/knowhow.d.ts +10 -0
- package/dist/src/commands/knowhow.d.ts.map +1 -0
- package/dist/src/commands/knowhow.js +217 -0
- package/dist/src/commands/knowhow.js.map +1 -0
- package/dist/src/commands/overlay-ui/OverlayList.d.ts +2 -0
- package/dist/src/commands/overlay-ui/OverlayList.d.ts.map +1 -1
- package/dist/src/commands/overlay-ui/OverlayList.js +6 -3
- package/dist/src/commands/overlay-ui/OverlayList.js.map +1 -1
- package/dist/src/commands/overlay-ui/index.d.ts.map +1 -1
- package/dist/src/commands/overlay-ui/index.js +70 -44
- package/dist/src/commands/overlay-ui/index.js.map +1 -1
- package/dist/src/commands/overlay.d.ts.map +1 -1
- package/dist/src/commands/overlay.js +4 -3
- package/dist/src/commands/overlay.js.map +1 -1
- package/dist/src/commands/update.d.ts.map +1 -1
- package/dist/src/commands/update.js +31 -21
- package/dist/src/commands/update.js.map +1 -1
- package/dist/src/core/manifest.d.ts +8 -1
- package/dist/src/core/manifest.d.ts.map +1 -1
- package/dist/src/core/manifest.js +3 -1
- package/dist/src/core/manifest.js.map +1 -1
- package/dist/src/core/overlay/applier.d.ts +1 -1
- package/dist/src/core/overlay/applier.d.ts.map +1 -1
- package/dist/src/core/overlay/applier.js +40 -13
- package/dist/src/core/overlay/applier.js.map +1 -1
- package/dist/src/core/overlay/loader.d.ts.map +1 -1
- package/dist/src/core/overlay/loader.js +6 -0
- package/dist/src/core/overlay/loader.js.map +1 -1
- package/dist/src/core/overlay/types.d.ts +5 -1
- package/dist/src/core/overlay/types.d.ts.map +1 -1
- package/dist/src/core/overlay/types.js +1 -1
- package/dist/src/core/overlay/types.js.map +1 -1
- package/dist/src/hooks/context-monitor.js +1 -1
- package/dist/src/hooks/context-monitor.js.map +1 -1
- package/dist/src/hooks/skill-context.js +1 -1
- package/dist/src/hooks/skill-context.js.map +1 -1
- package/dist/src/mcp/delegate-channel-relay.d.ts +4 -0
- package/dist/src/mcp/delegate-channel-relay.d.ts.map +1 -1
- package/dist/src/mcp/delegate-channel-relay.js +73 -4
- package/dist/src/mcp/delegate-channel-relay.js.map +1 -1
- package/dist/src/tools/index.js +2 -2
- package/dist/src/tools/index.js.map +1 -1
- package/dist/src/tools/store-knowhow.d.ts +21 -0
- package/dist/src/tools/store-knowhow.d.ts.map +1 -0
- package/dist/src/tools/store-knowhow.js +295 -0
- package/dist/src/tools/store-knowhow.js.map +1 -0
- package/package.json +1 -1
- package/shared/agent-types.ts +2 -0
- package/workflows/analyze.md +61 -185
- package/workflows/brainstorm.md +3 -23
- package/workflows/codebase-rebuild.md +79 -191
- package/workflows/codebase-refresh.md +26 -124
- package/workflows/debug.md +21 -141
- package/workflows/execute.md +183 -350
- package/workflows/fork.md +72 -230
- package/workflows/harvest.md +12 -79
- package/workflows/init.md +3 -17
- package/workflows/integration-test.md +21 -190
- package/workflows/issue-analyze.md +35 -153
- package/workflows/issue-discover.md +88 -263
- package/workflows/issue-execute.md +29 -208
- package/workflows/issue-plan.md +33 -154
- package/workflows/issue.md +44 -202
- package/workflows/knowhow.md +374 -0
- package/workflows/learn.md +30 -177
- package/workflows/maestro-coordinate.codex.md +77 -362
- package/workflows/maestro-link-coordinate.md +12 -61
- package/workflows/maestro.codex.md +124 -457
- package/workflows/maestro.md +562 -976
- package/workflows/map.md +16 -53
- package/workflows/merge.md +42 -197
- package/workflows/milestone-audit.md +5 -43
- package/workflows/milestone-complete.md +11 -60
- package/workflows/plan.md +188 -387
- package/workflows/quick.md +25 -174
- package/workflows/refactor.md +28 -221
- package/workflows/retrospective.md +104 -443
- package/workflows/review.md +87 -299
- package/workflows/roadmap.md +117 -97
- package/workflows/spec-generate.md +22 -118
- package/workflows/specs-add.md +5 -25
- package/workflows/specs-load.md +1 -5
- package/workflows/specs-remove.md +0 -11
- package/workflows/specs-setup.md +11 -47
- package/workflows/status.md +58 -200
- package/workflows/sync.md +28 -141
- package/workflows/test-gen.md +23 -100
- package/workflows/test.md +15 -125
- package/workflows/ui-design.md +139 -465
- package/workflows/ui-style.md +36 -228
- package/workflows/verify.md +52 -273
- package/workflows/wiki-connect.md +9 -46
- package/workflows/wiki-digest.md +7 -50
- package/workflows/wiki-manage.md +11 -108
- package/.claude/commands/maestro-coordinate.md +0 -63
- package/.claude/commands/manage-memory-capture.md +0 -59
- package/.codex/skills/maestro-coordinate/SKILL.md +0 -213
- package/.codex/skills/manage-memory-capture/SKILL.md +0 -93
- package/dashboard/dist/assets/ChatInput-pUOLJIKE.js +0 -49
- package/dashboard/dist/assets/ChatPage-B8Xqkt0v.js +0 -27
- package/dashboard/dist/assets/McpPage-BY0SjTgw.js +0 -21
- package/dashboard/dist/assets/TeamsPage-BO2kP70F.js +0 -11
- package/dashboard/dist/assets/WorkflowPage-C8hWbYim.js +0 -6
- package/dashboard/dist/assets/en-ZbRpfzuP.js +0 -1
- package/dashboard/dist/assets/index-C2Mcb4TJ.js +0 -231
- package/dashboard/dist/assets/index-DyBbPc18.css +0 -1
- package/dashboard/dist/assets/loader-B5F6PzFT.js +0 -11
- package/dashboard/dist/assets/zh-CN-CoXBFuny.js +0 -1
- package/workflows/maestro-coordinate.md +0 -582
- package/workflows/memory.md +0 -451
|
@@ -19,51 +19,11 @@ L0-L3 progressive layers: Static Analysis -> Unit -> Integration -> E2E
|
|
|
19
19
|
| `--max-iter N` | Set MAX_ITER = N (default 5) |
|
|
20
20
|
| `--layer L2` | Start from L2 layer |
|
|
21
21
|
|
|
22
|
-
**Resolve phase dir:**
|
|
23
|
-
```
|
|
24
|
-
Read .workflow/state.json → state
|
|
25
|
-
artifacts = state.artifacts ?? []
|
|
26
|
-
art = artifacts.find(a => a.type === 'execute' && a.phase === phaseNum)
|
|
27
|
-
IF art:
|
|
28
|
-
PHASE_DIR = ".workflow/" + art.path
|
|
29
|
-
ELSE:
|
|
30
|
-
ERROR "Phase {phaseNum} not found in artifact registry"
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
Check for existing integration test session:
|
|
34
|
-
```bash
|
|
35
|
-
ls ${PHASE_DIR}/.tests/integration/state.json 2>/dev/null
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
If session exists: offer resume or restart.
|
|
39
|
-
|
|
40
|
-
**Initialize session:**
|
|
41
|
-
|
|
42
|
-
Create `.tests/integration/` directory.
|
|
22
|
+
**Resolve phase dir:** from state.json artifact registry (type='execute', matching phase). Error if not found.
|
|
43
23
|
|
|
44
|
-
|
|
45
|
-
```json
|
|
46
|
-
{
|
|
47
|
-
"phase": "{phase}",
|
|
48
|
-
"started_at": "{ISO timestamp}",
|
|
49
|
-
"current_iteration": 0,
|
|
50
|
-
"max_iterations": 5,
|
|
51
|
-
"strategy": "conservative",
|
|
52
|
-
"current_layer": "L0",
|
|
53
|
-
"pass_rates": [],
|
|
54
|
-
"convergence_threshold": 95,
|
|
55
|
-
"status": "running"
|
|
56
|
-
}
|
|
57
|
-
```
|
|
24
|
+
If existing session at `${PHASE_DIR}/.tests/integration/state.json`: offer resume or restart.
|
|
58
25
|
|
|
59
|
-
Initialize `reflection-log.md
|
|
60
|
-
```markdown
|
|
61
|
-
# Integration Test Reflection Log
|
|
62
|
-
Phase: {phase_name}
|
|
63
|
-
Started: {timestamp}
|
|
64
|
-
|
|
65
|
-
## Iterations
|
|
66
|
-
```
|
|
26
|
+
**Initialize session:** create `.tests/integration/` directory, write initial `state.json` (iteration=0, strategy=conservative, layer=L0, threshold=95, status=running), initialize `reflection-log.md`.
|
|
67
27
|
|
|
68
28
|
---
|
|
69
29
|
|
|
@@ -80,20 +40,8 @@ arch_content = maestro spec load --category arch
|
|
|
80
40
|
|
|
81
41
|
### Step 1.5: Load Previously Generated Tests
|
|
82
42
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
```
|
|
86
|
-
generated_tests = []
|
|
87
|
-
IF file exists "${PHASE_DIR}/.tests/test-gen-report.json":
|
|
88
|
-
report = read_json("${PHASE_DIR}/.tests/test-gen-report.json")
|
|
89
|
-
FOR test_entry IN report.generated:
|
|
90
|
-
IF test_entry.layer is "integration" or "e2e":
|
|
91
|
-
generated_tests.push(test_entry)
|
|
92
|
-
IF generated_tests.length > 0:
|
|
93
|
-
display "Found {generated_tests.length} pre-generated integration/e2e tests from test-gen. Will incorporate into test plan."
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
These tests are merged into the test plan in Step 3 (Design) — they are executed but not re-generated.
|
|
43
|
+
Load pre-generated integration/e2e tests from `${PHASE_DIR}/.tests/test-gen-report.json` (if exists).
|
|
44
|
+
These are merged into the test plan in Step 3 -- executed but not re-generated.
|
|
97
45
|
|
|
98
46
|
---
|
|
99
47
|
|
|
@@ -108,18 +56,8 @@ Discover:
|
|
|
108
56
|
- External service integrations
|
|
109
57
|
- Event flows and message passing
|
|
110
58
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
grep -r "import.*from.*\.\./" src/ --include="*.ts" --include="*.tsx" -l 2>/dev/null | head -20
|
|
114
|
-
|
|
115
|
-
# Find API route definitions
|
|
116
|
-
grep -r "router\.\|app\.\(get\|post\|put\|delete\)" src/ --include="*.ts" -l 2>/dev/null | head -20
|
|
117
|
-
|
|
118
|
-
# Find database calls
|
|
119
|
-
grep -r "prisma\.\|query\|findMany\|findOne\|create\|update\|delete" src/ --include="*.ts" -l 2>/dev/null | head -20
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
Map integration points: which modules talk to which, through what interfaces.
|
|
59
|
+
Scan for cross-module imports, API route definitions, and database calls.
|
|
60
|
+
Map integration points: which modules communicate through what interfaces.
|
|
123
61
|
|
|
124
62
|
---
|
|
125
63
|
|
|
@@ -185,39 +123,12 @@ For integration tests (L2) specifically:
|
|
|
185
123
|
**Phase 4: Execute tests for current layer.**
|
|
186
124
|
|
|
187
125
|
Run tests progressively (L0 must pass before L1, etc.):
|
|
126
|
+
- L0: `tsc --noEmit` + `eslint src/`
|
|
127
|
+
- L1: unit tests (`--testPathPattern="unit|__tests__"`)
|
|
128
|
+
- L2: integration tests (`--testPathPattern="integration"`)
|
|
129
|
+
- L3: E2E tests (`--testPathPattern="e2e"`)
|
|
188
130
|
|
|
189
|
-
|
|
190
|
-
# L0: Static analysis
|
|
191
|
-
tsc --noEmit 2>&1 | tail -30
|
|
192
|
-
eslint src/ 2>&1 | tail -30
|
|
193
|
-
|
|
194
|
-
# L1: Unit tests
|
|
195
|
-
{test_command} --testPathPattern="unit|__tests__" 2>&1 | tail -50
|
|
196
|
-
|
|
197
|
-
# L2: Integration tests
|
|
198
|
-
{test_command} --testPathPattern="integration" 2>&1 | tail -50
|
|
199
|
-
|
|
200
|
-
# L3: E2E tests
|
|
201
|
-
{test_command} --testPathPattern="e2e" 2>&1 | tail -50
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
Record results in `test-results-iter-{N}.json`:
|
|
205
|
-
```json
|
|
206
|
-
{
|
|
207
|
-
"iteration": N,
|
|
208
|
-
"timestamp": "{ISO timestamp}",
|
|
209
|
-
"strategy": "{current_strategy}",
|
|
210
|
-
"layers": {
|
|
211
|
-
"L0": { "status": "pass|fail", "errors": [...] },
|
|
212
|
-
"L1": { "total": N, "passed": P, "failed": F, "pass_rate": 95.0 },
|
|
213
|
-
"L2": { "total": N, "passed": P, "failed": F, "pass_rate": 87.5 },
|
|
214
|
-
"L3": { "total": N, "passed": P, "failed": F, "pass_rate": 100.0 }
|
|
215
|
-
},
|
|
216
|
-
"overall_pass_rate": 92.3
|
|
217
|
-
}
|
|
218
|
-
```
|
|
219
|
-
|
|
220
|
-
Calculate overall pass rate.
|
|
131
|
+
Record per-layer results (status, total/passed/failed/pass_rate) and overall_pass_rate in `test-results-iter-{N}.json`.
|
|
221
132
|
|
|
222
133
|
---
|
|
223
134
|
|
|
@@ -225,32 +136,9 @@ Calculate overall pass rate.
|
|
|
225
136
|
|
|
226
137
|
**Phase 5: Reflect on iteration results.**
|
|
227
138
|
|
|
228
|
-
Analyze
|
|
229
|
-
- Which tests failed and why?
|
|
230
|
-
- Is pass rate improving, plateauing, or regressing?
|
|
231
|
-
- Are failures clustered in one area or spread out?
|
|
232
|
-
- Is the current strategy working?
|
|
233
|
-
|
|
234
|
-
Append to `reflection-log.md`:
|
|
235
|
-
```markdown
|
|
236
|
-
## Iteration {N}
|
|
237
|
-
Strategy: {strategy_name}
|
|
238
|
-
Pass rate: {rate}% (previous: {prev_rate}%)
|
|
239
|
-
Delta: {+/-}%
|
|
139
|
+
Analyze: which tests failed, is pass rate improving/plateauing/regressing, are failures clustered, is strategy working.
|
|
240
140
|
|
|
241
|
-
|
|
242
|
-
- {observation}
|
|
243
|
-
|
|
244
|
-
### What failed
|
|
245
|
-
- {test}: {reason}
|
|
246
|
-
|
|
247
|
-
### Pattern detected
|
|
248
|
-
- {pattern, e.g., "all failures in auth module"}
|
|
249
|
-
|
|
250
|
-
### Strategy assessment
|
|
251
|
-
- Current strategy: {effective|ineffective|partially_effective}
|
|
252
|
-
- Recommendation: {keep|switch_to_X}
|
|
253
|
-
```
|
|
141
|
+
Append to `reflection-log.md`: iteration strategy, pass rate delta, what worked/failed, detected patterns, strategy assessment (effective/ineffective + recommendation).
|
|
254
142
|
|
|
255
143
|
---
|
|
256
144
|
|
|
@@ -267,82 +155,25 @@ Delta: {+/-}%
|
|
|
267
155
|
| New regressions appeared | Surgical | Revert last changes, fix regression only |
|
|
268
156
|
| Stuck 3+ iterations (rate not improving) | Reflective | Step back, re-analyze root cause pattern |
|
|
269
157
|
|
|
270
|
-
**Strategy transitions:**
|
|
271
|
-
```
|
|
272
|
-
Conservative -> (pass rate >80%) -> Aggressive
|
|
273
|
-
Aggressive -> (regression) -> Surgical
|
|
274
|
-
Surgical -> (regression fixed) -> Aggressive
|
|
275
|
-
Any -> (stuck 3+ iters) -> Reflective
|
|
276
|
-
Reflective -> (new insight) -> Conservative (restart approach)
|
|
277
|
-
```
|
|
278
|
-
|
|
279
|
-
Update state.json with new strategy and iteration count.
|
|
158
|
+
**Strategy transitions:** Conservative --(>80%)--> Aggressive --(regression)--> Surgical --(fixed)--> Aggressive. Any --(stuck 3+ iters)--> Reflective --(insight)--> Conservative.
|
|
280
159
|
|
|
281
|
-
**Convergence
|
|
282
|
-
- If overall_pass_rate >= convergence_threshold (95%): CONVERGED -> go to Step 8
|
|
283
|
-
- If iteration >= max_iterations: MAX_ITER_REACHED -> go to Step 8
|
|
284
|
-
- Otherwise: go back to Step 4 (next iteration)
|
|
160
|
+
Update state.json. **Convergence:** pass_rate >= 95% -> Step 8. max_iterations reached -> Step 8. Otherwise -> Step 4.
|
|
285
161
|
|
|
286
162
|
---
|
|
287
163
|
|
|
288
164
|
### Step 8: Complete
|
|
289
165
|
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
Update state.json: status -> "complete" or "max_iter_reached".
|
|
293
|
-
|
|
294
|
-
Write `.tests/integration/summary.json`:
|
|
295
|
-
```json
|
|
296
|
-
{
|
|
297
|
-
"phase": "{phase}",
|
|
298
|
-
"completed_at": "{ISO timestamp}",
|
|
299
|
-
"iterations": N,
|
|
300
|
-
"final_pass_rate": 97.5,
|
|
301
|
-
"converged": true,
|
|
302
|
-
"strategy_history": ["conservative", "conservative", "aggressive"],
|
|
303
|
-
"layers": {
|
|
304
|
-
"L0": { "status": "pass" },
|
|
305
|
-
"L1": { "pass_rate": 100.0 },
|
|
306
|
-
"L2": { "pass_rate": 95.0 },
|
|
307
|
-
"L3": { "pass_rate": 100.0 }
|
|
308
|
-
},
|
|
309
|
-
"bugs_discovered": [...],
|
|
310
|
-
"regressions_fixed": [...]
|
|
311
|
-
}
|
|
312
|
-
```
|
|
313
|
-
|
|
166
|
+
Update state.json status to "complete" or "max_iter_reached".
|
|
167
|
+
Write `.tests/integration/summary.json`: iterations, final_pass_rate, converged flag, strategy_history, per-layer results, bugs_discovered, regressions_fixed.
|
|
314
168
|
Update index.json with integration test results.
|
|
315
169
|
|
|
316
170
|
---
|
|
317
171
|
|
|
318
172
|
### Step 9: Report
|
|
319
173
|
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
Iterations: {N}/{max_iter}
|
|
324
|
-
Converged: {yes/no} (threshold: {threshold}%)
|
|
325
|
-
|
|
326
|
-
Layer Results:
|
|
327
|
-
L0 Static: {pass/fail}
|
|
328
|
-
L1 Unit: {pass_rate}% ({passed}/{total})
|
|
329
|
-
L2 Integration: {pass_rate}% ({passed}/{total})
|
|
330
|
-
L3 E2E: {pass_rate}% ({passed}/{total})
|
|
331
|
-
|
|
332
|
-
Overall: {final_pass_rate}%
|
|
333
|
-
Strategy: {final_strategy} (transitioned {N} times)
|
|
334
|
-
|
|
335
|
-
Bugs Found: {bug_count}
|
|
336
|
-
Regressions: {regression_count} found, {fixed_count} fixed
|
|
337
|
-
|
|
338
|
-
Files:
|
|
339
|
-
{target_dir}/.tests/integration/state.json
|
|
340
|
-
{target_dir}/.tests/integration/reflection-log.md
|
|
341
|
-
{target_dir}/.tests/integration/summary.json
|
|
342
|
-
|
|
343
|
-
Next steps:
|
|
344
|
-
{suggested_next_command}
|
|
345
|
-
```
|
|
174
|
+
Display summary: iterations, convergence status, per-layer pass rates, overall rate, strategy transitions, bugs/regressions found.
|
|
175
|
+
|
|
176
|
+
List output files: state.json, reflection-log.md, summary.json.
|
|
346
177
|
|
|
347
178
|
**Next step routing:**
|
|
348
179
|
|
|
@@ -16,19 +16,8 @@ Root cause analysis for a specific issue using CLI exploration and codebase cont
|
|
|
16
16
|
### Step 1: Parse Arguments
|
|
17
17
|
|
|
18
18
|
```
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"Usage: /manage-issue-analyze <ISS-ID> [--tool gemini|qwen] [--depth standard|deep]"
|
|
22
|
-
"Example: /manage-issue-analyze ISS-20260318-001 --tool gemini --depth deep"
|
|
23
|
-
|
|
24
|
-
2. Parse optional flags:
|
|
25
|
-
--tool VALUE → TOOL (default: gemini)
|
|
26
|
-
--depth VALUE → DEPTH (default: standard)
|
|
27
|
-
|
|
28
|
-
3. Validate:
|
|
29
|
-
- ISS-ID matches pattern ISS-\d{8}-\d{3}
|
|
30
|
-
- TOOL is one of: gemini, qwen
|
|
31
|
-
- DEPTH is one of: standard, deep
|
|
19
|
+
Extract ISS-ID (required, pattern ISS-\d{8}-\d{3}).
|
|
20
|
+
Flags: --tool gemini|qwen (default: gemini), --depth standard|deep (default: standard)
|
|
32
21
|
```
|
|
33
22
|
|
|
34
23
|
---
|
|
@@ -36,21 +25,8 @@ Root cause analysis for a specific issue using CLI exploration and codebase cont
|
|
|
36
25
|
### Step 2: Load Issue and Validate
|
|
37
26
|
|
|
38
27
|
```
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
2. Read .workflow/issues/issues.jsonl line by line
|
|
43
|
-
3. Parse each line as JSON, find record where id == ISS-ID
|
|
44
|
-
If not found → error E_ISSUE_NOT_FOUND:
|
|
45
|
-
"Issue {ISS-ID} not found. Run /manage-issue list to see available issues."
|
|
46
|
-
|
|
47
|
-
4. Check issue status:
|
|
48
|
-
- If status is 'open' or 'registered' → proceed
|
|
49
|
-
- Otherwise → warning E_INVALID_STATUS:
|
|
50
|
-
"Issue {ISS-ID} has status '{status}'. Analysis typically runs on open issues."
|
|
51
|
-
Proceed anyway (analysis is non-destructive metadata enrichment).
|
|
52
|
-
|
|
53
|
-
5. Store issue record as ISSUE for subsequent steps
|
|
28
|
+
Load ISS-ID from .workflow/issues/issues.jsonl → fatal if file missing or ID not found.
|
|
29
|
+
Status check: open/registered → proceed; other → warn but continue (non-destructive).
|
|
54
30
|
```
|
|
55
31
|
|
|
56
32
|
---
|
|
@@ -58,30 +34,14 @@ Root cause analysis for a specific issue using CLI exploration and codebase cont
|
|
|
58
34
|
### Step 3: Gather Codebase Context
|
|
59
35
|
|
|
60
36
|
```
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
- Collect up to 20 matching file paths
|
|
70
|
-
- For top 5 files by match count, read relevant sections (10 lines around match)
|
|
71
|
-
|
|
72
|
-
3. If DEPTH == "deep":
|
|
73
|
-
- Run standard keyword grep (above)
|
|
74
|
-
- Additionally, launch Agent for semantic search:
|
|
75
|
-
Search for code related to: "{ISSUE.title} - {ISSUE.description}"
|
|
76
|
-
Focus on: error handling, data flow, dependencies
|
|
77
|
-
- Merge results from both approaches
|
|
78
|
-
|
|
79
|
-
4. Build CONTEXT_SUMMARY:
|
|
80
|
-
- List of related files with brief relevance notes
|
|
81
|
-
- Key code snippets (max 50 lines total)
|
|
82
|
-
- Dependency chain if identifiable
|
|
83
|
-
|
|
84
|
-
5. Store as CODEBASE_CONTEXT for CLI prompt
|
|
37
|
+
Extract keywords from issue title, description, location, affected_components.
|
|
38
|
+
|
|
39
|
+
Standard depth: grep keywords in source files → top 20 paths, read 10 lines around
|
|
40
|
+
top 5 matches.
|
|
41
|
+
Deep depth: standard grep + semantic Agent search (error handling, data flow, deps),
|
|
42
|
+
merge results.
|
|
43
|
+
|
|
44
|
+
Build CODEBASE_CONTEXT: related files, key snippets (max 50 lines), dependency chain.
|
|
85
45
|
```
|
|
86
46
|
|
|
87
47
|
---
|
|
@@ -89,47 +49,18 @@ Root cause analysis for a specific issue using CLI exploration and codebase cont
|
|
|
89
49
|
### Step 4: Run CLI Analysis
|
|
90
50
|
|
|
91
51
|
```
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
CODEBASE CONTEXT:
|
|
105
|
-
{CODEBASE_CONTEXT}
|
|
106
|
-
|
|
107
|
-
TASK:
|
|
108
|
-
- Identify the root cause with file:line references
|
|
109
|
-
- Assess impact scope (which components/features affected)
|
|
110
|
-
- List all related files that need attention
|
|
111
|
-
- Rate confidence in the analysis (high/medium/low)
|
|
112
|
-
- Suggest a fix approach (brief, actionable)
|
|
113
|
-
|
|
114
|
-
MODE: analysis
|
|
115
|
-
CONTEXT: @**/*
|
|
116
|
-
EXPECTED: JSON object with fields:
|
|
117
|
-
root_cause: string (clear explanation),
|
|
118
|
-
impact: string (scope of impact),
|
|
119
|
-
related_files: string[] (file paths),
|
|
120
|
-
confidence: 'high'|'medium'|'low',
|
|
121
|
-
suggested_approach: string (actionable fix direction)
|
|
122
|
-
CONSTRAINTS: Only cite evidence found in codebase, no speculation
|
|
123
|
-
" --to {TOOL} --mode analysis
|
|
124
|
-
|
|
125
|
-
2. Parse CLI output:
|
|
126
|
-
- Extract JSON object from response
|
|
127
|
-
- Validate required fields: root_cause, impact, related_files, confidence, suggested_approach
|
|
128
|
-
- If parsing fails → error E_ANALYSIS_FAILED:
|
|
129
|
-
"Analysis did not return valid JSON. Raw output saved for review."
|
|
130
|
-
Store raw output in ISSUE feedback for manual review.
|
|
131
|
-
|
|
132
|
-
3. Store parsed result as ANALYSIS_RESULT
|
|
52
|
+
Delegate root cause analysis with issue details + CODEBASE_CONTEXT:
|
|
53
|
+
|
|
54
|
+
maestro delegate "Root cause analysis for {ISS-ID}: {ISSUE.title}
|
|
55
|
+
ISSUE: title, description, severity, location, fix_direction
|
|
56
|
+
CODEBASE CONTEXT: {CODEBASE_CONTEXT}
|
|
57
|
+
TASK: Identify root cause (file:line) → assess impact → list related files → rate confidence → suggest fix
|
|
58
|
+
EXPECTED: JSON { root_cause, impact, related_files[], confidence, suggested_approach }
|
|
59
|
+
CONSTRAINTS: Evidence-only, no speculation
|
|
60
|
+
" --to {TOOL} --mode analysis
|
|
61
|
+
|
|
62
|
+
Validate response: all required fields present.
|
|
63
|
+
Parse failure → save raw output to issue feedback for review.
|
|
133
64
|
```
|
|
134
65
|
|
|
135
66
|
---
|
|
@@ -137,18 +68,8 @@ Root cause analysis for a specific issue using CLI exploration and codebase cont
|
|
|
137
68
|
### Step 5: Build Analysis Record
|
|
138
69
|
|
|
139
70
|
```
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
"root_cause": "{ANALYSIS_RESULT.root_cause}",
|
|
143
|
-
"impact": "{ANALYSIS_RESULT.impact}",
|
|
144
|
-
"related_files": {ANALYSIS_RESULT.related_files},
|
|
145
|
-
"confidence": "{ANALYSIS_RESULT.confidence}",
|
|
146
|
-
"suggested_approach": "{ANALYSIS_RESULT.suggested_approach}",
|
|
147
|
-
"analyzed_at": "{NOW_ISO}",
|
|
148
|
-
"analyzed_by": "{TOOL}"
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
2. Store as ANALYSIS record for next step
|
|
71
|
+
Construct IssueAnalysis:
|
|
72
|
+
{ root_cause, impact, related_files, confidence, suggested_approach, analyzed_at: NOW_ISO, analyzed_by: TOOL }
|
|
152
73
|
```
|
|
153
74
|
|
|
154
75
|
---
|
|
@@ -156,27 +77,11 @@ Root cause analysis for a specific issue using CLI exploration and codebase cont
|
|
|
156
77
|
### Step 6: Update Issue in JSONL
|
|
157
78
|
|
|
158
79
|
```
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
- Add issue_history entry:
|
|
165
|
-
{
|
|
166
|
-
"timestamp": "{NOW_ISO}",
|
|
167
|
-
"from_status": "{ISSUE.status}",
|
|
168
|
-
"to_status": "{ISSUE.status}",
|
|
169
|
-
"actor": "analysis-agent",
|
|
170
|
-
"note": "Root cause analysis completed (confidence: {ANALYSIS.confidence})"
|
|
171
|
-
}
|
|
172
|
-
- Status stays unchanged (analysis is metadata enrichment, not a status transition)
|
|
173
|
-
|
|
174
|
-
4. Rewrite .workflow/issues/issues.jsonl:
|
|
175
|
-
- Replace the matching line with updated record (single JSON line)
|
|
176
|
-
- Write all lines back to file
|
|
177
|
-
|
|
178
|
-
5. Verify file integrity:
|
|
179
|
-
- Re-read file, confirm ISS-ID record has analysis field
|
|
80
|
+
Read-modify-write issues.jsonl:
|
|
81
|
+
Set issue.analysis = ANALYSIS, updated_at = NOW_ISO
|
|
82
|
+
Append issue_history: actor "analysis-agent", note "confidence: {confidence}"
|
|
83
|
+
Status unchanged (analysis is metadata enrichment).
|
|
84
|
+
Verify: re-read file, confirm analysis field present.
|
|
180
85
|
```
|
|
181
86
|
|
|
182
87
|
---
|
|
@@ -184,34 +89,11 @@ Root cause analysis for a specific issue using CLI exploration and codebase cont
|
|
|
184
89
|
### Step 7: Display Summary and Next Steps
|
|
185
90
|
|
|
186
91
|
```
|
|
187
|
-
Display
|
|
188
|
-
|
|
189
|
-
====================================================
|
|
190
|
-
ANALYSIS COMPLETE: {ISS-ID}
|
|
191
|
-
Tool: {TOOL} Depth: {DEPTH}
|
|
192
|
-
====================================================
|
|
193
|
-
|
|
194
|
-
ROOT CAUSE:
|
|
195
|
-
{ANALYSIS.root_cause}
|
|
196
|
-
|
|
197
|
-
IMPACT:
|
|
198
|
-
{ANALYSIS.impact}
|
|
199
|
-
|
|
200
|
-
CONFIDENCE: {ANALYSIS.confidence}
|
|
201
|
-
|
|
202
|
-
RELATED FILES:
|
|
203
|
-
{for each file in ANALYSIS.related_files}
|
|
204
|
-
- {file}
|
|
205
|
-
{/for}
|
|
206
|
-
|
|
207
|
-
SUGGESTED APPROACH:
|
|
208
|
-
{ANALYSIS.suggested_approach}
|
|
209
|
-
====================================================
|
|
92
|
+
Display: root cause, impact, confidence, related files, suggested approach.
|
|
210
93
|
|
|
211
|
-
|
|
212
|
-
-
|
|
213
|
-
-
|
|
214
|
-
- Skill({ skill: "manage-issue", args: "status {ISS-ID}" }) -- View full issue details
|
|
94
|
+
Next steps:
|
|
95
|
+
- manage-issue-plan {ISS-ID} (generate solution | --tool {TOOL})
|
|
96
|
+
- manage-issue status {ISS-ID}
|
|
215
97
|
```
|
|
216
98
|
|
|
217
99
|
---
|