@dommaker/harness 0.9.0 → 0.10.0

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 (395) hide show
  1. package/README.md +26 -14
  2. package/bin/harness.js +112 -0
  3. package/dist/architecture/constraint-engine.d.ts +18 -0
  4. package/dist/architecture/constraint-engine.d.ts.map +1 -1
  5. package/dist/architecture/constraint-engine.js +101 -9
  6. package/dist/architecture/constraint-engine.js.map +1 -1
  7. package/dist/architecture/cross-project-checker.d.ts +2 -2
  8. package/dist/architecture/cross-project-checker.d.ts.map +1 -1
  9. package/dist/architecture/cross-project-checker.js +182 -32
  10. package/dist/architecture/cross-project-checker.js.map +1 -1
  11. package/dist/cli/commands/check.d.ts.map +1 -1
  12. package/dist/cli/commands/check.js +182 -71
  13. package/dist/cli/commands/check.js.map +1 -1
  14. package/dist/cli/commands/diagnose.d.ts +16 -0
  15. package/dist/cli/commands/diagnose.d.ts.map +1 -0
  16. package/dist/cli/commands/diagnose.js +195 -0
  17. package/dist/cli/commands/diagnose.js.map +1 -0
  18. package/dist/cli/commands/failure.d.ts +28 -0
  19. package/dist/cli/commands/failure.d.ts.map +1 -0
  20. package/dist/cli/commands/failure.js +132 -0
  21. package/dist/cli/commands/failure.js.map +1 -0
  22. package/dist/cli/commands/flow.d.ts +2 -0
  23. package/dist/cli/commands/flow.d.ts.map +1 -1
  24. package/dist/cli/commands/flow.js +38 -3
  25. package/dist/cli/commands/flow.js.map +1 -1
  26. package/dist/cli/commands/index.d.ts +3 -0
  27. package/dist/cli/commands/index.d.ts.map +1 -1
  28. package/dist/cli/commands/index.js +13 -1
  29. package/dist/cli/commands/index.js.map +1 -1
  30. package/dist/cli/commands/init.d.ts +2 -0
  31. package/dist/cli/commands/init.d.ts.map +1 -1
  32. package/dist/cli/commands/init.js +251 -1
  33. package/dist/cli/commands/init.js.map +1 -1
  34. package/dist/cli/commands/knowledge.d.ts +41 -0
  35. package/dist/cli/commands/knowledge.d.ts.map +1 -0
  36. package/dist/cli/commands/knowledge.js +195 -0
  37. package/dist/cli/commands/knowledge.js.map +1 -0
  38. package/dist/cli/commands/propose.d.ts +18 -0
  39. package/dist/cli/commands/propose.d.ts.map +1 -0
  40. package/dist/cli/commands/propose.js +331 -0
  41. package/dist/cli/commands/propose.js.map +1 -0
  42. package/dist/cli/commands/report.d.ts +1 -1
  43. package/dist/cli/commands/report.d.ts.map +1 -1
  44. package/dist/cli/commands/report.js +57 -70
  45. package/dist/cli/commands/report.js.map +1 -1
  46. package/dist/cli/commands/security.d.ts.map +1 -1
  47. package/dist/cli/commands/security.js +57 -43
  48. package/dist/cli/commands/security.js.map +1 -1
  49. package/dist/cli/commands/sync-docs.d.ts +21 -0
  50. package/dist/cli/commands/sync-docs.d.ts.map +1 -0
  51. package/dist/cli/commands/sync-docs.js +564 -0
  52. package/dist/cli/commands/sync-docs.js.map +1 -0
  53. package/dist/cli/commands/traces.d.ts +15 -0
  54. package/dist/cli/commands/traces.d.ts.map +1 -0
  55. package/dist/cli/commands/traces.js +167 -0
  56. package/dist/cli/commands/traces.js.map +1 -0
  57. package/dist/constraints/index.d.ts +1 -2
  58. package/dist/constraints/index.d.ts.map +1 -1
  59. package/dist/constraints/index.js +1 -2
  60. package/dist/constraints/index.js.map +1 -1
  61. package/dist/constraints/lifecycle-runner.d.ts +52 -0
  62. package/dist/constraints/lifecycle-runner.d.ts.map +1 -0
  63. package/dist/constraints/lifecycle-runner.js +151 -0
  64. package/dist/constraints/lifecycle-runner.js.map +1 -0
  65. package/dist/constraints/registry.d.ts +2 -40
  66. package/dist/constraints/registry.d.ts.map +1 -1
  67. package/dist/constraints/registry.js +20 -59
  68. package/dist/constraints/registry.js.map +1 -1
  69. package/dist/core/constraints/checker.d.ts +16 -0
  70. package/dist/core/constraints/checker.d.ts.map +1 -1
  71. package/dist/core/constraints/checker.js +173 -8
  72. package/dist/core/constraints/checker.js.map +1 -1
  73. package/dist/core/constraints/default-executors.d.ts +10 -0
  74. package/dist/core/constraints/default-executors.d.ts.map +1 -0
  75. package/dist/core/constraints/default-executors.js +120 -0
  76. package/dist/core/constraints/default-executors.js.map +1 -0
  77. package/dist/core/constraints/definitions.d.ts.map +1 -1
  78. package/dist/core/constraints/definitions.js +84 -0
  79. package/dist/core/constraints/definitions.js.map +1 -1
  80. package/dist/core/constraints/interceptor.d.ts.map +1 -1
  81. package/dist/core/constraints/interceptor.js +3 -0
  82. package/dist/core/constraints/interceptor.js.map +1 -1
  83. package/dist/core/session/clean-state.d.ts.map +1 -1
  84. package/dist/core/session/clean-state.js +5 -1
  85. package/dist/core/session/clean-state.js.map +1 -1
  86. package/dist/extensions/long-running/constraints.d.ts +38 -0
  87. package/dist/extensions/long-running/constraints.d.ts.map +1 -0
  88. package/dist/extensions/long-running/constraints.js +153 -0
  89. package/dist/extensions/long-running/constraints.js.map +1 -0
  90. package/dist/extensions/long-running/index.d.ts +30 -0
  91. package/dist/extensions/long-running/index.d.ts.map +1 -0
  92. package/dist/extensions/long-running/index.js +50 -0
  93. package/dist/extensions/long-running/index.js.map +1 -0
  94. package/dist/extensions/long-running/types.d.ts +154 -0
  95. package/dist/extensions/long-running/types.d.ts.map +1 -0
  96. package/dist/extensions/long-running/types.js +9 -0
  97. package/dist/extensions/long-running/types.js.map +1 -0
  98. package/dist/governance/executor.d.ts +45 -0
  99. package/dist/governance/executor.d.ts.map +1 -0
  100. package/dist/governance/executor.js +237 -0
  101. package/dist/governance/executor.js.map +1 -0
  102. package/dist/governance/index.d.ts +9 -0
  103. package/dist/governance/index.d.ts.map +1 -0
  104. package/dist/governance/index.js +13 -0
  105. package/dist/governance/index.js.map +1 -0
  106. package/dist/governance/types.d.ts +46 -0
  107. package/dist/governance/types.d.ts.map +1 -0
  108. package/dist/governance/types.js +9 -0
  109. package/dist/governance/types.js.map +1 -0
  110. package/dist/index.d.ts +19 -5
  111. package/dist/index.d.ts.map +1 -1
  112. package/dist/index.js +22 -11
  113. package/dist/index.js.map +1 -1
  114. package/dist/knowledge/store.d.ts.map +1 -1
  115. package/dist/knowledge/store.js +3 -1
  116. package/dist/knowledge/store.js.map +1 -1
  117. package/dist/monitoring/constraint-doctor.d.ts +16 -3
  118. package/dist/monitoring/constraint-doctor.d.ts.map +1 -1
  119. package/dist/monitoring/constraint-doctor.js +84 -9
  120. package/dist/monitoring/constraint-doctor.js.map +1 -1
  121. package/dist/presets/long-running.d.ts +33 -0
  122. package/dist/presets/long-running.d.ts.map +1 -0
  123. package/dist/presets/long-running.js +52 -0
  124. package/dist/presets/long-running.js.map +1 -0
  125. package/dist/tools/definitions/core/code/fingerprint.sh +273 -0
  126. package/dist/tools/definitions/core/code/fingerprint.yml +72 -0
  127. package/dist/tools/definitions/core/code/parse.yml +68 -0
  128. package/dist/tools/definitions/core/code/register-language.sh +475 -0
  129. package/dist/tools/definitions/core/code/register-language.yml +74 -0
  130. package/dist/tools/definitions/core/docker/build.yml +73 -0
  131. package/dist/tools/definitions/core/docker/run.yml +81 -0
  132. package/dist/tools/definitions/core/file/copy.yml +88 -0
  133. package/dist/tools/definitions/core/file/read.yml +69 -0
  134. package/dist/tools/definitions/core/file/write.yml +75 -0
  135. package/dist/tools/definitions/core/git/branch.yml +61 -0
  136. package/dist/tools/definitions/core/git/cleanup-worktree.yml +50 -0
  137. package/dist/tools/definitions/core/git/clone.yml +69 -0
  138. package/dist/tools/definitions/core/git/commit.yml +65 -0
  139. package/dist/tools/definitions/core/git/push.yml +79 -0
  140. package/dist/tools/definitions/core/git/worktree.yml +96 -0
  141. package/dist/tools/definitions/core/notification/notify.sh +152 -0
  142. package/dist/tools/definitions/core/notification/notify.yml +60 -0
  143. package/dist/tools/definitions/core/npm/build.yml +75 -0
  144. package/dist/tools/definitions/core/npm/install.yml +58 -0
  145. package/dist/tools/definitions/core/npm/test.yml +75 -0
  146. package/dist/tools/definitions/core/validation/check-reuse.yml +170 -0
  147. package/dist/tools/definitions/core/validation/validate-handlers.yml +118 -0
  148. package/dist/tools/definitions/core/validation/validate-readme-stats.yml +155 -0
  149. package/dist/tools/definitions/core/validation/validate-yaml-syntax.yml +134 -0
  150. package/dist/tools/definitions/definitions/core/code/fingerprint.sh +273 -0
  151. package/dist/tools/definitions/definitions/core/code/fingerprint.yml +72 -0
  152. package/dist/tools/definitions/definitions/core/code/parse.yml +68 -0
  153. package/dist/tools/definitions/definitions/core/code/register-language.sh +475 -0
  154. package/dist/tools/definitions/definitions/core/code/register-language.yml +74 -0
  155. package/dist/tools/definitions/definitions/core/docker/build.yml +73 -0
  156. package/dist/tools/definitions/definitions/core/docker/run.yml +81 -0
  157. package/dist/tools/definitions/definitions/core/file/copy.yml +88 -0
  158. package/dist/tools/definitions/definitions/core/file/read.yml +69 -0
  159. package/dist/tools/definitions/definitions/core/file/write.yml +75 -0
  160. package/dist/tools/definitions/definitions/core/git/branch.yml +61 -0
  161. package/dist/tools/definitions/definitions/core/git/cleanup-worktree.yml +50 -0
  162. package/dist/tools/definitions/definitions/core/git/clone.yml +69 -0
  163. package/dist/tools/definitions/definitions/core/git/commit.yml +65 -0
  164. package/dist/tools/definitions/definitions/core/git/push.yml +79 -0
  165. package/dist/tools/definitions/definitions/core/git/worktree.yml +96 -0
  166. package/dist/tools/definitions/definitions/core/notification/notify.sh +152 -0
  167. package/dist/tools/definitions/definitions/core/notification/notify.yml +60 -0
  168. package/dist/tools/definitions/definitions/core/npm/build.yml +75 -0
  169. package/dist/tools/definitions/definitions/core/npm/install.yml +58 -0
  170. package/dist/tools/definitions/definitions/core/npm/test.yml +75 -0
  171. package/dist/tools/definitions/definitions/core/validation/check-reuse.yml +170 -0
  172. package/dist/tools/definitions/definitions/core/validation/validate-handlers.yml +118 -0
  173. package/dist/tools/definitions/definitions/core/validation/validate-readme-stats.yml +155 -0
  174. package/dist/tools/definitions/definitions/core/validation/validate-yaml-syntax.yml +134 -0
  175. package/dist/tools/definitions/definitions/ext/browser/browser-automate.sh +255 -0
  176. package/dist/tools/definitions/definitions/ext/browser/browser-automate.yml +166 -0
  177. package/dist/tools/definitions/definitions/ext/browser/browser-close.sh +104 -0
  178. package/dist/tools/definitions/definitions/ext/browser/browser-close.yml +55 -0
  179. package/dist/tools/definitions/definitions/ext/browser/browser-mcp-debug.sh +682 -0
  180. package/dist/tools/definitions/definitions/ext/browser/browser-mcp-debug.yml +167 -0
  181. package/dist/tools/definitions/definitions/ext/browser/browser-start.sh +101 -0
  182. package/dist/tools/definitions/definitions/ext/browser/browser-start.yml +62 -0
  183. package/dist/tools/definitions/definitions/registry.json +795 -0
  184. package/dist/tools/definitions/definitions/std/README.md +350 -0
  185. package/dist/tools/definitions/definitions/std/analysis/analyze-codebase.yml +72 -0
  186. package/dist/tools/definitions/definitions/std/analysis/analyze-diff.yml +182 -0
  187. package/dist/tools/definitions/definitions/std/analysis/analyze-git-diff.yml +70 -0
  188. package/dist/tools/definitions/definitions/std/analysis/analyze-impact.yml +78 -0
  189. package/dist/tools/definitions/definitions/std/analysis/analyze-requirements.yml +105 -0
  190. package/dist/tools/definitions/definitions/std/analysis/brainstorm-options.yml +106 -0
  191. package/dist/tools/definitions/definitions/std/analysis/build-graph.yml +154 -0
  192. package/dist/tools/definitions/definitions/std/analysis/clarify-requirements.yml +90 -0
  193. package/dist/tools/definitions/definitions/std/analysis/detect-context.yml +109 -0
  194. package/dist/tools/definitions/definitions/std/analysis/detect-layers.yml +125 -0
  195. package/dist/tools/definitions/definitions/std/analysis/generate-tour.yml +102 -0
  196. package/dist/tools/definitions/definitions/std/analysis/search-enhance.yml +105 -0
  197. package/dist/tools/definitions/definitions/std/backlog/add.yml +51 -0
  198. package/dist/tools/definitions/definitions/std/backlog/decide.yml +39 -0
  199. package/dist/tools/definitions/definitions/std/backlog/github-sync.yml +161 -0
  200. package/dist/tools/definitions/definitions/std/backlog/list.yml +53 -0
  201. package/dist/tools/definitions/definitions/std/backlog/load.yml +46 -0
  202. package/dist/tools/definitions/definitions/std/backlog/resolve.yml +37 -0
  203. package/dist/tools/definitions/definitions/std/backlog/update.yml +42 -0
  204. package/dist/tools/definitions/definitions/std/bugfix/diagnose.yml +68 -0
  205. package/dist/tools/definitions/definitions/std/bugfix/fix.yml +66 -0
  206. package/dist/tools/definitions/definitions/std/bugfix/verify.yml +69 -0
  207. package/dist/tools/definitions/definitions/std/constraint/check-decomposition.yml +103 -0
  208. package/dist/tools/definitions/definitions/std/constraint/check-feature-list.yml +77 -0
  209. package/dist/tools/definitions/definitions/std/constraint/check-progress.yml +97 -0
  210. package/dist/tools/definitions/definitions/std/constraint/generate-report.yml +147 -0
  211. package/dist/tools/definitions/definitions/std/deploy/commit-push.yml +33 -0
  212. package/dist/tools/definitions/definitions/std/deploy/deploy-backend.yml +37 -0
  213. package/dist/tools/definitions/definitions/std/deploy/deploy-frontend.yml +37 -0
  214. package/dist/tools/definitions/definitions/std/deploy/rollback.yml +148 -0
  215. package/dist/tools/definitions/definitions/std/design/analyze-architecture-impact.yml +113 -0
  216. package/dist/tools/definitions/definitions/std/design/design-api.yml +55 -0
  217. package/dist/tools/definitions/definitions/std/design/design-architecture.yml +97 -0
  218. package/dist/tools/definitions/definitions/std/design/design-db.yml +81 -0
  219. package/dist/tools/definitions/definitions/std/design/generate-spec.yml +182 -0
  220. package/dist/tools/definitions/definitions/std/development/develop-api.yml +85 -0
  221. package/dist/tools/definitions/definitions/std/development/develop-backend.yml +88 -0
  222. package/dist/tools/definitions/definitions/std/development/develop-frontend.yml +87 -0
  223. package/dist/tools/definitions/definitions/std/development/develop-shared-types.yml +74 -0
  224. package/dist/tools/definitions/definitions/std/development/develop-task.yml +122 -0
  225. package/dist/tools/definitions/definitions/std/development/develop-tests.yml +76 -0
  226. package/dist/tools/definitions/definitions/std/development/execute-batch.yml +152 -0
  227. package/dist/tools/definitions/definitions/std/development/fix-issues.yml +100 -0
  228. package/dist/tools/definitions/definitions/std/development/implement-task.yml +124 -0
  229. package/dist/tools/definitions/definitions/std/development/review-fix-cycle.yml +232 -0
  230. package/dist/tools/definitions/definitions/std/evolution/implement.yml +125 -0
  231. package/dist/tools/definitions/definitions/std/evolution/prioritize.yml +112 -0
  232. package/dist/tools/definitions/definitions/std/evolution/report-gap.yml +166 -0
  233. package/dist/tools/definitions/definitions/std/file/read.yml +21 -0
  234. package/dist/tools/definitions/definitions/std/governance/aggregate-opinions.sh +201 -0
  235. package/dist/tools/definitions/definitions/std/governance/aggregate-opinions.yml +79 -0
  236. package/dist/tools/definitions/definitions/std/governance/audit-task.yml +178 -0
  237. package/dist/tools/definitions/definitions/std/governance/cast-vote.yml +129 -0
  238. package/dist/tools/definitions/definitions/std/governance/collect-issues.yml +16 -0
  239. package/dist/tools/definitions/definitions/std/governance/create-signed-document.yml +23 -0
  240. package/dist/tools/definitions/definitions/std/governance/create-voting-session.yml +101 -0
  241. package/dist/tools/definitions/definitions/std/governance/define-stance.sh +243 -0
  242. package/dist/tools/definitions/definitions/std/governance/define-stance.yml +82 -0
  243. package/dist/tools/definitions/definitions/std/governance/generate-review-report.yml +23 -0
  244. package/dist/tools/definitions/definitions/std/governance/impeach.yml +179 -0
  245. package/dist/tools/definitions/definitions/std/governance/multi-stance-review.yml +154 -0
  246. package/dist/tools/definitions/definitions/std/governance/prepare-artifact.yml +20 -0
  247. package/dist/tools/definitions/definitions/std/governance/review-spec-approval.yml +262 -0
  248. package/dist/tools/definitions/definitions/std/governance/rollback.yml +186 -0
  249. package/dist/tools/definitions/definitions/std/governance/stance-review.yml +149 -0
  250. package/dist/tools/definitions/definitions/std/governance/track-effect.yml +199 -0
  251. package/dist/tools/definitions/definitions/std/governance/vote-tally.yml +144 -0
  252. package/dist/tools/definitions/definitions/std/patch/execute.yml +51 -0
  253. package/dist/tools/definitions/definitions/std/planning/generate-tasks.yml +36 -0
  254. package/dist/tools/definitions/definitions/std/planning/load-tasks.yml +44 -0
  255. package/dist/tools/definitions/definitions/std/planning/split-batch.yml +481 -0
  256. package/dist/tools/definitions/definitions/std/planning/split-tasks.yml +359 -0
  257. package/dist/tools/definitions/definitions/std/planning/update-tasks.yml +51 -0
  258. package/dist/tools/definitions/definitions/std/planning/validate-tasks.yml +46 -0
  259. package/dist/tools/definitions/definitions/std/project/decide-next-workflow.yml +38 -0
  260. package/dist/tools/definitions/definitions/std/project/load-state.yml +31 -0
  261. package/dist/tools/definitions/definitions/std/project/save-state.yml +32 -0
  262. package/dist/tools/definitions/definitions/std/quality/check-quality.yml +241 -0
  263. package/dist/tools/definitions/definitions/std/quality/debug-systematic.yml +163 -0
  264. package/dist/tools/definitions/definitions/std/quality/handle-feedback.yml +108 -0
  265. package/dist/tools/definitions/definitions/std/quality/review-code.yml +128 -0
  266. package/dist/tools/definitions/definitions/std/quality/review-spec.yml +140 -0
  267. package/dist/tools/definitions/definitions/std/quality/review-task.yml +190 -0
  268. package/dist/tools/definitions/definitions/std/quality/run-tests.yml +80 -0
  269. package/dist/tools/definitions/definitions/std/quick/analyze.yml +56 -0
  270. package/dist/tools/definitions/definitions/std/quick/implement.yml +67 -0
  271. package/dist/tools/definitions/definitions/std/quick/verify.yml +71 -0
  272. package/dist/tools/definitions/definitions/std/verification/verify_completion.yml +113 -0
  273. package/dist/tools/definitions/definitions/std/verification/wait-condition.yml +107 -0
  274. package/dist/tools/definitions/ext/browser/browser-automate.sh +255 -0
  275. package/dist/tools/definitions/ext/browser/browser-automate.yml +166 -0
  276. package/dist/tools/definitions/ext/browser/browser-close.sh +104 -0
  277. package/dist/tools/definitions/ext/browser/browser-close.yml +55 -0
  278. package/dist/tools/definitions/ext/browser/browser-mcp-debug.sh +682 -0
  279. package/dist/tools/definitions/ext/browser/browser-mcp-debug.yml +167 -0
  280. package/dist/tools/definitions/ext/browser/browser-start.sh +101 -0
  281. package/dist/tools/definitions/ext/browser/browser-start.yml +62 -0
  282. package/dist/tools/definitions/registry.json +795 -0
  283. package/dist/tools/definitions/std/README.md +350 -0
  284. package/dist/tools/definitions/std/analysis/analyze-codebase.yml +72 -0
  285. package/dist/tools/definitions/std/analysis/analyze-diff.yml +182 -0
  286. package/dist/tools/definitions/std/analysis/analyze-git-diff.yml +70 -0
  287. package/dist/tools/definitions/std/analysis/analyze-impact.yml +78 -0
  288. package/dist/tools/definitions/std/analysis/analyze-requirements.yml +105 -0
  289. package/dist/tools/definitions/std/analysis/brainstorm-options.yml +106 -0
  290. package/dist/tools/definitions/std/analysis/build-graph.yml +154 -0
  291. package/dist/tools/definitions/std/analysis/clarify-requirements.yml +90 -0
  292. package/dist/tools/definitions/std/analysis/detect-context.yml +109 -0
  293. package/dist/tools/definitions/std/analysis/detect-layers.yml +125 -0
  294. package/dist/tools/definitions/std/analysis/generate-tour.yml +102 -0
  295. package/dist/tools/definitions/std/analysis/search-enhance.yml +105 -0
  296. package/dist/tools/definitions/std/backlog/add.yml +51 -0
  297. package/dist/tools/definitions/std/backlog/decide.yml +39 -0
  298. package/dist/tools/definitions/std/backlog/github-sync.yml +161 -0
  299. package/dist/tools/definitions/std/backlog/list.yml +53 -0
  300. package/dist/tools/definitions/std/backlog/load.yml +46 -0
  301. package/dist/tools/definitions/std/backlog/resolve.yml +37 -0
  302. package/dist/tools/definitions/std/backlog/update.yml +42 -0
  303. package/dist/tools/definitions/std/bugfix/diagnose.yml +68 -0
  304. package/dist/tools/definitions/std/bugfix/fix.yml +66 -0
  305. package/dist/tools/definitions/std/bugfix/verify.yml +69 -0
  306. package/dist/tools/definitions/std/constraint/check-decomposition.yml +103 -0
  307. package/dist/tools/definitions/std/constraint/check-feature-list.yml +77 -0
  308. package/dist/tools/definitions/std/constraint/check-progress.yml +97 -0
  309. package/dist/tools/definitions/std/constraint/generate-report.yml +147 -0
  310. package/dist/tools/definitions/std/deploy/commit-push.yml +33 -0
  311. package/dist/tools/definitions/std/deploy/deploy-backend.yml +37 -0
  312. package/dist/tools/definitions/std/deploy/deploy-frontend.yml +37 -0
  313. package/dist/tools/definitions/std/deploy/rollback.yml +148 -0
  314. package/dist/tools/definitions/std/design/analyze-architecture-impact.yml +113 -0
  315. package/dist/tools/definitions/std/design/design-api.yml +55 -0
  316. package/dist/tools/definitions/std/design/design-architecture.yml +97 -0
  317. package/dist/tools/definitions/std/design/design-db.yml +81 -0
  318. package/dist/tools/definitions/std/design/generate-spec.yml +182 -0
  319. package/dist/tools/definitions/std/development/develop-api.yml +85 -0
  320. package/dist/tools/definitions/std/development/develop-backend.yml +88 -0
  321. package/dist/tools/definitions/std/development/develop-frontend.yml +87 -0
  322. package/dist/tools/definitions/std/development/develop-shared-types.yml +74 -0
  323. package/dist/tools/definitions/std/development/develop-task.yml +122 -0
  324. package/dist/tools/definitions/std/development/develop-tests.yml +76 -0
  325. package/dist/tools/definitions/std/development/execute-batch.yml +152 -0
  326. package/dist/tools/definitions/std/development/fix-issues.yml +100 -0
  327. package/dist/tools/definitions/std/development/implement-task.yml +124 -0
  328. package/dist/tools/definitions/std/development/review-fix-cycle.yml +232 -0
  329. package/dist/tools/definitions/std/evolution/implement.yml +125 -0
  330. package/dist/tools/definitions/std/evolution/prioritize.yml +112 -0
  331. package/dist/tools/definitions/std/evolution/report-gap.yml +166 -0
  332. package/dist/tools/definitions/std/file/read.yml +21 -0
  333. package/dist/tools/definitions/std/governance/aggregate-opinions.sh +201 -0
  334. package/dist/tools/definitions/std/governance/aggregate-opinions.yml +79 -0
  335. package/dist/tools/definitions/std/governance/audit-task.yml +178 -0
  336. package/dist/tools/definitions/std/governance/cast-vote.yml +129 -0
  337. package/dist/tools/definitions/std/governance/collect-issues.yml +16 -0
  338. package/dist/tools/definitions/std/governance/create-signed-document.yml +23 -0
  339. package/dist/tools/definitions/std/governance/create-voting-session.yml +101 -0
  340. package/dist/tools/definitions/std/governance/define-stance.sh +243 -0
  341. package/dist/tools/definitions/std/governance/define-stance.yml +82 -0
  342. package/dist/tools/definitions/std/governance/generate-review-report.yml +23 -0
  343. package/dist/tools/definitions/std/governance/impeach.yml +179 -0
  344. package/dist/tools/definitions/std/governance/multi-stance-review.yml +154 -0
  345. package/dist/tools/definitions/std/governance/prepare-artifact.yml +20 -0
  346. package/dist/tools/definitions/std/governance/review-spec-approval.yml +262 -0
  347. package/dist/tools/definitions/std/governance/rollback.yml +186 -0
  348. package/dist/tools/definitions/std/governance/stance-review.yml +149 -0
  349. package/dist/tools/definitions/std/governance/track-effect.yml +199 -0
  350. package/dist/tools/definitions/std/governance/vote-tally.yml +144 -0
  351. package/dist/tools/definitions/std/patch/execute.yml +51 -0
  352. package/dist/tools/definitions/std/planning/generate-tasks.yml +36 -0
  353. package/dist/tools/definitions/std/planning/load-tasks.yml +44 -0
  354. package/dist/tools/definitions/std/planning/split-batch.yml +481 -0
  355. package/dist/tools/definitions/std/planning/split-tasks.yml +359 -0
  356. package/dist/tools/definitions/std/planning/update-tasks.yml +51 -0
  357. package/dist/tools/definitions/std/planning/validate-tasks.yml +46 -0
  358. package/dist/tools/definitions/std/project/decide-next-workflow.yml +38 -0
  359. package/dist/tools/definitions/std/project/load-state.yml +31 -0
  360. package/dist/tools/definitions/std/project/save-state.yml +32 -0
  361. package/dist/tools/definitions/std/quality/check-quality.yml +241 -0
  362. package/dist/tools/definitions/std/quality/debug-systematic.yml +163 -0
  363. package/dist/tools/definitions/std/quality/handle-feedback.yml +108 -0
  364. package/dist/tools/definitions/std/quality/review-code.yml +128 -0
  365. package/dist/tools/definitions/std/quality/review-spec.yml +140 -0
  366. package/dist/tools/definitions/std/quality/review-task.yml +190 -0
  367. package/dist/tools/definitions/std/quality/run-tests.yml +80 -0
  368. package/dist/tools/definitions/std/quick/analyze.yml +56 -0
  369. package/dist/tools/definitions/std/quick/implement.yml +67 -0
  370. package/dist/tools/definitions/std/quick/verify.yml +71 -0
  371. package/dist/tools/definitions/std/verification/verify_completion.yml +113 -0
  372. package/dist/tools/definitions/std/verification/wait-condition.yml +107 -0
  373. package/dist/tools/index.d.ts +2 -0
  374. package/dist/tools/index.d.ts.map +1 -1
  375. package/dist/tools/index.js +2 -0
  376. package/dist/tools/index.js.map +1 -1
  377. package/dist/tools/loader.d.ts +21 -0
  378. package/dist/tools/loader.d.ts.map +1 -0
  379. package/dist/tools/loader.js +199 -0
  380. package/dist/tools/loader.js.map +1 -0
  381. package/dist/tools/paths.d.ts +9 -0
  382. package/dist/tools/paths.d.ts.map +1 -0
  383. package/dist/tools/paths.js +51 -0
  384. package/dist/tools/paths.js.map +1 -0
  385. package/dist/types/constraint.d.ts +4 -0
  386. package/dist/types/constraint.d.ts.map +1 -1
  387. package/dist/types/constraint.js.map +1 -1
  388. package/dist/types/project-config.d.ts +57 -0
  389. package/dist/types/project-config.d.ts.map +1 -1
  390. package/dist/types/session.d.ts +6 -0
  391. package/dist/types/session.d.ts.map +1 -1
  392. package/dist/utils/exec.d.ts.map +1 -1
  393. package/dist/utils/exec.js +37 -1
  394. package/dist/utils/exec.js.map +1 -1
  395. package/package.json +2 -2
