maestro-flow 0.5.2 → 0.5.31

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 (701) 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/learn-follow/SKILL.md +114 -114
  5. package/.agents/skills/learn-investigate/SKILL.md +138 -139
  6. package/.agents/skills/learn-second-opinion/SKILL.md +105 -109
  7. package/.agents/skills/maestro/SKILL.md +8 -16
  8. package/.agents/skills/maestro-amend/SKILL.md +152 -152
  9. package/.agents/skills/maestro-analyze/SKILL.md +201 -252
  10. package/.agents/skills/maestro-blueprint/SKILL.md +175 -190
  11. package/.agents/skills/maestro-brainstorm/SKILL.md +196 -200
  12. package/.agents/skills/maestro-collab/SKILL.md +159 -159
  13. package/.agents/skills/maestro-companion/SKILL.md +517 -517
  14. package/.agents/skills/maestro-composer/SKILL.md +173 -164
  15. package/.agents/skills/maestro-execute/SKILL.md +169 -170
  16. package/.agents/skills/maestro-fork/SKILL.md +97 -96
  17. package/.agents/skills/maestro-grill/SKILL.md +161 -162
  18. package/.agents/skills/maestro-guard/SKILL.md +93 -92
  19. package/.agents/skills/maestro-help/SKILL.md +1 -1
  20. package/.agents/skills/maestro-help/index/catalog.json +3 -2
  21. package/.agents/skills/maestro-impeccable/SKILL.md +296 -253
  22. package/.agents/skills/maestro-init/SKILL.md +117 -118
  23. package/.agents/skills/maestro-merge/SKILL.md +73 -66
  24. package/.agents/skills/maestro-milestone-audit/SKILL.md +4 -10
  25. package/.agents/skills/maestro-milestone-complete/SKILL.md +6 -7
  26. package/.agents/skills/maestro-milestone-release/SKILL.md +122 -131
  27. package/.agents/skills/maestro-next/SKILL.md +241 -245
  28. package/.agents/skills/maestro-overlay/SKILL.md +176 -166
  29. package/.agents/skills/maestro-plan/SKILL.md +211 -197
  30. package/.agents/skills/maestro-player/SKILL.md +167 -167
  31. package/.agents/skills/maestro-quick/SKILL.md +69 -63
  32. package/.agents/skills/maestro-ralph/SKILL.md +13 -46
  33. package/.agents/skills/maestro-ralph-beta/SKILL.md +861 -871
  34. package/.agents/skills/maestro-ralph-execute/SKILL.md +234 -234
  35. package/.agents/skills/maestro-roadmap/SKILL.md +159 -172
  36. package/.agents/skills/maestro-swarm-workflow/SKILL.md +229 -250
  37. package/.agents/skills/maestro-tools-execute/SKILL.md +108 -103
  38. package/.agents/skills/maestro-tools-register/SKILL.md +148 -143
  39. package/.agents/skills/maestro-ui-codify/SKILL.md +103 -86
  40. package/.agents/skills/maestro-universal-workflow/SKILL.md +534 -547
  41. package/.agents/skills/maestro-update/SKILL.md +109 -106
  42. package/.agents/skills/manage-codebase-rebuild/SKILL.md +73 -71
  43. package/.agents/skills/manage-harvest/SKILL.md +83 -81
  44. package/.agents/skills/manage-issue/SKILL.md +59 -60
  45. package/.agents/skills/manage-issue-discover/SKILL.md +70 -68
  46. package/.agents/skills/manage-kg-extractors/SKILL.md +130 -0
  47. package/.agents/skills/manage-knowhow/SKILL.md +70 -66
  48. package/.agents/skills/manage-knowhow-capture/SKILL.md +79 -69
  49. package/.agents/skills/manage-knowledge-audit/SKILL.md +91 -74
  50. package/.agents/skills/manage-status/SKILL.md +52 -42
  51. package/.agents/skills/manage-wiki/SKILL.md +69 -58
  52. package/.agents/skills/odyssey-debug/SKILL.md +461 -0
  53. package/.agents/skills/odyssey-improve/SKILL.md +493 -0
  54. package/.agents/skills/odyssey-planex/SKILL.md +592 -0
  55. package/.agents/skills/odyssey-review-test-fix/SKILL.md +416 -0
  56. package/.agents/skills/odyssey-ui/SKILL.md +447 -0
  57. package/.agents/skills/quality-auto-test/SKILL.md +140 -123
  58. package/.agents/skills/quality-debug/SKILL.md +145 -106
  59. package/.agents/skills/quality-refactor/SKILL.md +91 -53
  60. package/.agents/skills/quality-retrospective/SKILL.md +109 -63
  61. package/.agents/skills/quality-review/SKILL.md +141 -114
  62. package/.agents/skills/quality-sync/SKILL.md +74 -38
  63. package/.agents/skills/quality-test/SKILL.md +133 -103
  64. package/.agents/skills/security-audit/SKILL.md +217 -166
  65. package/.agents/skills/spec-add/SKILL.md +66 -59
  66. package/.agents/skills/spec-load/SKILL.md +68 -68
  67. package/.agents/skills/spec-remove/SKILL.md +42 -42
  68. package/.agents/skills/spec-setup/SKILL.md +38 -41
  69. package/.agy/skills/insight-challenge/SKILL.md +230 -0
  70. package/.agy/skills/insight-challenge/specs/challenge-protocol.md +154 -0
  71. package/.agy/skills/insight-challenge/specs/verdict-schema.md +239 -0
  72. package/.agy/skills/learn-follow/SKILL.md +114 -114
  73. package/.agy/skills/learn-investigate/SKILL.md +138 -139
  74. package/.agy/skills/learn-second-opinion/SKILL.md +105 -109
  75. package/.agy/skills/maestro/SKILL.md +8 -16
  76. package/.agy/skills/maestro-amend/SKILL.md +152 -152
  77. package/.agy/skills/maestro-analyze/SKILL.md +201 -252
  78. package/.agy/skills/maestro-blueprint/SKILL.md +175 -190
  79. package/.agy/skills/maestro-brainstorm/SKILL.md +196 -200
  80. package/.agy/skills/maestro-collab/SKILL.md +159 -159
  81. package/.agy/skills/maestro-companion/SKILL.md +517 -517
  82. package/.agy/skills/maestro-composer/SKILL.md +173 -164
  83. package/.agy/skills/maestro-execute/SKILL.md +169 -170
  84. package/.agy/skills/maestro-fork/SKILL.md +97 -96
  85. package/.agy/skills/maestro-grill/SKILL.md +161 -162
  86. package/.agy/skills/maestro-guard/SKILL.md +93 -92
  87. package/.agy/skills/maestro-help/SKILL.md +1 -1
  88. package/.agy/skills/maestro-help/index/catalog.json +3 -2
  89. package/.agy/skills/maestro-impeccable/SKILL.md +296 -253
  90. package/.agy/skills/maestro-init/SKILL.md +117 -118
  91. package/.agy/skills/maestro-merge/SKILL.md +73 -66
  92. package/.agy/skills/maestro-milestone-audit/SKILL.md +4 -10
  93. package/.agy/skills/maestro-milestone-complete/SKILL.md +6 -7
  94. package/.agy/skills/maestro-milestone-release/SKILL.md +122 -131
  95. package/.agy/skills/maestro-next/SKILL.md +241 -245
  96. package/.agy/skills/maestro-overlay/SKILL.md +176 -166
  97. package/.agy/skills/maestro-plan/SKILL.md +211 -197
  98. package/.agy/skills/maestro-player/SKILL.md +167 -167
  99. package/.agy/skills/maestro-quick/SKILL.md +69 -63
  100. package/.agy/skills/maestro-ralph/SKILL.md +13 -46
  101. package/.agy/skills/maestro-ralph-beta/SKILL.md +861 -871
  102. package/.agy/skills/maestro-ralph-execute/SKILL.md +234 -234
  103. package/.agy/skills/maestro-roadmap/SKILL.md +159 -172
  104. package/.agy/skills/maestro-swarm-workflow/SKILL.md +229 -250
  105. package/.agy/skills/maestro-tools-execute/SKILL.md +108 -103
  106. package/.agy/skills/maestro-tools-register/SKILL.md +148 -143
  107. package/.agy/skills/maestro-ui-codify/SKILL.md +103 -86
  108. package/.agy/skills/maestro-universal-workflow/SKILL.md +534 -547
  109. package/.agy/skills/maestro-update/SKILL.md +109 -106
  110. package/.agy/skills/manage-codebase-rebuild/SKILL.md +73 -71
  111. package/.agy/skills/manage-harvest/SKILL.md +83 -81
  112. package/.agy/skills/manage-issue/SKILL.md +59 -60
  113. package/.agy/skills/manage-issue-discover/SKILL.md +70 -68
  114. package/.agy/skills/manage-kg-extractors/SKILL.md +130 -0
  115. package/.agy/skills/manage-knowhow/SKILL.md +70 -66
  116. package/.agy/skills/manage-knowhow-capture/SKILL.md +79 -69
  117. package/.agy/skills/manage-knowledge-audit/SKILL.md +91 -74
  118. package/.agy/skills/manage-status/SKILL.md +52 -42
  119. package/.agy/skills/manage-wiki/SKILL.md +69 -58
  120. package/.agy/skills/odyssey-debug/SKILL.md +461 -0
  121. package/.agy/skills/odyssey-improve/SKILL.md +493 -0
  122. package/.agy/skills/odyssey-planex/SKILL.md +592 -0
  123. package/.agy/skills/odyssey-review-test-fix/SKILL.md +416 -0
  124. package/.agy/skills/odyssey-ui/SKILL.md +447 -0
  125. package/.agy/skills/quality-auto-test/SKILL.md +140 -123
  126. package/.agy/skills/quality-debug/SKILL.md +145 -106
  127. package/.agy/skills/quality-refactor/SKILL.md +91 -53
  128. package/.agy/skills/quality-retrospective/SKILL.md +109 -63
  129. package/.agy/skills/quality-review/SKILL.md +141 -114
  130. package/.agy/skills/quality-sync/SKILL.md +74 -38
  131. package/.agy/skills/quality-test/SKILL.md +133 -103
  132. package/.agy/skills/security-audit/SKILL.md +217 -166
  133. package/.agy/skills/spec-add/SKILL.md +66 -59
  134. package/.agy/skills/spec-load/SKILL.md +68 -68
  135. package/.agy/skills/spec-remove/SKILL.md +42 -42
  136. package/.agy/skills/spec-setup/SKILL.md +38 -41
  137. package/.claude/commands/learn-follow.md +127 -127
  138. package/.claude/commands/learn-investigate.md +151 -152
  139. package/.claude/commands/learn-second-opinion.md +118 -122
  140. package/.claude/commands/maestro-amend.md +164 -164
  141. package/.claude/commands/maestro-analyze.md +215 -266
  142. package/.claude/commands/maestro-blueprint.md +189 -204
  143. package/.claude/commands/maestro-brainstorm.md +209 -213
  144. package/.claude/commands/maestro-collab.md +172 -172
  145. package/.claude/commands/maestro-companion.md +531 -531
  146. package/.claude/commands/maestro-composer.md +188 -179
  147. package/.claude/commands/maestro-execute.md +183 -184
  148. package/.claude/commands/maestro-fork.md +111 -110
  149. package/.claude/commands/maestro-grill.md +175 -176
  150. package/.claude/commands/maestro-guard.md +103 -102
  151. package/.claude/commands/maestro-impeccable.md +311 -268
  152. package/.claude/commands/maestro-init.md +130 -131
  153. package/.claude/commands/maestro-merge.md +87 -80
  154. package/.claude/commands/maestro-milestone-audit.md +4 -10
  155. package/.claude/commands/maestro-milestone-complete.md +6 -7
  156. package/.claude/commands/maestro-milestone-release.md +136 -145
  157. package/.claude/commands/maestro-next.md +253 -257
  158. package/.claude/commands/maestro-overlay.md +188 -178
  159. package/.claude/commands/maestro-plan.md +225 -211
  160. package/.claude/commands/maestro-player.md +182 -182
  161. package/.claude/commands/maestro-quick.md +83 -77
  162. package/.claude/commands/maestro-ralph-beta.md +875 -885
  163. package/.claude/commands/maestro-ralph-execute.md +247 -247
  164. package/.claude/commands/maestro-ralph.md +13 -46
  165. package/.claude/commands/maestro-roadmap.md +173 -186
  166. package/.claude/commands/maestro-swarm-workflow.md +243 -264
  167. package/.claude/commands/maestro-tools-execute.md +122 -117
  168. package/.claude/commands/maestro-tools-register.md +162 -157
  169. package/.claude/commands/maestro-ui-codify.md +117 -100
  170. package/.claude/commands/maestro-universal-workflow.md +548 -561
  171. package/.claude/commands/maestro-update.md +122 -119
  172. package/.claude/commands/maestro.md +8 -16
  173. package/.claude/commands/manage-codebase-rebuild.md +87 -85
  174. package/.claude/commands/manage-harvest.md +97 -95
  175. package/.claude/commands/manage-issue-discover.md +83 -81
  176. package/.claude/commands/manage-issue.md +72 -73
  177. package/.claude/commands/manage-kg-extractors.md +128 -0
  178. package/.claude/commands/manage-knowhow-capture.md +92 -82
  179. package/.claude/commands/manage-knowhow.md +83 -79
  180. package/.claude/commands/manage-knowledge-audit.md +105 -88
  181. package/.claude/commands/manage-status.md +62 -52
  182. package/.claude/commands/manage-wiki.md +82 -71
  183. package/.claude/commands/odyssey-debug.md +459 -0
  184. package/.claude/commands/odyssey-improve.md +491 -0
  185. package/.claude/commands/odyssey-planex.md +590 -0
  186. package/.claude/commands/odyssey-review-test-fix.md +414 -0
  187. package/.claude/commands/odyssey-ui.md +445 -0
  188. package/.claude/commands/quality-auto-test.md +153 -136
  189. package/.claude/commands/quality-debug.md +159 -120
  190. package/.claude/commands/quality-refactor.md +105 -67
  191. package/.claude/commands/quality-retrospective.md +123 -77
  192. package/.claude/commands/quality-review.md +155 -128
  193. package/.claude/commands/quality-sync.md +88 -52
  194. package/.claude/commands/quality-test.md +147 -117
  195. package/.claude/commands/security-audit.md +230 -179
  196. package/.claude/commands/spec-add.md +77 -70
  197. package/.claude/commands/spec-load.md +78 -78
  198. package/.claude/commands/spec-remove.md +55 -55
  199. package/.claude/commands/spec-setup.md +49 -52
  200. package/.claude/skills/insight-challenge/SKILL.md +226 -0
  201. package/.claude/skills/insight-challenge/specs/challenge-protocol.md +154 -0
  202. package/.claude/skills/insight-challenge/specs/verdict-schema.md +239 -0
  203. package/.claude/skills/maestro-help/SKILL.md +1 -1
  204. package/.claude/skills/maestro-help/index/catalog.json +3 -2
  205. package/.codex/skills/codify-to-knowhow/SKILL.md +1 -1
  206. package/.codex/skills/maestro-companion/SKILL.md +1 -1
  207. package/.codex/skills/maestro-help/SKILL.md +1 -1
  208. package/.codex/skills/maestro-impeccable/SKILL.md +1 -1
  209. package/.codex/skills/maestro-next/SKILL.md +1 -1
  210. package/.codex/skills/maestro-ralph-beta/SKILL.md +1 -1
  211. package/.codex/skills/odyssey-debug/SKILL.md +456 -0
  212. package/.codex/skills/odyssey-improve/SKILL.md +466 -0
  213. package/.codex/skills/odyssey-planex/SKILL.md +409 -0
  214. package/.codex/skills/odyssey-review-test-fix/SKILL.md +377 -0
  215. package/.codex/skills/odyssey-ui/SKILL.md +411 -0
  216. package/dashboard/dist/assets/{ArtifactsPage-BLvAqQlQ.js → ArtifactsPage-B6z23DfG.js} +2 -2
  217. package/dashboard/dist/assets/{ChatInput-DU9YGZKX.js → ChatInput-tBtGKV2i.js} +1 -1
  218. package/dashboard/dist/assets/{ChatPage-DYHfheXC.js → ChatPage-CcggDVs4.js} +2 -2
  219. package/dashboard/dist/assets/{CollabPage-CSlmvEa-.js → CollabPage-FaZeqqeS.js} +1 -1
  220. package/dashboard/dist/assets/{ExecutionPanel-RYWf0dYC.js → ExecutionPanel-DNRwYDXp.js} +1 -1
  221. package/dashboard/dist/assets/{KanbanPage-N55Iv0-X.js → KanbanPage-B2xh2s_N.js} +1 -1
  222. package/dashboard/dist/assets/{MaestroCoordinatePage-BxwZ6yy5.js → MaestroCoordinatePage-DCMGHDAL.js} +1 -1
  223. package/dashboard/dist/assets/{MarkdownRenderer-ZGtOY7Ti.js → MarkdownRenderer-C3FvTqVe.js} +1 -1
  224. package/dashboard/dist/assets/McpPage-HKaJ8cQP.js +16 -0
  225. package/dashboard/dist/assets/{MeetingRoomPage-CxHRn1xx.js → MeetingRoomPage-DGN5oUXH.js} +1 -1
  226. package/dashboard/dist/assets/{OutputPanel-DaL8c1i5.js → OutputPanel-BiCteH5k.js} +1 -1
  227. package/dashboard/dist/assets/{ProblemsPanel-BQTd5812.js → ProblemsPanel-Dk4v9tol.js} +1 -1
  228. package/dashboard/dist/assets/{RequirementBoardPage-22y9u1qh.js → RequirementBoardPage-D10A26gi.js} +1 -1
  229. package/dashboard/dist/assets/{RequirementPage-_mO743Xm.js → RequirementPage-Cs-2omLz.js} +1 -1
  230. package/dashboard/dist/assets/{RoomsPage-CExTbOGr.js → RoomsPage-tKQQhw1W.js} +1 -1
  231. package/dashboard/dist/assets/SpecsPage-LK1QCtcg.js +36 -0
  232. package/dashboard/dist/assets/{TeamsPage-BxEXLb5g.js → TeamsPage-C-bEwB8E.js} +1 -1
  233. package/dashboard/dist/assets/{TreeBrowser-CVtPF5C9.js → TreeBrowser-1YP-DfTY.js} +2 -2
  234. package/dashboard/dist/assets/{WorkflowPage-BoN18Lhs.js → WorkflowPage-dGHPsDDr.js} +2 -2
  235. package/dashboard/dist/assets/{arrow-left-C5ROg97G.js → arrow-left-BPFSEpfO.js} +1 -1
  236. package/dashboard/dist/assets/{check-Bs8PM0tQ.js → check-D5hOViiQ.js} +1 -1
  237. package/dashboard/dist/assets/{chevron-right-SmErd_1F.js → chevron-right-D9BsXrIg.js} +1 -1
  238. package/dashboard/dist/assets/{circle-CjpslL_D.js → circle-Cn5fNpmp.js} +1 -1
  239. package/dashboard/dist/assets/{circle-alert-CuzAg2fd.js → circle-alert-CZvK3B1K.js} +1 -1
  240. package/dashboard/dist/assets/{circle-check-BIkDU5D5.js → circle-check-DApOBP0J.js} +1 -1
  241. package/dashboard/dist/assets/{circle-check-big-CYctV8bK.js → circle-check-big-Cd9ztJpl.js} +1 -1
  242. package/dashboard/dist/assets/{code-DoB7rfxt.js → code-C3TuHjMs.js} +1 -1
  243. package/dashboard/dist/assets/{columns-3-Ch5KIyRa.js → columns-3-CO2SvNJb.js} +1 -1
  244. package/dashboard/dist/assets/{download-DadtG2Nr.js → download-BuKGI7KX.js} +1 -1
  245. package/dashboard/dist/assets/{en-2h6fD0j8.js → en-BmpYsIfb.js} +1 -1
  246. package/dashboard/dist/assets/folder-Chwj_P4A.js +11 -0
  247. package/dashboard/dist/assets/folder-open-S72FbKvn.js +6 -0
  248. package/dashboard/dist/assets/{index-BL4h1OKY.js → index-CN0YdC9M.js} +1 -1
  249. package/dashboard/dist/assets/{index-DQIlX2w_.js → index-Cbs79erW.js} +5 -5
  250. package/dashboard/dist/assets/{index-DaFwSmVJ.js → index-CdT1WNND.js} +1 -1
  251. package/dashboard/dist/assets/index-DEvP8cgc.css +1 -0
  252. package/dashboard/dist/assets/{list-CI-XIPZh.js → list-Dg_ojUpi.js} +1 -1
  253. package/dashboard/dist/assets/{loader-DpdMoQvh.js → loader-CMcc73C_.js} +1 -1
  254. package/dashboard/dist/assets/{minus-BVbfXGrC.js → minus-KxmVOIB7.js} +1 -1
  255. package/dashboard/dist/assets/pen-line-D1YTNDPw.js +11 -0
  256. package/dashboard/dist/assets/{pencil-I7GE0y29.js → pencil-BAjxSHuh.js} +1 -1
  257. package/dashboard/dist/assets/{proxy-CcYyZZWI.js → proxy-BewnIei6.js} +1 -1
  258. package/dashboard/dist/assets/{refresh-cw-BG9V_T4R.js → refresh-cw-Chc0RcRY.js} +1 -1
  259. package/dashboard/dist/assets/{rows-2-DP6NjQFk.js → rows-2-DWJuw8OM.js} +1 -1
  260. package/dashboard/dist/assets/{search-b78eLlw2.js → search-CPGb2sEw.js} +1 -1
  261. package/dashboard/dist/assets/{shallow-CJEesgtu.js → shallow-Dy0-7n5s.js} +1 -1
  262. package/dashboard/dist/assets/{table-B_lk-a1d.js → table-VI5scWpO.js} +1 -1
  263. package/dashboard/dist/assets/{team-types-Se7f9LfJ.js → team-types-Cu8zCPN3.js} +1 -1
  264. package/dashboard/dist/assets/{terminal-DXx4tvzq.js → terminal-Bqt5c6Ny.js} +1 -1
  265. package/dashboard/dist/assets/{trash-2-CVh9mnRj.js → trash-2-BcTVifbw.js} +1 -1
  266. package/dashboard/dist/assets/{users-Da9zGME5.js → users-BhFAHz4H.js} +1 -1
  267. package/dashboard/dist/assets/{zap-C0zaC7gJ.js → zap-BWbLhgr6.js} +1 -1
  268. package/dashboard/dist/assets/{zh-CN-r3AvxxOL.js → zh-CN-BIRiTdAD.js} +1 -1
  269. package/dashboard/dist/index.html +2 -2
  270. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js +1 -0
  271. package/dashboard/dist-server/dashboard/src/server/routes/wiki.js.map +1 -1
  272. package/dashboard/dist-server/dashboard/src/server/wiki/search.d.ts +14 -14
  273. package/dashboard/dist-server/dashboard/src/server/wiki/search.js +188 -56
  274. package/dashboard/dist-server/dashboard/src/server/wiki/search.js.map +1 -1
  275. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +1 -0
  276. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
  277. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.d.ts +37 -0
  278. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +560 -22
  279. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  280. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-types.d.ts +6 -2
  281. package/dashboard/dist-server/src/types/index.d.ts +9 -0
  282. package/dist/src/cli.js +4 -1
  283. package/dist/src/cli.js.map +1 -1
  284. package/dist/src/commands/delegate.d.ts.map +1 -1
  285. package/dist/src/commands/delegate.js +50 -8
  286. package/dist/src/commands/delegate.js.map +1 -1
  287. package/dist/src/commands/domain.d.ts +9 -0
  288. package/dist/src/commands/domain.d.ts.map +1 -0
  289. package/dist/src/commands/domain.js +445 -0
  290. package/dist/src/commands/domain.js.map +1 -0
  291. package/dist/src/commands/hooks.d.ts +10 -0
  292. package/dist/src/commands/hooks.d.ts.map +1 -1
  293. package/dist/src/commands/hooks.js +132 -22
  294. package/dist/src/commands/hooks.js.map +1 -1
  295. package/dist/src/commands/install.d.ts.map +1 -1
  296. package/dist/src/commands/install.js +82 -204
  297. package/dist/src/commands/install.js.map +1 -1
  298. package/dist/src/commands/kg.d.ts.map +1 -1
  299. package/dist/src/commands/kg.js +189 -90
  300. package/dist/src/commands/kg.js.map +1 -1
  301. package/dist/src/commands/search.d.ts +15 -8
  302. package/dist/src/commands/search.d.ts.map +1 -1
  303. package/dist/src/commands/search.js +205 -59
  304. package/dist/src/commands/search.js.map +1 -1
  305. package/dist/src/commands/spec.d.ts.map +1 -1
  306. package/dist/src/commands/spec.js +9 -1
  307. package/dist/src/commands/spec.js.map +1 -1
  308. package/dist/src/commands/update.d.ts.map +1 -1
  309. package/dist/src/commands/update.js +0 -7
  310. package/dist/src/commands/update.js.map +1 -1
  311. package/dist/src/commands/wiki.d.ts.map +1 -1
  312. package/dist/src/commands/wiki.js +8 -1
  313. package/dist/src/commands/wiki.js.map +1 -1
  314. package/dist/src/commands/workspace.d.ts +12 -0
  315. package/dist/src/commands/workspace.d.ts.map +1 -0
  316. package/dist/src/commands/workspace.js +230 -0
  317. package/dist/src/commands/workspace.js.map +1 -0
  318. package/dist/src/config/cli-tools-config.d.ts +5 -0
  319. package/dist/src/config/cli-tools-config.d.ts.map +1 -1
  320. package/dist/src/config/cli-tools-config.js +31 -0
  321. package/dist/src/config/cli-tools-config.js.map +1 -1
  322. package/dist/src/config/index.d.ts +9 -1
  323. package/dist/src/config/index.d.ts.map +1 -1
  324. package/dist/src/config/index.js +35 -1
  325. package/dist/src/config/index.js.map +1 -1
  326. package/dist/src/core/install-executor.d.ts +31 -0
  327. package/dist/src/core/install-executor.d.ts.map +1 -0
  328. package/dist/src/core/install-executor.js +231 -0
  329. package/dist/src/core/install-executor.js.map +1 -0
  330. package/dist/src/core/install-profile.d.ts +103 -0
  331. package/dist/src/core/install-profile.d.ts.map +1 -0
  332. package/dist/src/core/install-profile.js +225 -0
  333. package/dist/src/core/install-profile.js.map +1 -0
  334. package/dist/src/graph/kg/credibility.d.ts +37 -0
  335. package/dist/src/graph/kg/credibility.d.ts.map +1 -0
  336. package/dist/src/graph/kg/credibility.js +141 -0
  337. package/dist/src/graph/kg/credibility.js.map +1 -0
  338. package/dist/src/graph/kg/db/connection.d.ts +28 -0
  339. package/dist/src/graph/kg/db/connection.d.ts.map +1 -0
  340. package/dist/src/graph/kg/db/connection.js +142 -0
  341. package/dist/src/graph/kg/db/connection.js.map +1 -0
  342. package/dist/src/graph/kg/db/index.d.ts +5 -0
  343. package/dist/src/graph/kg/db/index.d.ts.map +1 -0
  344. package/dist/src/graph/kg/db/index.js +6 -0
  345. package/dist/src/graph/kg/db/index.js.map +1 -0
  346. package/dist/src/graph/kg/db/migrations.d.ts +8 -0
  347. package/dist/src/graph/kg/db/migrations.d.ts.map +1 -0
  348. package/dist/src/graph/kg/db/migrations.js +88 -0
  349. package/dist/src/graph/kg/db/migrations.js.map +1 -0
  350. package/dist/src/graph/kg/db/queries.d.ts +84 -0
  351. package/dist/src/graph/kg/db/queries.d.ts.map +1 -0
  352. package/dist/src/graph/kg/db/queries.js +471 -0
  353. package/dist/src/graph/kg/db/queries.js.map +1 -0
  354. package/dist/src/graph/kg/db/types.d.ts +123 -0
  355. package/dist/src/graph/kg/db/types.d.ts.map +1 -0
  356. package/dist/src/graph/kg/db/types.js +75 -0
  357. package/dist/src/graph/kg/db/types.js.map +1 -0
  358. package/dist/src/graph/kg/engine.d.ts +87 -0
  359. package/dist/src/graph/kg/engine.d.ts.map +1 -0
  360. package/dist/src/graph/kg/engine.js +247 -0
  361. package/dist/src/graph/kg/engine.js.map +1 -0
  362. package/dist/src/graph/kg/extraction/code/code-extractor.d.ts +42 -0
  363. package/dist/src/graph/kg/extraction/code/code-extractor.d.ts.map +1 -0
  364. package/dist/src/graph/kg/extraction/code/code-extractor.js +325 -0
  365. package/dist/src/graph/kg/extraction/code/code-extractor.js.map +1 -0
  366. package/dist/src/graph/kg/extraction/code/dfm-extractor.d.ts +3 -0
  367. package/dist/src/graph/kg/extraction/code/dfm-extractor.d.ts.map +1 -0
  368. package/dist/src/graph/kg/extraction/code/dfm-extractor.js +122 -0
  369. package/dist/src/graph/kg/extraction/code/dfm-extractor.js.map +1 -0
  370. package/dist/src/graph/kg/extraction/code/generated-detection.d.ts +14 -0
  371. package/dist/src/graph/kg/extraction/code/generated-detection.d.ts.map +1 -0
  372. package/dist/src/graph/kg/extraction/code/generated-detection.js +65 -0
  373. package/dist/src/graph/kg/extraction/code/generated-detection.js.map +1 -0
  374. package/dist/src/graph/kg/extraction/code/languages/index.d.ts +9 -0
  375. package/dist/src/graph/kg/extraction/code/languages/index.d.ts.map +1 -0
  376. package/dist/src/graph/kg/extraction/code/languages/index.js +2119 -0
  377. package/dist/src/graph/kg/extraction/code/languages/index.js.map +1 -0
  378. package/dist/src/graph/kg/extraction/code/languages/typescript.d.ts +5 -0
  379. package/dist/src/graph/kg/extraction/code/languages/typescript.d.ts.map +1 -0
  380. package/dist/src/graph/kg/extraction/code/languages/typescript.js +191 -0
  381. package/dist/src/graph/kg/extraction/code/languages/typescript.js.map +1 -0
  382. package/dist/src/graph/kg/extraction/code/liquid-extractor.d.ts +3 -0
  383. package/dist/src/graph/kg/extraction/code/liquid-extractor.d.ts.map +1 -0
  384. package/dist/src/graph/kg/extraction/code/liquid-extractor.js +117 -0
  385. package/dist/src/graph/kg/extraction/code/liquid-extractor.js.map +1 -0
  386. package/dist/src/graph/kg/extraction/code/mybatis-extractor.d.ts +3 -0
  387. package/dist/src/graph/kg/extraction/code/mybatis-extractor.d.ts.map +1 -0
  388. package/dist/src/graph/kg/extraction/code/mybatis-extractor.js +84 -0
  389. package/dist/src/graph/kg/extraction/code/mybatis-extractor.js.map +1 -0
  390. package/dist/src/graph/kg/extraction/code/plugin-engine.d.ts +35 -0
  391. package/dist/src/graph/kg/extraction/code/plugin-engine.d.ts.map +1 -0
  392. package/dist/src/graph/kg/extraction/code/plugin-engine.js +573 -0
  393. package/dist/src/graph/kg/extraction/code/plugin-engine.js.map +1 -0
  394. package/dist/src/graph/kg/extraction/code/plugin-types.d.ts +95 -0
  395. package/dist/src/graph/kg/extraction/code/plugin-types.d.ts.map +1 -0
  396. package/dist/src/graph/kg/extraction/code/plugin-types.js +5 -0
  397. package/dist/src/graph/kg/extraction/code/plugin-types.js.map +1 -0
  398. package/dist/src/graph/kg/extraction/code/svelte-extractor.d.ts +3 -0
  399. package/dist/src/graph/kg/extraction/code/svelte-extractor.d.ts.map +1 -0
  400. package/dist/src/graph/kg/extraction/code/svelte-extractor.js +92 -0
  401. package/dist/src/graph/kg/extraction/code/svelte-extractor.js.map +1 -0
  402. package/dist/src/graph/kg/extraction/code/tree-sitter-types.d.ts +61 -0
  403. package/dist/src/graph/kg/extraction/code/tree-sitter-types.d.ts.map +1 -0
  404. package/dist/src/graph/kg/extraction/code/tree-sitter-types.js +53 -0
  405. package/dist/src/graph/kg/extraction/code/tree-sitter-types.js.map +1 -0
  406. package/dist/src/graph/kg/extraction/code/tree-sitter.d.ts +55 -0
  407. package/dist/src/graph/kg/extraction/code/tree-sitter.d.ts.map +1 -0
  408. package/dist/src/graph/kg/extraction/code/tree-sitter.js +227 -0
  409. package/dist/src/graph/kg/extraction/code/tree-sitter.js.map +1 -0
  410. package/dist/src/graph/kg/extraction/code/vue-extractor.d.ts +6 -0
  411. package/dist/src/graph/kg/extraction/code/vue-extractor.d.ts.map +1 -0
  412. package/dist/src/graph/kg/extraction/code/vue-extractor.js +109 -0
  413. package/dist/src/graph/kg/extraction/code/vue-extractor.js.map +1 -0
  414. package/dist/src/graph/kg/extraction/code/wasm-stability.d.ts +44 -0
  415. package/dist/src/graph/kg/extraction/code/wasm-stability.d.ts.map +1 -0
  416. package/dist/src/graph/kg/extraction/code/wasm-stability.js +140 -0
  417. package/dist/src/graph/kg/extraction/code/wasm-stability.js.map +1 -0
  418. package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.d.ts +3 -0
  419. package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.d.ts.map +1 -0
  420. package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.js +149 -0
  421. package/dist/src/graph/kg/extraction/knowledge/codebase-extractor.js.map +1 -0
  422. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.d.ts +4 -0
  423. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.d.ts.map +1 -0
  424. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js +114 -0
  425. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js.map +1 -0
  426. package/dist/src/graph/kg/extraction/knowledge/issue-extractor.d.ts +3 -0
  427. package/dist/src/graph/kg/extraction/knowledge/issue-extractor.d.ts.map +1 -0
  428. package/dist/src/graph/kg/extraction/knowledge/issue-extractor.js +84 -0
  429. package/dist/src/graph/kg/extraction/knowledge/issue-extractor.js.map +1 -0
  430. package/dist/src/graph/kg/extraction/knowledge/spec-extractor.d.ts +3 -0
  431. package/dist/src/graph/kg/extraction/knowledge/spec-extractor.d.ts.map +1 -0
  432. package/dist/src/graph/kg/extraction/knowledge/spec-extractor.js +173 -0
  433. package/dist/src/graph/kg/extraction/knowledge/spec-extractor.js.map +1 -0
  434. package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.d.ts +3 -0
  435. package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.d.ts.map +1 -0
  436. package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.js +165 -0
  437. package/dist/src/graph/kg/extraction/knowledge/wiki-extractor.js.map +1 -0
  438. package/dist/src/graph/kg/extraction/orchestrator.d.ts +6 -0
  439. package/dist/src/graph/kg/extraction/orchestrator.d.ts.map +1 -0
  440. package/dist/src/graph/kg/extraction/orchestrator.js +220 -0
  441. package/dist/src/graph/kg/extraction/orchestrator.js.map +1 -0
  442. package/dist/src/graph/kg/index.d.ts +29 -0
  443. package/dist/src/graph/kg/index.d.ts.map +1 -0
  444. package/dist/src/graph/kg/index.js +35 -0
  445. package/dist/src/graph/kg/index.js.map +1 -0
  446. package/dist/src/graph/kg/query/context-builder.d.ts +38 -0
  447. package/dist/src/graph/kg/query/context-builder.d.ts.map +1 -0
  448. package/dist/src/graph/kg/query/context-builder.js +184 -0
  449. package/dist/src/graph/kg/query/context-builder.js.map +1 -0
  450. package/dist/src/graph/kg/query/index.d.ts +8 -0
  451. package/dist/src/graph/kg/query/index.d.ts.map +1 -0
  452. package/dist/src/graph/kg/query/index.js +6 -0
  453. package/dist/src/graph/kg/query/index.js.map +1 -0
  454. package/dist/src/graph/kg/query/scoring.d.ts +19 -0
  455. package/dist/src/graph/kg/query/scoring.d.ts.map +1 -0
  456. package/dist/src/graph/kg/query/scoring.js +158 -0
  457. package/dist/src/graph/kg/query/scoring.js.map +1 -0
  458. package/dist/src/graph/kg/query/search.d.ts +59 -0
  459. package/dist/src/graph/kg/query/search.d.ts.map +1 -0
  460. package/dist/src/graph/kg/query/search.js +158 -0
  461. package/dist/src/graph/kg/query/search.js.map +1 -0
  462. package/dist/src/graph/kg/query/traversal.d.ts +75 -0
  463. package/dist/src/graph/kg/query/traversal.d.ts.map +1 -0
  464. package/dist/src/graph/kg/query/traversal.js +420 -0
  465. package/dist/src/graph/kg/query/traversal.js.map +1 -0
  466. package/dist/src/graph/kg/resolution/callback-synthesizer.d.ts +41 -0
  467. package/dist/src/graph/kg/resolution/callback-synthesizer.d.ts.map +1 -0
  468. package/dist/src/graph/kg/resolution/callback-synthesizer.js +450 -0
  469. package/dist/src/graph/kg/resolution/callback-synthesizer.js.map +1 -0
  470. package/dist/src/graph/kg/resolution/frameworks/index.d.ts +18 -0
  471. package/dist/src/graph/kg/resolution/frameworks/index.d.ts.map +1 -0
  472. package/dist/src/graph/kg/resolution/frameworks/index.js +632 -0
  473. package/dist/src/graph/kg/resolution/frameworks/index.js.map +1 -0
  474. package/dist/src/graph/kg/resolution/import-resolver.d.ts +73 -0
  475. package/dist/src/graph/kg/resolution/import-resolver.d.ts.map +1 -0
  476. package/dist/src/graph/kg/resolution/import-resolver.js +257 -0
  477. package/dist/src/graph/kg/resolution/import-resolver.js.map +1 -0
  478. package/dist/src/graph/kg/resolution/index.d.ts +11 -0
  479. package/dist/src/graph/kg/resolution/index.d.ts.map +1 -0
  480. package/dist/src/graph/kg/resolution/index.js +7 -0
  481. package/dist/src/graph/kg/resolution/index.js.map +1 -0
  482. package/dist/src/graph/kg/resolution/knowledge-resolver.d.ts +22 -0
  483. package/dist/src/graph/kg/resolution/knowledge-resolver.d.ts.map +1 -0
  484. package/dist/src/graph/kg/resolution/knowledge-resolver.js +288 -0
  485. package/dist/src/graph/kg/resolution/knowledge-resolver.js.map +1 -0
  486. package/dist/src/graph/kg/resolution/name-matcher.d.ts +25 -0
  487. package/dist/src/graph/kg/resolution/name-matcher.d.ts.map +1 -0
  488. package/dist/src/graph/kg/resolution/name-matcher.js +162 -0
  489. package/dist/src/graph/kg/resolution/name-matcher.js.map +1 -0
  490. package/dist/src/graph/kg/schema.sql +215 -0
  491. package/dist/src/graph/kg/surface/cli.d.ts +3 -0
  492. package/dist/src/graph/kg/surface/cli.d.ts.map +1 -0
  493. package/dist/src/graph/kg/surface/cli.js +597 -0
  494. package/dist/src/graph/kg/surface/cli.js.map +1 -0
  495. package/dist/src/graph/kg/surface/hook-injector.d.ts +33 -0
  496. package/dist/src/graph/kg/surface/hook-injector.d.ts.map +1 -0
  497. package/dist/src/graph/kg/surface/hook-injector.js +172 -0
  498. package/dist/src/graph/kg/surface/hook-injector.js.map +1 -0
  499. package/dist/src/graph/kg/surface/index.d.ts +6 -0
  500. package/dist/src/graph/kg/surface/index.d.ts.map +1 -0
  501. package/dist/src/graph/kg/surface/index.js +5 -0
  502. package/dist/src/graph/kg/surface/index.js.map +1 -0
  503. package/dist/src/graph/kg/surface/mcp-tools.d.ts +20 -0
  504. package/dist/src/graph/kg/surface/mcp-tools.d.ts.map +1 -0
  505. package/dist/src/graph/kg/surface/mcp-tools.js +253 -0
  506. package/dist/src/graph/kg/surface/mcp-tools.js.map +1 -0
  507. package/dist/src/graph/kg/sync/incremental-sync.d.ts +24 -0
  508. package/dist/src/graph/kg/sync/incremental-sync.d.ts.map +1 -0
  509. package/dist/src/graph/kg/sync/incremental-sync.js +71 -0
  510. package/dist/src/graph/kg/sync/incremental-sync.js.map +1 -0
  511. package/dist/src/graph/kg/sync/index.d.ts +5 -0
  512. package/dist/src/graph/kg/sync/index.d.ts.map +1 -0
  513. package/dist/src/graph/kg/sync/index.js +4 -0
  514. package/dist/src/graph/kg/sync/index.js.map +1 -0
  515. package/dist/src/graph/kg/sync/watch-policy.d.ts +33 -0
  516. package/dist/src/graph/kg/sync/watch-policy.d.ts.map +1 -0
  517. package/dist/src/graph/kg/sync/watch-policy.js +90 -0
  518. package/dist/src/graph/kg/sync/watch-policy.js.map +1 -0
  519. package/dist/src/hooks/constants.d.ts +0 -2
  520. package/dist/src/hooks/constants.d.ts.map +1 -1
  521. package/dist/src/hooks/constants.js +0 -2
  522. package/dist/src/hooks/constants.js.map +1 -1
  523. package/dist/src/hooks/keyword-spec-injector.d.ts +6 -0
  524. package/dist/src/hooks/keyword-spec-injector.d.ts.map +1 -1
  525. package/dist/src/hooks/keyword-spec-injector.js +157 -81
  526. package/dist/src/hooks/keyword-spec-injector.js.map +1 -1
  527. package/dist/src/hooks/kg-auto-init.d.ts +13 -0
  528. package/dist/src/hooks/kg-auto-init.d.ts.map +1 -0
  529. package/dist/src/hooks/kg-auto-init.js +38 -0
  530. package/dist/src/hooks/kg-auto-init.js.map +1 -0
  531. package/dist/src/hooks/kg-context-injector.d.ts +1 -3
  532. package/dist/src/hooks/kg-context-injector.d.ts.map +1 -1
  533. package/dist/src/hooks/kg-context-injector.js +12 -17
  534. package/dist/src/hooks/kg-context-injector.js.map +1 -1
  535. package/dist/src/hooks/kg-sync-hook.d.ts +1 -9
  536. package/dist/src/hooks/kg-sync-hook.d.ts.map +1 -1
  537. package/dist/src/hooks/kg-sync-hook.js +21 -90
  538. package/dist/src/hooks/kg-sync-hook.js.map +1 -1
  539. package/dist/src/hooks/spec-analytics.d.ts +1 -0
  540. package/dist/src/hooks/spec-analytics.d.ts.map +1 -1
  541. package/dist/src/hooks/spec-analytics.js +1 -3
  542. package/dist/src/hooks/spec-analytics.js.map +1 -1
  543. package/dist/src/hooks/spec-injector.d.ts.map +1 -1
  544. package/dist/src/hooks/spec-injector.js +65 -1
  545. package/dist/src/hooks/spec-injector.js.map +1 -1
  546. package/dist/src/hooks/workspace.d.ts +4 -2
  547. package/dist/src/hooks/workspace.d.ts.map +1 -1
  548. package/dist/src/hooks/workspace.js +6 -2
  549. package/dist/src/hooks/workspace.js.map +1 -1
  550. package/dist/src/i18n/locales/en.d.ts.map +1 -1
  551. package/dist/src/i18n/locales/en.js +52 -9
  552. package/dist/src/i18n/locales/en.js.map +1 -1
  553. package/dist/src/i18n/locales/zh.d.ts.map +1 -1
  554. package/dist/src/i18n/locales/zh.js +52 -9
  555. package/dist/src/i18n/locales/zh.js.map +1 -1
  556. package/dist/src/i18n/types.d.ts +40 -4
  557. package/dist/src/i18n/types.d.ts.map +1 -1
  558. package/dist/src/tools/__tests__/domain-search-debug.d.ts +2 -0
  559. package/dist/src/tools/__tests__/domain-search-debug.d.ts.map +1 -0
  560. package/dist/src/tools/__tests__/domain-search-debug.js +32 -0
  561. package/dist/src/tools/__tests__/domain-search-debug.js.map +1 -0
  562. package/dist/src/tools/domain-loader.d.ts +63 -0
  563. package/dist/src/tools/domain-loader.d.ts.map +1 -0
  564. package/dist/src/tools/domain-loader.js +295 -0
  565. package/dist/src/tools/domain-loader.js.map +1 -0
  566. package/dist/src/tools/domain-matcher.d.ts +24 -0
  567. package/dist/src/tools/domain-matcher.d.ts.map +1 -0
  568. package/dist/src/tools/domain-matcher.js +117 -0
  569. package/dist/src/tools/domain-matcher.js.map +1 -0
  570. package/dist/src/tools/domain-scanner.d.ts +32 -0
  571. package/dist/src/tools/domain-scanner.d.ts.map +1 -0
  572. package/dist/src/tools/domain-scanner.js +263 -0
  573. package/dist/src/tools/domain-scanner.js.map +1 -0
  574. package/dist/src/tools/domain-schema.d.ts +18 -0
  575. package/dist/src/tools/domain-schema.d.ts.map +1 -0
  576. package/dist/src/tools/domain-schema.js +104 -0
  577. package/dist/src/tools/domain-schema.js.map +1 -0
  578. package/dist/src/tools/spec-entry-parser.d.ts +1 -0
  579. package/dist/src/tools/spec-entry-parser.d.ts.map +1 -1
  580. package/dist/src/tools/spec-entry-parser.js +1 -0
  581. package/dist/src/tools/spec-entry-parser.js.map +1 -1
  582. package/dist/src/tools/spec-loader.d.ts +5 -0
  583. package/dist/src/tools/spec-loader.d.ts.map +1 -1
  584. package/dist/src/tools/spec-loader.js +10 -2
  585. package/dist/src/tools/spec-loader.js.map +1 -1
  586. package/dist/src/tui/install-ui/ConfigPanel.d.ts.map +1 -1
  587. package/dist/src/tui/install-ui/ConfigPanel.js +9 -1
  588. package/dist/src/tui/install-ui/ConfigPanel.js.map +1 -1
  589. package/dist/src/tui/install-ui/GroupedHub.d.ts +55 -0
  590. package/dist/src/tui/install-ui/GroupedHub.d.ts.map +1 -0
  591. package/dist/src/tui/install-ui/GroupedHub.js +210 -0
  592. package/dist/src/tui/install-ui/GroupedHub.js.map +1 -0
  593. package/dist/src/tui/install-ui/HooksConfig.d.ts +10 -5
  594. package/dist/src/tui/install-ui/HooksConfig.d.ts.map +1 -1
  595. package/dist/src/tui/install-ui/HooksConfig.js +83 -18
  596. package/dist/src/tui/install-ui/HooksConfig.js.map +1 -1
  597. package/dist/src/tui/install-ui/InstallConfirm.d.ts +1 -30
  598. package/dist/src/tui/install-ui/InstallConfirm.d.ts.map +1 -1
  599. package/dist/src/tui/install-ui/InstallConfirm.js +72 -12
  600. package/dist/src/tui/install-ui/InstallConfirm.js.map +1 -1
  601. package/dist/src/tui/install-ui/InstallExecution.d.ts +4 -21
  602. package/dist/src/tui/install-ui/InstallExecution.d.ts.map +1 -1
  603. package/dist/src/tui/install-ui/InstallExecution.js +89 -260
  604. package/dist/src/tui/install-ui/InstallExecution.js.map +1 -1
  605. package/dist/src/tui/install-ui/InstallFlow.d.ts +3 -7
  606. package/dist/src/tui/install-ui/InstallFlow.d.ts.map +1 -1
  607. package/dist/src/tui/install-ui/InstallFlow.js +45 -267
  608. package/dist/src/tui/install-ui/InstallFlow.js.map +1 -1
  609. package/dist/src/tui/install-ui/InstallHub.d.ts.map +1 -1
  610. package/dist/src/tui/install-ui/InstallHub.js +2 -4
  611. package/dist/src/tui/install-ui/InstallHub.js.map +1 -1
  612. package/dist/src/tui/install-ui/InstallResult.d.ts.map +1 -1
  613. package/dist/src/tui/install-ui/InstallResult.js +1 -5
  614. package/dist/src/tui/install-ui/InstallResult.js.map +1 -1
  615. package/dist/src/tui/install-ui/index.d.ts +5 -1
  616. package/dist/src/tui/install-ui/index.d.ts.map +1 -1
  617. package/dist/src/tui/install-ui/index.js +1 -0
  618. package/dist/src/tui/install-ui/index.js.map +1 -1
  619. package/dist/src/tui/install-ui/types.d.ts +39 -0
  620. package/dist/src/tui/install-ui/types.d.ts.map +1 -1
  621. package/dist/src/tui/install-ui/types.js +1 -1
  622. package/dist/src/tui/install-ui/types.js.map +1 -1
  623. package/dist/src/tui/install-ui/useInstallFlowState.d.ts +69 -0
  624. package/dist/src/tui/install-ui/useInstallFlowState.d.ts.map +1 -0
  625. package/dist/src/tui/install-ui/useInstallFlowState.js +288 -0
  626. package/dist/src/tui/install-ui/useInstallFlowState.js.map +1 -0
  627. package/dist/src/tui/shared/components.d.ts +4 -0
  628. package/dist/src/tui/shared/components.d.ts.map +1 -1
  629. package/dist/src/tui/shared/components.js +4 -0
  630. package/dist/src/tui/shared/components.js.map +1 -1
  631. package/dist/src/tui/shared/index.d.ts +1 -1
  632. package/dist/src/tui/shared/index.d.ts.map +1 -1
  633. package/dist/src/tui/shared/index.js +1 -1
  634. package/dist/src/tui/shared/index.js.map +1 -1
  635. package/dist/src/tui/shared/tokens.d.ts +5 -5
  636. package/dist/src/tui/shared/tokens.js +5 -5
  637. package/dist/src/tui/shared/tokens.js.map +1 -1
  638. package/dist/src/types/index.d.ts +9 -0
  639. package/dist/src/types/index.d.ts.map +1 -1
  640. package/dist/src/utils/cli-format.d.ts +2 -1
  641. package/dist/src/utils/cli-format.d.ts.map +1 -1
  642. package/dist/src/utils/cli-format.js +14 -3
  643. package/dist/src/utils/cli-format.js.map +1 -1
  644. package/dist/src/utils/cooldown-guard.d.ts +17 -0
  645. package/dist/src/utils/cooldown-guard.d.ts.map +1 -0
  646. package/dist/src/utils/cooldown-guard.js +59 -0
  647. package/dist/src/utils/cooldown-guard.js.map +1 -0
  648. package/dist/src/utils/jsonl-log.d.ts.map +1 -1
  649. package/dist/src/utils/jsonl-log.js +2 -1
  650. package/dist/src/utils/jsonl-log.js.map +1 -1
  651. package/dist/src/utils/update-notices.js +17 -4
  652. package/dist/src/utils/update-notices.js.map +1 -1
  653. package/package.json +91 -92
  654. package/workflows/analyze.md +25 -49
  655. package/workflows/auto-test.md +699 -699
  656. package/workflows/blueprint.md +403 -431
  657. package/workflows/brainstorm.md +54 -195
  658. package/workflows/business-test.md +570 -570
  659. package/workflows/claude-instructions.md +23 -28
  660. package/workflows/codex-instructions.md +30 -58
  661. package/workflows/coding-philosophy.md +69 -69
  662. package/workflows/command-authoring.md +823 -823
  663. package/workflows/debug.md +43 -98
  664. package/workflows/delegate-usage.md +39 -241
  665. package/workflows/execute.md +4 -53
  666. package/workflows/finish-work.md +25 -0
  667. package/workflows/grill.md +12 -56
  668. package/workflows/harvest.md +22 -68
  669. package/workflows/init.md +148 -148
  670. package/workflows/instruction-authoring-guide.md +97 -0
  671. package/workflows/issue-execute.md +110 -110
  672. package/workflows/issue-gaps-analyze.codex.md +260 -260
  673. package/workflows/issue-gaps-analyze.md +216 -216
  674. package/workflows/issue-plan.md +110 -110
  675. package/workflows/issue.md +338 -346
  676. package/workflows/knowhow.md +0 -32
  677. package/workflows/learn.md +277 -277
  678. package/workflows/maestro-chain-execute.md +20 -20
  679. package/workflows/refactor.md +22 -44
  680. package/workflows/retrospective.md +16 -65
  681. package/workflows/review.md +446 -486
  682. package/workflows/roadmap.md +35 -132
  683. package/workflows/skill-authoring.md +265 -265
  684. package/workflows/spec-generate.md +470 -470
  685. package/workflows/specs-remove.md +104 -104
  686. package/workflows/sync.md +11 -41
  687. package/workflows/test-gen.md +226 -226
  688. package/workflows/test.md +385 -475
  689. package/workflows/ui-design.md +391 -391
  690. package/workflows/ui-style.md +199 -199
  691. package/workflows/updates/update-v3-setup.md +7 -15
  692. package/workflows/wiki-connect.md +151 -151
  693. package/workflows/wiki-digest.md +178 -178
  694. package/workflows/wiki-manage.md +109 -109
  695. package/dashboard/dist/assets/McpPage-Im6s4pGR.js +0 -21
  696. package/dashboard/dist/assets/SpecsPage-gr4KX51-.js +0 -36
  697. package/dashboard/dist/assets/folder-B8ODoZfb.js +0 -16
  698. package/dashboard/dist/assets/index-6-yE5Yl9.css +0 -1
  699. package/dashboard/dist/assets/pen-line-CR8GaHt-.js +0 -6
  700. package/workflows/cli-tools-usage.md +0 -252
  701. package/workflows/delegate-protocol.codex.md +0 -65
