maestro-flow 0.5.2 → 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.
Files changed (485) hide show
  1. package/.agents/skills/insight-challenge/SKILL.md +228 -0
  2. package/.agents/skills/insight-challenge/specs/challenge-protocol.md +154 -0
  3. package/.agents/skills/insight-challenge/specs/verdict-schema.md +239 -0
  4. package/.agents/skills/maestro/SKILL.md +6 -6
  5. package/.agents/skills/maestro-help/SKILL.md +1 -1
  6. package/.agents/skills/maestro-help/index/catalog.json +3 -2
  7. package/.agents/skills/maestro-ralph/SKILL.md +11 -10
  8. package/.agents/skills/maestro-ralph-beta/SKILL.md +11 -10
  9. package/.agents/skills/odyssey-debug/SKILL.md +475 -0
  10. package/.agents/skills/odyssey-improve/SKILL.md +507 -0
  11. package/.agents/skills/odyssey-planex/SKILL.md +603 -0
  12. package/.agents/skills/odyssey-review-test-fix/SKILL.md +429 -0
  13. package/.agents/skills/odyssey-ui/SKILL.md +464 -0
  14. package/.agy/skills/insight-challenge/SKILL.md +230 -0
  15. package/.agy/skills/insight-challenge/specs/challenge-protocol.md +154 -0
  16. package/.agy/skills/insight-challenge/specs/verdict-schema.md +239 -0
  17. package/.agy/skills/maestro/SKILL.md +6 -6
  18. package/.agy/skills/maestro-help/SKILL.md +1 -1
  19. package/.agy/skills/maestro-help/index/catalog.json +3 -2
  20. package/.agy/skills/maestro-ralph/SKILL.md +11 -10
  21. package/.agy/skills/maestro-ralph-beta/SKILL.md +11 -10
  22. package/.agy/skills/odyssey-debug/SKILL.md +475 -0
  23. package/.agy/skills/odyssey-improve/SKILL.md +507 -0
  24. package/.agy/skills/odyssey-planex/SKILL.md +603 -0
  25. package/.agy/skills/odyssey-review-test-fix/SKILL.md +429 -0
  26. package/.agy/skills/odyssey-ui/SKILL.md +464 -0
  27. package/.claude/commands/maestro-ralph-beta.md +11 -10
  28. package/.claude/commands/maestro-ralph.md +11 -10
  29. package/.claude/commands/maestro.md +6 -6
  30. package/.claude/commands/odyssey-debug.md +473 -0
  31. package/.claude/commands/odyssey-improve.md +505 -0
  32. package/.claude/commands/odyssey-planex.md +601 -0
  33. package/.claude/commands/odyssey-review-test-fix.md +427 -0
  34. package/.claude/commands/odyssey-ui.md +462 -0
  35. package/.claude/skills/insight-challenge/SKILL.md +226 -0
  36. package/.claude/skills/insight-challenge/specs/challenge-protocol.md +154 -0
  37. package/.claude/skills/insight-challenge/specs/verdict-schema.md +239 -0
  38. package/.claude/skills/maestro-help/SKILL.md +1 -1
  39. package/.claude/skills/maestro-help/index/catalog.json +3 -2
  40. package/.codex/skills/codify-to-knowhow/SKILL.md +1 -1
  41. package/.codex/skills/maestro-companion/SKILL.md +1 -1
  42. package/.codex/skills/maestro-help/SKILL.md +1 -1
  43. package/.codex/skills/maestro-impeccable/SKILL.md +1 -1
  44. package/.codex/skills/maestro-next/SKILL.md +1 -1
  45. package/.codex/skills/maestro-ralph-beta/SKILL.md +1 -1
  46. package/.codex/skills/odyssey-debug/SKILL.md +456 -0
  47. package/.codex/skills/odyssey-improve/SKILL.md +466 -0
  48. package/.codex/skills/odyssey-planex/SKILL.md +409 -0
  49. package/.codex/skills/odyssey-review-test-fix/SKILL.md +377 -0
  50. package/.codex/skills/odyssey-ui/SKILL.md +411 -0
  51. package/dashboard/dist/assets/{ArtifactsPage-BLvAqQlQ.js → ArtifactsPage-B6z23DfG.js} +2 -2
  52. package/dashboard/dist/assets/{ChatInput-DU9YGZKX.js → ChatInput-tBtGKV2i.js} +1 -1
  53. package/dashboard/dist/assets/{ChatPage-DYHfheXC.js → ChatPage-CcggDVs4.js} +2 -2
  54. package/dashboard/dist/assets/{CollabPage-CSlmvEa-.js → CollabPage-FaZeqqeS.js} +1 -1
  55. package/dashboard/dist/assets/{ExecutionPanel-RYWf0dYC.js → ExecutionPanel-DNRwYDXp.js} +1 -1
  56. package/dashboard/dist/assets/{KanbanPage-N55Iv0-X.js → KanbanPage-B2xh2s_N.js} +1 -1
  57. package/dashboard/dist/assets/{MaestroCoordinatePage-BxwZ6yy5.js → MaestroCoordinatePage-DCMGHDAL.js} +1 -1
  58. package/dashboard/dist/assets/{MarkdownRenderer-ZGtOY7Ti.js → MarkdownRenderer-C3FvTqVe.js} +1 -1
  59. package/dashboard/dist/assets/McpPage-HKaJ8cQP.js +16 -0
  60. package/dashboard/dist/assets/{MeetingRoomPage-CxHRn1xx.js → MeetingRoomPage-DGN5oUXH.js} +1 -1
  61. package/dashboard/dist/assets/{OutputPanel-DaL8c1i5.js → OutputPanel-BiCteH5k.js} +1 -1
  62. package/dashboard/dist/assets/{ProblemsPanel-BQTd5812.js → ProblemsPanel-Dk4v9tol.js} +1 -1
  63. package/dashboard/dist/assets/{RequirementBoardPage-22y9u1qh.js → RequirementBoardPage-D10A26gi.js} +1 -1
  64. package/dashboard/dist/assets/{RequirementPage-_mO743Xm.js → RequirementPage-Cs-2omLz.js} +1 -1
  65. package/dashboard/dist/assets/{RoomsPage-CExTbOGr.js → RoomsPage-tKQQhw1W.js} +1 -1
  66. package/dashboard/dist/assets/SpecsPage-LK1QCtcg.js +36 -0
  67. package/dashboard/dist/assets/{TeamsPage-BxEXLb5g.js → TeamsPage-C-bEwB8E.js} +1 -1
  68. package/dashboard/dist/assets/{TreeBrowser-CVtPF5C9.js → TreeBrowser-1YP-DfTY.js} +2 -2
  69. package/dashboard/dist/assets/{WorkflowPage-BoN18Lhs.js → WorkflowPage-dGHPsDDr.js} +2 -2
  70. package/dashboard/dist/assets/{arrow-left-C5ROg97G.js → arrow-left-BPFSEpfO.js} +1 -1
  71. package/dashboard/dist/assets/{check-Bs8PM0tQ.js → check-D5hOViiQ.js} +1 -1
  72. package/dashboard/dist/assets/{chevron-right-SmErd_1F.js → chevron-right-D9BsXrIg.js} +1 -1
  73. package/dashboard/dist/assets/{circle-CjpslL_D.js → circle-Cn5fNpmp.js} +1 -1
  74. package/dashboard/dist/assets/{circle-alert-CuzAg2fd.js → circle-alert-CZvK3B1K.js} +1 -1
  75. package/dashboard/dist/assets/{circle-check-BIkDU5D5.js → circle-check-DApOBP0J.js} +1 -1
  76. package/dashboard/dist/assets/{circle-check-big-CYctV8bK.js → circle-check-big-Cd9ztJpl.js} +1 -1
  77. package/dashboard/dist/assets/{code-DoB7rfxt.js → code-C3TuHjMs.js} +1 -1
  78. package/dashboard/dist/assets/{columns-3-Ch5KIyRa.js → columns-3-CO2SvNJb.js} +1 -1
  79. package/dashboard/dist/assets/{download-DadtG2Nr.js → download-BuKGI7KX.js} +1 -1
  80. package/dashboard/dist/assets/{en-2h6fD0j8.js → en-BmpYsIfb.js} +1 -1
  81. package/dashboard/dist/assets/folder-Chwj_P4A.js +11 -0
  82. package/dashboard/dist/assets/folder-open-S72FbKvn.js +6 -0
  83. package/dashboard/dist/assets/{index-BL4h1OKY.js → index-CN0YdC9M.js} +1 -1
  84. package/dashboard/dist/assets/{index-DQIlX2w_.js → index-Cbs79erW.js} +5 -5
  85. package/dashboard/dist/assets/{index-DaFwSmVJ.js → index-CdT1WNND.js} +1 -1
  86. package/dashboard/dist/assets/index-DEvP8cgc.css +1 -0
  87. package/dashboard/dist/assets/{list-CI-XIPZh.js → list-Dg_ojUpi.js} +1 -1
  88. package/dashboard/dist/assets/{loader-DpdMoQvh.js → loader-CMcc73C_.js} +1 -1
  89. package/dashboard/dist/assets/{minus-BVbfXGrC.js → minus-KxmVOIB7.js} +1 -1
  90. package/dashboard/dist/assets/pen-line-D1YTNDPw.js +11 -0
  91. package/dashboard/dist/assets/{pencil-I7GE0y29.js → pencil-BAjxSHuh.js} +1 -1
  92. package/dashboard/dist/assets/{proxy-CcYyZZWI.js → proxy-BewnIei6.js} +1 -1
  93. package/dashboard/dist/assets/{refresh-cw-BG9V_T4R.js → refresh-cw-Chc0RcRY.js} +1 -1
  94. package/dashboard/dist/assets/{rows-2-DP6NjQFk.js → rows-2-DWJuw8OM.js} +1 -1
  95. package/dashboard/dist/assets/{search-b78eLlw2.js → search-CPGb2sEw.js} +1 -1
  96. package/dashboard/dist/assets/{shallow-CJEesgtu.js → shallow-Dy0-7n5s.js} +1 -1
  97. package/dashboard/dist/assets/{table-B_lk-a1d.js → table-VI5scWpO.js} +1 -1
  98. package/dashboard/dist/assets/{team-types-Se7f9LfJ.js → team-types-Cu8zCPN3.js} +1 -1
  99. package/dashboard/dist/assets/{terminal-DXx4tvzq.js → terminal-Bqt5c6Ny.js} +1 -1
  100. package/dashboard/dist/assets/{trash-2-CVh9mnRj.js → trash-2-BcTVifbw.js} +1 -1
  101. package/dashboard/dist/assets/{users-Da9zGME5.js → users-BhFAHz4H.js} +1 -1
  102. package/dashboard/dist/assets/{zap-C0zaC7gJ.js → zap-BWbLhgr6.js} +1 -1
  103. package/dashboard/dist/assets/{zh-CN-r3AvxxOL.js → zh-CN-BIRiTdAD.js} +1 -1
  104. package/dashboard/dist/index.html +2 -2
  105. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js +1 -0
  106. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js.map +1 -1
  107. package/dashboard/dist-server/dashboard/src/server/wiki/search.d.ts +14 -14
  108. package/dashboard/dist-server/dashboard/src/server/wiki/search.js +188 -56
  109. package/dashboard/dist-server/dashboard/src/server/wiki/search.js.map +1 -1
  110. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +1 -0
  111. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
  112. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.d.ts +37 -0
  113. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +560 -22
  114. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  115. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +6 -2
  116. package/dashboard/dist-server/src/types/index.d.ts +9 -0
  117. package/dist/src/cli.js +3 -0
  118. package/dist/src/cli.js.map +1 -1
  119. package/dist/src/commands/delegate.d.ts.map +1 -1
  120. package/dist/src/commands/delegate.js +50 -8
  121. package/dist/src/commands/delegate.js.map +1 -1
  122. package/dist/src/commands/domain.d.ts +9 -0
  123. package/dist/src/commands/domain.d.ts.map +1 -0
  124. package/dist/src/commands/domain.js +445 -0
  125. package/dist/src/commands/domain.js.map +1 -0
  126. package/dist/src/commands/hooks.d.ts +10 -0
  127. package/dist/src/commands/hooks.d.ts.map +1 -1
  128. package/dist/src/commands/hooks.js +132 -22
  129. package/dist/src/commands/hooks.js.map +1 -1
  130. package/dist/src/commands/install.d.ts.map +1 -1
  131. package/dist/src/commands/install.js +82 -204
  132. package/dist/src/commands/install.js.map +1 -1
  133. package/dist/src/commands/kg.d.ts.map +1 -1
  134. package/dist/src/commands/kg.js +183 -90
  135. package/dist/src/commands/kg.js.map +1 -1
  136. package/dist/src/commands/search.d.ts +15 -8
  137. package/dist/src/commands/search.d.ts.map +1 -1
  138. package/dist/src/commands/search.js +205 -59
  139. package/dist/src/commands/search.js.map +1 -1
  140. package/dist/src/commands/spec.d.ts.map +1 -1
  141. package/dist/src/commands/spec.js +9 -1
  142. package/dist/src/commands/spec.js.map +1 -1
  143. package/dist/src/commands/update.d.ts.map +1 -1
  144. package/dist/src/commands/update.js +0 -7
  145. package/dist/src/commands/update.js.map +1 -1
  146. package/dist/src/commands/wiki.d.ts.map +1 -1
  147. package/dist/src/commands/wiki.js +8 -1
  148. package/dist/src/commands/wiki.js.map +1 -1
  149. package/dist/src/commands/workspace.d.ts +12 -0
  150. package/dist/src/commands/workspace.d.ts.map +1 -0
  151. package/dist/src/commands/workspace.js +230 -0
  152. package/dist/src/commands/workspace.js.map +1 -0
  153. package/dist/src/config/cli-tools-config.d.ts +5 -0
  154. package/dist/src/config/cli-tools-config.d.ts.map +1 -1
  155. package/dist/src/config/cli-tools-config.js +31 -0
  156. package/dist/src/config/cli-tools-config.js.map +1 -1
  157. package/dist/src/config/index.d.ts +9 -1
  158. package/dist/src/config/index.d.ts.map +1 -1
  159. package/dist/src/config/index.js +35 -1
  160. package/dist/src/config/index.js.map +1 -1
  161. package/dist/src/core/install-executor.d.ts +31 -0
  162. package/dist/src/core/install-executor.d.ts.map +1 -0
  163. package/dist/src/core/install-executor.js +231 -0
  164. package/dist/src/core/install-executor.js.map +1 -0
  165. package/dist/src/core/install-profile.d.ts +103 -0
  166. package/dist/src/core/install-profile.d.ts.map +1 -0
  167. package/dist/src/core/install-profile.js +225 -0
  168. package/dist/src/core/install-profile.js.map +1 -0
  169. package/dist/src/graph/kg/credibility.d.ts +37 -0
  170. package/dist/src/graph/kg/credibility.d.ts.map +1 -0
  171. package/dist/src/graph/kg/credibility.js +141 -0
  172. package/dist/src/graph/kg/credibility.js.map +1 -0
  173. package/dist/src/graph/kg/db/connection.d.ts +28 -0
  174. package/dist/src/graph/kg/db/connection.d.ts.map +1 -0
  175. package/dist/src/graph/kg/db/connection.js +142 -0
  176. package/dist/src/graph/kg/db/connection.js.map +1 -0
  177. package/dist/src/graph/kg/db/index.d.ts +5 -0
  178. package/dist/src/graph/kg/db/index.d.ts.map +1 -0
  179. package/dist/src/graph/kg/db/index.js +6 -0
  180. package/dist/src/graph/kg/db/index.js.map +1 -0
  181. package/dist/src/graph/kg/db/migrations.d.ts +8 -0
  182. package/dist/src/graph/kg/db/migrations.d.ts.map +1 -0
  183. package/dist/src/graph/kg/db/migrations.js +88 -0
  184. package/dist/src/graph/kg/db/migrations.js.map +1 -0
  185. package/dist/src/graph/kg/db/queries.d.ts +84 -0
  186. package/dist/src/graph/kg/db/queries.d.ts.map +1 -0
  187. package/dist/src/graph/kg/db/queries.js +471 -0
  188. package/dist/src/graph/kg/db/queries.js.map +1 -0
  189. package/dist/src/graph/kg/db/types.d.ts +123 -0
  190. package/dist/src/graph/kg/db/types.d.ts.map +1 -0
  191. package/dist/src/graph/kg/db/types.js +75 -0
  192. package/dist/src/graph/kg/db/types.js.map +1 -0
  193. package/dist/src/graph/kg/engine.d.ts +87 -0
  194. package/dist/src/graph/kg/engine.d.ts.map +1 -0
  195. package/dist/src/graph/kg/engine.js +247 -0
  196. package/dist/src/graph/kg/engine.js.map +1 -0
  197. package/dist/src/graph/kg/extraction/code/code-extractor.d.ts +40 -0
  198. package/dist/src/graph/kg/extraction/code/code-extractor.d.ts.map +1 -0
  199. package/dist/src/graph/kg/extraction/code/code-extractor.js +296 -0
  200. package/dist/src/graph/kg/extraction/code/code-extractor.js.map +1 -0
  201. package/dist/src/graph/kg/extraction/code/dfm-extractor.d.ts +3 -0
  202. package/dist/src/graph/kg/extraction/code/dfm-extractor.d.ts.map +1 -0
  203. package/dist/src/graph/kg/extraction/code/dfm-extractor.js +122 -0
  204. package/dist/src/graph/kg/extraction/code/dfm-extractor.js.map +1 -0
  205. package/dist/src/graph/kg/extraction/code/generated-detection.d.ts +14 -0
  206. package/dist/src/graph/kg/extraction/code/generated-detection.d.ts.map +1 -0
  207. package/dist/src/graph/kg/extraction/code/generated-detection.js +65 -0
  208. package/dist/src/graph/kg/extraction/code/generated-detection.js.map +1 -0
  209. package/dist/src/graph/kg/extraction/code/languages/index.d.ts +9 -0
  210. package/dist/src/graph/kg/extraction/code/languages/index.d.ts.map +1 -0
  211. package/dist/src/graph/kg/extraction/code/languages/index.js +2119 -0
  212. package/dist/src/graph/kg/extraction/code/languages/index.js.map +1 -0
  213. package/dist/src/graph/kg/extraction/code/languages/typescript.d.ts +5 -0
  214. package/dist/src/graph/kg/extraction/code/languages/typescript.d.ts.map +1 -0
  215. package/dist/src/graph/kg/extraction/code/languages/typescript.js +191 -0
  216. package/dist/src/graph/kg/extraction/code/languages/typescript.js.map +1 -0
  217. package/dist/src/graph/kg/extraction/code/liquid-extractor.d.ts +3 -0
  218. package/dist/src/graph/kg/extraction/code/liquid-extractor.d.ts.map +1 -0
  219. package/dist/src/graph/kg/extraction/code/liquid-extractor.js +117 -0
  220. package/dist/src/graph/kg/extraction/code/liquid-extractor.js.map +1 -0
  221. package/dist/src/graph/kg/extraction/code/mybatis-extractor.d.ts +3 -0
  222. package/dist/src/graph/kg/extraction/code/mybatis-extractor.d.ts.map +1 -0
  223. package/dist/src/graph/kg/extraction/code/mybatis-extractor.js +84 -0
  224. package/dist/src/graph/kg/extraction/code/mybatis-extractor.js.map +1 -0
  225. package/dist/src/graph/kg/extraction/code/svelte-extractor.d.ts +3 -0
  226. package/dist/src/graph/kg/extraction/code/svelte-extractor.d.ts.map +1 -0
  227. package/dist/src/graph/kg/extraction/code/svelte-extractor.js +92 -0
  228. package/dist/src/graph/kg/extraction/code/svelte-extractor.js.map +1 -0
  229. package/dist/src/graph/kg/extraction/code/tree-sitter-types.d.ts +61 -0
  230. package/dist/src/graph/kg/extraction/code/tree-sitter-types.d.ts.map +1 -0
  231. package/dist/src/graph/kg/extraction/code/tree-sitter-types.js +53 -0
  232. package/dist/src/graph/kg/extraction/code/tree-sitter-types.js.map +1 -0
  233. package/dist/src/graph/kg/extraction/code/tree-sitter.d.ts +55 -0
  234. package/dist/src/graph/kg/extraction/code/tree-sitter.d.ts.map +1 -0
  235. package/dist/src/graph/kg/extraction/code/tree-sitter.js +227 -0
  236. package/dist/src/graph/kg/extraction/code/tree-sitter.js.map +1 -0
  237. package/dist/src/graph/kg/extraction/code/vue-extractor.d.ts +6 -0
  238. package/dist/src/graph/kg/extraction/code/vue-extractor.d.ts.map +1 -0
  239. package/dist/src/graph/kg/extraction/code/vue-extractor.js +109 -0
  240. package/dist/src/graph/kg/extraction/code/vue-extractor.js.map +1 -0
  241. package/dist/src/graph/kg/extraction/code/wasm-stability.d.ts +44 -0
  242. package/dist/src/graph/kg/extraction/code/wasm-stability.d.ts.map +1 -0
  243. package/dist/src/graph/kg/extraction/code/wasm-stability.js +140 -0
  244. package/dist/src/graph/kg/extraction/code/wasm-stability.js.map +1 -0
  245. package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.d.ts +3 -0
  246. package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.d.ts.map +1 -0
  247. package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.js +149 -0
  248. package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.js.map +1 -0
  249. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.d.ts +4 -0
  250. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.d.ts.map +1 -0
  251. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js +114 -0
  252. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js.map +1 -0
  253. package/dist/src/graph/kg/extraction/knowledge/issue-extractor.d.ts +3 -0
  254. package/dist/src/graph/kg/extraction/knowledge/issue-extractor.d.ts.map +1 -0
  255. package/dist/src/graph/kg/extraction/knowledge/issue-extractor.js +84 -0
  256. package/dist/src/graph/kg/extraction/knowledge/issue-extractor.js.map +1 -0
  257. package/dist/src/graph/kg/extraction/knowledge/spec-extractor.d.ts +3 -0
  258. package/dist/src/graph/kg/extraction/knowledge/spec-extractor.d.ts.map +1 -0
  259. package/dist/src/graph/kg/extraction/knowledge/spec-extractor.js +173 -0
  260. package/dist/src/graph/kg/extraction/knowledge/spec-extractor.js.map +1 -0
  261. package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.d.ts +3 -0
  262. package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.d.ts.map +1 -0
  263. package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.js +165 -0
  264. package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.js.map +1 -0
  265. package/dist/src/graph/kg/extraction/orchestrator.d.ts +6 -0
  266. package/dist/src/graph/kg/extraction/orchestrator.d.ts.map +1 -0
  267. package/dist/src/graph/kg/extraction/orchestrator.js +208 -0
  268. package/dist/src/graph/kg/extraction/orchestrator.js.map +1 -0
  269. package/dist/src/graph/kg/index.d.ts +29 -0
  270. package/dist/src/graph/kg/index.d.ts.map +1 -0
  271. package/dist/src/graph/kg/index.js +35 -0
  272. package/dist/src/graph/kg/index.js.map +1 -0
  273. package/dist/src/graph/kg/query/context-builder.d.ts +38 -0
  274. package/dist/src/graph/kg/query/context-builder.d.ts.map +1 -0
  275. package/dist/src/graph/kg/query/context-builder.js +184 -0
  276. package/dist/src/graph/kg/query/context-builder.js.map +1 -0
  277. package/dist/src/graph/kg/query/index.d.ts +8 -0
  278. package/dist/src/graph/kg/query/index.d.ts.map +1 -0
  279. package/dist/src/graph/kg/query/index.js +6 -0
  280. package/dist/src/graph/kg/query/index.js.map +1 -0
  281. package/dist/src/graph/kg/query/scoring.d.ts +19 -0
  282. package/dist/src/graph/kg/query/scoring.d.ts.map +1 -0
  283. package/dist/src/graph/kg/query/scoring.js +158 -0
  284. package/dist/src/graph/kg/query/scoring.js.map +1 -0
  285. package/dist/src/graph/kg/query/search.d.ts +59 -0
  286. package/dist/src/graph/kg/query/search.d.ts.map +1 -0
  287. package/dist/src/graph/kg/query/search.js +158 -0
  288. package/dist/src/graph/kg/query/search.js.map +1 -0
  289. package/dist/src/graph/kg/query/traversal.d.ts +75 -0
  290. package/dist/src/graph/kg/query/traversal.d.ts.map +1 -0
  291. package/dist/src/graph/kg/query/traversal.js +420 -0
  292. package/dist/src/graph/kg/query/traversal.js.map +1 -0
  293. package/dist/src/graph/kg/resolution/callback-synthesizer.d.ts +41 -0
  294. package/dist/src/graph/kg/resolution/callback-synthesizer.d.ts.map +1 -0
  295. package/dist/src/graph/kg/resolution/callback-synthesizer.js +450 -0
  296. package/dist/src/graph/kg/resolution/callback-synthesizer.js.map +1 -0
  297. package/dist/src/graph/kg/resolution/frameworks/index.d.ts +18 -0
  298. package/dist/src/graph/kg/resolution/frameworks/index.d.ts.map +1 -0
  299. package/dist/src/graph/kg/resolution/frameworks/index.js +632 -0
  300. package/dist/src/graph/kg/resolution/frameworks/index.js.map +1 -0
  301. package/dist/src/graph/kg/resolution/import-resolver.d.ts +73 -0
  302. package/dist/src/graph/kg/resolution/import-resolver.d.ts.map +1 -0
  303. package/dist/src/graph/kg/resolution/import-resolver.js +257 -0
  304. package/dist/src/graph/kg/resolution/import-resolver.js.map +1 -0
  305. package/dist/src/graph/kg/resolution/index.d.ts +11 -0
  306. package/dist/src/graph/kg/resolution/index.d.ts.map +1 -0
  307. package/dist/src/graph/kg/resolution/index.js +7 -0
  308. package/dist/src/graph/kg/resolution/index.js.map +1 -0
  309. package/dist/src/graph/kg/resolution/knowledge-resolver.d.ts +22 -0
  310. package/dist/src/graph/kg/resolution/knowledge-resolver.d.ts.map +1 -0
  311. package/dist/src/graph/kg/resolution/knowledge-resolver.js +288 -0
  312. package/dist/src/graph/kg/resolution/knowledge-resolver.js.map +1 -0
  313. package/dist/src/graph/kg/resolution/name-matcher.d.ts +25 -0
  314. package/dist/src/graph/kg/resolution/name-matcher.d.ts.map +1 -0
  315. package/dist/src/graph/kg/resolution/name-matcher.js +162 -0
  316. package/dist/src/graph/kg/resolution/name-matcher.js.map +1 -0
  317. package/dist/src/graph/kg/schema.sql +210 -0
  318. package/dist/src/graph/kg/surface/cli.d.ts +3 -0
  319. package/dist/src/graph/kg/surface/cli.d.ts.map +1 -0
  320. package/dist/src/graph/kg/surface/cli.js +500 -0
  321. package/dist/src/graph/kg/surface/cli.js.map +1 -0
  322. package/dist/src/graph/kg/surface/hook-injector.d.ts +33 -0
  323. package/dist/src/graph/kg/surface/hook-injector.d.ts.map +1 -0
  324. package/dist/src/graph/kg/surface/hook-injector.js +172 -0
  325. package/dist/src/graph/kg/surface/hook-injector.js.map +1 -0
  326. package/dist/src/graph/kg/surface/index.d.ts +6 -0
  327. package/dist/src/graph/kg/surface/index.d.ts.map +1 -0
  328. package/dist/src/graph/kg/surface/index.js +5 -0
  329. package/dist/src/graph/kg/surface/index.js.map +1 -0
  330. package/dist/src/graph/kg/surface/mcp-tools.d.ts +20 -0
  331. package/dist/src/graph/kg/surface/mcp-tools.d.ts.map +1 -0
  332. package/dist/src/graph/kg/surface/mcp-tools.js +253 -0
  333. package/dist/src/graph/kg/surface/mcp-tools.js.map +1 -0
  334. package/dist/src/graph/kg/sync/incremental-sync.d.ts +24 -0
  335. package/dist/src/graph/kg/sync/incremental-sync.d.ts.map +1 -0
  336. package/dist/src/graph/kg/sync/incremental-sync.js +71 -0
  337. package/dist/src/graph/kg/sync/incremental-sync.js.map +1 -0
  338. package/dist/src/graph/kg/sync/index.d.ts +5 -0
  339. package/dist/src/graph/kg/sync/index.d.ts.map +1 -0
  340. package/dist/src/graph/kg/sync/index.js +4 -0
  341. package/dist/src/graph/kg/sync/index.js.map +1 -0
  342. package/dist/src/graph/kg/sync/watch-policy.d.ts +33 -0
  343. package/dist/src/graph/kg/sync/watch-policy.d.ts.map +1 -0
  344. package/dist/src/graph/kg/sync/watch-policy.js +90 -0
  345. package/dist/src/graph/kg/sync/watch-policy.js.map +1 -0
  346. package/dist/src/hooks/constants.d.ts +0 -2
  347. package/dist/src/hooks/constants.d.ts.map +1 -1
  348. package/dist/src/hooks/constants.js +0 -2
  349. package/dist/src/hooks/constants.js.map +1 -1
  350. package/dist/src/hooks/keyword-spec-injector.d.ts +6 -0
  351. package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -1
  352. package/dist/src/hooks/keyword-spec-injector.js +157 -81
  353. package/dist/src/hooks/keyword-spec-injector.js.map +1 -1
  354. package/dist/src/hooks/kg-auto-init.d.ts +13 -0
  355. package/dist/src/hooks/kg-auto-init.d.ts.map +1 -0
  356. package/dist/src/hooks/kg-auto-init.js +38 -0
  357. package/dist/src/hooks/kg-auto-init.js.map +1 -0
  358. package/dist/src/hooks/kg-context-injector.d.ts +1 -3
  359. package/dist/src/hooks/kg-context-injector.d.ts.map +1 -1
  360. package/dist/src/hooks/kg-context-injector.js +12 -17
  361. package/dist/src/hooks/kg-context-injector.js.map +1 -1
  362. package/dist/src/hooks/kg-sync-hook.d.ts +1 -9
  363. package/dist/src/hooks/kg-sync-hook.d.ts.map +1 -1
  364. package/dist/src/hooks/kg-sync-hook.js +21 -90
  365. package/dist/src/hooks/kg-sync-hook.js.map +1 -1
  366. package/dist/src/hooks/spec-analytics.d.ts +1 -0
  367. package/dist/src/hooks/spec-analytics.d.ts.map +1 -1
  368. package/dist/src/hooks/spec-analytics.js +1 -3
  369. package/dist/src/hooks/spec-analytics.js.map +1 -1
  370. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  371. package/dist/src/hooks/spec-injector.js +65 -1
  372. package/dist/src/hooks/spec-injector.js.map +1 -1
  373. package/dist/src/i18n/locales/en.d.ts.map +1 -1
  374. package/dist/src/i18n/locales/en.js +52 -9
  375. package/dist/src/i18n/locales/en.js.map +1 -1
  376. package/dist/src/i18n/locales/zh.d.ts.map +1 -1
  377. package/dist/src/i18n/locales/zh.js +52 -9
  378. package/dist/src/i18n/locales/zh.js.map +1 -1
  379. package/dist/src/i18n/types.d.ts +40 -4
  380. package/dist/src/i18n/types.d.ts.map +1 -1
  381. package/dist/src/tools/__tests__/domain-search-debug.d.ts +2 -0
  382. package/dist/src/tools/__tests__/domain-search-debug.d.ts.map +1 -0
  383. package/dist/src/tools/__tests__/domain-search-debug.js +32 -0
  384. package/dist/src/tools/__tests__/domain-search-debug.js.map +1 -0
  385. package/dist/src/tools/domain-loader.d.ts +63 -0
  386. package/dist/src/tools/domain-loader.d.ts.map +1 -0
  387. package/dist/src/tools/domain-loader.js +295 -0
  388. package/dist/src/tools/domain-loader.js.map +1 -0
  389. package/dist/src/tools/domain-matcher.d.ts +24 -0
  390. package/dist/src/tools/domain-matcher.d.ts.map +1 -0
  391. package/dist/src/tools/domain-matcher.js +117 -0
  392. package/dist/src/tools/domain-matcher.js.map +1 -0
  393. package/dist/src/tools/domain-scanner.d.ts +32 -0
  394. package/dist/src/tools/domain-scanner.d.ts.map +1 -0
  395. package/dist/src/tools/domain-scanner.js +263 -0
  396. package/dist/src/tools/domain-scanner.js.map +1 -0
  397. package/dist/src/tools/domain-schema.d.ts +18 -0
  398. package/dist/src/tools/domain-schema.d.ts.map +1 -0
  399. package/dist/src/tools/domain-schema.js +104 -0
  400. package/dist/src/tools/domain-schema.js.map +1 -0
  401. package/dist/src/tools/spec-entry-parser.d.ts +1 -0
  402. package/dist/src/tools/spec-entry-parser.d.ts.map +1 -1
  403. package/dist/src/tools/spec-entry-parser.js +1 -0
  404. package/dist/src/tools/spec-entry-parser.js.map +1 -1
  405. package/dist/src/tools/spec-loader.d.ts +5 -0
  406. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  407. package/dist/src/tools/spec-loader.js +10 -2
  408. package/dist/src/tools/spec-loader.js.map +1 -1
  409. package/dist/src/tui/install-ui/ConfigPanel.d.ts.map +1 -1
  410. package/dist/src/tui/install-ui/ConfigPanel.js +9 -1
  411. package/dist/src/tui/install-ui/ConfigPanel.js.map +1 -1
  412. package/dist/src/tui/install-ui/GroupedHub.d.ts +55 -0
  413. package/dist/src/tui/install-ui/GroupedHub.d.ts.map +1 -0
  414. package/dist/src/tui/install-ui/GroupedHub.js +210 -0
  415. package/dist/src/tui/install-ui/GroupedHub.js.map +1 -0
  416. package/dist/src/tui/install-ui/HooksConfig.d.ts +10 -5
  417. package/dist/src/tui/install-ui/HooksConfig.d.ts.map +1 -1
  418. package/dist/src/tui/install-ui/HooksConfig.js +83 -18
  419. package/dist/src/tui/install-ui/HooksConfig.js.map +1 -1
  420. package/dist/src/tui/install-ui/InstallConfirm.d.ts +1 -30
  421. package/dist/src/tui/install-ui/InstallConfirm.d.ts.map +1 -1
  422. package/dist/src/tui/install-ui/InstallConfirm.js +72 -12
  423. package/dist/src/tui/install-ui/InstallConfirm.js.map +1 -1
  424. package/dist/src/tui/install-ui/InstallExecution.d.ts +4 -21
  425. package/dist/src/tui/install-ui/InstallExecution.d.ts.map +1 -1
  426. package/dist/src/tui/install-ui/InstallExecution.js +89 -260
  427. package/dist/src/tui/install-ui/InstallExecution.js.map +1 -1
  428. package/dist/src/tui/install-ui/InstallFlow.d.ts +3 -7
  429. package/dist/src/tui/install-ui/InstallFlow.d.ts.map +1 -1
  430. package/dist/src/tui/install-ui/InstallFlow.js +45 -267
  431. package/dist/src/tui/install-ui/InstallFlow.js.map +1 -1
  432. package/dist/src/tui/install-ui/InstallHub.d.ts.map +1 -1
  433. package/dist/src/tui/install-ui/InstallHub.js +2 -4
  434. package/dist/src/tui/install-ui/InstallHub.js.map +1 -1
  435. package/dist/src/tui/install-ui/InstallResult.d.ts.map +1 -1
  436. package/dist/src/tui/install-ui/InstallResult.js +1 -5
  437. package/dist/src/tui/install-ui/InstallResult.js.map +1 -1
  438. package/dist/src/tui/install-ui/index.d.ts +5 -1
  439. package/dist/src/tui/install-ui/index.d.ts.map +1 -1
  440. package/dist/src/tui/install-ui/index.js +1 -0
  441. package/dist/src/tui/install-ui/index.js.map +1 -1
  442. package/dist/src/tui/install-ui/types.d.ts +39 -0
  443. package/dist/src/tui/install-ui/types.d.ts.map +1 -1
  444. package/dist/src/tui/install-ui/types.js +1 -1
  445. package/dist/src/tui/install-ui/types.js.map +1 -1
  446. package/dist/src/tui/install-ui/useInstallFlowState.d.ts +69 -0
  447. package/dist/src/tui/install-ui/useInstallFlowState.d.ts.map +1 -0
  448. package/dist/src/tui/install-ui/useInstallFlowState.js +288 -0
  449. package/dist/src/tui/install-ui/useInstallFlowState.js.map +1 -0
  450. package/dist/src/tui/shared/components.d.ts +4 -0
  451. package/dist/src/tui/shared/components.d.ts.map +1 -1
  452. package/dist/src/tui/shared/components.js +4 -0
  453. package/dist/src/tui/shared/components.js.map +1 -1
  454. package/dist/src/tui/shared/index.d.ts +1 -1
  455. package/dist/src/tui/shared/index.d.ts.map +1 -1
  456. package/dist/src/tui/shared/index.js +1 -1
  457. package/dist/src/tui/shared/index.js.map +1 -1
  458. package/dist/src/tui/shared/tokens.d.ts +5 -5
  459. package/dist/src/tui/shared/tokens.js +5 -5
  460. package/dist/src/tui/shared/tokens.js.map +1 -1
  461. package/dist/src/types/index.d.ts +9 -0
  462. package/dist/src/types/index.d.ts.map +1 -1
  463. package/dist/src/utils/cli-format.d.ts +2 -1
  464. package/dist/src/utils/cli-format.d.ts.map +1 -1
  465. package/dist/src/utils/cli-format.js +14 -3
  466. package/dist/src/utils/cli-format.js.map +1 -1
  467. package/dist/src/utils/cooldown-guard.d.ts +17 -0
  468. package/dist/src/utils/cooldown-guard.d.ts.map +1 -0
  469. package/dist/src/utils/cooldown-guard.js +59 -0
  470. package/dist/src/utils/cooldown-guard.js.map +1 -0
  471. package/dist/src/utils/jsonl-log.d.ts.map +1 -1
  472. package/dist/src/utils/jsonl-log.js +2 -1
  473. package/dist/src/utils/jsonl-log.js.map +1 -1
  474. package/dist/src/utils/update-notices.js +17 -4
  475. package/dist/src/utils/update-notices.js.map +1 -1
  476. package/package.json +4 -5
  477. package/workflows/claude-instructions.md +23 -0
  478. package/workflows/codex-instructions.md +22 -0
  479. package/workflows/finish-work.md +25 -0
  480. package/workflows/updates/update-v3-setup.md +7 -15
  481. package/dashboard/dist/assets/McpPage-Im6s4pGR.js +0 -21
  482. package/dashboard/dist/assets/SpecsPage-gr4KX51-.js +0 -36
  483. package/dashboard/dist/assets/folder-B8ODoZfb.js +0 -16
  484. package/dashboard/dist/assets/index-6-yE5Yl9.css +0 -1
  485. package/dashboard/dist/assets/pen-line-CR8GaHt-.js +0 -6