@@ -29,7 +29,8 @@ class ConstraintDoctor {
29
29
  config;
30
30
  traces;
31
31
  summary;
32
- constructor(config) {
32
+ llm;
33
+ constructor(config, llm) {
33
34
  this.config = {
34
35
  enabled: false,
35
36
  maxTracesInPrompt: 20,
@@ -38,6 +39,7 @@ class ConstraintDoctor {
38
39
  };
39
40
  this.traces = [];
40
41
  this.summary = null;
42
+ this.llm = llm || null;
41
43
  }
42
44
  /**
43
45
  * 设置诊断数据
@@ -56,11 +58,15 @@ class ConstraintDoctor {
56
58
  const relevantTraces = this.filterRelevantTraces(anomaly);
57
59
  // 基于规则的初步诊断(不消耗 Token)
58
60
  const ruleBasedDiagnosis = this.ruleBasedDiagnose(anomaly, relevantTraces);
59
- // 如果 Agent 启用,可以进一步分析(预留)
60
- if (this.config.enabled && this.config.agentType) {
61
- // TODO: 调用 Agent 进行深度分析
62
- // const agentDiagnosis = await this.agentDiagnose(anomaly, relevantTraces);
63
- // return agentDiagnosis;
61
+ // 如果 LLM 可用,进行深度分析
62
+ if (this.config.enabled && this.llm) {
63
+ try {
64
+ return await this.agentDiagnose(anomaly, relevantTraces, ruleBasedDiagnosis);
65
+ }
66
+ catch {
67
+ // LLM 调用失败,降级到规则诊断
68
+ return ruleBasedDiagnosis;
69
+ }
64
70
  }
65
71
  return ruleBasedDiagnosis;
66
72
  }
@@ -205,9 +211,78 @@ class ConstraintDoctor {
205
211
  }
206
212
  return diagnosis;
207
213
  }
214
+ /**
215
+ * LLM 深度诊断
216
+ *
217
+ * 将异常和相关 traces 构造为 prompt,调用 LLM 分析根因
218
+ * 成本:~2000 Token/次
219
+ */
220
+ async agentDiagnose(anomaly, traces, fallback) {
221
+ const maxTraces = this.config.maxTracesInPrompt || 20;
222
+ const traceSummary = traces.slice(0, maxTraces).map(t => `[${t.result}] ${t.constraintId} | ${t.operation || 'unknown'} | ${t.timestamp ? new Date(t.timestamp).toISOString() : 'no-ts'}`).join('\n');
223
+ const prompt = `你是约束系统诊断专家。分析以下异常并给出诊断结果。
224
+
225
+ ## 异常信息
226
+ - 约束 ID: ${anomaly.constraintId}
227
+ - 异常类型: ${anomaly.type}
228
+ - 约束层级: ${anomaly.level}
229
+ - 当前数据: ${JSON.stringify(anomaly.data)}
230
+
231
+ ## 相关 Traces(最近 ${Math.min(traces.length, maxTraces)} 条)
232
+ ${traceSummary || '无相关 traces'}
233
+
234
+ ## 要求
235
+ 以 JSON 格式返回诊断结果,包含以下字段:
236
+ {
237
+ "rootCause": { "primary": "主要原因", "secondary": ["次要原因1", "次要原因2"] },
238
+ "impact": { "severity": "low|medium|high", "scope": "single_project|multiple_projects|team", "userImpact": "用户影响描述" },
239
+ "recommendations": [{ "type": "add_exception|adjust_threshold|modify_constraint|user_training", "content": "建议内容", "expectedOutcome": "预期效果", "implementationCost": "low|medium|high" }],
240
+ "needsChange": true/false,
241
+ "urgency": "low|medium|high"
242
+ }
243
+
244
+ 只返回 JSON,不要其他内容。`;
245
+ const response = await this.llm.complete(prompt, {
246
+ maxTokens: 1000,
247
+ temperature: 0.3,
248
+ });
249
+ // 解析 LLM 响应
250
+ const parsed = this.parseAgentResponse(response);
251
+ return {
252
+ ...fallback,
253
+ rootCause: {
254
+ primary: parsed.rootCause?.primary || fallback.rootCause.primary,
255
+ secondary: parsed.rootCause?.secondary || fallback.rootCause.secondary,
256
+ evidence: fallback.rootCause.evidence,
257
+ },
258
+ impact: {
259
+ severity: parsed.impact?.severity || fallback.impact.severity,
260
+ scope: parsed.impact?.scope || fallback.impact.scope,
261
+ userImpact: parsed.impact?.userImpact || fallback.impact.userImpact,
262
+ },
263
+ recommendations: parsed.recommendations?.length ? parsed.recommendations : fallback.recommendations,
264
+ needsChange: parsed.needsChange ?? fallback.needsChange,
265
+ urgency: parsed.urgency || fallback.urgency,
266
+ };
267
+ }
268
+ /**
269
+ * 解析 LLM 返回的 JSON 诊断结果
270
+ */
271
+ parseAgentResponse(response) {
272
+ try {
273
+ // 提取 JSON(可能被 markdown 代码块包裹)
274
+ const jsonMatch = response.match(/\{[\s\S]*\}/);
275
+ if (!jsonMatch)
276
+ return {};
277
+ return JSON.parse(jsonMatch[0]);
278
+ }
279
+ catch {
280
+ return {};
281
+ }
282
+ }
208
283
  /**
209
284
  * 过滤相关 traces
210
- *
285
+ *
211
286
  * 只保留与异常相关的 traces,减少 prompt 内容
212
287
  */
213
288
  filterRelevantTraces(anomaly) {
@@ -299,7 +374,7 @@ exports.ConstraintDoctor = ConstraintDoctor;
299
374
  /**
300
375
  * 创建诊断器
301
376
  */
302
- function createDoctor(config) {
303
- return new ConstraintDoctor(config);
377
+ function createDoctor(config, llm) {
378
+ return new ConstraintDoctor(config, llm);
304
379
  }
305
380
  //# sourceMappingURL=constraint-doctor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constraint-doctor.js","sourceRoot":"","sources":["../../src/monitoring/constraint-doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constraint-doctor.js","sourceRoot":"","sources":["../../src/monitoring/constraint-doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Long-Running Agents 预设
3
+ *
4
+ * 适用于 Anthropic Long-Running Agents 模式的项目
5
+ */
6
+ import type { PresetConfig } from './standard';
7
+ /**
8
+ * Long-Running 预设
9
+ *
10
+ * 包含:
11
+ * - 核心约束(standard preset)
12
+ * - Long-Running 扩展约束
13
+ */
14
+ export declare const LONG_RUNNING_PRESET: PresetConfig;
15
+ /**
16
+ * 获取 Long-Running 预设的约束列表
17
+ */
18
+ export declare function getLongRunningPresetConstraints(): {
19
+ ironLaws: string[];
20
+ guidelines: string[];
21
+ tips: string[];
22
+ };
23
+ /**
24
+ * 预设说明
25
+ */
26
+ export declare const LONG_RUNNING_PRESET_INFO: {
27
+ name: string;
28
+ description: string;
29
+ usage: string;
30
+ features: string[];
31
+ requires: string[];
32
+ };
33
+ //# sourceMappingURL=long-running.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"long-running.d.ts","sourceRoot":"","sources":["../../src/presets/long-running.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAO/C;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,EAAE,YAKjC,CAAC;AAEF;;GAEG;AACH,wBAAgB,+BAA+B,IAAI;IACjD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB,CAQA;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;CAapC,CAAC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ /**
3
+ * Long-Running Agents 预设
4
+ *
5
+ * 适用于 Anthropic Long-Running Agents 模式的项目
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.LONG_RUNNING_PRESET_INFO = exports.LONG_RUNNING_PRESET = void 0;
9
+ exports.getLongRunningPresetConstraints = getLongRunningPresetConstraints;
10
+ const long_running_1 = require("../extensions/long-running");
11
+ /**
12
+ * Long-Running 预设
13
+ *
14
+ * 包含:
15
+ * - 核心约束(standard preset)
16
+ * - Long-Running 扩展约束
17
+ */
18
+ exports.LONG_RUNNING_PRESET = {
19
+ name: 'long-running',
20
+ ironLaws: null, // 全部启用(包括扩展)
21
+ guidelines: null, // 全部启用(包括扩展)
22
+ tips: null, // 全部启用
23
+ };
24
+ /**
25
+ * 获取 Long-Running 预设的约束列表
26
+ */
27
+ function getLongRunningPresetConstraints() {
28
+ const constraints = (0, long_running_1.getAllLongRunningConstraints)();
29
+ return {
30
+ ironLaws: constraints.filter(c => c.level === 'iron_law').map(c => c.id),
31
+ guidelines: constraints.filter(c => c.level === 'guideline').map(c => c.id),
32
+ tips: constraints.filter(c => c.level === 'tip').map(c => c.id),
33
+ };
34
+ }
35
+ /**
36
+ * 预设说明
37
+ */
38
+ exports.LONG_RUNNING_PRESET_INFO = {
39
+ name: 'long-running',
40
+ description: 'Anthropic Long-Running Agents 模式预设',
41
+ usage: '适用于使用 feature_list.json 和跨 session 追踪的项目',
42
+ features: [
43
+ '单功能推进(每次 session 只做一个功能)',
44
+ '功能拆解(initializer.yml 自动拆解需求)',
45
+ 'E2E 测试(Puppeteer 自动化验证)',
46
+ ],
47
+ requires: [
48
+ 'agent-workflows: initializer.yml, coding-agent.yml, puppeteer-test.yml',
49
+ 'agent-runtime: CleanStateManager, PuppeteerTool, PassesGate extension',
50
+ ],
51
+ };
52
+ //# sourceMappingURL=long-running.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"long-running.js","sourceRoot":"","sources":["../../src/presets/long-running.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AA0BH,0EAYC;AAnCD,6DAIoC;AAEpC;;;;;;GAMG;AACU,QAAA,mBAAmB,GAAiB;IAC/C,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,IAAI,EAAK,aAAa;IAChC,UAAU,EAAE,IAAI,EAAG,aAAa;IAChC,IAAI,EAAE,IAAI,EAAS,OAAO;CAC3B,CAAC;AAEF;;GAEG;AACH,SAAgB,+BAA+B;IAK7C,MAAM,WAAW,GAAG,IAAA,2CAA4B,GAAE,CAAC;IAEnD,OAAO;QACL,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChE,CAAC;AACJ,CAAC;AAED;;GAEG;AACU,QAAA,wBAAwB,GAAG;IACtC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,oCAAoC;IACjD,KAAK,EAAE,0CAA0C;IACjD,QAAQ,EAAE;QACR,0BAA0B;QAC1B,8BAA8B;QAC9B,yBAAyB;KAC1B;IACD,QAAQ,EAAE;QACR,wEAAwE;QACxE,uEAAuE;KACxE;CACF,CAAC"}
@@ -0,0 +1,273 @@
1
+ #!/bin/bash
2
+ # fingerprint.sh - 代码结构指纹工具
3
+ # ============================================================================
4
+ # 功能:提取代码结构签名,区分"结构性变更"和"表面变更"
5
+ # 用途:增量分析、变更影响评估、代码审查优先级排序
6
+ # ============================================================================
7
+
8
+ set -e
9
+
10
+ # 参数
11
+ FILE_PATH="${1:-}"
12
+ PROJECT_PATH="${2:-.}"
13
+ COMPARE_WITH="${3:-previous}"
14
+
15
+ # 颜色输出
16
+ RED='\033[0;31m'
17
+ GREEN='\033[0;32m'
18
+ YELLOW='\033[1;33m'
19
+ BLUE='\033[0;34m'
20
+ NC='\033[0m'
21
+
22
+ log_info() { echo -e "${GREEN}[INFO]${NC} $1"; }
23
+ log_warn() { echo -e "${YELLOW}[WARN]${NC} $1"; }
24
+ log_error() { echo -e "${RED}[ERROR]${NC} $1"; }
25
+ log_debug() { echo -e "${BLUE}[DEBUG]${NC} $1"; }
26
+
27
+ # 显示帮助
28
+ show_help() {
29
+ cat << EOF
30
+ 代码结构指纹工具
31
+
32
+ 用法:
33
+ $0 <file_path> [project_path] [compare_with]
34
+
35
+ 参数:
36
+ file_path 文件路径(相对于项目根目录)
37
+ project_path 项目根路径(默认: 当前目录)
38
+ compare_with 对比目标(默认: previous)
39
+ - "previous" - 与上一个 commit 对比
40
+ - "base" - 与基准分支对比
41
+ - <commit_hash> - 具体的 commit
42
+
43
+ 输出:
44
+ JSON 格式的结构指纹和变更分析结果
45
+
46
+ 示例:
47
+ $0 src/utils.ts
48
+ $0 src/utils.ts /home/user/project previous
49
+ $0 src/api.ts . HEAD~3
50
+ EOF
51
+ exit 0
52
+ }
53
+
54
+ # 检查参数
55
+ if [[ "$1" == "-h" || "$1" == "--help" || -z "$FILE_PATH" ]]; then
56
+ show_help
57
+ fi
58
+
59
+ cd "$PROJECT_PATH"
60
+
61
+ # 检查文件是否存在
62
+ if [[ ! -f "$FILE_PATH" ]]; then
63
+ log_error "文件不存在: $FILE_PATH"
64
+ exit 1
65
+ fi
66
+
67
+ # 获取文件扩展名和语言
68
+ EXT="${FILE_PATH##*.}"
69
+ LANG_MAP=(
70
+ "ts:typescript"
71
+ "tsx:typescript"
72
+ "js:javascript"
73
+ "jsx:javascript"
74
+ "py:python"
75
+ "go:go"
76
+ "rs:rust"
77
+ "java:java"
78
+ "cpp:c++"
79
+ "c:c"
80
+ "rb:ruby"
81
+ "php:php"
82
+ "swift:swift"
83
+ "kt:kotlin"
84
+ "scala:scala"
85
+ "cs:c#"
86
+ "vue:vue"
87
+ "svelte:svelte"
88
+ "css:css"
89
+ "scss:scss"
90
+ "html:html"
91
+ "json:json"
92
+ "yaml:yaml"
93
+ "md:markdown"
94
+ "sh:bash"
95
+ )
96
+
97
+ get_language() {
98
+ local ext="$1"
99
+ for entry in "${LANG_MAP[@]}"; do
100
+ if [[ "$entry" == "$ext:"* ]]; then
101
+ echo "${entry#*:}"
102
+ return
103
+ fi
104
+ done
105
+ echo "unknown"
106
+ }
107
+
108
+ LANGUAGE=$(get_language "$EXT")
109
+
110
+ # 提取代码结构
111
+ extract_structure() {
112
+ local file="$1"
113
+ local lang="$2"
114
+
115
+ case "$lang" in
116
+ typescript|javascript)
117
+ # 提取函数、类、导入
118
+ local functions=$(grep -oE "(function\s+[a-zA-Z_][a-zA-Z0-9_]*|const\s+[a-zA-Z_][a-zA-Z0-9_]*\s*=\s*(async\s*)?\(|const\s+[a-zA-Z_][a-zA-Z0-9_]*\s*=\s*function)" "$file" 2>/dev/null | sed 's/function\s\|const\s\|=\s*(\|async\s//g' | tr -d '()' || echo "")
119
+ local classes=$(grep -oE "(class|interface|type)\s+[a-zA-Z_][a-zA-Z0-9_]*" "$file" 2>/dev/null | awk '{print $2}' || echo "")
120
+ local imports=$(grep -oE "import.*from\s+['\"][^'\"]+['\"]" "$file" 2>/dev/null | sed "s/.*from\s*['\"]//;s/['\"]//g" || echo "")
121
+ ;;
122
+ python)
123
+ local functions=$(grep -oE "^def\s+[a-zA-Z_][a-zA-Z0-9_]*" "$file" 2>/dev/null | sed 's/def\s//' || echo "")
124
+ local classes=$(grep -oE "^class\s+[a-zA-Z_][a-zA-Z0-9_]*" "$file" 2>/dev/null | sed 's/class\s//' || echo "")
125
+ local imports=$(grep -oE "^import\s+[a-zA-Z_][a-zA-Z0-9_.]*|^from\s+[a-zA-Z_][a-zA-Z0-9_.]*\s+import" "$file" 2>/dev/null | head -20 || echo "")
126
+ ;;
127
+ go)
128
+ local functions=$(grep -oE "func\s+(\([a-zA-Z_][a-zA-Z0-9_]*\s+\*?[a-zA-Z_][a-zA-Z0-9_]*\)\s+)?[a-zA-Z_][a-zA-Z0-9_]*" "$file" 2>/dev/null | sed 's/func\s\|func\s*(.*)\s//g' || echo "")
129
+ local classes=$(grep -oE "type\s+[a-zA-Z_][a-zA-Z0-9_]*\s+struct" "$file" 2>/dev/null | awk '{print $2}' || echo "")
130
+ local imports=$(grep -oE "import\s+[\"]?[^\"\n]+[\"]?" "$file" 2>/dev/null | sed 's/import\s\|\"//g' || echo "")
131
+ ;;
132
+ *)
133
+ # 通用提取:函数定义
134
+ local functions=$(grep -oE "(function|func|def|fn)\s+[a-zA-Z_][a-zA-Z0-9_]*" "$file" 2>/dev/null | awk '{print $2}' || echo "")
135
+ local classes=$(grep -oE "(class|struct|interface)\s+[a-zA-Z_][a-zA-Z0-9_]*" "$file" 2>/dev/null | awk '{print $2}' || echo "")
136
+ local imports=""
137
+ ;;
138
+ esac
139
+
140
+ # 输出 JSON
141
+ echo "{\"functions\":[$(echo "$functions" | tr '\n' ',' | sed 's/,$//' | while read f; do [[ -n "$f" ]] && echo "\"$f\""; done | tr '\n' ',' | sed 's/,$//')],\"classes\":[$(echo "$classes" | tr '\n' ',' | sed 's/,$//' | while read c; do [[ -n "$c" ]] && echo "\"$c\""; done | tr '\n' ',' | sed 's/,$//')],\"imports\":[$(echo "$imports" | tr '\n' ',' | sed 's/,$//' | while read i; do [[ -n "$i" ]] && echo "\"$i\""; done | tr '\n' ',' | sed 's/,$//')]}"
142
+ }
143
+
144
+ # 计算内容哈希
145
+ compute_hash() {
146
+ local file="$1"
147
+ sha256sum "$file" 2>/dev/null | awk '{print $1}' || md5sum "$file" 2>/dev/null | awk '{print $1}'
148
+ }
149
+
150
+ # 获取 git diff
151
+ get_git_diff() {
152
+ local file="$1"
153
+ local compare="$2"
154
+
155
+ case "$compare" in
156
+ previous)
157
+ git diff HEAD~1 HEAD -- "$file" 2>/dev/null || echo ""
158
+ ;;
159
+ base)
160
+ local base_branch=$(git remote show origin 2>/dev/null | grep 'HEAD branch' | awk '{print $NF}' || echo "main")
161
+ git diff "$base_branch" HEAD -- "$file" 2>/dev/null || echo ""
162
+ ;;
163
+ *)
164
+ git diff "$compare" HEAD -- "$file" 2>/dev/null || echo ""
165
+ ;;
166
+ esac
167
+ }
168
+
169
+ # 分析变更级别
170
+ analyze_change_level() {
171
+ local diff="$1"
172
+
173
+ if [[ -z "$diff" ]]; then
174
+ echo "NONE"
175
+ return
176
+ fi
177
+
178
+ # 检查是否有结构变更
179
+ local structural_patterns="(function|func|def|class|interface|struct|type|enum)\s+[a-zA-Z_]"
180
+ local structural_changes=$(echo "$diff" | grep -E "^[\+\-].*$structural_patterns" | grep -v "^[\+\-][\+\-][\+\-]" | wc -l)
181
+
182
+ # 检查是否有导入变更
183
+ local import_patterns="(import|require|from\s+['\"])"
184
+ local import_changes=$(echo "$diff" | grep -E "^[\+\-].*$import_patterns" | grep -v "^[\+\-][\+\-][\+\-]" | wc -l)
185
+
186
+ # 检查是否只有注释或格式变更
187
+ local cosmetic_only=true
188
+ local added_lines=$(echo "$diff" | grep "^+" | grep -v "^+++" | wc -l)
189
+ local removed_lines=$(echo "$diff" | grep "^-" | grep -v "^---" | wc -l)
190
+
191
+ # 检查非注释变更
192
+ local code_lines=$(echo "$diff" | grep -E "^[\+\-]" | grep -v "^[\+\-][\+\-][\+\-]" | grep -v "^\+\s*(//|/\*|\*|<!--|#)" | wc -l)
193
+
194
+ if [[ $structural_changes -gt 0 || $import_changes -gt 0 ]]; then
195
+ echo "STRUCTURAL"
196
+ elif [[ $code_lines -gt 0 ]]; then
197
+ echo "COSMETIC"
198
+ else
199
+ echo "NONE"
200
+ fi
201
+ }
202
+
203
+ # 提取变更详情
204
+ extract_change_details() {
205
+ local diff="$1"
206
+ local level="$2"
207
+ local details=()
208
+
209
+ if [[ "$level" == "NONE" ]]; then
210
+ echo "[]"
211
+ return
212
+ fi
213
+
214
+ # 提取新增的函数
215
+ local new_functions=$(echo "$diff" | grep "^+" | grep -oE "(function|func|def)\s+[a-zA-Z_][a-zA-Z0-9_]*" | sed 's/function\s\|func\s\|def\s//' | head -5)
216
+ for f in $new_functions; do
217
+ details+=("added function: $f")
218
+ done
219
+
220
+ # 提取删除的函数
221
+ local removed_functions=$(echo "$diff" | grep "^-" | grep -oE "(function|func|def)\s+[a-zA-Z_][a-zA-Z0-9_]*" | sed 's/function\s\|func\s\|def\s//' | head -5)
222
+ for f in $removed_functions; do
223
+ details+=("removed function: $f")
224
+ done
225
+
226
+ # 提取新增的类
227
+ local new_classes=$(echo "$diff" | grep "^+" | grep -oE "(class|interface|struct|type)\s+[a-zA-Z_][a-zA-Z0-9_]*" | awk '{print $2}' | head -5)
228
+ for c in $new_classes; do
229
+ details+=("added class/interface: $c")
230
+ done
231
+
232
+ # 提取新增的导入
233
+ local new_imports=$(echo "$diff" | grep "^+" | grep -oE "import.*from\s+['\"][^'\"]+['\"]" | sed "s/.*from\s*['\"]//;s/['\"]//g" | head -5)
234
+ for i in $new_imports; do
235
+ details+=("added import: $i")
236
+ done
237
+
238
+ # 输出 JSON 数组
239
+ local json="["
240
+ for d in "${details[@]}"; do
241
+ [[ -n "$d" ]] && json+="\"$d\","
242
+ done
243
+ json="${json%,}]"
244
+ echo "$json"
245
+ }
246
+
247
+ # 主流程
248
+ log_info "分析文件: $FILE_PATH"
249
+ log_info "语言: $LANGUAGE"
250
+ log_info "对比目标: $COMPARE_WITH"
251
+
252
+ # 提取当前结构
253
+ CURRENT_STRUCTURE=$(extract_structure "$FILE_PATH" "$LANGUAGE")
254
+ CONTENT_HASH=$(compute_hash "$FILE_PATH")
255
+
256
+ # 获取 diff 并分析变更
257
+ DIFF=$(get_git_diff "$FILE_PATH" "$COMPARE_WITH")
258
+ CHANGE_LEVEL=$(analyze_change_level "$DIFF")
259
+ CHANGE_DETAILS=$(extract_change_details "$DIFF" "$CHANGE_LEVEL")
260
+
261
+ # 输出结果
262
+ cat << EOF
263
+ {
264
+ "file_path": "$FILE_PATH",
265
+ "language": "$LANGUAGE",
266
+ "fingerprint": $CURRENT_STRUCTURE,
267
+ "content_hash": "$CONTENT_HASH",
268
+ "change_level": "$CHANGE_LEVEL",
269
+ "details": $CHANGE_DETAILS
270
+ }
271
+ EOF
272
+
273
+ log_info "完成"
@@ -0,0 +1,72 @@
1
+ name: code/fingerprint
2
+ description: |
3
+ 生成代码结构指纹,用于变更检测。
4
+
5
+ 通过提取代码的结构签名(函数签名、类结构、导入导出),
6
+ 可以区分"结构性变更"和"表面变更"(如注释、格式化)。
7
+
8
+ 用途:
9
+ - 增量分析(只处理真正变更的文件)
10
+ - 变更影响评估
11
+ - 代码审查优先级排序
12
+
13
+ inputs:
14
+ - name: file_path
15
+ type: string
16
+ required: true
17
+ description: 文件路径
18
+
19
+ - name: project_path
20
+ type: string
21
+ required: true
22
+ description: 项目根路径
23
+
24
+ - name: compare_with
25
+ type: string
26
+ required: false
27
+ description: |
28
+ 对比目标:
29
+ - "previous" - 与上一个 commit 对比
30
+ - "base" - 与基准分支对比
31
+ - 具体的 commit hash
32
+
33
+ outputs:
34
+ - name: fingerprint
35
+ type: object
36
+ description: 结构指纹对象
37
+
38
+ - name: content_hash
39
+ type: string
40
+ description: 内容哈希(SHA-256)
41
+
42
+ - name: change_level
43
+ type: string
44
+ description: |
45
+ 变更级别:
46
+ - "NONE" - 无变更
47
+ - "COSMETIC" - 表面变更(注释、格式)
48
+ - "STRUCTURAL" - 结构性变更
49
+
50
+ - name: details
51
+ type: array
52
+ description: 变更详情列表
53
+
54
+ handler: script
55
+ script: ./fingerprint.sh
56
+
57
+ examples:
58
+ - description: 检测文件变更级别
59
+ inputs:
60
+ file_path: "src/utils.ts"
61
+ project_path: "/home/user/project"
62
+ compare_with: "previous"
63
+ outputs:
64
+ fingerprint:
65
+ functions: ["helper", "format"]
66
+ classes: []
67
+ imports: ["lodash"]
68
+ content_hash: "abc123..."
69
+ change_level: "COSMETIC"
70
+ details: ["internal logic changed (no structural impact)"]
71
+
72
+ version: "1.0.0"
@@ -0,0 +1,68 @@
1
+ name: code/parse
2
+ description: |
3
+ 使用 Tree-sitter 解析代码文件,提取 AST 结构。
4
+ 支持函数、类、导入、导出等结构化信息提取。
5
+
6
+ 用途:
7
+ - 代码结构分析
8
+ - 知识图谱构建
9
+ - 变更检测(fingerprint)
10
+
11
+ inputs:
12
+ - name: file_path
13
+ type: string
14
+ required: true
15
+ description: 要解析的文件路径
16
+
17
+ - name: language
18
+ type: string
19
+ required: false
20
+ description: |
21
+ 语言类型(可选,自动检测)。
22
+ 支持:typescript, javascript, python, go, rust, java, cpp, c, ruby, php
23
+
24
+ - name: project_path
25
+ type: string
26
+ required: false
27
+ description: 项目根路径(用于相对路径计算)
28
+
29
+ outputs:
30
+ - name: ast_nodes
31
+ type: array
32
+ description: AST 节点列表
33
+
34
+ - name: functions
35
+ type: array
36
+ description: 函数列表(名称、参数、返回类型、行范围)
37
+
38
+ - name: classes
39
+ type: array
40
+ description: 类列表(名称、方法、属性、行范围)
41
+
42
+ - name: imports
43
+ type: array
44
+ description: 导入列表(来源、说明符)
45
+
46
+ - name: exports
47
+ type: array
48
+ description: 导出列表(名称、类型)
49
+
50
+ handler: builtin
51
+ handlerName: code_parse
52
+
53
+ examples:
54
+ - description: 解析 TypeScript 文件
55
+ inputs:
56
+ file_path: "src/index.ts"
57
+ project_path: "/home/user/project"
58
+ outputs:
59
+ functions:
60
+ - name: "main"
61
+ params: ["args"]
62
+ returnType: "void"
63
+ lineRange: [10, 25]
64
+ imports:
65
+ - source: "fs"
66
+ specifiers: ["readFileSync", "writeFileSync"]
67
+
68
+ version: "1.0.0"