maestro-flow 0.5.1 → 0.5.3
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/.agents/skills/insight-challenge/SKILL.md +228 -0
- package/.agents/skills/insight-challenge/specs/challenge-protocol.md +154 -0
- package/.agents/skills/insight-challenge/specs/verdict-schema.md +239 -0
- package/.agents/skills/maestro/SKILL.md +6 -6
- package/.agents/skills/maestro-help/SKILL.md +1 -1
- package/.agents/skills/maestro-help/index/catalog.json +3 -2
- package/.agents/skills/maestro-ralph/SKILL.md +11 -10
- package/.agents/skills/maestro-ralph-beta/SKILL.md +11 -10
- package/.agents/skills/odyssey-debug/SKILL.md +475 -0
- package/.agents/skills/odyssey-improve/SKILL.md +507 -0
- package/.agents/skills/odyssey-planex/SKILL.md +603 -0
- package/.agents/skills/odyssey-review-test-fix/SKILL.md +429 -0
- package/.agents/skills/odyssey-ui/SKILL.md +464 -0
- package/.agy/skills/insight-challenge/SKILL.md +230 -0
- package/.agy/skills/insight-challenge/specs/challenge-protocol.md +154 -0
- package/.agy/skills/insight-challenge/specs/verdict-schema.md +239 -0
- package/.agy/skills/maestro/SKILL.md +6 -6
- package/.agy/skills/maestro-help/SKILL.md +1 -1
- package/.agy/skills/maestro-help/index/catalog.json +3 -2
- package/.agy/skills/maestro-ralph/SKILL.md +11 -10
- package/.agy/skills/maestro-ralph-beta/SKILL.md +11 -10
- package/.agy/skills/odyssey-debug/SKILL.md +475 -0
- package/.agy/skills/odyssey-improve/SKILL.md +507 -0
- package/.agy/skills/odyssey-planex/SKILL.md +603 -0
- package/.agy/skills/odyssey-review-test-fix/SKILL.md +429 -0
- package/.agy/skills/odyssey-ui/SKILL.md +464 -0
- package/.claude/commands/maestro-ralph-beta.md +11 -10
- package/.claude/commands/maestro-ralph.md +11 -10
- package/.claude/commands/maestro.md +6 -6
- package/.claude/commands/odyssey-debug.md +473 -0
- package/.claude/commands/odyssey-improve.md +505 -0
- package/.claude/commands/odyssey-planex.md +601 -0
- package/.claude/commands/odyssey-review-test-fix.md +427 -0
- package/.claude/commands/odyssey-ui.md +462 -0
- package/.claude/skills/insight-challenge/SKILL.md +226 -0
- package/.claude/skills/insight-challenge/specs/challenge-protocol.md +154 -0
- package/.claude/skills/insight-challenge/specs/verdict-schema.md +239 -0
- package/.claude/skills/maestro-help/SKILL.md +1 -1
- package/.claude/skills/maestro-help/index/catalog.json +3 -2
- package/.codex/skills/codify-to-knowhow/SKILL.md +1 -1
- package/.codex/skills/learn-decompose/SKILL.md +144 -144
- package/.codex/skills/learn-follow/SKILL.md +83 -83
- package/.codex/skills/learn-investigate/SKILL.md +84 -84
- package/.codex/skills/learn-retro/SKILL.md +113 -113
- package/.codex/skills/learn-second-opinion/SKILL.md +116 -116
- package/.codex/skills/maestro/SKILL.md +11 -8
- package/.codex/skills/maestro-amend/SKILL.md +4 -4
- package/.codex/skills/maestro-analyze/SKILL.md +2 -2
- package/.codex/skills/maestro-blueprint/SKILL.md +4 -4
- package/.codex/skills/maestro-companion/SKILL.md +5 -5
- package/.codex/skills/maestro-composer/SKILL.md +217 -217
- package/.codex/skills/maestro-grill/SKILL.md +1 -1
- package/.codex/skills/maestro-help/SKILL.md +31 -31
- package/.codex/skills/maestro-impeccable/SKILL.md +1 -1
- package/.codex/skills/maestro-init/SKILL.md +1 -1
- package/.codex/skills/maestro-learn/SKILL.md +80 -80
- package/.codex/skills/maestro-merge/SKILL.md +76 -76
- package/.codex/skills/maestro-milestone-release/SKILL.md +74 -74
- package/.codex/skills/maestro-next/SKILL.md +1 -1
- package/.codex/skills/maestro-player/SKILL.md +3 -3
- package/.codex/skills/maestro-quick/SKILL.md +129 -129
- package/.codex/skills/maestro-ralph/SKILL.md +9 -9
- package/.codex/skills/maestro-ralph-beta/SKILL.md +35 -35
- package/.codex/skills/maestro-ralph-execute/SKILL.md +5 -5
- package/.codex/skills/maestro-tools-execute/SKILL.md +3 -3
- package/.codex/skills/maestro-tools-register/SKILL.md +3 -3
- package/.codex/skills/manage-codebase-rebuild/SKILL.md +412 -412
- package/.codex/skills/manage-codebase-refresh/SKILL.md +1 -1
- package/.codex/skills/manage-harvest/SKILL.md +99 -99
- package/.codex/skills/manage-issue-discover/SKILL.md +1 -1
- package/.codex/skills/manage-knowhow/SKILL.md +95 -95
- package/.codex/skills/manage-knowhow-capture/SKILL.md +137 -137
- package/.codex/skills/manage-status/SKILL.md +7 -7
- package/.codex/skills/manage-wiki/SKILL.md +55 -55
- package/.codex/skills/odyssey-debug/SKILL.md +456 -0
- package/.codex/skills/odyssey-improve/SKILL.md +466 -0
- package/.codex/skills/odyssey-planex/SKILL.md +409 -0
- package/.codex/skills/odyssey-review-test-fix/SKILL.md +377 -0
- package/.codex/skills/odyssey-ui/SKILL.md +411 -0
- package/.codex/skills/quality-auto-test/SKILL.md +1 -1
- package/.codex/skills/quality-debug/SKILL.md +8 -8
- package/.codex/skills/quality-refactor/SKILL.md +3 -3
- package/.codex/skills/quality-review/SKILL.md +1 -1
- package/.codex/skills/quality-sync/SKILL.md +111 -111
- package/.codex/skills/quality-test/SKILL.md +1 -1
- package/.codex/skills/spec-add/SKILL.md +2 -2
- package/.codex/skills/spec-load/SKILL.md +1 -1
- package/.codex/skills/spec-map/SKILL.md +204 -204
- package/.codex/skills/spec-remove/SKILL.md +75 -75
- package/.codex/skills/spec-setup/SKILL.md +2 -2
- package/.codex/skills/wiki-connect/SKILL.md +73 -73
- package/.codex/skills/wiki-digest/SKILL.md +87 -87
- package/dashboard/dist/assets/{ArtifactsPage-BLvAqQlQ.js → ArtifactsPage-B6z23DfG.js} +2 -2
- package/dashboard/dist/assets/{ChatInput-DU9YGZKX.js → ChatInput-tBtGKV2i.js} +1 -1
- package/dashboard/dist/assets/{ChatPage-DYHfheXC.js → ChatPage-CcggDVs4.js} +2 -2
- package/dashboard/dist/assets/{CollabPage-CSlmvEa-.js → CollabPage-FaZeqqeS.js} +1 -1
- package/dashboard/dist/assets/{ExecutionPanel-RYWf0dYC.js → ExecutionPanel-DNRwYDXp.js} +1 -1
- package/dashboard/dist/assets/{KanbanPage-N55Iv0-X.js → KanbanPage-B2xh2s_N.js} +1 -1
- package/dashboard/dist/assets/{MaestroCoordinatePage-BxwZ6yy5.js → MaestroCoordinatePage-DCMGHDAL.js} +1 -1
- package/dashboard/dist/assets/{MarkdownRenderer-ZGtOY7Ti.js → MarkdownRenderer-C3FvTqVe.js} +1 -1
- package/dashboard/dist/assets/McpPage-HKaJ8cQP.js +16 -0
- package/dashboard/dist/assets/{MeetingRoomPage-CxHRn1xx.js → MeetingRoomPage-DGN5oUXH.js} +1 -1
- package/dashboard/dist/assets/{OutputPanel-DaL8c1i5.js → OutputPanel-BiCteH5k.js} +1 -1
- package/dashboard/dist/assets/{ProblemsPanel-BQTd5812.js → ProblemsPanel-Dk4v9tol.js} +1 -1
- package/dashboard/dist/assets/{RequirementBoardPage-22y9u1qh.js → RequirementBoardPage-D10A26gi.js} +1 -1
- package/dashboard/dist/assets/{RequirementPage-_mO743Xm.js → RequirementPage-Cs-2omLz.js} +1 -1
- package/dashboard/dist/assets/{RoomsPage-CExTbOGr.js → RoomsPage-tKQQhw1W.js} +1 -1
- package/dashboard/dist/assets/SpecsPage-LK1QCtcg.js +36 -0
- package/dashboard/dist/assets/{TeamsPage-BxEXLb5g.js → TeamsPage-C-bEwB8E.js} +1 -1
- package/dashboard/dist/assets/{TreeBrowser-CVtPF5C9.js → TreeBrowser-1YP-DfTY.js} +2 -2
- package/dashboard/dist/assets/{WorkflowPage-BoN18Lhs.js → WorkflowPage-dGHPsDDr.js} +2 -2
- package/dashboard/dist/assets/{arrow-left-C5ROg97G.js → arrow-left-BPFSEpfO.js} +1 -1
- package/dashboard/dist/assets/{check-Bs8PM0tQ.js → check-D5hOViiQ.js} +1 -1
- package/dashboard/dist/assets/{chevron-right-SmErd_1F.js → chevron-right-D9BsXrIg.js} +1 -1
- package/dashboard/dist/assets/{circle-CjpslL_D.js → circle-Cn5fNpmp.js} +1 -1
- package/dashboard/dist/assets/{circle-alert-CuzAg2fd.js → circle-alert-CZvK3B1K.js} +1 -1
- package/dashboard/dist/assets/{circle-check-BIkDU5D5.js → circle-check-DApOBP0J.js} +1 -1
- package/dashboard/dist/assets/{circle-check-big-CYctV8bK.js → circle-check-big-Cd9ztJpl.js} +1 -1
- package/dashboard/dist/assets/{code-DoB7rfxt.js → code-C3TuHjMs.js} +1 -1
- package/dashboard/dist/assets/{columns-3-Ch5KIyRa.js → columns-3-CO2SvNJb.js} +1 -1
- package/dashboard/dist/assets/{download-DadtG2Nr.js → download-BuKGI7KX.js} +1 -1
- package/dashboard/dist/assets/{en-2h6fD0j8.js → en-BmpYsIfb.js} +1 -1
- package/dashboard/dist/assets/folder-Chwj_P4A.js +11 -0
- package/dashboard/dist/assets/folder-open-S72FbKvn.js +6 -0
- package/dashboard/dist/assets/{index-BL4h1OKY.js → index-CN0YdC9M.js} +1 -1
- package/dashboard/dist/assets/{index-DQIlX2w_.js → index-Cbs79erW.js} +5 -5
- package/dashboard/dist/assets/{index-DaFwSmVJ.js → index-CdT1WNND.js} +1 -1
- package/dashboard/dist/assets/index-DEvP8cgc.css +1 -0
- package/dashboard/dist/assets/{list-CI-XIPZh.js → list-Dg_ojUpi.js} +1 -1
- package/dashboard/dist/assets/{loader-DpdMoQvh.js → loader-CMcc73C_.js} +1 -1
- package/dashboard/dist/assets/{minus-BVbfXGrC.js → minus-KxmVOIB7.js} +1 -1
- package/dashboard/dist/assets/pen-line-D1YTNDPw.js +11 -0
- package/dashboard/dist/assets/{pencil-I7GE0y29.js → pencil-BAjxSHuh.js} +1 -1
- package/dashboard/dist/assets/{proxy-CcYyZZWI.js → proxy-BewnIei6.js} +1 -1
- package/dashboard/dist/assets/{refresh-cw-BG9V_T4R.js → refresh-cw-Chc0RcRY.js} +1 -1
- package/dashboard/dist/assets/{rows-2-DP6NjQFk.js → rows-2-DWJuw8OM.js} +1 -1
- package/dashboard/dist/assets/{search-b78eLlw2.js → search-CPGb2sEw.js} +1 -1
- package/dashboard/dist/assets/{shallow-CJEesgtu.js → shallow-Dy0-7n5s.js} +1 -1
- package/dashboard/dist/assets/{table-B_lk-a1d.js → table-VI5scWpO.js} +1 -1
- package/dashboard/dist/assets/{team-types-Se7f9LfJ.js → team-types-Cu8zCPN3.js} +1 -1
- package/dashboard/dist/assets/{terminal-DXx4tvzq.js → terminal-Bqt5c6Ny.js} +1 -1
- package/dashboard/dist/assets/{trash-2-CVh9mnRj.js → trash-2-BcTVifbw.js} +1 -1
- package/dashboard/dist/assets/{users-Da9zGME5.js → users-BhFAHz4H.js} +1 -1
- package/dashboard/dist/assets/{zap-C0zaC7gJ.js → zap-BWbLhgr6.js} +1 -1
- package/dashboard/dist/assets/{zh-CN-r3AvxxOL.js → zh-CN-BIRiTdAD.js} +1 -1
- package/dashboard/dist/index.html +2 -2
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.js +1 -0
- package/dashboard/dist-server/dashboard/src/server/routes/wiki.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/search.d.ts +14 -14
- package/dashboard/dist-server/dashboard/src/server/wiki/search.js +188 -56
- package/dashboard/dist-server/dashboard/src/server/wiki/search.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +1 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.d.ts +37 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +560 -22
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +6 -2
- package/dashboard/dist-server/src/types/index.d.ts +9 -0
- package/dist/src/cli.js +3 -0
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/delegate.d.ts.map +1 -1
- package/dist/src/commands/delegate.js +50 -8
- package/dist/src/commands/delegate.js.map +1 -1
- package/dist/src/commands/domain.d.ts +9 -0
- package/dist/src/commands/domain.d.ts.map +1 -0
- package/dist/src/commands/domain.js +445 -0
- package/dist/src/commands/domain.js.map +1 -0
- package/dist/src/commands/hooks.d.ts +10 -0
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +132 -22
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/install.d.ts.map +1 -1
- package/dist/src/commands/install.js +82 -204
- package/dist/src/commands/install.js.map +1 -1
- package/dist/src/commands/kg.d.ts.map +1 -1
- package/dist/src/commands/kg.js +183 -90
- package/dist/src/commands/kg.js.map +1 -1
- package/dist/src/commands/search.d.ts +15 -8
- package/dist/src/commands/search.d.ts.map +1 -1
- package/dist/src/commands/search.js +205 -59
- package/dist/src/commands/search.js.map +1 -1
- package/dist/src/commands/spec.d.ts.map +1 -1
- package/dist/src/commands/spec.js +9 -1
- package/dist/src/commands/spec.js.map +1 -1
- package/dist/src/commands/update.d.ts.map +1 -1
- package/dist/src/commands/update.js +0 -7
- package/dist/src/commands/update.js.map +1 -1
- package/dist/src/commands/wiki.d.ts.map +1 -1
- package/dist/src/commands/wiki.js +8 -1
- package/dist/src/commands/wiki.js.map +1 -1
- package/dist/src/commands/workspace.d.ts +12 -0
- package/dist/src/commands/workspace.d.ts.map +1 -0
- package/dist/src/commands/workspace.js +230 -0
- package/dist/src/commands/workspace.js.map +1 -0
- package/dist/src/config/cli-tools-config.d.ts +5 -0
- package/dist/src/config/cli-tools-config.d.ts.map +1 -1
- package/dist/src/config/cli-tools-config.js +31 -0
- package/dist/src/config/cli-tools-config.js.map +1 -1
- package/dist/src/config/index.d.ts +9 -1
- package/dist/src/config/index.d.ts.map +1 -1
- package/dist/src/config/index.js +35 -1
- package/dist/src/config/index.js.map +1 -1
- package/dist/src/core/install-executor.d.ts +31 -0
- package/dist/src/core/install-executor.d.ts.map +1 -0
- package/dist/src/core/install-executor.js +231 -0
- package/dist/src/core/install-executor.js.map +1 -0
- package/dist/src/core/install-profile.d.ts +103 -0
- package/dist/src/core/install-profile.d.ts.map +1 -0
- package/dist/src/core/install-profile.js +225 -0
- package/dist/src/core/install-profile.js.map +1 -0
- package/dist/src/graph/kg/credibility.d.ts +37 -0
- package/dist/src/graph/kg/credibility.d.ts.map +1 -0
- package/dist/src/graph/kg/credibility.js +141 -0
- package/dist/src/graph/kg/credibility.js.map +1 -0
- package/dist/src/graph/kg/db/connection.d.ts +28 -0
- package/dist/src/graph/kg/db/connection.d.ts.map +1 -0
- package/dist/src/graph/kg/db/connection.js +142 -0
- package/dist/src/graph/kg/db/connection.js.map +1 -0
- package/dist/src/graph/kg/db/index.d.ts +5 -0
- package/dist/src/graph/kg/db/index.d.ts.map +1 -0
- package/dist/src/graph/kg/db/index.js +6 -0
- package/dist/src/graph/kg/db/index.js.map +1 -0
- package/dist/src/graph/kg/db/migrations.d.ts +8 -0
- package/dist/src/graph/kg/db/migrations.d.ts.map +1 -0
- package/dist/src/graph/kg/db/migrations.js +88 -0
- package/dist/src/graph/kg/db/migrations.js.map +1 -0
- package/dist/src/graph/kg/db/queries.d.ts +84 -0
- package/dist/src/graph/kg/db/queries.d.ts.map +1 -0
- package/dist/src/graph/kg/db/queries.js +471 -0
- package/dist/src/graph/kg/db/queries.js.map +1 -0
- package/dist/src/graph/kg/db/types.d.ts +123 -0
- package/dist/src/graph/kg/db/types.d.ts.map +1 -0
- package/dist/src/graph/kg/db/types.js +75 -0
- package/dist/src/graph/kg/db/types.js.map +1 -0
- package/dist/src/graph/kg/engine.d.ts +87 -0
- package/dist/src/graph/kg/engine.d.ts.map +1 -0
- package/dist/src/graph/kg/engine.js +247 -0
- package/dist/src/graph/kg/engine.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/code-extractor.d.ts +40 -0
- package/dist/src/graph/kg/extraction/code/code-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/code-extractor.js +296 -0
- package/dist/src/graph/kg/extraction/code/code-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/dfm-extractor.d.ts +3 -0
- package/dist/src/graph/kg/extraction/code/dfm-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/dfm-extractor.js +122 -0
- package/dist/src/graph/kg/extraction/code/dfm-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/generated-detection.d.ts +14 -0
- package/dist/src/graph/kg/extraction/code/generated-detection.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/generated-detection.js +65 -0
- package/dist/src/graph/kg/extraction/code/generated-detection.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/languages/index.d.ts +9 -0
- package/dist/src/graph/kg/extraction/code/languages/index.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/languages/index.js +2119 -0
- package/dist/src/graph/kg/extraction/code/languages/index.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/languages/typescript.d.ts +5 -0
- package/dist/src/graph/kg/extraction/code/languages/typescript.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/languages/typescript.js +191 -0
- package/dist/src/graph/kg/extraction/code/languages/typescript.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/liquid-extractor.d.ts +3 -0
- package/dist/src/graph/kg/extraction/code/liquid-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/liquid-extractor.js +117 -0
- package/dist/src/graph/kg/extraction/code/liquid-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/mybatis-extractor.d.ts +3 -0
- package/dist/src/graph/kg/extraction/code/mybatis-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/mybatis-extractor.js +84 -0
- package/dist/src/graph/kg/extraction/code/mybatis-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/svelte-extractor.d.ts +3 -0
- package/dist/src/graph/kg/extraction/code/svelte-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/svelte-extractor.js +92 -0
- package/dist/src/graph/kg/extraction/code/svelte-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/tree-sitter-types.d.ts +61 -0
- package/dist/src/graph/kg/extraction/code/tree-sitter-types.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/tree-sitter-types.js +53 -0
- package/dist/src/graph/kg/extraction/code/tree-sitter-types.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/tree-sitter.d.ts +55 -0
- package/dist/src/graph/kg/extraction/code/tree-sitter.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/tree-sitter.js +227 -0
- package/dist/src/graph/kg/extraction/code/tree-sitter.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/vue-extractor.d.ts +6 -0
- package/dist/src/graph/kg/extraction/code/vue-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/vue-extractor.js +109 -0
- package/dist/src/graph/kg/extraction/code/vue-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/code/wasm-stability.d.ts +44 -0
- package/dist/src/graph/kg/extraction/code/wasm-stability.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/code/wasm-stability.js +140 -0
- package/dist/src/graph/kg/extraction/code/wasm-stability.js.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.d.ts +3 -0
- package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.js +149 -0
- package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/domain-extractor.d.ts +4 -0
- package/dist/src/graph/kg/extraction/knowledge/domain-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js +114 -0
- package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/issue-extractor.d.ts +3 -0
- package/dist/src/graph/kg/extraction/knowledge/issue-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/issue-extractor.js +84 -0
- package/dist/src/graph/kg/extraction/knowledge/issue-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/spec-extractor.d.ts +3 -0
- package/dist/src/graph/kg/extraction/knowledge/spec-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/spec-extractor.js +173 -0
- package/dist/src/graph/kg/extraction/knowledge/spec-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.d.ts +3 -0
- package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.js +165 -0
- package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.js.map +1 -0
- package/dist/src/graph/kg/extraction/orchestrator.d.ts +6 -0
- package/dist/src/graph/kg/extraction/orchestrator.d.ts.map +1 -0
- package/dist/src/graph/kg/extraction/orchestrator.js +208 -0
- package/dist/src/graph/kg/extraction/orchestrator.js.map +1 -0
- package/dist/src/graph/kg/index.d.ts +29 -0
- package/dist/src/graph/kg/index.d.ts.map +1 -0
- package/dist/src/graph/kg/index.js +35 -0
- package/dist/src/graph/kg/index.js.map +1 -0
- package/dist/src/graph/kg/query/context-builder.d.ts +38 -0
- package/dist/src/graph/kg/query/context-builder.d.ts.map +1 -0
- package/dist/src/graph/kg/query/context-builder.js +184 -0
- package/dist/src/graph/kg/query/context-builder.js.map +1 -0
- package/dist/src/graph/kg/query/index.d.ts +8 -0
- package/dist/src/graph/kg/query/index.d.ts.map +1 -0
- package/dist/src/graph/kg/query/index.js +6 -0
- package/dist/src/graph/kg/query/index.js.map +1 -0
- package/dist/src/graph/kg/query/scoring.d.ts +19 -0
- package/dist/src/graph/kg/query/scoring.d.ts.map +1 -0
- package/dist/src/graph/kg/query/scoring.js +158 -0
- package/dist/src/graph/kg/query/scoring.js.map +1 -0
- package/dist/src/graph/kg/query/search.d.ts +59 -0
- package/dist/src/graph/kg/query/search.d.ts.map +1 -0
- package/dist/src/graph/kg/query/search.js +158 -0
- package/dist/src/graph/kg/query/search.js.map +1 -0
- package/dist/src/graph/kg/query/traversal.d.ts +75 -0
- package/dist/src/graph/kg/query/traversal.d.ts.map +1 -0
- package/dist/src/graph/kg/query/traversal.js +420 -0
- package/dist/src/graph/kg/query/traversal.js.map +1 -0
- package/dist/src/graph/kg/resolution/callback-synthesizer.d.ts +41 -0
- package/dist/src/graph/kg/resolution/callback-synthesizer.d.ts.map +1 -0
- package/dist/src/graph/kg/resolution/callback-synthesizer.js +450 -0
- package/dist/src/graph/kg/resolution/callback-synthesizer.js.map +1 -0
- package/dist/src/graph/kg/resolution/frameworks/index.d.ts +18 -0
- package/dist/src/graph/kg/resolution/frameworks/index.d.ts.map +1 -0
- package/dist/src/graph/kg/resolution/frameworks/index.js +632 -0
- package/dist/src/graph/kg/resolution/frameworks/index.js.map +1 -0
- package/dist/src/graph/kg/resolution/import-resolver.d.ts +73 -0
- package/dist/src/graph/kg/resolution/import-resolver.d.ts.map +1 -0
- package/dist/src/graph/kg/resolution/import-resolver.js +257 -0
- package/dist/src/graph/kg/resolution/import-resolver.js.map +1 -0
- package/dist/src/graph/kg/resolution/index.d.ts +11 -0
- package/dist/src/graph/kg/resolution/index.d.ts.map +1 -0
- package/dist/src/graph/kg/resolution/index.js +7 -0
- package/dist/src/graph/kg/resolution/index.js.map +1 -0
- package/dist/src/graph/kg/resolution/knowledge-resolver.d.ts +22 -0
- package/dist/src/graph/kg/resolution/knowledge-resolver.d.ts.map +1 -0
- package/dist/src/graph/kg/resolution/knowledge-resolver.js +288 -0
- package/dist/src/graph/kg/resolution/knowledge-resolver.js.map +1 -0
- package/dist/src/graph/kg/resolution/name-matcher.d.ts +25 -0
- package/dist/src/graph/kg/resolution/name-matcher.d.ts.map +1 -0
- package/dist/src/graph/kg/resolution/name-matcher.js +162 -0
- package/dist/src/graph/kg/resolution/name-matcher.js.map +1 -0
- package/dist/src/graph/kg/schema.sql +210 -0
- package/dist/src/graph/kg/surface/cli.d.ts +3 -0
- package/dist/src/graph/kg/surface/cli.d.ts.map +1 -0
- package/dist/src/graph/kg/surface/cli.js +500 -0
- package/dist/src/graph/kg/surface/cli.js.map +1 -0
- package/dist/src/graph/kg/surface/hook-injector.d.ts +33 -0
- package/dist/src/graph/kg/surface/hook-injector.d.ts.map +1 -0
- package/dist/src/graph/kg/surface/hook-injector.js +172 -0
- package/dist/src/graph/kg/surface/hook-injector.js.map +1 -0
- package/dist/src/graph/kg/surface/index.d.ts +6 -0
- package/dist/src/graph/kg/surface/index.d.ts.map +1 -0
- package/dist/src/graph/kg/surface/index.js +5 -0
- package/dist/src/graph/kg/surface/index.js.map +1 -0
- package/dist/src/graph/kg/surface/mcp-tools.d.ts +20 -0
- package/dist/src/graph/kg/surface/mcp-tools.d.ts.map +1 -0
- package/dist/src/graph/kg/surface/mcp-tools.js +253 -0
- package/dist/src/graph/kg/surface/mcp-tools.js.map +1 -0
- package/dist/src/graph/kg/sync/incremental-sync.d.ts +24 -0
- package/dist/src/graph/kg/sync/incremental-sync.d.ts.map +1 -0
- package/dist/src/graph/kg/sync/incremental-sync.js +71 -0
- package/dist/src/graph/kg/sync/incremental-sync.js.map +1 -0
- package/dist/src/graph/kg/sync/index.d.ts +5 -0
- package/dist/src/graph/kg/sync/index.d.ts.map +1 -0
- package/dist/src/graph/kg/sync/index.js +4 -0
- package/dist/src/graph/kg/sync/index.js.map +1 -0
- package/dist/src/graph/kg/sync/watch-policy.d.ts +33 -0
- package/dist/src/graph/kg/sync/watch-policy.d.ts.map +1 -0
- package/dist/src/graph/kg/sync/watch-policy.js +90 -0
- package/dist/src/graph/kg/sync/watch-policy.js.map +1 -0
- package/dist/src/hooks/constants.d.ts +0 -2
- package/dist/src/hooks/constants.d.ts.map +1 -1
- package/dist/src/hooks/constants.js +0 -2
- package/dist/src/hooks/constants.js.map +1 -1
- package/dist/src/hooks/keyword-spec-injector.d.ts +6 -0
- package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -1
- package/dist/src/hooks/keyword-spec-injector.js +157 -81
- package/dist/src/hooks/keyword-spec-injector.js.map +1 -1
- package/dist/src/hooks/kg-auto-init.d.ts +13 -0
- package/dist/src/hooks/kg-auto-init.d.ts.map +1 -0
- package/dist/src/hooks/kg-auto-init.js +38 -0
- package/dist/src/hooks/kg-auto-init.js.map +1 -0
- package/dist/src/hooks/kg-context-injector.d.ts +1 -3
- package/dist/src/hooks/kg-context-injector.d.ts.map +1 -1
- package/dist/src/hooks/kg-context-injector.js +12 -17
- package/dist/src/hooks/kg-context-injector.js.map +1 -1
- package/dist/src/hooks/kg-sync-hook.d.ts +1 -9
- package/dist/src/hooks/kg-sync-hook.d.ts.map +1 -1
- package/dist/src/hooks/kg-sync-hook.js +21 -90
- package/dist/src/hooks/kg-sync-hook.js.map +1 -1
- package/dist/src/hooks/spec-analytics.d.ts +1 -0
- package/dist/src/hooks/spec-analytics.d.ts.map +1 -1
- package/dist/src/hooks/spec-analytics.js +1 -3
- package/dist/src/hooks/spec-analytics.js.map +1 -1
- package/dist/src/hooks/spec-injector.d.ts.map +1 -1
- package/dist/src/hooks/spec-injector.js +65 -1
- package/dist/src/hooks/spec-injector.js.map +1 -1
- package/dist/src/i18n/locales/en.d.ts.map +1 -1
- package/dist/src/i18n/locales/en.js +52 -9
- package/dist/src/i18n/locales/en.js.map +1 -1
- package/dist/src/i18n/locales/zh.d.ts.map +1 -1
- package/dist/src/i18n/locales/zh.js +52 -9
- package/dist/src/i18n/locales/zh.js.map +1 -1
- package/dist/src/i18n/types.d.ts +40 -4
- package/dist/src/i18n/types.d.ts.map +1 -1
- package/dist/src/ralph/skill-scanner.d.ts.map +1 -1
- package/dist/src/ralph/skill-scanner.js +9 -3
- package/dist/src/ralph/skill-scanner.js.map +1 -1
- package/dist/src/tools/__tests__/domain-search-debug.d.ts +2 -0
- package/dist/src/tools/__tests__/domain-search-debug.d.ts.map +1 -0
- package/dist/src/tools/__tests__/domain-search-debug.js +32 -0
- package/dist/src/tools/__tests__/domain-search-debug.js.map +1 -0
- package/dist/src/tools/domain-loader.d.ts +63 -0
- package/dist/src/tools/domain-loader.d.ts.map +1 -0
- package/dist/src/tools/domain-loader.js +295 -0
- package/dist/src/tools/domain-loader.js.map +1 -0
- package/dist/src/tools/domain-matcher.d.ts +24 -0
- package/dist/src/tools/domain-matcher.d.ts.map +1 -0
- package/dist/src/tools/domain-matcher.js +117 -0
- package/dist/src/tools/domain-matcher.js.map +1 -0
- package/dist/src/tools/domain-scanner.d.ts +32 -0
- package/dist/src/tools/domain-scanner.d.ts.map +1 -0
- package/dist/src/tools/domain-scanner.js +263 -0
- package/dist/src/tools/domain-scanner.js.map +1 -0
- package/dist/src/tools/domain-schema.d.ts +18 -0
- package/dist/src/tools/domain-schema.d.ts.map +1 -0
- package/dist/src/tools/domain-schema.js +104 -0
- package/dist/src/tools/domain-schema.js.map +1 -0
- package/dist/src/tools/spec-entry-parser.d.ts +1 -0
- package/dist/src/tools/spec-entry-parser.d.ts.map +1 -1
- package/dist/src/tools/spec-entry-parser.js +1 -0
- package/dist/src/tools/spec-entry-parser.js.map +1 -1
- package/dist/src/tools/spec-loader.d.ts +5 -0
- package/dist/src/tools/spec-loader.d.ts.map +1 -1
- package/dist/src/tools/spec-loader.js +10 -2
- package/dist/src/tools/spec-loader.js.map +1 -1
- package/dist/src/tui/install-ui/ConfigPanel.d.ts.map +1 -1
- package/dist/src/tui/install-ui/ConfigPanel.js +9 -1
- package/dist/src/tui/install-ui/ConfigPanel.js.map +1 -1
- package/dist/src/tui/install-ui/GroupedHub.d.ts +55 -0
- package/dist/src/tui/install-ui/GroupedHub.d.ts.map +1 -0
- package/dist/src/tui/install-ui/GroupedHub.js +210 -0
- package/dist/src/tui/install-ui/GroupedHub.js.map +1 -0
- package/dist/src/tui/install-ui/HooksConfig.d.ts +10 -5
- package/dist/src/tui/install-ui/HooksConfig.d.ts.map +1 -1
- package/dist/src/tui/install-ui/HooksConfig.js +83 -18
- package/dist/src/tui/install-ui/HooksConfig.js.map +1 -1
- package/dist/src/tui/install-ui/InstallConfirm.d.ts +1 -30
- package/dist/src/tui/install-ui/InstallConfirm.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallConfirm.js +72 -12
- package/dist/src/tui/install-ui/InstallConfirm.js.map +1 -1
- package/dist/src/tui/install-ui/InstallExecution.d.ts +4 -21
- package/dist/src/tui/install-ui/InstallExecution.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallExecution.js +89 -260
- package/dist/src/tui/install-ui/InstallExecution.js.map +1 -1
- package/dist/src/tui/install-ui/InstallFlow.d.ts +3 -7
- package/dist/src/tui/install-ui/InstallFlow.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallFlow.js +45 -267
- package/dist/src/tui/install-ui/InstallFlow.js.map +1 -1
- package/dist/src/tui/install-ui/InstallHub.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallHub.js +2 -4
- package/dist/src/tui/install-ui/InstallHub.js.map +1 -1
- package/dist/src/tui/install-ui/InstallResult.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallResult.js +1 -5
- package/dist/src/tui/install-ui/InstallResult.js.map +1 -1
- package/dist/src/tui/install-ui/index.d.ts +5 -1
- package/dist/src/tui/install-ui/index.d.ts.map +1 -1
- package/dist/src/tui/install-ui/index.js +1 -0
- package/dist/src/tui/install-ui/index.js.map +1 -1
- package/dist/src/tui/install-ui/types.d.ts +39 -0
- package/dist/src/tui/install-ui/types.d.ts.map +1 -1
- package/dist/src/tui/install-ui/types.js +1 -1
- package/dist/src/tui/install-ui/types.js.map +1 -1
- package/dist/src/tui/install-ui/useInstallFlowState.d.ts +69 -0
- package/dist/src/tui/install-ui/useInstallFlowState.d.ts.map +1 -0
- package/dist/src/tui/install-ui/useInstallFlowState.js +288 -0
- package/dist/src/tui/install-ui/useInstallFlowState.js.map +1 -0
- package/dist/src/tui/shared/components.d.ts +4 -0
- package/dist/src/tui/shared/components.d.ts.map +1 -1
- package/dist/src/tui/shared/components.js +4 -0
- package/dist/src/tui/shared/components.js.map +1 -1
- package/dist/src/tui/shared/index.d.ts +1 -1
- package/dist/src/tui/shared/index.d.ts.map +1 -1
- package/dist/src/tui/shared/index.js +1 -1
- package/dist/src/tui/shared/index.js.map +1 -1
- package/dist/src/tui/shared/tokens.d.ts +5 -5
- package/dist/src/tui/shared/tokens.js +5 -5
- package/dist/src/tui/shared/tokens.js.map +1 -1
- package/dist/src/types/index.d.ts +9 -0
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/utils/cli-format.d.ts +2 -1
- package/dist/src/utils/cli-format.d.ts.map +1 -1
- package/dist/src/utils/cli-format.js +14 -3
- package/dist/src/utils/cli-format.js.map +1 -1
- package/dist/src/utils/cooldown-guard.d.ts +17 -0
- package/dist/src/utils/cooldown-guard.d.ts.map +1 -0
- package/dist/src/utils/cooldown-guard.js +59 -0
- package/dist/src/utils/cooldown-guard.js.map +1 -0
- package/dist/src/utils/jsonl-log.d.ts.map +1 -1
- package/dist/src/utils/jsonl-log.js +2 -1
- package/dist/src/utils/jsonl-log.js.map +1 -1
- package/dist/src/utils/update-notices.js +17 -4
- package/dist/src/utils/update-notices.js.map +1 -1
- package/package.json +4 -5
- package/workflows/claude-instructions.md +23 -0
- package/workflows/codex-instructions.md +22 -0
- package/workflows/finish-work.md +25 -0
- package/workflows/updates/update-v3-setup.md +7 -15
- package/dashboard/dist/assets/McpPage-Im6s4pGR.js +0 -21
- package/dashboard/dist/assets/SpecsPage-gr4KX51-.js +0 -36
- package/dashboard/dist/assets/folder-B8ODoZfb.js +0 -16
- package/dashboard/dist/assets/index-6-yE5Yl9.css +0 -1
- package/dashboard/dist/assets/pen-line-CR8GaHt-.js +0 -6
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: insight-challenge
|
|
3
|
+
description: "Adversarial review of code quality findings. Challenges insights with counter-evidence, verifies claims against source code, and produces structured verdicts. Triggers on 'insight-challenge', 'challenge finding', '审查发现'."
|
|
4
|
+
allowed-tools: read(*), glob(*), grep(*), bash(*), write(*)
|
|
5
|
+
---
|
|
6
|
+
<!-- Open-standard mirror generated by scripts/build-agents-standard.mjs — do not edit; re-run after editing .claude/ source. -->
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
# Insight Challenge
|
|
10
|
+
|
|
11
|
+
Adversarial review of code quality findings. Challenges insights with counter-evidence, verifies claims against source code, and produces structured verdicts.
|
|
12
|
+
|
|
13
|
+
**适用场景**: 当需要对代码审查、质量分析、或架构评估中的发现进行对抗性验证时使用。
|
|
14
|
+
|
|
15
|
+
## Architecture
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
19
|
+
│ Insight Challenge (SKILL.md) — Adversarial Review │
|
|
20
|
+
│ → Parse finding → Read source → Challenge → Verdict │
|
|
21
|
+
└─────────────────────────────────────────────────────────────┘
|
|
22
|
+
│
|
|
23
|
+
┌──────────┬───────────┼───────────┬──────────┐
|
|
24
|
+
↓ ↓ ↓ ↓ │
|
|
25
|
+
┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │
|
|
26
|
+
│Phase 1 │ │Phase 2 │ │Phase 3 │ │Phase 4 │ │
|
|
27
|
+
│ Parse │ │ Source │ │Challenge│ │Verdict │ │
|
|
28
|
+
│Finding │ │ Review │ │Analysis │ │Report │ │
|
|
29
|
+
└───┬────┘ └───┬────┘ └───┬────┘ └───┬────┘ │
|
|
30
|
+
│ │ │ │ │
|
|
31
|
+
finding source counter- structured │
|
|
32
|
+
parsed code evidence verdict │
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Key Design Principles
|
|
36
|
+
|
|
37
|
+
1. **Adversarial by Default**: Assume findings may be incorrect; seek counter-evidence first
|
|
38
|
+
2. **Source-Code Anchored**: All claims must be verified against actual code, not assumptions
|
|
39
|
+
3. **Structured Output**: Verdicts follow a fixed schema for downstream consumption
|
|
40
|
+
4. **Fair Challenge**: If evidence supports the finding, confirm it; don't manufacture doubt
|
|
41
|
+
5. **Transparent Reasoning**: Show the chain of evidence and reasoning
|
|
42
|
+
|
|
43
|
+
## Finding Input Format
|
|
44
|
+
|
|
45
|
+
Findings can be provided as JSON or structured text:
|
|
46
|
+
|
|
47
|
+
```json
|
|
48
|
+
{
|
|
49
|
+
"id": "HIGH-01",
|
|
50
|
+
"title": "知识边类型 resolves/documents 未在 types.ts 声明",
|
|
51
|
+
"severity": "high",
|
|
52
|
+
"file": "src/graph/kg/db/types.ts",
|
|
53
|
+
"line": 58,
|
|
54
|
+
"description": "issue-extractor 使用 'resolves' 边类型...",
|
|
55
|
+
"evidence": "types.ts KnowledgeEdgeKind: defines, constrains...",
|
|
56
|
+
"suggestion": "补齐缺失的边类型声明",
|
|
57
|
+
"design_ref": "Gap 2 — 12 CodeEdgeKind + 9 KnowledgeEdgeKind"
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Or structured text:
|
|
62
|
+
```
|
|
63
|
+
HIGH-01: 知识边类型 resolves/documents 未在 types.ts 声明
|
|
64
|
+
Severity: high
|
|
65
|
+
File: src/graph/kg/db/types.ts:58
|
|
66
|
+
Claim: issue-extractor 使用 'resolves' 边类型但未在类型系统中声明
|
|
67
|
+
Evidence: types.ts KnowledgeEdgeKind 列表中缺少 'resolves'
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Execution Flow
|
|
71
|
+
|
|
72
|
+
### Phase 1: Parse Finding
|
|
73
|
+
|
|
74
|
+
1. Extract finding ID, title, severity, file reference, and claims
|
|
75
|
+
2. Identify all verifiable assertions:
|
|
76
|
+
- File existence claims
|
|
77
|
+
- Code structure claims (types, functions, variables)
|
|
78
|
+
- Behavioral claims (usage patterns, dependencies)
|
|
79
|
+
- Design conformance claims
|
|
80
|
+
3. Create verification checklist
|
|
81
|
+
|
|
82
|
+
### Phase 2: Source Review
|
|
83
|
+
|
|
84
|
+
1. Read the referenced file(s) at the specified lines
|
|
85
|
+
2. Search for related code using Grep/Glob
|
|
86
|
+
3. Document actual state of the code:
|
|
87
|
+
- What types/functions actually exist
|
|
88
|
+
- What values are actually declared
|
|
89
|
+
- What the actual implementation looks like
|
|
90
|
+
4. Compare claims against reality
|
|
91
|
+
|
|
92
|
+
### Phase 3: Challenge Analysis
|
|
93
|
+
|
|
94
|
+
For each claim in the finding:
|
|
95
|
+
|
|
96
|
+
1. **Seek confirming evidence**: Does the source code support this claim?
|
|
97
|
+
2. **Seek disconfirming evidence**: Does the source code contradict this claim?
|
|
98
|
+
3. **Check for misinterpretation**: Could the claim be based on outdated code or misunderstanding?
|
|
99
|
+
4. **Verify design references**: Are cited design docs accurate?
|
|
100
|
+
|
|
101
|
+
Challenge strategies:
|
|
102
|
+
- **Direct contradiction**: Source code explicitly shows the opposite
|
|
103
|
+
- **Context omission**: Finding omits relevant context that changes the interpretation
|
|
104
|
+
- **Stale reference**: Finding references code that has been updated
|
|
105
|
+
- **Miscounted**: Numeric claims (missing N types) are incorrect
|
|
106
|
+
- **Scope error**: Finding applies wrong scope (e.g., confuses edge types with language types)
|
|
107
|
+
|
|
108
|
+
### Phase 4: Verdict Report
|
|
109
|
+
|
|
110
|
+
Produce structured output:
|
|
111
|
+
|
|
112
|
+
```json
|
|
113
|
+
{
|
|
114
|
+
"finding_id": "HIGH-01",
|
|
115
|
+
"challenge_result": "overturned|weakened|confirmed",
|
|
116
|
+
"confidence": 95,
|
|
117
|
+
"reasoning": "Detailed explanation of why the finding was challenged or confirmed",
|
|
118
|
+
"counter_evidence": [
|
|
119
|
+
"Source file line 64: 'resolves' IS declared in KnowledgeEdgeKind",
|
|
120
|
+
"Design doc specifies 20 edge types, not 28"
|
|
121
|
+
],
|
|
122
|
+
"supporting_evidence": [],
|
|
123
|
+
"adjusted_severity": "none|high|medium|low",
|
|
124
|
+
"recommendation": "Dismiss this finding; the claimed gap does not exist"
|
|
125
|
+
}
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## Verdict Definitions
|
|
129
|
+
|
|
130
|
+
| Verdict | Meaning | When to Use |
|
|
131
|
+
|---------|---------|-------------|
|
|
132
|
+
| **overturned** | Finding is factually incorrect | Source code directly contradicts the claim |
|
|
133
|
+
| **weakened** | Finding is partially correct but overstated | Some evidence supports it, but severity/scope is wrong |
|
|
134
|
+
| **confirmed** | Finding is accurate | Source code supports all claims |
|
|
135
|
+
|
|
136
|
+
## Challenge Patterns
|
|
137
|
+
|
|
138
|
+
### Pattern 1: Type Declaration Check
|
|
139
|
+
```
|
|
140
|
+
Claim: "Type X is not declared"
|
|
141
|
+
Challenge: Read the type file → check if X exists in type union/enum
|
|
142
|
+
Counter: "Line N shows X IS declared in the type definition"
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### Pattern 2: Design Reference Verification
|
|
146
|
+
```
|
|
147
|
+
Claim: "Design requires N items, implementation has M"
|
|
148
|
+
Challenge: Read design doc → verify the claimed requirement
|
|
149
|
+
Counter: "Design doc actually specifies K items, not N"
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Pattern 3: Usage Verification
|
|
153
|
+
```
|
|
154
|
+
Claim: "Code uses type X but X is not defined"
|
|
155
|
+
Challenge: Check both usage site AND definition site
|
|
156
|
+
Counter: "X is defined at line N in file Y"
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Pattern 4: Scope Confusion
|
|
160
|
+
```
|
|
161
|
+
Claim: "Missing 7 edge types (total should be 28)"
|
|
162
|
+
Challenge: Check what the "28" actually refers to
|
|
163
|
+
Counter: "The 28 refers to language types, not edge types; edge types are 21"
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
## Output Format
|
|
167
|
+
|
|
168
|
+
The challenge produces a markdown report:
|
|
169
|
+
|
|
170
|
+
```markdown
|
|
171
|
+
## Challenge Report: <finding_id>
|
|
172
|
+
|
|
173
|
+
**Verdict**: <overturned|weakened|confirmed>
|
|
174
|
+
**Confidence**: <0-100>%
|
|
175
|
+
**Adjusted Severity**: <none|high|medium|low>
|
|
176
|
+
|
|
177
|
+
### Original Finding
|
|
178
|
+
<finding summary>
|
|
179
|
+
|
|
180
|
+
### Counter-Evidence
|
|
181
|
+
- <evidence point 1>
|
|
182
|
+
- <evidence point 2>
|
|
183
|
+
|
|
184
|
+
### Supporting Evidence
|
|
185
|
+
- <evidence point 1> (if any)
|
|
186
|
+
|
|
187
|
+
### Reasoning
|
|
188
|
+
<detailed explanation>
|
|
189
|
+
|
|
190
|
+
### Recommendation
|
|
191
|
+
<action recommendation>
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
## Error Handling
|
|
195
|
+
|
|
196
|
+
| Scenario | Resolution |
|
|
197
|
+
|----------|------------|
|
|
198
|
+
| Referenced file not found | Report file missing; verdict = weakened (potentially stale) |
|
|
199
|
+
| Line number out of range | Search for the claimed content; adjust line reference |
|
|
200
|
+
| Design doc not found | Skip design verification; note in report |
|
|
201
|
+
| Ambiguous evidence | Present both sides; lower confidence score |
|
|
202
|
+
| Multiple findings batch | Process each independently; produce per-finding verdicts |
|
|
203
|
+
|
|
204
|
+
## Usage Examples
|
|
205
|
+
|
|
206
|
+
### Single Finding Challenge
|
|
207
|
+
```
|
|
208
|
+
invoke_skill(skill="insight-challenge", args='{"id":"HIGH-01","title":"...","file":"src/types.ts","line":58,...}')
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### Batch Challenge
|
|
212
|
+
```
|
|
213
|
+
invoke_skill(skill="insight-challenge", args='findings.json')
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
### Inline Challenge
|
|
217
|
+
```
|
|
218
|
+
Challenge this finding:
|
|
219
|
+
Claim: Function X is not exported
|
|
220
|
+
File: src/utils.ts:45
|
|
221
|
+
Evidence: grep shows no export keyword
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
## Related Skills
|
|
225
|
+
|
|
226
|
+
- **team-adversarial-swarm**: Multi-agent adversarial analysis
|
|
227
|
+
- **team-quality-assurance**: QA pipeline with issue discovery
|
|
228
|
+
- **codify-to-knowhow**: Capturing verified knowledge
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# Challenge Protocol Specification
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
This protocol defines the systematic approach to challenging code quality findings. The goal is to ensure findings are accurate before action is taken, reducing false positives and wasted effort.
|
|
6
|
+
|
|
7
|
+
## Challenge Methodology
|
|
8
|
+
|
|
9
|
+
### Step 1: Claim Decomposition
|
|
10
|
+
|
|
11
|
+
Break the finding into atomic, verifiable claims:
|
|
12
|
+
|
|
13
|
+
1. **Existence claims**: "X exists/does not exist in file Y"
|
|
14
|
+
2. **Behavior claims**: "Function X does Y when Z"
|
|
15
|
+
3. **Structure claims**: "Type X has N members"
|
|
16
|
+
4. **Conformance claims**: "Implementation deviates from design by X"
|
|
17
|
+
5. **Numeric claims**: "Missing N items (expected M, found K)"
|
|
18
|
+
|
|
19
|
+
Each claim must be independently verifiable.
|
|
20
|
+
|
|
21
|
+
### Step 2: Evidence Collection
|
|
22
|
+
|
|
23
|
+
For each claim, collect:
|
|
24
|
+
|
|
25
|
+
1. **Primary evidence**: Direct source code reading
|
|
26
|
+
2. **Secondary evidence**: Related files, imports, type definitions
|
|
27
|
+
3. **Design evidence**: Referenced design documents
|
|
28
|
+
4. **Usage evidence**: How the code is actually used
|
|
29
|
+
|
|
30
|
+
Evidence hierarchy:
|
|
31
|
+
- Source code > Design docs > Comments > Assumptions
|
|
32
|
+
|
|
33
|
+
### Step 3: Adversarial Analysis
|
|
34
|
+
|
|
35
|
+
Apply these challenge strategies:
|
|
36
|
+
|
|
37
|
+
#### Strategy A: Direct Verification
|
|
38
|
+
Read the exact file and line referenced. Does the claim match reality?
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
Claim: "Line 58: type X is missing"
|
|
42
|
+
Action: Read line 58 of the file
|
|
43
|
+
Result: Line 58 shows type X IS present → claim overturned
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
#### Strategy B: Context Expansion
|
|
47
|
+
The claim may be technically correct but misleadingly decontextualized.
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
Claim: "Function X has no error handling"
|
|
51
|
+
Action: Read the full function and its callers
|
|
52
|
+
Result: Error handling is done by callers → claim weakened
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
#### Strategy C: Scope Correction
|
|
56
|
+
The claim may confuse different scopes or namespaces.
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
Claim: "28 edge types required, only 21 found"
|
|
60
|
+
Action: Check what "28" refers to in design docs
|
|
61
|
+
Result: 28 = language types, not edge types → claim overturned
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
#### Strategy D: Temporal Check
|
|
65
|
+
The claim may reference outdated code.
|
|
66
|
+
|
|
67
|
+
```
|
|
68
|
+
Claim: "File X uses deprecated API Y"
|
|
69
|
+
Action: Check git history and current code
|
|
70
|
+
Result: API was updated last week → claim overturned
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
#### Strategy E: Completeness Check
|
|
74
|
+
The claim may be partially correct but incomplete.
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
Claim: "Type X is missing from union"
|
|
78
|
+
Action: Check all union members
|
|
79
|
+
Result: X is present but Y is actually missing → claim weakened
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Step 4: Verdict Determination
|
|
83
|
+
|
|
84
|
+
Use this decision tree:
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
Is the primary claim factually incorrect?
|
|
88
|
+
├─ Yes → verdict = "overturned"
|
|
89
|
+
└─ No → Is the severity/scope overstated?
|
|
90
|
+
├─ Yes → verdict = "weakened"
|
|
91
|
+
└─ No → Is the claim accurate?
|
|
92
|
+
├─ Yes → verdict = "confirmed"
|
|
93
|
+
└─ Uncertain → verdict = "weakened" (lower confidence)
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### Step 5: Confidence Scoring
|
|
97
|
+
|
|
98
|
+
| Confidence | Meaning |
|
|
99
|
+
|------------|---------|
|
|
100
|
+
| 90-100% | Clear, unambiguous evidence |
|
|
101
|
+
| 70-89% | Strong evidence with minor uncertainty |
|
|
102
|
+
| 50-69% | Mixed evidence; judgment call |
|
|
103
|
+
| Below 50% | Insufficient evidence; recommend further investigation |
|
|
104
|
+
|
|
105
|
+
Factors affecting confidence:
|
|
106
|
+
- Source code clarity
|
|
107
|
+
- Design doc availability
|
|
108
|
+
- Claim specificity
|
|
109
|
+
- Evidence completeness
|
|
110
|
+
|
|
111
|
+
## Anti-Patterns
|
|
112
|
+
|
|
113
|
+
### 1. Confirmation Bias
|
|
114
|
+
**Wrong**: Looking only for evidence that supports the finding
|
|
115
|
+
**Right**: Actively seeking counter-evidence first
|
|
116
|
+
|
|
117
|
+
### 2. Manufactured Doubt
|
|
118
|
+
**Wrong**: Challenging findings without real counter-evidence
|
|
119
|
+
**Right**: Only challenge when evidence genuinely contradicts
|
|
120
|
+
|
|
121
|
+
### 3. Nitpicking
|
|
122
|
+
**Wrong**: Challenging trivial details while ignoring core issues
|
|
123
|
+
**Right**: Focus on claims that affect the finding's validity
|
|
124
|
+
|
|
125
|
+
### 4. Scope Creep
|
|
126
|
+
**Wrong**: Expanding the challenge beyond the finding's claims
|
|
127
|
+
**Right**: Address only what the finding asserts
|
|
128
|
+
|
|
129
|
+
## Output Quality Criteria
|
|
130
|
+
|
|
131
|
+
A good challenge report:
|
|
132
|
+
|
|
133
|
+
1. **Specific**: References exact file paths and line numbers
|
|
134
|
+
2. **Verifiable**: Counter-evidence can be independently checked
|
|
135
|
+
3. **Fair**: Acknowledges supporting evidence when present
|
|
136
|
+
4. **Actionable**: Provides clear recommendation
|
|
137
|
+
5. **Proportional**: Confidence matches evidence strength
|
|
138
|
+
|
|
139
|
+
## Integration Points
|
|
140
|
+
|
|
141
|
+
### With Quality Pipeline
|
|
142
|
+
- Challenge can be triggered automatically for high-severity findings
|
|
143
|
+
- Results feed back into finding confidence scores
|
|
144
|
+
- Overturned findings are flagged for template improvement
|
|
145
|
+
|
|
146
|
+
### With Knowledge System
|
|
147
|
+
- Confirmed findings can be captured as knowhow
|
|
148
|
+
- Challenge patterns can be codified as review specs
|
|
149
|
+
- Common false-positive patterns become learning material
|
|
150
|
+
|
|
151
|
+
### With Team Skills
|
|
152
|
+
- Challenge can be delegated to specialized agents
|
|
153
|
+
- Results inform team scoring and convergence
|
|
154
|
+
- Adversarial patterns align with team-adversarial-swarm
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
# Verdict Schema Specification
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
This document defines the structured output format for insight challenge verdicts. The schema ensures consistent, machine-readable results that can be consumed by downstream systems.
|
|
6
|
+
|
|
7
|
+
## Verdict JSON Schema
|
|
8
|
+
|
|
9
|
+
```json
|
|
10
|
+
{
|
|
11
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
12
|
+
"type": "object",
|
|
13
|
+
"required": ["finding_id", "challenge_result", "confidence", "reasoning"],
|
|
14
|
+
"properties": {
|
|
15
|
+
"finding_id": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"description": "Original finding identifier"
|
|
18
|
+
},
|
|
19
|
+
"challenge_result": {
|
|
20
|
+
"type": "string",
|
|
21
|
+
"enum": ["overturned", "weakened", "confirmed"],
|
|
22
|
+
"description": "Verdict of the challenge"
|
|
23
|
+
},
|
|
24
|
+
"confidence": {
|
|
25
|
+
"type": "integer",
|
|
26
|
+
"minimum": 0,
|
|
27
|
+
"maximum": 100,
|
|
28
|
+
"description": "Confidence score (0-100)"
|
|
29
|
+
},
|
|
30
|
+
"reasoning": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"description": "Detailed explanation of the verdict"
|
|
33
|
+
},
|
|
34
|
+
"counter_evidence": {
|
|
35
|
+
"type": "array",
|
|
36
|
+
"items": { "type": "string" },
|
|
37
|
+
"description": "Evidence that contradicts the finding"
|
|
38
|
+
},
|
|
39
|
+
"supporting_evidence": {
|
|
40
|
+
"type": "array",
|
|
41
|
+
"items": { "type": "string" },
|
|
42
|
+
"description": "Evidence that supports the finding"
|
|
43
|
+
},
|
|
44
|
+
"adjusted_severity": {
|
|
45
|
+
"type": "string",
|
|
46
|
+
"enum": ["none", "critical", "high", "medium", "low"],
|
|
47
|
+
"description": "Recommended severity after challenge"
|
|
48
|
+
},
|
|
49
|
+
"recommendation": {
|
|
50
|
+
"type": "string",
|
|
51
|
+
"description": "Recommended action"
|
|
52
|
+
},
|
|
53
|
+
"metadata": {
|
|
54
|
+
"type": "object",
|
|
55
|
+
"properties": {
|
|
56
|
+
"challenge_duration_ms": { "type": "integer" },
|
|
57
|
+
"files_reviewed": { "type": "array", "items": { "type": "string" } },
|
|
58
|
+
"design_docs_checked": { "type": "array", "items": { "type": "string" } },
|
|
59
|
+
"challenge_strategies_applied": { "type": "array", "items": { "type": "string" } }
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Field Definitions
|
|
67
|
+
|
|
68
|
+
### finding_id
|
|
69
|
+
- **Type**: string
|
|
70
|
+
- **Required**: yes
|
|
71
|
+
- **Description**: The original finding identifier (e.g., "HIGH-01", "CRIT-03")
|
|
72
|
+
- **Example**: "HIGH-01"
|
|
73
|
+
|
|
74
|
+
### challenge_result
|
|
75
|
+
- **Type**: string (enum)
|
|
76
|
+
- **Required**: yes
|
|
77
|
+
- **Values**:
|
|
78
|
+
- `overturned`: Finding is factually incorrect; source code directly contradicts claims
|
|
79
|
+
- `weakened`: Finding is partially correct but overstated, misscoped, or missing context
|
|
80
|
+
- `confirmed`: Finding is accurate; source code supports all claims
|
|
81
|
+
|
|
82
|
+
### confidence
|
|
83
|
+
- **Type**: integer (0-100)
|
|
84
|
+
- **Required**: yes
|
|
85
|
+
- **Description**: How confident the challenger is in the verdict
|
|
86
|
+
- **Scale**:
|
|
87
|
+
- 90-100: Clear, unambiguous evidence
|
|
88
|
+
- 70-89: Strong evidence with minor uncertainty
|
|
89
|
+
- 50-69: Mixed evidence; judgment call
|
|
90
|
+
- Below 50: Insufficient evidence
|
|
91
|
+
|
|
92
|
+
### reasoning
|
|
93
|
+
- **Type**: string
|
|
94
|
+
- **Required**: yes
|
|
95
|
+
- **Description**: Detailed explanation of why the verdict was reached
|
|
96
|
+
- **Should include**:
|
|
97
|
+
- Summary of the original claim
|
|
98
|
+
- What evidence was found
|
|
99
|
+
- Why the evidence supports the verdict
|
|
100
|
+
- Any caveats or limitations
|
|
101
|
+
|
|
102
|
+
### counter_evidence
|
|
103
|
+
- **Type**: array of strings
|
|
104
|
+
- **Required**: no (but expected for overturned/weakened)
|
|
105
|
+
- **Description**: Specific evidence that contradicts the finding
|
|
106
|
+
- **Format**: Each item should reference a specific file and line
|
|
107
|
+
- **Example**: ["src/types.ts line 64: 'resolves' IS declared in KnowledgeEdgeKind"]
|
|
108
|
+
|
|
109
|
+
### supporting_evidence
|
|
110
|
+
- **Type**: array of strings
|
|
111
|
+
- **Required**: no (but expected for confirmed)
|
|
112
|
+
- **Description**: Specific evidence that supports the finding
|
|
113
|
+
- **Format**: Same as counter_evidence
|
|
114
|
+
|
|
115
|
+
### adjusted_severity
|
|
116
|
+
- **Type**: string (enum)
|
|
117
|
+
- **Required**: no
|
|
118
|
+
- **Values**:
|
|
119
|
+
- `none`: Finding should be dismissed entirely
|
|
120
|
+
- `critical`, `high`, `medium`, `low`: Adjusted severity level
|
|
121
|
+
- **Description**: Recommended severity after considering challenge evidence
|
|
122
|
+
- **Default**: Original severity if not specified
|
|
123
|
+
|
|
124
|
+
### recommendation
|
|
125
|
+
- **Type**: string
|
|
126
|
+
- **Required**: no
|
|
127
|
+
- **Description**: Recommended next action
|
|
128
|
+
- **Examples**:
|
|
129
|
+
- "Dismiss this finding; the claimed gap does not exist"
|
|
130
|
+
- "Downgrade to medium severity; the issue exists but is less critical than claimed"
|
|
131
|
+
- "Confirm and prioritize; the finding is accurate and important"
|
|
132
|
+
|
|
133
|
+
### metadata
|
|
134
|
+
- **Type**: object
|
|
135
|
+
- **Required**: no
|
|
136
|
+
- **Description**: Additional context about the challenge process
|
|
137
|
+
- **Fields**:
|
|
138
|
+
- `challenge_duration_ms`: Time spent on the challenge
|
|
139
|
+
- `files_reviewed`: List of files examined
|
|
140
|
+
- `design_docs_checked`: Design documents consulted
|
|
141
|
+
- `challenge_strategies_applied`: Which challenge strategies were used
|
|
142
|
+
|
|
143
|
+
## Example Verdicts
|
|
144
|
+
|
|
145
|
+
### Overturned Finding
|
|
146
|
+
|
|
147
|
+
```json
|
|
148
|
+
{
|
|
149
|
+
"finding_id": "HIGH-01",
|
|
150
|
+
"challenge_result": "overturned",
|
|
151
|
+
"confidence": 97,
|
|
152
|
+
"reasoning": "The finding's central claim is factually incorrect. Both 'resolves' and 'documents' ARE declared in KnowledgeEdgeKind in types.ts (lines 64 and 61 respectively). The '28 edge types' design requirement is a misattribution -- the design doc specifies 12 CodeEdgeKind + 8 KnowledgeEdgeKind = 20, and the implementation has 21.",
|
|
153
|
+
"counter_evidence": [
|
|
154
|
+
"types.ts lines 58-67: KnowledgeEdgeKind explicitly declares all 9 types including 'resolves' (L64) and 'documents' (L61)",
|
|
155
|
+
"Design doc plan-maestrograph.md L1327: specifies '12 + 8 种知识关系' = 20 total, not 28",
|
|
156
|
+
"The '28' number in the finding matches LANGUAGES constant (L1344), not edge types"
|
|
157
|
+
],
|
|
158
|
+
"supporting_evidence": [],
|
|
159
|
+
"adjusted_severity": "none",
|
|
160
|
+
"recommendation": "Dismiss this finding; the claimed type gap does not exist"
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
### Weakened Finding
|
|
165
|
+
|
|
166
|
+
```json
|
|
167
|
+
{
|
|
168
|
+
"finding_id": "MED-02",
|
|
169
|
+
"challenge_result": "weakened",
|
|
170
|
+
"confidence": 75,
|
|
171
|
+
"reasoning": "The finding correctly identifies that function X lacks input validation, but overstates the severity. The function is only called internally with pre-validated data, reducing the actual risk.",
|
|
172
|
+
"counter_evidence": [
|
|
173
|
+
"src/service.ts: Function X is only called from Y() which validates inputs",
|
|
174
|
+
"No external API exposes this function directly"
|
|
175
|
+
],
|
|
176
|
+
"supporting_evidence": [
|
|
177
|
+
"src/utils.ts line 45: Function X确实没有输入验证"
|
|
178
|
+
],
|
|
179
|
+
"adjusted_severity": "low",
|
|
180
|
+
"recommendation": "Add defensive validation as a best practice, but do not prioritize as high severity"
|
|
181
|
+
}
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### Confirmed Finding
|
|
185
|
+
|
|
186
|
+
```json
|
|
187
|
+
{
|
|
188
|
+
"finding_id": "CRIT-03",
|
|
189
|
+
"challenge_result": "confirmed",
|
|
190
|
+
"confidence": 95,
|
|
191
|
+
"reasoning": "The finding accurately identifies a SQL injection vulnerability. User input is directly concatenated into the query string without parameterization.",
|
|
192
|
+
"counter_evidence": [],
|
|
193
|
+
"supporting_evidence": [
|
|
194
|
+
"src/db.ts line 78: query = 'SELECT * FROM users WHERE id = ' + userId",
|
|
195
|
+
"userId comes directly from req.params.id without sanitization"
|
|
196
|
+
],
|
|
197
|
+
"adjusted_severity": "critical",
|
|
198
|
+
"recommendation": "Immediate fix required; use parameterized queries"
|
|
199
|
+
}
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
## Batch Processing
|
|
203
|
+
|
|
204
|
+
When processing multiple findings:
|
|
205
|
+
|
|
206
|
+
```json
|
|
207
|
+
{
|
|
208
|
+
"batch_id": "review-2026-06-12",
|
|
209
|
+
"total_findings": 5,
|
|
210
|
+
"verdicts": [
|
|
211
|
+
{ "finding_id": "HIGH-01", "challenge_result": "overturned", ... },
|
|
212
|
+
{ "finding_id": "HIGH-02", "challenge_result": "confirmed", ... },
|
|
213
|
+
{ "finding_id": "MED-01", "challenge_result": "weakened", ... }
|
|
214
|
+
],
|
|
215
|
+
"summary": {
|
|
216
|
+
"overturned": 1,
|
|
217
|
+
"weakened": 1,
|
|
218
|
+
"confirmed": 3,
|
|
219
|
+
"adjusted_effort_savings": "40% of original findings dismissed or downgraded"
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
## Integration with Downstream Systems
|
|
225
|
+
|
|
226
|
+
### Quality Dashboard
|
|
227
|
+
- Verdicts update finding status in quality tracking
|
|
228
|
+
- Confidence scores affect finding priority
|
|
229
|
+
- Adjusted severities trigger appropriate workflows
|
|
230
|
+
|
|
231
|
+
### Knowledge System
|
|
232
|
+
- Confirmed findings become knowhow candidates
|
|
233
|
+
- Challenge patterns become review specs
|
|
234
|
+
- Overturned findings improve future detection
|
|
235
|
+
|
|
236
|
+
### Team Skills
|
|
237
|
+
- Verdicts feed into team scoring algorithms
|
|
238
|
+
- Challenge results inform convergence criteria
|
|
239
|
+
- Adversarial patterns enhance team review quality
|
|
@@ -52,7 +52,7 @@ $ARGUMENTS — user intent text, or special keywords.
|
|
|
52
52
|
4. **Decomposition contract shared with maestro-ralph** — broad/lifecycle intents run S_DECOMPOSE producing the SAME additive block (`boundary_contract`, `execution_criteria`, `task_decomposition`)。Reference maestro-ralph `A_DECOMPOSE_TASKS`
|
|
53
53
|
5. **status.json 唯一真源** — 不生成 `goal-checklist.md` 或外部清单
|
|
54
54
|
6. **执行步骤统一通过 `maestro ralph next` 加载** — `command_scope`/`command_path` 由 `maestro ralph skills --platform agent --json --quiet` 预校验(project 覆盖 global,限定 `.claude/`);decision 节点不走 CLI,走 `invoke_skill("maestro-ralph")` handoff
|
|
55
|
-
7. **Topology awareness** — chain catalog 含 grill / brainstorm / blueprint / analyze-macro / analyze / roadmap / plan(三路径) / execute /
|
|
55
|
+
7. **Topology awareness** — chain catalog 含 grill / brainstorm / blueprint / analyze-macro / analyze / roadmap / plan(三路径) / execute / ...;scope_verdict 由 ralph 在 `post-analyze-scope` 决定
|
|
56
56
|
8. **Grill is interactive-only** — `-y` auto mode MUST skip grill stage and route directly to brainstorm; grill requires Socratic Q&A with the user
|
|
57
57
|
9. **D-007 milestone 反查** — 数字 phase 的 `milestone_id` 由 `state.json.milestones[].phase_slugs` 反查
|
|
58
58
|
10. **每个 step 必须 `completion_confirmed: true`** — 由 `maestro ralph complete N --status DONE|DONE_WITH_CONCERNS` 写入
|
|
@@ -143,9 +143,9 @@ S_FALLBACK:
|
|
|
143
143
|
- 正式规格/spec-generate/7-phase → `blueprint`
|
|
144
144
|
- 项目初始化 → `init`
|
|
145
145
|
- 宽/中等意图 + 无数字 phase → `analyze-macro`(产 scope_verdict,由 ralph 在 `post-analyze-scope` 决定是否插入 roadmap+analyze 或直跳 plan --from analyze)
|
|
146
|
-
- 数字 phase 上下文 → `analyze {phase}` → `plan {phase}` → `execute {phase}` →
|
|
147
|
-
- 已有 analyze artifact 想直达执行 → `plan --from analyze:{ANL_ID}` → execute →
|
|
148
|
-
- 已有 blueprint artifact → `plan --from blueprint:{BLP_ID}` → execute →
|
|
146
|
+
- 数字 phase 上下文 → `analyze {phase}` → `plan {phase}` → `execute {phase}` → quality pipeline
|
|
147
|
+
- 已有 analyze artifact 想直达执行 → `plan --from analyze:{ANL_ID}` → execute → quality pipeline
|
|
148
|
+
- 已有 blueprint artifact → `plan --from blueprint:{BLP_ID}` → execute → quality pipeline
|
|
149
149
|
4. 执行 step:`shell("maestro ralph skills --platform agent --json --quiet")` 预校验 skill 名,命中写绝对路径到 `command_path`,未命中标 `missing`;同时写 `step.stage` / `step.scope` / `step.source_artifact_ref`。decision 节点不解析 command_path
|
|
150
150
|
|
|
151
151
|
### A_CLARIFY
|
|
@@ -161,7 +161,7 @@ S_FALLBACK:
|
|
|
161
161
|
2. broad/medium → `ask_user` ≤3 轮:Scope / Constraints / Definition of Done
|
|
162
162
|
3. 派生 `execution_criteria` + `task_decomposition`(每个 sub-goal 含 `done_when` + `evidence` + `lifecycle` + `completion_confirmed: false`)
|
|
163
163
|
4. **status.json 唯一真源**:写入 `boundary_contract` / `execution_criteria` / `task_decomposition`;不生成 markdown 清单
|
|
164
|
-
5. 在最后一个 evidence-producing stage(
|
|
164
|
+
5. 在最后一个 evidence-producing stage(execute/review/test)之后、`milestone-complete` 之前追加 `decision:post-goal-audit`。ralph-execute 在该节点按需动态生长 `steps[]`
|
|
165
165
|
6. **输出 `/goal` 绑定提示词(不阻塞,用户可在执行过程中随时输入):**
|
|
166
166
|
```
|
|
167
167
|
📋 任务分解完成。可随时复制下面一行设定目标(执行过程中输入即可):
|
|
@@ -223,7 +223,7 @@ S_FALLBACK:
|
|
|
223
223
|
### Success Criteria
|
|
224
224
|
|
|
225
225
|
- [ ] Intent classified with task_type, complexity, clarity_score
|
|
226
|
-
- [ ] Chain catalog 覆盖 grill / brainstorm / blueprint / analyze-macro / analyze / roadmap / plan(三路径) / execute /
|
|
226
|
+
- [ ] Chain catalog 覆盖 grill / brainstorm / blueprint / analyze-macro / analyze / roadmap / plan(三路径) / execute / quality pipeline
|
|
227
227
|
- [ ] `-y` 模式不触发 grill(交互式压力测试不支持自动模式,跳过直接走 brainstorm)
|
|
228
228
|
- [ ] D-007: 数字 phase 步骤的 `milestone_id` 通过 `state.json.milestones[].phase_slugs` 反查
|
|
229
229
|
- [ ] macro analyze 后跟 `decision:post-analyze-scope`(由 ralph 评估 scope_verdict 决定下游链路)
|
|
@@ -293,7 +293,7 @@ Roadmap > Milestone > Phase > Task
|
|
|
293
293
|
|
|
294
294
|
- **Slash 命令**: 56 个(7 个分类)
|
|
295
295
|
- **CLI 命令**: 21 个
|
|
296
|
-
- **Skills**:
|
|
296
|
+
- **Skills**: 11 个(4 个分类)
|
|
297
297
|
- **Agents**: 22 个(5 个分类)
|
|
298
298
|
- **Guide 文档**: 17 个
|
|
299
299
|
- **工作流路径**: 6 个合法路径 (Path A-F) + 3 个辅助流程
|