@@ -0,0 +1,230 @@
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:
5
+ - grep_search
6
+ - run_command
7
+ - view_file
8
+ - write_to_file
9
+ ---
10
+
11
+ # Insight Challenge
12
+
13
+ Adversarial review of code quality findings. Challenges insights with counter-evidence, verifies claims against source code, and produces structured verdicts.
14
+
15
+ **适用场景**: 当需要对代码审查、质量分析、或架构评估中的发现进行对抗性验证时使用。
16
+
17
+ ## Architecture
18
+
19
+ ```
20
+ ┌─────────────────────────────────────────────────────────────┐
21
+ │ Insight Challenge (SKILL.md) — Adversarial Review │
22
+ │ → Parse finding → Read source → Challenge → Verdict │
23
+ └─────────────────────────────────────────────────────────────┘
24
+
25
+ ┌──────────┬───────────┼───────────┬──────────┐
26
+ ↓ ↓ ↓ ↓ │
27
+ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │
28
+ │Phase 1 │ │Phase 2 │ │Phase 3 │ │Phase 4 │ │
29
+ │ Parse │ │ Source │ │Challenge│ │Verdict │ │
30
+ │Finding │ │ Review │ │Analysis │ │Report │ │
31
+ └───┬────┘ └───┬────┘ └───┬────┘ └───┬────┘ │
32
+ │ │ │ │ │
33
+ finding source counter- structured │
34
+ parsed code evidence verdict │
35
+ ```
36
+
37
+ ## Key Design Principles
38
+
39
+ 1. **Adversarial by Default**: Assume findings may be incorrect; seek counter-evidence first
40
+ 2. **Source-Code Anchored**: All claims must be verified against actual code, not assumptions
41
+ 3. **Structured Output**: Verdicts follow a fixed schema for downstream consumption
42
+ 4. **Fair Challenge**: If evidence supports the finding, confirm it; don't manufacture doubt
43
+ 5. **Transparent Reasoning**: Show the chain of evidence and reasoning
44
+
45
+ ## Finding Input Format
46
+
47
+ Findings can be provided as JSON or structured text:
48
+
49
+ ```json
50
+ {
51
+ "id": "HIGH-01",
52
+ "title": "知识边类型 resolves/documents 未在 types.ts 声明",
53
+ "severity": "high",
54
+ "file": "src/graph/kg/db/types.ts",
55
+ "line": 58,
56
+ "description": "issue-extractor 使用 'resolves' 边类型...",
57
+ "evidence": "types.ts KnowledgeEdgeKind: defines, constrains...",
58
+ "suggestion": "补齐缺失的边类型声明",
59
+ "design_ref": "Gap 2 — 12 CodeEdgeKind + 9 KnowledgeEdgeKind"
60
+ }
61
+ ```
62
+
63
+ Or structured text:
64
+ ```
65
+ HIGH-01: 知识边类型 resolves/documents 未在 types.ts 声明
66
+ Severity: high
67
+ File: src/graph/kg/db/types.ts:58
68
+ Claim: issue-extractor 使用 'resolves' 边类型但未在类型系统中声明
69
+ Evidence: types.ts KnowledgeEdgeKind 列表中缺少 'resolves'
70
+ ```
71
+
72
+ ## Execution Flow
73
+
74
+ ### Phase 1: Parse Finding
75
+
76
+ 1. Extract finding ID, title, severity, file reference, and claims
77
+ 2. Identify all verifiable assertions:
78
+ - File existence claims
79
+ - Code structure claims (types, functions, variables)
80
+ - Behavioral claims (usage patterns, dependencies)
81
+ - Design conformance claims
82
+ 3. Create verification checklist
83
+
84
+ ### Phase 2: Source Review
85
+
86
+ 1. Read the referenced file(s) at the specified lines
87
+ 2. Search for related code using Grep/Glob
88
+ 3. Document actual state of the code:
89
+ - What types/functions actually exist
90
+ - What values are actually declared
91
+ - What the actual implementation looks like
92
+ 4. Compare claims against reality
93
+
94
+ ### Phase 3: Challenge Analysis
95
+
96
+ For each claim in the finding:
97
+
98
+ 1. **Seek confirming evidence**: Does the source code support this claim?
99
+ 2. **Seek disconfirming evidence**: Does the source code contradict this claim?
100
+ 3. **Check for misinterpretation**: Could the claim be based on outdated code or misunderstanding?
101
+ 4. **Verify design references**: Are cited design docs accurate?
102
+
103
+ Challenge strategies:
104
+ - **Direct contradiction**: Source code explicitly shows the opposite
105
+ - **Context omission**: Finding omits relevant context that changes the interpretation
106
+ - **Stale reference**: Finding references code that has been updated
107
+ - **Miscounted**: Numeric claims (missing N types) are incorrect
108
+ - **Scope error**: Finding applies wrong scope (e.g., confuses edge types with language types)
109
+
110
+ ### Phase 4: Verdict Report
111
+
112
+ Produce structured output:
113
+
114
+ ```json
115
+ {
116
+ "finding_id": "HIGH-01",
117
+ "challenge_result": "overturned|weakened|confirmed",
118
+ "confidence": 95,
119
+ "reasoning": "Detailed explanation of why the finding was challenged or confirmed",
120
+ "counter_evidence": [
121
+ "Source file line 64: 'resolves' IS declared in KnowledgeEdgeKind",
122
+ "Design doc specifies 20 edge types, not 28"
123
+ ],
124
+ "supporting_evidence": [],
125
+ "adjusted_severity": "none|high|medium|low",
126
+ "recommendation": "Dismiss this finding; the claimed gap does not exist"
127
+ }
128
+ ```
129
+
130
+ ## Verdict Definitions
131
+
132
+ | Verdict | Meaning | When to Use |
133
+ |---------|---------|-------------|
134
+ | **overturned** | Finding is factually incorrect | Source code directly contradicts the claim |
135
+ | **weakened** | Finding is partially correct but overstated | Some evidence supports it, but severity/scope is wrong |
136
+ | **confirmed** | Finding is accurate | Source code supports all claims |
137
+
138
+ ## Challenge Patterns
139
+
140
+ ### Pattern 1: Type Declaration Check
141
+ ```
142
+ Claim: "Type X is not declared"
143
+ Challenge: Read the type file → check if X exists in type union/enum
144
+ Counter: "Line N shows X IS declared in the type definition"
145
+ ```
146
+
147
+ ### Pattern 2: Design Reference Verification
148
+ ```
149
+ Claim: "Design requires N items, implementation has M"
150
+ Challenge: Read design doc → verify the claimed requirement
151
+ Counter: "Design doc actually specifies K items, not N"
152
+ ```
153
+
154
+ ### Pattern 3: Usage Verification
155
+ ```
156
+ Claim: "Code uses type X but X is not defined"
157
+ Challenge: Check both usage site AND definition site
158
+ Counter: "X is defined at line N in file Y"
159
+ ```
160
+
161
+ ### Pattern 4: Scope Confusion
162
+ ```
163
+ Claim: "Missing 7 edge types (total should be 28)"
164
+ Challenge: Check what the "28" actually refers to
165
+ Counter: "The 28 refers to language types, not edge types; edge types are 21"
166
+ ```
167
+
168
+ ## Output Format
169
+
170
+ The challenge produces a markdown report:
171
+
172
+ ```markdown
173
+ ## Challenge Report: <finding_id>
174
+
175
+ **Verdict**: <overturned|weakened|confirmed>
176
+ **Confidence**: <0-100>%
177
+ **Adjusted Severity**: <none|high|medium|low>
178
+
179
+ ### Original Finding
180
+ <finding summary>
181
+
182
+ ### Counter-Evidence
183
+ - <evidence point 1>
184
+ - <evidence point 2>
185
+
186
+ ### Supporting Evidence
187
+ - <evidence point 1> (if any)
188
+
189
+ ### Reasoning
190
+ <detailed explanation>
191
+
192
+ ### Recommendation
193
+ <action recommendation>
194
+ ```
195
+
196
+ ## Error Handling
197
+
198
+ | Scenario | Resolution |
199
+ |----------|------------|
200
+ | Referenced file not found | Report file missing; verdict = weakened (potentially stale) |
201
+ | Line number out of range | Search for the claimed content; adjust line reference |
202
+ | Design doc not found | Skip design verification; note in report |
203
+ | Ambiguous evidence | Present both sides; lower confidence score |
204
+ | Multiple findings batch | Process each independently; produce per-finding verdicts |
205
+
206
+ ## Usage Examples
207
+
208
+ ### Single Finding Challenge
209
+ ```
210
+ Skill(skill="insight-challenge", args='{"id":"HIGH-01","title":"...","file":"src/types.ts","line":58,...}')
211
+ ```
212
+
213
+ ### Batch Challenge
214
+ ```
215
+ view_file(AbsolutePath="<agy-skills-dir>/insight-challenge/SKILL.md") + execute inline (args: "findings.json")
216
+ ```
217
+
218
+ ### Inline Challenge
219
+ ```
220
+ Challenge this finding:
221
+ Claim: Function X is not exported
222
+ File: src/utils.ts:45
223
+ Evidence: grep shows no export keyword
224
+ ```
225
+
226
+ ## Related Skills
227
+
228
+ - **team-adversarial-swarm**: Multi-agent adversarial analysis
229
+ - **team-quality-assurance**: QA pipeline with issue discovery
230
+ - **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
@@ -51,7 +51,7 @@ $ARGUMENTS — user intent text, or special keywords.
51
51
  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`
52
52
  5. **status.json 唯一真源** — 不生成 `goal-checklist.md` 或外部清单
53
53
  6. **执行步骤统一通过 `maestro ralph next` 加载** — `command_scope`/`command_path` 由 `maestro ralph skills --platform agy --json --quiet` 预校验(project 覆盖 global,限定 `.claude/`);decision 节点不走 CLI,走 `Skill("maestro-ralph")` handoff
54
- 7. **Topology awareness** — chain catalog 含 grill / brainstorm / blueprint / analyze-macro / analyze / roadmap / plan(三路径) / execute / verify / ...;scope_verdict 由 ralph 在 `post-analyze-scope` 决定
54
+ 7. **Topology awareness** — chain catalog 含 grill / brainstorm / blueprint / analyze-macro / analyze / roadmap / plan(三路径) / execute / ...;scope_verdict 由 ralph 在 `post-analyze-scope` 决定
55
55
  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
56
56
  9. **D-007 milestone 反查** — 数字 phase 的 `milestone_id` 由 `state.json.milestones[].phase_slugs` 反查
57
57
  10. **每个 step 必须 `completion_confirmed: true`** — 由 `maestro ralph complete N --status DONE|DONE_WITH_CONCERNS` 写入
@@ -142,9 +142,9 @@ S_FALLBACK:
142
142
  - 正式规格/spec-generate/7-phase → `blueprint`
143
143
  - 项目初始化 → `init`
144
144
  - 宽/中等意图 + 无数字 phase → `analyze-macro`(产 scope_verdict,由 ralph 在 `post-analyze-scope` 决定是否插入 roadmap+analyze 或直跳 plan --from analyze)
145
- - 数字 phase 上下文 → `analyze {phase}` → `plan {phase}` → `execute {phase}` → `verify {phase}` → quality pipeline
146
- - 已有 analyze artifact 想直达执行 → `plan --from analyze:{ANL_ID}` → execute → verify
147
- - 已有 blueprint artifact → `plan --from blueprint:{BLP_ID}` → execute → verify
145
+ - 数字 phase 上下文 → `analyze {phase}` → `plan {phase}` → `execute {phase}` → quality pipeline
146
+ - 已有 analyze artifact 想直达执行 → `plan --from analyze:{ANL_ID}` → execute → quality pipeline
147
+ - 已有 blueprint artifact → `plan --from blueprint:{BLP_ID}` → execute → quality pipeline
148
148
  4. 执行 step:`run_command("maestro ralph skills --platform agy --json --quiet")` 预校验 skill 名,命中写绝对路径到 `command_path`,未命中标 `missing`;同时写 `step.stage` / `step.scope` / `step.source_artifact_ref`。decision 节点不解析 command_path
149
149
 
150
150
  ### A_CLARIFY
@@ -160,7 +160,7 @@ S_FALLBACK:
160
160
  2. broad/medium → `ask_question` ≤3 轮:Scope / Constraints / Definition of Done
161
161
  3. 派生 `execution_criteria` + `task_decomposition`(每个 sub-goal 含 `done_when` + `evidence` + `lifecycle` + `completion_confirmed: false`)
162
162
  4. **status.json 唯一真源**:写入 `boundary_contract` / `execution_criteria` / `task_decomposition`;不生成 markdown 清单
163
- 5. 在最后一个 evidence-producing stage(verify/review/test)之后、`milestone-complete` 之前追加 `decision:post-goal-audit`。ralph-execute 在该节点按需动态生长 `steps[]`
163
+ 5. 在最后一个 evidence-producing stage(execute/review/test)之后、`milestone-complete` 之前追加 `decision:post-goal-audit`。ralph-execute 在该节点按需动态生长 `steps[]`
164
164
  6. **输出 `/goal` 绑定提示词(不阻塞,用户可在执行过程中随时输入):**
165
165
  ```