@@ -0,0 +1,414 @@
1
+ ---
2
+ name: odyssey-review-test-fix
3
+ description: Deep review + fix cycle — archaeology, exploration, multi-dimensional review, targeted fix, generalization, discovery, and knowledge persistence
4
+ argument-hint: "<target> [--dimensions <list>] [--fix-threshold critical|high|medium|low|all] [--skip-fix] [--skip-generalize] [--auto] [-y] [-c]"
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - Edit
9
+ - Bash
10
+ - Glob
11
+ - Grep
12
+ - Agent
13
+ - AskUserQuestion
14
+ ---
15
+ <purpose>
16
+ Deep code review with exhaustive fix: archaeology → explore → multi-dimensional review →
17
+ fix ALL findings → confirm → generalize → discover → persist. Zero-residual philosophy.
18
+ </purpose>
19
+
20
+ <boundary>
21
+ **范围内:** 目标代码的多维度深度审查 → 穷尽修复 ALL 发现(按 severity 递降)→ 泛化 pattern 到全项目
22
+ **范围外:** 深度根因调查(根因不明时)→ `/odyssey-debug` | 需求实现 → `/odyssey-planex` | UI 视觉优化 → `/odyssey-ui`
23
+ **探索自由度:** 边界内自由探索 — 可跨维度关联发现、追溯 git 历史、泛化扫描全项目。修复仅限 critical/high findings。
24
+ </boundary>
25
+
26
+ <execution_discipline>
27
+ **三条铁律(所有阶段适用):**
28
+
29
+ 1. **Phase auto-commit** — 每个阶段完成后**自动** `git commit`,无需用户确认
30
+ - 代码变更 + understanding.md → `git add` → `git commit -m "odyssey-review({slug}): {phase} — {摘要}"`
31
+ - session.json / evidence.ndjson 为运行时状态,不纳入 commit
32
+
33
+ 2. **有把握才改** — 仅修改自己有把握的内容;不确定的记录决策等人判断
34
+ - 有把握 → 直接修改代码,commit
35
+ - 需要决策 → 记录 `evidence.ndjson {"phase":"decision","status":"pending"}` 不改代码
36
+ - 禁止猜测性修改
37
+
38
+ 3. **多 CLI 辅助** — 利用 `maestro delegate` 调用多个 CLI 工具交叉验证
39
+ - 关键判断用不同 `--role`(analyze / review / explore)获取多视角
40
+ - 修复前后各做一次 CLI review 确认
41
+ </execution_discipline>
42
+
43
+ <context>
44
+ $ARGUMENTS — target and optional flags.
45
+
46
+ **Target resolution:**
47
+ | Input | Resolution |
48
+ |-------|-----------|
49
+ | File/dir path | Review those files |
50
+ | `HEAD` / `staged` | `git diff HEAD` / `git diff --staged` |
51
+ | Phase number | Resolve via state.json → changed files |
52
+ | PR number | `git diff main...HEAD` |
53
+
54
+ **Flags:**
55
+ | Flag | Effect | Default |
56
+ |------|--------|---------|
57
+ | `--dimensions <list>` | Comma-separated subset | correctness,security,performance,architecture |
58
+ | `--fix-threshold <severity>` | 修复到哪个 severity 为止(all = 全部修复)| `all` |
59
+ | `--skip-fix` | Review-only — skip S_FIX and S_CONFIRM | false |
60
+ | `--skip-generalize` | Skip S_GENERALIZE and S_DISCOVER | false |
61
+ | `--auto` | CLI delegates without confirmation | false |
62
+ | `-y` | Auto-confirm at decision points (see appendix) | false |
63
+ | `-c` | Resume most recent session | — |
64
+
65
+ **Session**: `SESSION_DIR = .workflow/scratch/{YYYYMMDD}-review-odyssey-{slug}/`
66
+
67
+ **Output — 4 files:**
68
+ ```
69
+ SESSION_DIR/
70
+ ├── session.json # state + review_result + confirmation + patterns + phase_goals
71
+ ├── evidence.ndjson # ALL evidence (phase: archaeology|explore|review|fix|discovery|decision)
72
+ ├── explore.json # CLI exploration snapshot
73
+ └── understanding.md # 8-section evolving narrative (§1-§8, one per major phase)
74
+ ```
75
+
76
+ **session.json schema:**
77
+ ```json
78
+ {
79
+ "session_id": "review-odyssey-{YYYYMMDD-HHmmss}",
80
+ "target": "", "dimensions": [],
81
+ "flags": { "skip_fix": false, "skip_generalize": false, "fix_threshold": "all", "auto": false, "auto_confirm": false },
82
+ "current_state": "S_INTAKE",
83
+ "review_result": { "dimensions_reviewed": [], "finding_count": 0, "severity_distribution": { "critical": 0, "high": 0, "medium": 0, "low": 0 }, "remaining_actionable": 0 },
84
+ "patterns": [{ "id": "P1", "source_finding": "F1", "layer": "syntax|semantic|structural", "signature": "", "description": "", "risk": "", "fix_template": "", "confidence": "high|medium|low" }],
85
+ "confirmation": { "test_result": {}, "cli_review": {}, "overall": "confirmed|needs_rework" },
86
+ "generalization_stats": { "patterns_extracted": 0, "total_hits": 0, "true_positives": 0, "false_positives": 0, "uncertain": 0, "cross_layer_confirmed": 0, "regression_risks": 0, "by_layer": {}, "deepening_triggered": false, "self_iteration_rounds": 0 },
87
+ "phase_goals": [], "phase_goals_all_done": false,
88
+ "self_iteration_log": [],
89
+ "cross_phase_loops": 0, "max_loops": 3,
90
+ "created_at": "", "updated_at": ""
91
+ }
92
+ ```
93
+
94
+ **evidence.ndjson unified schema:** `{"ts":"","phase":"<phase>","type":"<type>","dimension":"","title":"","severity":"","file":"","line":0,"description":"","suggestion":"","files_modified":[]}`
95
+
96
+ **phase_goals[]:**
97
+ | ID | Goal | Done When | Phase | skip_when |
98
+ |----|------|-----------|-------|-----------|
99
+ | G1 | Review completed | all dimensions reviewed, findings logged | S_REVIEW | — |
100
+ | G2 | Explore context gathered | explore.json populated | S_EXPLORE | — |
101
+ | G3 | Zero remaining: all findings fixed | `remaining_actionable == 0` within fix_threshold | S_CONFIRM | skip_fix |
102
+ | G4 | Pattern generalized | patterns[] ≥1 entry | S_GENERALIZE | skip_generalize |
103
+ | G5 | Discoveries triaged | all scan hits classified | S_DISCOVER | skip_generalize |
104
+ | G6 | Learnings persisted | spec entries created OR no actionable | S_RECORD | — |
105
+
106
+ Lifecycle: `pending → done | skipped | failed` (all set `completion_confirmed`)
107
+
108
+ ### Pre-load(可选,缺失不阻塞)
109
+
110
+ | 层级 | 命令 | 作用 |
111
+ |------|------|------|
112
+ | Codebase docs | Read `.workflow/codebase/ARCHITECTURE.md` | 模块边界,架构约束 |
113
+ | Wiki search | `maestro search "<target keywords>" --json` | 先前 review、已知问题(取 top 5) |
114
+ | Specs | `maestro spec load --category review` | review 标准、checklist、knowhow 工具 |
115
+ | Role knowledge | `maestro search --category review` → 选相关 → `maestro wiki load <id>` | 累积 review 领域知识 |
116
+ | Prior sessions | `Glob(".workflow/scratch/*-review-odyssey-*")` | 相关 odyssey 会话 |
117
+
118
+ ### Knowledge Persistence(S_RECORD 中写入产出文件)
119
+
120
+ S_RECORD 阶段将可沉淀知识 **写入 understanding.md §8 Learnings**,按以下分类结构化:
121
+
122
+ | 分类 | 写入内容 | 后续建议命令 |
123
+ |------|---------|-------------|
124
+ | 跨维度反复 pattern | 模式描述 + 出现维度 + 建议规范 | `/spec-add review "..."` |
125
+ | 安全发现 | 漏洞类型 + 触发条件 + 修复方案 | `/spec-add debug "..."` |
126
+ | 架构违反 pattern | 违反描述 + 正确边界 + 检查方法 | `/spec-add arch "..."` |
127
+ | 可复用泛化 pattern | pattern 签名 + 风险说明 + fix 模板 | `/spec-add coding "..."` |
128
+
129
+ **两步模式:** 执行中写入产出文件(临时记录)→ 任务完成后用户通过 next_step_routing 沉淀为永久知识。执行过程中不调用外部 Skill。
130
+ </context>
131
+
132
+ <self_iteration>
133
+ **Quality Gate** — auto-evaluate after each analytical phase. Insufficient → re-enter (max 2 rounds).
134
+
135
+ | Dimension | Sufficient | Insufficient |
136
+ |-----------|-----------|-------------|
137
+ | Coverage | All known related files analyzed | Missed targets discoverable via grep/git log |
138
+ | Depth | ≥80% findings have file:line evidence | Most findings lack specifics |
139
+ | Actionability | Each conclusion has concrete next action | "Consider reviewing" without action |
140
+
141
+ **Expansion:** Round 1 = widen scope (more dirs, deeper git log, extra delegate angles). Round 2 = shift perspective (different CLI tool, reverse trace, manual reading).
142
+
143
+ **Log:** `evidence.ndjson ← {"phase":"self-iteration","type":"quality-gate","stage":"S_XXX","round":N,"assessment":{},"expansion":""}`
144
+
145
+ **Applicable stages:** S_ARCHAEOLOGY, S_EXPLORE, S_REVIEW, S_FIX, S_GENERALIZE
146
+ </self_iteration>
147
+
148
+ <state_machine>
149
+
150
+ <states>
151
+ S_INTAKE — Parse target, load context, resume session PERSIST: session.json + understanding.md §1
152
+ S_ARCHAEOLOGY — Git history of target files PERSIST: evidence.ndjson (archaeology) + understanding.md §2
153
+ S_EXPLORE — CLI-assisted structure/call-chain exploration PERSIST: explore.json + evidence.ndjson (explore) + understanding.md §3
154
+ S_REVIEW — Parallel multi-dimension review (4 Agents) PERSIST: evidence.ndjson (review) + understanding.md §4
155
+ S_FIX — Targeted fix for critical/high (skip if --skip-fix) PERSIST: code changes + evidence.ndjson (fix)
156
+ S_CONFIRM — Test + CLI review confirmation (skip if --skip-fix) PERSIST: session.json.confirmation + understanding.md §5
157
+ S_GENERALIZE — Pattern extraction + 4-agent scan (skip if --skip-generalize) PERSIST: session.json.patterns + understanding.md §6
158
+ S_DISCOVER — Classify hits, create issues (skip if --skip-generalize) PERSIST: evidence.ndjson (discovery|decision) + understanding.md §7
159
+ S_RECORD — Knowledge persistence + final report PERSIST: understanding.md §8 + spec entries
160
+ </states>
161
+
162
+ <transitions>
163
+ S_INTAKE:
164
+ → S_INTAKE WHEN -c + session found DO A_RESUME
165
+ → S_ARCHAEOLOGY WHEN target resolved DO A_INTAKE
166
+ → S_INTAKE WHEN no target DO AskUserQuestion
167
+
168
+ S_ARCHAEOLOGY → S_EXPLORE DO A_ARCHAEOLOGY
169
+ S_EXPLORE → S_REVIEW DO A_EXPLORE
170
+
171
+ S_REVIEW:
172
+ → S_FIX WHEN !skip_fix AND any findings within fix_threshold DO A_REVIEW
173
+ → S_GENERALIZE WHEN (skip_fix OR no findings) AND !skip_gen DO A_REVIEW
174
+ → S_RECORD WHEN (skip_fix OR no findings) AND skip_gen DO A_REVIEW
175
+
176
+ S_FIX → S_CONFIRM DO A_FIX
177
+
178
+ S_CONFIRM:
179
+ → S_GENERALIZE WHEN confirmed AND !skip_gen DO A_CONFIRM
180
+ → S_RECORD WHEN confirmed AND skip_gen DO A_CONFIRM
181
+ → S_FIX WHEN needs_rework DO A_CONFIRM
182
+
183
+ S_GENERALIZE:
184
+ → S_DISCOVER WHEN hits found DO A_GENERALIZE
185
+ → S_RECORD WHEN no hits DO A_GENERALIZE
186
+
187
+ S_DISCOVER → S_FIX : discovery finds fixable sibling, !skip_fix, loops < max_loops → cross_phase_loops++
188
+ S_DISCOVER → S_REVIEW : discovery opens new review target, loops < max_loops → cross_phase_loops++
189
+ S_DISCOVER → S_RECORD : triage complete OR loops >= max_loops (剩余项 → issue/decision)
190
+
191
+ S_RECORD → END DO A_RECORD
192
+ </transitions>
193
+
194
+ <actions>
195
+
196
+ ### A_INTAKE
197
+ Parse target + flags → file list. Create `SESSION_DIR`, derive `phase_goals[]` from flags.
198
+ Search prior knowledge: `maestro search`, prior sessions, ARCHITECTURE.md.
199
+ Write `session.json` + `understanding.md` §1. Display Goal Prompt (appendix).
200
+
201
+ 📌 **Auto-commit**: `git add understanding.md && git commit -m "odyssey-review({slug}): INTAKE — 目标解析与上下文加载"`
202
+
203
+ ### A_ARCHAEOLOGY
204
+ `git log --oneline -20 -- {target_files}` + `git blame` on key regions.
205
+ CLI delegate `--role analyze --mode analysis` to review past changes.
206
+ Append evidence.ndjson (phase: "archaeology"). Update `understanding.md` §2.
207
+
208
+ 📌 **Auto-commit**: `git add understanding.md && git commit -m "odyssey-review({slug}): ARCHAEOLOGY — git 考古分析"`
209
+
210
+ ### A_EXPLORE
211
+ CLI delegate `--role explore --mode analysis` — call chains, error gaps, similar patterns.
212
+ Write `explore.json`, append evidence.ndjson (phase: "explore").
213
+ Update `understanding.md` §3. Mark G2 done.
214
+
215
+ 📌 **Auto-commit**: `git add understanding.md && git commit -m "odyssey-review({slug}): EXPLORE — 代码探索完成"`
216
+
217
+ ### A_REVIEW
218
+ Spawn N parallel Agents (one per dimension, default 4):
219
+
220
+ | Agent | Dimension | Focus |
221
+ |-------|-----------|-------|
222
+ | Correctness | correctness | Logic errors, boundary conditions, null/undefined, race conditions |
223
+ | Security | security | Injection, XSS, CSRF, data exposure, auth bypass |
224
+ | Performance | performance | Hot paths, N+1, memory leaks, unnecessary recomputation |
225
+ | Architecture | architecture | Layer violations, circular deps, interface contracts, SoC |
226
+
227
+ Each returns `[{title, severity, file, line, description, suggestion, cwe}]`.
228
+ Merge → evidence.ndjson (phase: "review"). Write `session.json.review_result`.
229
+ Update `understanding.md` §4 (findings by dimension + severity matrix). Mark G1 done.
230
+
231
+ 📌 **Auto-commit**: `git add understanding.md && git commit -m "odyssey-review({slug}): REVIEW — 多维度审查完成"`
232
+
233
+ ### A_FIX
234
+
235
+ **穷尽迭代修复** — 按 severity 递降逐轮修复,直到 `remaining_actionable == 0`。
236
+
237
+ #### Fix Loop (severity tiers)
238
+
239
+ ```
240
+ fix_tiers = [critical, high, medium, low].filter(s => severity_order(s) >= severity_order(fix_threshold))
241
+ for tier in fix_tiers:
242
+ candidates = evidence.filter(phase=="review" AND severity==tier AND status!="fixed")
243
+ if candidates.empty: continue
244
+ for each candidate:
245
+ read context (file:line ±20) → implement fix → append evidence (phase: "fix")
246
+ run local re-review on modified area ("改进即标准"):
247
+ new_findings in same region? → append to current tier, continue loop
248
+ tier complete → auto-commit
249
+ ```
250
+
251
+ **Re-review gate** ("改进即标准"): 每轮修复后,对修改区域执行轻量 re-review(同维度)。若发现新问题,追加到当前轮继续修复。单轮最多 re-review 2 次,防止无限循环。
252
+
253
+ **Normal**: AskUserQuestion 确认每个 tier 的 candidates。**`-y`**: auto-fix all, record `deferred`.
254
+
255
+ **Remaining check**: 所有 tiers 完成后,count unfixed findings within fix_threshold → 写入 `review_result.remaining_actionable`。若 > 0 且未超 max_loops → 回到 tier 1 重试。
256
+
257
+ 📌 **Auto-commit per tier**: `git add -A && git commit -m "odyssey-review({slug}): FIX-{tier} — {N}项修复"`
258
+
259
+ ### A_CONFIRM
260
+ Run tests covering modified files. CLI delegate fix review:
261
+ ```
262
+ maestro delegate "PURPOSE: Verify ALL fixes and confirm zero remaining improvements
263
+ TASK: Verify fix correctness | Check regressions | Count remaining unfixed findings | Confirm zero-residual
264
+ MODE: analysis
265
+ CONTEXT: @{modified_files} | Findings: {all_findings_summary} | Diff: {git_diff}
266
+ EXPECTED: JSON {verdict, findings_addressed, remaining_unfixed, regression_risk, new_findings_in_modified_area}
267
+ CONSTRAINTS: Focus on correctness AND completeness — flag ANY remaining actionable improvement
268
+ " --role review --mode analysis
269
+ ```
270
+ Run_in_background, STOP, wait.
271
+
272
+ **Zero-residual gate:**
273
+ - `remaining_unfixed == 0 AND new_findings == 0` → `confirmed`, mark G3 done
274
+ - `remaining_unfixed > 0 OR new_findings > 0` → `needs_rework` → S_FIX(追加新发现)
275
+ - Regression detected → `needs_rework` → S_FIX
276
+
277
+ Write `session.json.confirmation` + update `review_result.remaining_actionable`.
278
+ Update `understanding.md` §5.
279
+
280
+ 📌 **Auto-commit**: `git add understanding.md && git commit -m "odyssey-review({slug}): CONFIRM — 零遗留验证"`
281
+
282
+ ### A_GENERALIZE
283
+ **Multi-layer pattern extraction** from findings (severity >= medium):
284
+
285
+ | Layer | Method | Example |
286
+ |-------|--------|---------|
287
+ | Syntax | Regex → direct Grep | `eval(`, `innerHTML =` |
288
+ | Semantic | Agent understands anti-pattern → scans | Missing error handling on async |
289
+ | Structural | File/module structure similarity | Same base class missing override |
290
+
291
+ Write `session.json.patterns[]`.
292
+
293
+ **4-agent parallel scan** (single message):
294
+ 1. **Syntax grep** — Grep syntax-layer signatures across project
295
+ 2. **Semantic scan** — Check related modules for same anti-patterns
296
+ 3. **Structural match** — Find structurally similar files, check for same issues
297
+ 4. **Historical grep** — `git log -S "{pattern}"` for introduction/fix history
298
+
299
+ **Cross-layer dedup**: Multi-layer hit → boost confidence. Single-layer → `needs_review`. Historical match on fixed code → `regression_risk`.
300
+
301
+ **Iterative deepening** (conditional): High-density cluster (≥3 hits in same module) → targeted deep scan on that module. Max 1 round.
302
+
303
+ **CLI validation** (optional): Delegate to validate true/false positives.
304
+
305
+ Update `understanding.md` §6 (per-pattern summary, cross-layer matrix, risk heatmap).
306
+ Write `session.json.generalization_stats`. Mark G4 done.
307
+
308
+ 📌 **Auto-commit**: `git add understanding.md && git commit -m "odyssey-review({slug}): GENERALIZE — 泛化扫描完成"`
309
+
310
+ ### A_DISCOVER
311
+ Classify each hit: `bug` / `risk` / `safe`.
312
+ **Normal**: AskUserQuestion for bug routing. **`-y`**: auto create issue, `deferred`.
313
+ Append evidence (phase: discovery + decision). Update `understanding.md` §7. Mark G5 done.
314
+
315
+ 📌 **Auto-commit**: `git add understanding.md && git commit -m "odyssey-review({slug}): DISCOVER — 发现分类完成"`
316
+
317
+ ### A_RECORD
318
+ Finalize `understanding.md` §8: per-dimension summary, top findings with file:line, generalization results, open decisions.
319
+ Write learnings to understanding.md §8: 按 Knowledge Persistence 表分类记录(临时),completion summary 列出建议的 `/spec-add` 命令。
320
+ Pending decisions: **Normal** → AskUserQuestion. **`-y`** → skip, display deferred count.
321
+ Goal audit: check all `phase_goals[*].completion_confirmed`. Mark G6 done.
322
+
323
+ Completion summary:
324
+ ```
325
+ --- REVIEW-TEST-FIX ODYSSEY COMPLETE ---
326
+ Target: {target}
327
+ Dimensions: {dimensions_reviewed}
328
+ Findings: {C}C {H}H {M}M {L}L
329
+ Fix: {fixed} applied, confirmed={confirmed|skipped}
330
+ Patterns: {extracted} ({by_layer} distribution)
331
+ Scan hits: {total} ({cross_layer} cross-layer confirmed)
332
+ Issues: {N} created
333
+ Decisions: {N} resolved, {M} pending, {K} deferred
334
+ Learnings: {N} spec entries
335
+ Self-iter: {N} rounds across {M} stages
336
+ Goals: {done}/{total} ({skipped} skipped)
337
+ ---
338
+ ```
339
+
340
+ 📌 **Auto-commit**: `git add understanding.md && git commit -m "odyssey-review({slug}): RECORD — 会话总结与知识沉淀"`
341
+
342
+ </actions>
343
+
344
+ <appendix>
345
+
346
+ ### Goal Prompt Template
347
+ **⚠️ 时机守卫:仅在 A_INTAKE 完成后显示一次(session 创建后、开始考古前)。A_RECORD 完成时禁止重新显示。**
348
+
349
+ ```
350
+ 📋 Review-Test-Fix Odyssey 会话已创建。可随时复制以下 /goal 设定终止条件(执行过程中输入即可):
351
+
352
+ /goal 穷尽迭代:直到 session.json 的 review_result.remaining_actionable == 0
353
+ 且 confirmation.verdict == "confirmed" 且 phase_goals_all_done == true 才停。
354
+ 修复按 severity 逐轮迭代(critical→high→medium→low),每轮修复后 re-review 修改区域。
355
+ 发现新问题追加到当前轮继续。遇到 phase=decision 的 pending 必须 AskUserQuestion。
356
+ 不允许"只报告不处理",每个 finding 必须有 action(fix/issue/decision)。
357
+ ```
358
+
359
+ 完成时仅输出 completion summary,不重复此提示。
360
+
361
+ ### `-y` Auto-Confirm (6 decision points)
362
+ | Decision Point | Normal | `-y` |
363
+ |----------------|--------|------|
364
+ | S_FIX tier candidates | AskUserQuestion per tier | auto-fix ALL tiers, `deferred` |
365
+ | S_FIX re-review new findings | AskUserQuestion | auto-append and fix |
366
+ | S_CONFIRM needs_rework | Display, proceed to S_FIX | auto proceed |
367
+ | S_DISCOVER bug routing | AskUserQuestion | auto create issue, `deferred` |
368
+ | S_DISCOVER ambiguous | AskUserQuestion | all `deferred` |
369
+ | S_RECORD pending decisions | AskUserQuestion | skip |
370
+ | S_RECORD goal audit | AskUserQuestion | auto accept |
371
+
372
+ </appendix>
373
+
374
+ </state_machine>
375
+
376
+ <error_codes>
377
+ | Code | Severity | Condition | Recovery |
378
+ |------|----------|-----------|----------|
379
+ | E001 | error | No target specified | Provide target |
380
+ | E002 | error | Target path not found | Check path |
381
+ | E003 | error | Resume but no session | Start new |
382
+ | W001 | warning | No git history for target | Proceed |
383
+ | W002 | warning | Some dimension agents failed | Partial coverage |
384
+ | W003 | warning | Generalization 0 hits | Skip discovery |
385
+ | W004 | warning | Delegate parse failed | Raw output |
386
+ </error_codes>
387
+
388
+ <success_criteria>
389
+ - [ ] Target resolved and session created
390
+ - [ ] Git archaeology on target files
391
+ - [ ] CLI exploration executed, explore.json written
392
+ - [ ] All dimensions reviewed with structured findings
393
+ - [ ] Severity matrix produced
394
+ - [ ] **ALL findings within fix_threshold fixed** — remaining_actionable == 0 (unless --skip-fix)
395
+ - [ ] Per-tier fix with re-review gate: modified area re-reviewed, new findings appended
396
+ - [ ] Zero-residual confirmed by CLI external model
397
+ - [ ] Pattern generalized with multi-layer scan + deepening (unless --skip-generalize)
398
+ - [ ] Quality Gate self-iteration triggered when insufficient
399
+ - [ ] Discoveries classified and routed
400
+ - [ ] understanding.md §8 finalized
401
+ - [ ] phase_goals G1-G6 tracked and audited (G3 = zero remaining)
402
+ - [ ] Goal Prompt displayed once
403
+ - [ ] `-y`: no blocking prompts, deferred counted
404
+ - [ ] Session resumable via -c
405
+ </success_criteria>
406
+
407
+ <next_step_routing>
408
+ | Condition | Next step |
409
+ |-----------|-----------|
410
+ | Finding needs deeper debug | `/odyssey-debug "<finding>"` |
411
+ | Issues created | `/manage-issue list --source review-odyssey` |
412
+ | Pattern to document | `/learn-decompose <module>` |
413
+ | Plan fixes for findings | `/maestro-plan --gaps` |
414
+ </next_step_routing>