166
166
  📋 任务分解完成。可随时复制下面一行设定目标(执行过程中输入即可):
@@ -222,7 +222,7 @@ S_FALLBACK:
222
222
  ### Success Criteria
223
223
 
224
224
  - [ ] Intent classified with task_type, complexity, clarity_score
225
- - [ ] Chain catalog 覆盖 grill / brainstorm / blueprint / analyze-macro / analyze / roadmap / plan(三路径) / execute / verify / quality pipeline
225
+ - [ ] Chain catalog 覆盖 grill / brainstorm / blueprint / analyze-macro / analyze / roadmap / plan(三路径) / execute / quality pipeline
226
226
  - [ ] `-y` 模式不触发 grill(交互式压力测试不支持自动模式,跳过直接走 brainstorm)
227
227
  - [ ] D-007: 数字 phase 步骤的 `milestone_id` 通过 `state.json.milestones[].phase_slugs` 反查
228
228
  - [ ] macro analyze 后跟 `decision:post-analyze-scope`(由 ralph 评估 scope_verdict 决定下游链路)
@@ -294,7 +294,7 @@ Roadmap > Milestone > Phase > Task
294
294
 
295
295
  - **Slash 命令**: 56 个(7 个分类)
296
296
  - **CLI 命令**: 21 个
297
- - **Skills**: 10 个(3 个分类)
297
+ - **Skills**: 11 个(4 个分类)
298
298
  - **Agents**: 22 个(5 个分类)
299
299
  - **Guide 文档**: 17 个
300
300
  - **工作流路径**: 6 个合法路径 (Path A-F) + 3 个辅助流程