cgraphx 1.4.1 → 2.0.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 (1311) hide show
  1. package/LICENSE +1 -1
  2. package/README.en.md +126 -0
  3. package/README.md +78 -196
  4. package/dist/.claude-template/.cgraphx/timeline-current-turn.json +1 -0
  5. package/dist/.claude-template/CLAUDE.md +10 -0
  6. package/dist/.claude-template/FLOW-MAP.md +107 -0
  7. package/dist/.claude-template/agents/knowledge-recall.md +126 -0
  8. package/dist/.claude-template/commands/end.md +62 -0
  9. package/dist/.claude-template/commands/my-query.md +1 -1
  10. package/dist/.claude-template/deprecated-assets.json +11 -0
  11. package/dist/.claude-template/hooks/precommit-check/precommit-check.cjs +27 -24
  12. package/dist/.claude-template/skills/.cgraphx/timeline-current-turn.json +1 -0
  13. package/dist/.claude-template/skills/cgraphx-guide/SKILL.md +22 -24
  14. package/dist/.claude-template/skills/cgraphx-guide/how-to-use.html +350 -165
  15. package/dist/.claude-template/skills/cgraphx-guide/how-to-use.md +211 -0
  16. package/dist/.claude-template/skills/clarify-requirements/SKILL.md +75 -383
  17. package/dist/.claude-template/skills/developer-timeline/SKILL.md +3 -2
  18. package/dist/.claude-template/skills/export-table-ddl/SKILL.md +3 -2
  19. package/dist/.claude-template/skills/handdrawn-deck/.cgraphx/timeline-current-turn.json +1 -0
  20. package/dist/.claude-template/skills/handdrawn-deck/SKILL.md +305 -0
  21. package/dist/.claude-template/skills/handdrawn-deck/references/.cgraphx/timeline-current-turn.json +1 -0
  22. package/dist/.claude-template/skills/handdrawn-deck/references/deck-template.html +469 -0
  23. package/dist/.claude-template/skills/handdrawn-deck/references/gen-script-md.cjs +44 -0
  24. package/dist/.claude-template/skills/handdrawn-deck/references/seg.cjs +54 -0
  25. package/dist/.claude-template/skills/handdrawn-sketch-engine/.cgraphx/timeline-current-turn.json +1 -0
  26. package/dist/.claude-template/skills/handdrawn-sketch-engine/SKILL.md +279 -0
  27. package/dist/.claude-template/skills/handdrawn-sketch-engine/assets/icon-library.js +238 -0
  28. package/dist/.claude-template/skills/handdrawn-sketch-engine/references/engine-template.html +275 -0
  29. package/dist/.claude-template/skills/handdrawn-sketch-engine/references/reference-render.html +445 -0
  30. package/dist/.claude-template/skills/implementation/SKILL.md +36 -110
  31. package/dist/.claude-template/skills/init-project-guides/SKILL.md +81 -0
  32. package/dist/.claude-template/skills/init-project-guides/templates/git-standards.md +37 -0
  33. package/dist/.claude-template/skills/init-project-guides/templates/go.md +160 -0
  34. package/dist/.claude-template/skills/init-project-guides/templates/java.md +173 -0
  35. package/dist/.claude-template/skills/init-project-guides/templates/schema-convention.md +11 -0
  36. package/dist/.claude-template/skills/init-project-guides/templates/typescript.md +156 -0
  37. package/dist/.claude-template/skills/knowledge-api/SKILL.md +143 -0
  38. package/dist/.claude-template/skills/knowledge-api/agent-prompt.md +51 -0
  39. package/dist/.claude-template/skills/knowledge-init/SKILL.md +761 -0
  40. package/dist/.claude-template/skills/knowledge-migrate/SKILL.md +173 -0
  41. package/dist/.claude-template/skills/knowledge-recall/SKILL.md +25 -0
  42. package/dist/.claude-template/skills/knowledge-write/SKILL.md +126 -0
  43. package/dist/.claude-template/skills/knowledge-write/template-concept.md +95 -0
  44. package/dist/.claude-template/skills/knowledge-write/template-flow.md +100 -0
  45. package/dist/.claude-template/skills/knowledge-write/template-guide.md +77 -0
  46. package/dist/.claude-template/skills/knowledge-write/template-memory.md +61 -0
  47. package/dist/.claude-template/skills/run-api-test/SKILL.md +6 -4
  48. package/dist/.claude-template/skills/run-api-test/assets/template-test-report.md +448 -55
  49. package/dist/.claude-template/skills/run-api-test/assets/template-test-verify.jsonl +5 -5
  50. package/dist/.claude-template/skills/run-api-test/references/report-format.md +54 -19
  51. package/dist/.claude-template/skills/subagent-implement/SKILL.md +60 -183
  52. package/dist/.claude-template/skills/subagent-implement/implementer-prompt.md +9 -4
  53. package/dist/.claude-template/skills/subagent-implement/quality-reviewer-prompt.md +1 -1
  54. package/dist/.claude-template/skills/subagent-implement/spec-reviewer-prompt.md +1 -0
  55. package/dist/.claude-template/skills/write-api/SKILL.md +7 -5
  56. package/dist/.claude-template/skills/write-api/assets/template-api-spec.md +2 -3
  57. package/dist/.claude-template/skills/write-api/assets/template-request.bru +21 -0
  58. package/dist/.claude-template/skills/write-api/references/ai-prompts.md +1 -2
  59. package/dist/.claude-template/skills/write-api/references/api-spec-format.md +0 -1
  60. package/dist/.claude-template/skills/write-api-doc/SKILL.md +8 -7
  61. package/dist/.claude-template/skills/write-design-doc/SKILL.md +86 -0
  62. package/dist/.claude-template/skills/write-design-doc/template-design-html.md +357 -0
  63. package/dist/.claude-template/skills/write-design-doc/template-design-md.md +164 -0
  64. package/dist/.claude-template/skills/write-plan/SKILL.md +94 -291
  65. package/dist/.claude-template/skills/write-plan/plan-document-reviewer-prompt.md +24 -6
  66. package/dist/.claude-template/skills/write-prd/SKILL.md +4 -2
  67. package/dist/.claude-template/skills/write-spec/SKILL.md +75 -282
  68. package/dist/.claude-template/skills/write-unit-test-code/SKILL.md +221 -0
  69. package/dist/.claude-template/skills/write-unit-test-spec/SKILL.md +115 -0
  70. package/dist/.claude-template/skills/write-workload/SKILL.md +130 -0
  71. package/dist/cli/fatal-handler.d.ts +21 -0
  72. package/dist/cli/fatal-handler.d.ts.map +1 -0
  73. package/dist/cli/fatal-handler.js +109 -0
  74. package/dist/cli/fatal-handler.js.map +1 -0
  75. package/dist/cli/index.d.ts +27 -0
  76. package/dist/cli/index.d.ts.map +1 -0
  77. package/dist/cli/index.js +248 -0
  78. package/dist/cli/index.js.map +1 -0
  79. package/dist/cli/installer/claude-assets.d.ts +101 -0
  80. package/dist/cli/installer/claude-assets.d.ts.map +1 -0
  81. package/dist/cli/installer/claude-assets.js +321 -0
  82. package/dist/cli/installer/claude-assets.js.map +1 -0
  83. package/dist/cli/installer/index.d.ts +105 -0
  84. package/dist/cli/installer/index.d.ts.map +1 -0
  85. package/dist/cli/installer/index.js +548 -0
  86. package/dist/cli/installer/index.js.map +1 -0
  87. package/dist/cli/installer/targets/claude.d.ts +72 -0
  88. package/dist/cli/installer/targets/claude.d.ts.map +1 -0
  89. package/dist/cli/installer/targets/claude.js +580 -0
  90. package/dist/cli/installer/targets/claude.js.map +1 -0
  91. package/dist/cli/installer/targets/registry.d.ts +32 -0
  92. package/dist/cli/installer/targets/registry.d.ts.map +1 -0
  93. package/dist/cli/installer/targets/registry.js +72 -0
  94. package/dist/cli/installer/targets/registry.js.map +1 -0
  95. package/dist/cli/installer/targets/shared.d.ts +66 -0
  96. package/dist/cli/installer/targets/shared.d.ts.map +1 -0
  97. package/dist/cli/installer/targets/shared.js +228 -0
  98. package/dist/cli/installer/targets/shared.js.map +1 -0
  99. package/dist/cli/installer/targets/types.d.ts +97 -0
  100. package/dist/cli/installer/targets/types.d.ts.map +1 -0
  101. package/dist/cli/installer/targets/types.js +16 -0
  102. package/dist/cli/installer/targets/types.js.map +1 -0
  103. package/dist/cli/node-version-check.d.ts +32 -0
  104. package/dist/cli/node-version-check.d.ts.map +1 -0
  105. package/dist/cli/node-version-check.js +54 -0
  106. package/dist/cli/node-version-check.js.map +1 -0
  107. package/dist/cli/ui/glyphs.d.ts +43 -0
  108. package/dist/cli/ui/glyphs.d.ts.map +1 -0
  109. package/dist/cli/ui/glyphs.js +79 -0
  110. package/dist/cli/ui/glyphs.js.map +1 -0
  111. package/dist/cli/uninstall.d.ts +18 -0
  112. package/dist/cli/uninstall.d.ts.map +1 -0
  113. package/dist/cli/uninstall.js +19 -0
  114. package/dist/cli/uninstall.js.map +1 -0
  115. package/dist/cli/upgrade/index.d.ts +81 -0
  116. package/dist/cli/upgrade/index.d.ts.map +1 -0
  117. package/dist/cli/upgrade/index.js +257 -0
  118. package/dist/cli/upgrade/index.js.map +1 -0
  119. package/dist/core/db/index.d.ts +123 -0
  120. package/dist/core/db/index.d.ts.map +1 -0
  121. package/dist/core/db/index.js +260 -0
  122. package/dist/core/db/index.js.map +1 -0
  123. package/dist/core/db/migrate.d.ts +29 -0
  124. package/dist/core/db/migrate.d.ts.map +1 -0
  125. package/dist/core/db/migrate.js +100 -0
  126. package/dist/core/db/migrate.js.map +1 -0
  127. package/dist/core/db/sqlite-adapter.d.ts +51 -0
  128. package/dist/core/db/sqlite-adapter.d.ts.map +1 -0
  129. package/dist/core/db/sqlite-adapter.js +116 -0
  130. package/dist/core/db/sqlite-adapter.js.map +1 -0
  131. package/dist/core/dbquery/cli.d.ts +17 -0
  132. package/dist/core/dbquery/cli.d.ts.map +1 -0
  133. package/dist/core/dbquery/cli.js +246 -0
  134. package/dist/core/dbquery/cli.js.map +1 -0
  135. package/dist/core/dbquery/config.d.ts.map +1 -0
  136. package/dist/core/dbquery/config.js.map +1 -0
  137. package/dist/core/dbquery/constants.d.ts.map +1 -0
  138. package/dist/core/dbquery/constants.js.map +1 -0
  139. package/dist/core/dbquery/drivers/mysql.d.ts.map +1 -0
  140. package/dist/core/dbquery/drivers/mysql.js.map +1 -0
  141. package/dist/core/dbquery/drivers/postgres.d.ts.map +1 -0
  142. package/dist/core/dbquery/drivers/postgres.js.map +1 -0
  143. package/dist/core/dbquery/errors.d.ts +40 -0
  144. package/dist/core/dbquery/errors.d.ts.map +1 -0
  145. package/dist/core/dbquery/errors.js +85 -0
  146. package/dist/core/dbquery/errors.js.map +1 -0
  147. package/dist/core/dbquery/executor.d.ts.map +1 -0
  148. package/dist/core/dbquery/executor.js.map +1 -0
  149. package/dist/core/dbquery/format.d.ts.map +1 -0
  150. package/dist/core/dbquery/format.js.map +1 -0
  151. package/dist/core/dbquery/identifiers.d.ts.map +1 -0
  152. package/dist/core/dbquery/identifiers.js.map +1 -0
  153. package/dist/core/dbquery/index.d.ts.map +1 -0
  154. package/dist/core/dbquery/index.js.map +1 -0
  155. package/dist/core/dbquery/init.d.ts +33 -0
  156. package/dist/core/dbquery/init.d.ts.map +1 -0
  157. package/dist/core/dbquery/init.js +125 -0
  158. package/dist/core/dbquery/init.js.map +1 -0
  159. package/dist/core/dbquery/logging.d.ts.map +1 -0
  160. package/dist/core/dbquery/logging.js.map +1 -0
  161. package/dist/core/dbquery/queries.d.ts.map +1 -0
  162. package/dist/core/dbquery/queries.js.map +1 -0
  163. package/dist/core/dbquery/safety.d.ts.map +1 -0
  164. package/dist/core/dbquery/safety.js.map +1 -0
  165. package/dist/core/dbquery/types.d.ts +139 -0
  166. package/dist/core/dbquery/types.d.ts.map +1 -0
  167. package/dist/core/dbquery/types.js +10 -0
  168. package/dist/core/dbquery/types.js.map +1 -0
  169. package/dist/core/directory.d.ts +60 -0
  170. package/dist/core/directory.d.ts.map +1 -0
  171. package/dist/core/directory.js +243 -0
  172. package/dist/core/directory.js.map +1 -0
  173. package/dist/core/errors.d.ts +79 -0
  174. package/dist/core/errors.d.ts.map +1 -0
  175. package/dist/core/errors.js +133 -0
  176. package/dist/core/errors.js.map +1 -0
  177. package/dist/core/features/cli.d.ts +12 -0
  178. package/dist/core/features/cli.d.ts.map +1 -0
  179. package/dist/core/features/cli.js +154 -0
  180. package/dist/core/features/cli.js.map +1 -0
  181. package/dist/core/features/index.d.ts +15 -0
  182. package/dist/core/features/index.d.ts.map +1 -0
  183. package/dist/core/features/index.js +39 -0
  184. package/dist/core/features/index.js.map +1 -0
  185. package/dist/core/features/scanner.d.ts +26 -0
  186. package/dist/core/features/scanner.d.ts.map +1 -0
  187. package/dist/core/features/scanner.js +198 -0
  188. package/dist/core/features/scanner.js.map +1 -0
  189. package/dist/core/features/sync.d.ts +26 -0
  190. package/dist/core/features/sync.d.ts.map +1 -0
  191. package/dist/core/features/sync.js +108 -0
  192. package/dist/core/features/sync.js.map +1 -0
  193. package/dist/core/features/types.d.ts +35 -0
  194. package/dist/core/features/types.d.ts.map +1 -0
  195. package/dist/core/features/types.js +12 -0
  196. package/dist/core/features/types.js.map +1 -0
  197. package/dist/core/markdown/cli.d.ts +16 -0
  198. package/dist/core/markdown/cli.d.ts.map +1 -0
  199. package/dist/core/markdown/cli.js +575 -0
  200. package/dist/core/markdown/cli.js.map +1 -0
  201. package/dist/core/markdown/constants.d.ts +22 -0
  202. package/dist/core/markdown/constants.d.ts.map +1 -0
  203. package/dist/core/markdown/constants.js +61 -0
  204. package/dist/core/markdown/constants.js.map +1 -0
  205. package/dist/core/markdown/dedup.d.ts.map +1 -0
  206. package/dist/core/markdown/dedup.js.map +1 -0
  207. package/dist/core/markdown/errors.d.ts +22 -0
  208. package/dist/core/markdown/errors.d.ts.map +1 -0
  209. package/dist/core/markdown/errors.js +45 -0
  210. package/dist/core/markdown/errors.js.map +1 -0
  211. package/dist/core/markdown/extractor.d.ts.map +1 -0
  212. package/dist/core/markdown/extractor.js.map +1 -0
  213. package/dist/core/markdown/frontmatter-parser.d.ts +54 -0
  214. package/dist/core/markdown/frontmatter-parser.d.ts.map +1 -0
  215. package/dist/core/markdown/frontmatter-parser.js +229 -0
  216. package/dist/core/markdown/frontmatter-parser.js.map +1 -0
  217. package/dist/core/markdown/index.d.ts +21 -0
  218. package/dist/core/markdown/index.d.ts.map +1 -0
  219. package/dist/core/markdown/index.js +36 -0
  220. package/dist/core/markdown/index.js.map +1 -0
  221. package/dist/core/markdown/indexer.d.ts +34 -0
  222. package/dist/core/markdown/indexer.d.ts.map +1 -0
  223. package/dist/core/markdown/indexer.js +256 -0
  224. package/dist/core/markdown/indexer.js.map +1 -0
  225. package/dist/core/markdown/query-dedup.d.ts +23 -0
  226. package/dist/core/markdown/query-dedup.d.ts.map +1 -0
  227. package/dist/core/markdown/query-dedup.js +141 -0
  228. package/dist/core/markdown/query-dedup.js.map +1 -0
  229. package/dist/core/markdown/query-helpers.d.ts +66 -0
  230. package/dist/core/markdown/query-helpers.d.ts.map +1 -0
  231. package/dist/core/markdown/query-helpers.js +334 -0
  232. package/dist/core/markdown/query-helpers.js.map +1 -0
  233. package/dist/core/markdown/query.d.ts +125 -0
  234. package/dist/core/markdown/query.d.ts.map +1 -0
  235. package/dist/core/markdown/query.js +367 -0
  236. package/dist/core/markdown/query.js.map +1 -0
  237. package/dist/core/markdown/schema-bootstrap.d.ts +40 -0
  238. package/dist/core/markdown/schema-bootstrap.d.ts.map +1 -0
  239. package/dist/core/markdown/schema-bootstrap.js +85 -0
  240. package/dist/core/markdown/schema-bootstrap.js.map +1 -0
  241. package/dist/core/markdown/schema.sql +124 -0
  242. package/dist/core/markdown/store.d.ts.map +1 -0
  243. package/dist/core/markdown/store.js.map +1 -0
  244. package/dist/core/markdown/summary-extractor.d.ts.map +1 -0
  245. package/dist/core/markdown/summary-extractor.js.map +1 -0
  246. package/dist/core/markdown/types.d.ts +186 -0
  247. package/dist/core/markdown/types.d.ts.map +1 -0
  248. package/dist/core/markdown/types.js.map +1 -0
  249. package/dist/core/markdown/validator.d.ts +44 -0
  250. package/dist/core/markdown/validator.d.ts.map +1 -0
  251. package/dist/core/markdown/validator.js +95 -0
  252. package/dist/core/markdown/validator.js.map +1 -0
  253. package/dist/core/timeline/bash-semantics.d.ts.map +1 -0
  254. package/dist/core/timeline/bash-semantics.js.map +1 -0
  255. package/dist/core/timeline/cli.d.ts.map +1 -0
  256. package/dist/core/timeline/cli.js.map +1 -0
  257. package/dist/core/timeline/constants.d.ts +62 -0
  258. package/dist/core/timeline/constants.d.ts.map +1 -0
  259. package/dist/core/timeline/constants.js +73 -0
  260. package/dist/core/timeline/constants.js.map +1 -0
  261. package/dist/core/timeline/errors.d.ts.map +1 -0
  262. package/dist/core/timeline/errors.js.map +1 -0
  263. package/dist/core/timeline/hook-runner.d.ts.map +1 -0
  264. package/dist/core/timeline/hook-runner.js.map +1 -0
  265. package/dist/core/timeline/hooks.d.ts.map +1 -0
  266. package/dist/core/timeline/hooks.js.map +1 -0
  267. package/dist/core/timeline/index.d.ts.map +1 -0
  268. package/dist/core/timeline/index.js.map +1 -0
  269. package/dist/core/timeline/indexer.d.ts.map +1 -0
  270. package/dist/core/timeline/indexer.js.map +1 -0
  271. package/dist/core/timeline/installer.d.ts.map +1 -0
  272. package/dist/core/timeline/installer.js.map +1 -0
  273. package/dist/core/timeline/payload.d.ts.map +1 -0
  274. package/dist/core/timeline/payload.js.map +1 -0
  275. package/dist/core/timeline/post-tool-summary.d.ts.map +1 -0
  276. package/dist/core/timeline/post-tool-summary.js.map +1 -0
  277. package/dist/core/timeline/recorder.d.ts.map +1 -0
  278. package/dist/core/timeline/recorder.js.map +1 -0
  279. package/dist/core/timeline/schema-bootstrap.d.ts +42 -0
  280. package/dist/core/timeline/schema-bootstrap.d.ts.map +1 -0
  281. package/dist/core/timeline/schema-bootstrap.js +81 -0
  282. package/dist/core/timeline/schema-bootstrap.js.map +1 -0
  283. package/dist/core/timeline/store.d.ts.map +1 -0
  284. package/dist/core/timeline/store.js.map +1 -0
  285. package/dist/core/timeline/types.d.ts.map +1 -0
  286. package/dist/core/timeline/types.js.map +1 -0
  287. package/dist/core/types.d.ts +25 -0
  288. package/dist/core/types.d.ts.map +1 -0
  289. package/dist/core/types.js +12 -0
  290. package/dist/core/types.js.map +1 -0
  291. package/dist/web/bootstrap.d.ts +26 -0
  292. package/dist/web/bootstrap.d.ts.map +1 -0
  293. package/dist/web/bootstrap.js +98 -0
  294. package/dist/web/bootstrap.js.map +1 -0
  295. package/dist/web/constants.d.ts +27 -0
  296. package/dist/web/constants.d.ts.map +1 -0
  297. package/dist/web/constants.js +41 -0
  298. package/dist/web/constants.js.map +1 -0
  299. package/dist/web/errors.d.ts +46 -0
  300. package/dist/web/errors.d.ts.map +1 -0
  301. package/dist/web/errors.js +56 -0
  302. package/dist/web/errors.js.map +1 -0
  303. package/dist/web/index.d.ts +13 -0
  304. package/dist/web/index.d.ts.map +1 -0
  305. package/dist/web/index.js +20 -0
  306. package/dist/web/index.js.map +1 -0
  307. package/dist/web/layout.d.ts +31 -0
  308. package/dist/web/layout.d.ts.map +1 -0
  309. package/dist/web/layout.js +77 -0
  310. package/dist/web/layout.js.map +1 -0
  311. package/dist/web/markdown.d.ts +23 -0
  312. package/dist/web/markdown.d.ts.map +1 -0
  313. package/dist/web/markdown.js +38 -0
  314. package/dist/web/markdown.js.map +1 -0
  315. package/dist/web/overview-templates.d.ts +123 -0
  316. package/dist/web/overview-templates.d.ts.map +1 -0
  317. package/dist/web/overview-templates.js +213 -0
  318. package/dist/web/overview-templates.js.map +1 -0
  319. package/dist/web/pages-detail.d.ts +32 -0
  320. package/dist/web/pages-detail.d.ts.map +1 -0
  321. package/dist/web/pages-detail.js +275 -0
  322. package/dist/web/pages-detail.js.map +1 -0
  323. package/dist/web/pages-overview.d.ts +60 -0
  324. package/dist/web/pages-overview.d.ts.map +1 -0
  325. package/dist/web/pages-overview.js +304 -0
  326. package/dist/web/pages-overview.js.map +1 -0
  327. package/dist/web/public/app.css +1772 -0
  328. package/dist/web/public/app.js +41 -0
  329. package/dist/web/register.d.ts +12 -0
  330. package/dist/web/register.d.ts.map +1 -0
  331. package/dist/web/register.js +88 -0
  332. package/dist/web/register.js.map +1 -0
  333. package/dist/web/render-utils.d.ts +28 -0
  334. package/dist/web/render-utils.d.ts.map +1 -0
  335. package/dist/web/render-utils.js +54 -0
  336. package/dist/web/render-utils.js.map +1 -0
  337. package/dist/web/server.d.ts +42 -0
  338. package/dist/web/server.d.ts.map +1 -0
  339. package/dist/web/server.js +292 -0
  340. package/dist/web/server.js.map +1 -0
  341. package/package.json +14 -27
  342. package/scripts/copy-assets.cjs +89 -0
  343. package/dist/.claude-template/commands/my-commit.md +0 -9
  344. package/dist/.claude-template/skills/cgraphx/SKILL.md +0 -143
  345. package/dist/.claude-template/skills/cgraphx/agent-prompt.md +0 -56
  346. package/dist/.claude-template/skills/code-impact-api/SKILL.md +0 -143
  347. package/dist/.claude-template/skills/code-impact-api/agent-prompt.md +0 -51
  348. package/dist/.claude-template/skills/code-impact-docgen/SKILL.md +0 -376
  349. package/dist/.claude-template/skills/code-impact-docgen/template-design-html.md +0 -357
  350. package/dist/.claude-template/skills/code-impact-docgen/template-design-md.md +0 -164
  351. package/dist/.claude-template/skills/code-impact-init/SKILL.md +0 -803
  352. package/dist/.claude-template/skills/code-impact-markdown/SKILL.md +0 -353
  353. package/dist/.claude-template/skills/code-impact-markdown/template-guide.md +0 -68
  354. package/dist/.claude-template/skills/code-impact-markdown/template-memory.md +0 -82
  355. package/dist/.claude-template/skills/code-impact-markdown/template-runbook.md +0 -58
  356. package/dist/.claude-template/skills/precommit-review/SKILL.md +0 -50
  357. package/dist/api-test/ai-fields.d.ts +0 -37
  358. package/dist/api-test/ai-fields.d.ts.map +0 -1
  359. package/dist/api-test/ai-fields.js +0 -114
  360. package/dist/api-test/ai-fields.js.map +0 -1
  361. package/dist/api-test/assemble.d.ts +0 -76
  362. package/dist/api-test/assemble.d.ts.map +0 -1
  363. package/dist/api-test/assemble.js +0 -185
  364. package/dist/api-test/assemble.js.map +0 -1
  365. package/dist/api-test/bru-cli-invoker.d.ts +0 -72
  366. package/dist/api-test/bru-cli-invoker.d.ts.map +0 -1
  367. package/dist/api-test/bru-cli-invoker.js +0 -169
  368. package/dist/api-test/bru-cli-invoker.js.map +0 -1
  369. package/dist/api-test/bru-report-parser.d.ts +0 -24
  370. package/dist/api-test/bru-report-parser.d.ts.map +0 -1
  371. package/dist/api-test/bru-report-parser.js +0 -110
  372. package/dist/api-test/bru-report-parser.js.map +0 -1
  373. package/dist/api-test/bru-runner.d.ts +0 -101
  374. package/dist/api-test/bru-runner.d.ts.map +0 -1
  375. package/dist/api-test/bru-runner.js +0 -316
  376. package/dist/api-test/bru-runner.js.map +0 -1
  377. package/dist/api-test/bru-writer.d.ts +0 -52
  378. package/dist/api-test/bru-writer.d.ts.map +0 -1
  379. package/dist/api-test/bru-writer.js +0 -159
  380. package/dist/api-test/bru-writer.js.map +0 -1
  381. package/dist/api-test/call-chain-extractor.d.ts +0 -80
  382. package/dist/api-test/call-chain-extractor.d.ts.map +0 -1
  383. package/dist/api-test/call-chain-extractor.js +0 -179
  384. package/dist/api-test/call-chain-extractor.js.map +0 -1
  385. package/dist/api-test/cli.d.ts +0 -133
  386. package/dist/api-test/cli.d.ts.map +0 -1
  387. package/dist/api-test/cli.js +0 -1009
  388. package/dist/api-test/cli.js.map +0 -1
  389. package/dist/api-test/config.d.ts +0 -75
  390. package/dist/api-test/config.d.ts.map +0 -1
  391. package/dist/api-test/config.js +0 -406
  392. package/dist/api-test/config.js.map +0 -1
  393. package/dist/api-test/db-query-cli.d.ts +0 -51
  394. package/dist/api-test/db-query-cli.d.ts.map +0 -1
  395. package/dist/api-test/db-query-cli.js +0 -119
  396. package/dist/api-test/db-query-cli.js.map +0 -1
  397. package/dist/api-test/enhance-prepare.d.ts +0 -111
  398. package/dist/api-test/enhance-prepare.d.ts.map +0 -1
  399. package/dist/api-test/enhance-prepare.js +0 -425
  400. package/dist/api-test/enhance-prepare.js.map +0 -1
  401. package/dist/api-test/enhance-write.d.ts +0 -28
  402. package/dist/api-test/enhance-write.d.ts.map +0 -1
  403. package/dist/api-test/enhance-write.js +0 -145
  404. package/dist/api-test/enhance-write.js.map +0 -1
  405. package/dist/api-test/errors.d.ts +0 -48
  406. package/dist/api-test/errors.d.ts.map +0 -1
  407. package/dist/api-test/errors.js +0 -76
  408. package/dist/api-test/errors.js.map +0 -1
  409. package/dist/api-test/field-extractor.d.ts +0 -98
  410. package/dist/api-test/field-extractor.d.ts.map +0 -1
  411. package/dist/api-test/field-extractor.js +0 -327
  412. package/dist/api-test/field-extractor.js.map +0 -1
  413. package/dist/api-test/impl-finder.d.ts +0 -37
  414. package/dist/api-test/impl-finder.d.ts.map +0 -1
  415. package/dist/api-test/impl-finder.js +0 -54
  416. package/dist/api-test/impl-finder.js.map +0 -1
  417. package/dist/api-test/index.d.ts +0 -41
  418. package/dist/api-test/index.d.ts.map +0 -1
  419. package/dist/api-test/index.js +0 -124
  420. package/dist/api-test/index.js.map +0 -1
  421. package/dist/api-test/java-parser.d.ts +0 -89
  422. package/dist/api-test/java-parser.d.ts.map +0 -1
  423. package/dist/api-test/java-parser.js +0 -508
  424. package/dist/api-test/java-parser.js.map +0 -1
  425. package/dist/api-test/md-writer.d.ts +0 -49
  426. package/dist/api-test/md-writer.d.ts.map +0 -1
  427. package/dist/api-test/md-writer.js +0 -202
  428. package/dist/api-test/md-writer.js.map +0 -1
  429. package/dist/api-test/parser-httpservice.d.ts +0 -91
  430. package/dist/api-test/parser-httpservice.d.ts.map +0 -1
  431. package/dist/api-test/parser-httpservice.js +0 -271
  432. package/dist/api-test/parser-httpservice.js.map +0 -1
  433. package/dist/api-test/report.d.ts +0 -188
  434. package/dist/api-test/report.d.ts.map +0 -1
  435. package/dist/api-test/report.js +0 -522
  436. package/dist/api-test/report.js.map +0 -1
  437. package/dist/api-test/snapshot.d.ts +0 -26
  438. package/dist/api-test/snapshot.d.ts.map +0 -1
  439. package/dist/api-test/snapshot.js +0 -150
  440. package/dist/api-test/snapshot.js.map +0 -1
  441. package/dist/api-test/test-history.d.ts +0 -48
  442. package/dist/api-test/test-history.d.ts.map +0 -1
  443. package/dist/api-test/test-history.js +0 -122
  444. package/dist/api-test/test-history.js.map +0 -1
  445. package/dist/api-test/types.d.ts +0 -174
  446. package/dist/api-test/types.d.ts.map +0 -1
  447. package/dist/api-test/types.js +0 -13
  448. package/dist/api-test/types.js.map +0 -1
  449. package/dist/api-test/verify-prepare.d.ts +0 -30
  450. package/dist/api-test/verify-prepare.d.ts.map +0 -1
  451. package/dist/api-test/verify-prepare.js +0 -150
  452. package/dist/api-test/verify-prepare.js.map +0 -1
  453. package/dist/api-test/verify-write.d.ts +0 -31
  454. package/dist/api-test/verify-write.d.ts.map +0 -1
  455. package/dist/api-test/verify-write.js +0 -159
  456. package/dist/api-test/verify-write.js.map +0 -1
  457. package/dist/bin/codegraph.d.ts +0 -26
  458. package/dist/bin/codegraph.d.ts.map +0 -1
  459. package/dist/bin/codegraph.js +0 -1914
  460. package/dist/bin/codegraph.js.map +0 -1
  461. package/dist/bin/fatal-handler.d.ts +0 -20
  462. package/dist/bin/fatal-handler.d.ts.map +0 -1
  463. package/dist/bin/fatal-handler.js +0 -118
  464. package/dist/bin/fatal-handler.js.map +0 -1
  465. package/dist/bin/node-version-check.d.ts +0 -51
  466. package/dist/bin/node-version-check.d.ts.map +0 -1
  467. package/dist/bin/node-version-check.js +0 -114
  468. package/dist/bin/node-version-check.js.map +0 -1
  469. package/dist/bin/uninstall.d.ts +0 -14
  470. package/dist/bin/uninstall.d.ts.map +0 -1
  471. package/dist/bin/uninstall.js +0 -36
  472. package/dist/bin/uninstall.js.map +0 -1
  473. package/dist/context/formatter.d.ts +0 -30
  474. package/dist/context/formatter.d.ts.map +0 -1
  475. package/dist/context/formatter.js +0 -263
  476. package/dist/context/formatter.js.map +0 -1
  477. package/dist/context/index.d.ts +0 -119
  478. package/dist/context/index.d.ts.map +0 -1
  479. package/dist/context/index.js +0 -1296
  480. package/dist/context/index.js.map +0 -1
  481. package/dist/context/markers.d.ts +0 -19
  482. package/dist/context/markers.d.ts.map +0 -1
  483. package/dist/context/markers.js +0 -22
  484. package/dist/context/markers.js.map +0 -1
  485. package/dist/db/index.d.ts +0 -122
  486. package/dist/db/index.d.ts.map +0 -1
  487. package/dist/db/index.js +0 -296
  488. package/dist/db/index.js.map +0 -1
  489. package/dist/db/migrations.d.ts +0 -44
  490. package/dist/db/migrations.d.ts.map +0 -1
  491. package/dist/db/migrations.js +0 -140
  492. package/dist/db/migrations.js.map +0 -1
  493. package/dist/db/queries.d.ts +0 -401
  494. package/dist/db/queries.d.ts.map +0 -1
  495. package/dist/db/queries.js +0 -1591
  496. package/dist/db/queries.js.map +0 -1
  497. package/dist/db/schema.sql +0 -152
  498. package/dist/db/sqlite-adapter.d.ts +0 -53
  499. package/dist/db/sqlite-adapter.d.ts.map +0 -1
  500. package/dist/db/sqlite-adapter.js +0 -117
  501. package/dist/db/sqlite-adapter.js.map +0 -1
  502. package/dist/dbquery/cli.d.ts +0 -17
  503. package/dist/dbquery/cli.d.ts.map +0 -1
  504. package/dist/dbquery/cli.js +0 -246
  505. package/dist/dbquery/cli.js.map +0 -1
  506. package/dist/dbquery/config.d.ts.map +0 -1
  507. package/dist/dbquery/config.js.map +0 -1
  508. package/dist/dbquery/constants.d.ts.map +0 -1
  509. package/dist/dbquery/constants.js.map +0 -1
  510. package/dist/dbquery/drivers/mysql.d.ts.map +0 -1
  511. package/dist/dbquery/drivers/mysql.js.map +0 -1
  512. package/dist/dbquery/drivers/postgres.d.ts.map +0 -1
  513. package/dist/dbquery/drivers/postgres.js.map +0 -1
  514. package/dist/dbquery/dump-schema.d.ts +0 -46
  515. package/dist/dbquery/dump-schema.d.ts.map +0 -1
  516. package/dist/dbquery/dump-schema.js +0 -379
  517. package/dist/dbquery/dump-schema.js.map +0 -1
  518. package/dist/dbquery/errors.d.ts +0 -40
  519. package/dist/dbquery/errors.d.ts.map +0 -1
  520. package/dist/dbquery/errors.js +0 -85
  521. package/dist/dbquery/errors.js.map +0 -1
  522. package/dist/dbquery/executor.d.ts.map +0 -1
  523. package/dist/dbquery/executor.js.map +0 -1
  524. package/dist/dbquery/format.d.ts.map +0 -1
  525. package/dist/dbquery/format.js.map +0 -1
  526. package/dist/dbquery/identifiers.d.ts.map +0 -1
  527. package/dist/dbquery/identifiers.js.map +0 -1
  528. package/dist/dbquery/index.d.ts.map +0 -1
  529. package/dist/dbquery/index.js.map +0 -1
  530. package/dist/dbquery/init.d.ts +0 -33
  531. package/dist/dbquery/init.d.ts.map +0 -1
  532. package/dist/dbquery/init.js +0 -125
  533. package/dist/dbquery/init.js.map +0 -1
  534. package/dist/dbquery/logging.d.ts.map +0 -1
  535. package/dist/dbquery/logging.js.map +0 -1
  536. package/dist/dbquery/mcp-tools.d.ts +0 -29
  537. package/dist/dbquery/mcp-tools.d.ts.map +0 -1
  538. package/dist/dbquery/mcp-tools.js +0 -206
  539. package/dist/dbquery/mcp-tools.js.map +0 -1
  540. package/dist/dbquery/queries.d.ts.map +0 -1
  541. package/dist/dbquery/queries.js.map +0 -1
  542. package/dist/dbquery/safety.d.ts.map +0 -1
  543. package/dist/dbquery/safety.js.map +0 -1
  544. package/dist/dbquery/types.d.ts +0 -139
  545. package/dist/dbquery/types.d.ts.map +0 -1
  546. package/dist/dbquery/types.js +0 -10
  547. package/dist/dbquery/types.js.map +0 -1
  548. package/dist/directory.d.ts +0 -147
  549. package/dist/directory.d.ts.map +0 -1
  550. package/dist/directory.js +0 -523
  551. package/dist/directory.js.map +0 -1
  552. package/dist/errors.d.ts +0 -136
  553. package/dist/errors.d.ts.map +0 -1
  554. package/dist/errors.js +0 -219
  555. package/dist/errors.js.map +0 -1
  556. package/dist/extraction/astro-extractor.d.ts +0 -79
  557. package/dist/extraction/astro-extractor.d.ts.map +0 -1
  558. package/dist/extraction/astro-extractor.js +0 -320
  559. package/dist/extraction/astro-extractor.js.map +0 -1
  560. package/dist/extraction/dfm-extractor.d.ts +0 -31
  561. package/dist/extraction/dfm-extractor.d.ts.map +0 -1
  562. package/dist/extraction/dfm-extractor.js +0 -151
  563. package/dist/extraction/dfm-extractor.js.map +0 -1
  564. package/dist/extraction/extraction-version.d.ts +0 -25
  565. package/dist/extraction/extraction-version.d.ts.map +0 -1
  566. package/dist/extraction/extraction-version.js +0 -28
  567. package/dist/extraction/extraction-version.js.map +0 -1
  568. package/dist/extraction/function-ref.d.ts +0 -118
  569. package/dist/extraction/function-ref.d.ts.map +0 -1
  570. package/dist/extraction/function-ref.js +0 -727
  571. package/dist/extraction/function-ref.js.map +0 -1
  572. package/dist/extraction/generated-detection.d.ts +0 -30
  573. package/dist/extraction/generated-detection.d.ts.map +0 -1
  574. package/dist/extraction/generated-detection.js +0 -83
  575. package/dist/extraction/generated-detection.js.map +0 -1
  576. package/dist/extraction/grammars.d.ts +0 -114
  577. package/dist/extraction/grammars.d.ts.map +0 -1
  578. package/dist/extraction/grammars.js +0 -477
  579. package/dist/extraction/grammars.js.map +0 -1
  580. package/dist/extraction/index.d.ts +0 -175
  581. package/dist/extraction/index.d.ts.map +0 -1
  582. package/dist/extraction/index.js +0 -1887
  583. package/dist/extraction/index.js.map +0 -1
  584. package/dist/extraction/languages/c-cpp.d.ts +0 -12
  585. package/dist/extraction/languages/c-cpp.d.ts.map +0 -1
  586. package/dist/extraction/languages/c-cpp.js +0 -275
  587. package/dist/extraction/languages/c-cpp.js.map +0 -1
  588. package/dist/extraction/languages/csharp.d.ts +0 -25
  589. package/dist/extraction/languages/csharp.d.ts.map +0 -1
  590. package/dist/extraction/languages/csharp.js +0 -175
  591. package/dist/extraction/languages/csharp.js.map +0 -1
  592. package/dist/extraction/languages/dart.d.ts +0 -3
  593. package/dist/extraction/languages/dart.d.ts.map +0 -1
  594. package/dist/extraction/languages/dart.js +0 -374
  595. package/dist/extraction/languages/dart.js.map +0 -1
  596. package/dist/extraction/languages/go.d.ts +0 -3
  597. package/dist/extraction/languages/go.d.ts.map +0 -1
  598. package/dist/extraction/languages/go.js +0 -111
  599. package/dist/extraction/languages/go.js.map +0 -1
  600. package/dist/extraction/languages/index.d.ts +0 -10
  601. package/dist/extraction/languages/index.d.ts.map +0 -1
  602. package/dist/extraction/languages/index.js +0 -53
  603. package/dist/extraction/languages/index.js.map +0 -1
  604. package/dist/extraction/languages/java.d.ts +0 -3
  605. package/dist/extraction/languages/java.d.ts.map +0 -1
  606. package/dist/extraction/languages/java.js +0 -315
  607. package/dist/extraction/languages/java.js.map +0 -1
  608. package/dist/extraction/languages/javascript.d.ts +0 -3
  609. package/dist/extraction/languages/javascript.d.ts.map +0 -1
  610. package/dist/extraction/languages/javascript.js +0 -106
  611. package/dist/extraction/languages/javascript.js.map +0 -1
  612. package/dist/extraction/languages/kotlin.d.ts +0 -3
  613. package/dist/extraction/languages/kotlin.d.ts.map +0 -1
  614. package/dist/extraction/languages/kotlin.js +0 -379
  615. package/dist/extraction/languages/kotlin.js.map +0 -1
  616. package/dist/extraction/languages/lua.d.ts +0 -3
  617. package/dist/extraction/languages/lua.d.ts.map +0 -1
  618. package/dist/extraction/languages/lua.js +0 -150
  619. package/dist/extraction/languages/lua.js.map +0 -1
  620. package/dist/extraction/languages/luau.d.ts +0 -3
  621. package/dist/extraction/languages/luau.d.ts.map +0 -1
  622. package/dist/extraction/languages/luau.js +0 -37
  623. package/dist/extraction/languages/luau.js.map +0 -1
  624. package/dist/extraction/languages/objc.d.ts +0 -3
  625. package/dist/extraction/languages/objc.d.ts.map +0 -1
  626. package/dist/extraction/languages/objc.js +0 -175
  627. package/dist/extraction/languages/objc.js.map +0 -1
  628. package/dist/extraction/languages/pascal.d.ts +0 -3
  629. package/dist/extraction/languages/pascal.d.ts.map +0 -1
  630. package/dist/extraction/languages/pascal.js +0 -77
  631. package/dist/extraction/languages/pascal.js.map +0 -1
  632. package/dist/extraction/languages/php.d.ts +0 -3
  633. package/dist/extraction/languages/php.d.ts.map +0 -1
  634. package/dist/extraction/languages/php.js +0 -196
  635. package/dist/extraction/languages/php.js.map +0 -1
  636. package/dist/extraction/languages/python.d.ts +0 -3
  637. package/dist/extraction/languages/python.d.ts.map +0 -1
  638. package/dist/extraction/languages/python.js +0 -56
  639. package/dist/extraction/languages/python.js.map +0 -1
  640. package/dist/extraction/languages/r.d.ts +0 -3
  641. package/dist/extraction/languages/r.d.ts.map +0 -1
  642. package/dist/extraction/languages/r.js +0 -314
  643. package/dist/extraction/languages/r.js.map +0 -1
  644. package/dist/extraction/languages/ruby.d.ts +0 -3
  645. package/dist/extraction/languages/ruby.d.ts.map +0 -1
  646. package/dist/extraction/languages/ruby.js +0 -149
  647. package/dist/extraction/languages/ruby.js.map +0 -1
  648. package/dist/extraction/languages/rust.d.ts +0 -3
  649. package/dist/extraction/languages/rust.d.ts.map +0 -1
  650. package/dist/extraction/languages/rust.js +0 -142
  651. package/dist/extraction/languages/rust.js.map +0 -1
  652. package/dist/extraction/languages/scala.d.ts +0 -3
  653. package/dist/extraction/languages/scala.d.ts.map +0 -1
  654. package/dist/extraction/languages/scala.js +0 -209
  655. package/dist/extraction/languages/scala.js.map +0 -1
  656. package/dist/extraction/languages/swift.d.ts +0 -3
  657. package/dist/extraction/languages/swift.d.ts.map +0 -1
  658. package/dist/extraction/languages/swift.js +0 -152
  659. package/dist/extraction/languages/swift.js.map +0 -1
  660. package/dist/extraction/languages/typescript.d.ts +0 -16
  661. package/dist/extraction/languages/typescript.d.ts.map +0 -1
  662. package/dist/extraction/languages/typescript.js +0 -167
  663. package/dist/extraction/languages/typescript.js.map +0 -1
  664. package/dist/extraction/liquid-extractor.d.ts +0 -59
  665. package/dist/extraction/liquid-extractor.d.ts.map +0 -1
  666. package/dist/extraction/liquid-extractor.js +0 -357
  667. package/dist/extraction/liquid-extractor.js.map +0 -1
  668. package/dist/extraction/mybatis-extractor.d.ts +0 -48
  669. package/dist/extraction/mybatis-extractor.d.ts.map +0 -1
  670. package/dist/extraction/mybatis-extractor.js +0 -198
  671. package/dist/extraction/mybatis-extractor.js.map +0 -1
  672. package/dist/extraction/parse-worker.d.ts +0 -8
  673. package/dist/extraction/parse-worker.d.ts.map +0 -1
  674. package/dist/extraction/parse-worker.js +0 -97
  675. package/dist/extraction/parse-worker.js.map +0 -1
  676. package/dist/extraction/razor-extractor.d.ts +0 -42
  677. package/dist/extraction/razor-extractor.d.ts.map +0 -1
  678. package/dist/extraction/razor-extractor.js +0 -285
  679. package/dist/extraction/razor-extractor.js.map +0 -1
  680. package/dist/extraction/svelte-extractor.d.ts +0 -56
  681. package/dist/extraction/svelte-extractor.d.ts.map +0 -1
  682. package/dist/extraction/svelte-extractor.js +0 -275
  683. package/dist/extraction/svelte-extractor.js.map +0 -1
  684. package/dist/extraction/tree-sitter-helpers.d.ts +0 -28
  685. package/dist/extraction/tree-sitter-helpers.d.ts.map +0 -1
  686. package/dist/extraction/tree-sitter-helpers.js +0 -152
  687. package/dist/extraction/tree-sitter-helpers.js.map +0 -1
  688. package/dist/extraction/tree-sitter-types.d.ts +0 -239
  689. package/dist/extraction/tree-sitter-types.d.ts.map +0 -1
  690. package/dist/extraction/tree-sitter-types.js +0 -10
  691. package/dist/extraction/tree-sitter-types.js.map +0 -1
  692. package/dist/extraction/tree-sitter.d.ts +0 -647
  693. package/dist/extraction/tree-sitter.d.ts.map +0 -1
  694. package/dist/extraction/tree-sitter.js +0 -5592
  695. package/dist/extraction/tree-sitter.js.map +0 -1
  696. package/dist/extraction/vue-extractor.d.ts +0 -51
  697. package/dist/extraction/vue-extractor.d.ts.map +0 -1
  698. package/dist/extraction/vue-extractor.js +0 -254
  699. package/dist/extraction/vue-extractor.js.map +0 -1
  700. package/dist/extraction/wasm/tree-sitter-c_sharp.wasm +0 -0
  701. package/dist/extraction/wasm/tree-sitter-lua.wasm +0 -0
  702. package/dist/extraction/wasm/tree-sitter-luau.wasm +0 -0
  703. package/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
  704. package/dist/extraction/wasm/tree-sitter-r.wasm +0 -0
  705. package/dist/extraction/wasm/tree-sitter-scala.wasm +0 -0
  706. package/dist/extraction/wasm-runtime-flags.d.ts +0 -38
  707. package/dist/extraction/wasm-runtime-flags.d.ts.map +0 -1
  708. package/dist/extraction/wasm-runtime-flags.js +0 -106
  709. package/dist/extraction/wasm-runtime-flags.js.map +0 -1
  710. package/dist/graph/index.d.ts +0 -8
  711. package/dist/graph/index.d.ts.map +0 -1
  712. package/dist/graph/index.js +0 -13
  713. package/dist/graph/index.js.map +0 -1
  714. package/dist/graph/queries.d.ts +0 -106
  715. package/dist/graph/queries.d.ts.map +0 -1
  716. package/dist/graph/queries.js +0 -339
  717. package/dist/graph/queries.js.map +0 -1
  718. package/dist/graph/traversal.d.ts +0 -127
  719. package/dist/graph/traversal.d.ts.map +0 -1
  720. package/dist/graph/traversal.js +0 -540
  721. package/dist/graph/traversal.js.map +0 -1
  722. package/dist/index.d.ts +0 -563
  723. package/dist/index.d.ts.map +0 -1
  724. package/dist/index.js +0 -1041
  725. package/dist/index.js.map +0 -1
  726. package/dist/installer/claude-assets.d.ts +0 -45
  727. package/dist/installer/claude-assets.d.ts.map +0 -1
  728. package/dist/installer/claude-assets.js +0 -144
  729. package/dist/installer/claude-assets.js.map +0 -1
  730. package/dist/installer/config-writer.d.ts +0 -28
  731. package/dist/installer/config-writer.d.ts.map +0 -1
  732. package/dist/installer/config-writer.js +0 -91
  733. package/dist/installer/config-writer.js.map +0 -1
  734. package/dist/installer/index.d.ts +0 -101
  735. package/dist/installer/index.d.ts.map +0 -1
  736. package/dist/installer/index.js +0 -692
  737. package/dist/installer/index.js.map +0 -1
  738. package/dist/installer/instructions-template.d.ts +0 -41
  739. package/dist/installer/instructions-template.d.ts.map +0 -1
  740. package/dist/installer/instructions-template.js +0 -53
  741. package/dist/installer/instructions-template.js.map +0 -1
  742. package/dist/installer/targets/antigravity.d.ts +0 -57
  743. package/dist/installer/targets/antigravity.d.ts.map +0 -1
  744. package/dist/installer/targets/antigravity.js +0 -308
  745. package/dist/installer/targets/antigravity.js.map +0 -1
  746. package/dist/installer/targets/claude.d.ts +0 -81
  747. package/dist/installer/targets/claude.d.ts.map +0 -1
  748. package/dist/installer/targets/claude.js +0 -617
  749. package/dist/installer/targets/claude.js.map +0 -1
  750. package/dist/installer/targets/codex.d.ts +0 -18
  751. package/dist/installer/targets/codex.d.ts.map +0 -1
  752. package/dist/installer/targets/codex.js +0 -185
  753. package/dist/installer/targets/codex.js.map +0 -1
  754. package/dist/installer/targets/cursor.d.ts +0 -35
  755. package/dist/installer/targets/cursor.d.ts.map +0 -1
  756. package/dist/installer/targets/cursor.js +0 -254
  757. package/dist/installer/targets/cursor.js.map +0 -1
  758. package/dist/installer/targets/gemini.d.ts +0 -26
  759. package/dist/installer/targets/gemini.d.ts.map +0 -1
  760. package/dist/installer/targets/gemini.js +0 -165
  761. package/dist/installer/targets/gemini.js.map +0 -1
  762. package/dist/installer/targets/hermes.d.ts +0 -18
  763. package/dist/installer/targets/hermes.d.ts.map +0 -1
  764. package/dist/installer/targets/hermes.js +0 -359
  765. package/dist/installer/targets/hermes.js.map +0 -1
  766. package/dist/installer/targets/kiro.d.ts +0 -27
  767. package/dist/installer/targets/kiro.d.ts.map +0 -1
  768. package/dist/installer/targets/kiro.js +0 -178
  769. package/dist/installer/targets/kiro.js.map +0 -1
  770. package/dist/installer/targets/opencode.d.ts +0 -38
  771. package/dist/installer/targets/opencode.d.ts.map +0 -1
  772. package/dist/installer/targets/opencode.js +0 -288
  773. package/dist/installer/targets/opencode.js.map +0 -1
  774. package/dist/installer/targets/registry.d.ts +0 -35
  775. package/dist/installer/targets/registry.d.ts.map +0 -1
  776. package/dist/installer/targets/registry.js +0 -91
  777. package/dist/installer/targets/registry.js.map +0 -1
  778. package/dist/installer/targets/shared.d.ts +0 -101
  779. package/dist/installer/targets/shared.d.ts.map +0 -1
  780. package/dist/installer/targets/shared.js +0 -264
  781. package/dist/installer/targets/shared.js.map +0 -1
  782. package/dist/installer/targets/toml.d.ts +0 -52
  783. package/dist/installer/targets/toml.d.ts.map +0 -1
  784. package/dist/installer/targets/toml.js +0 -147
  785. package/dist/installer/targets/toml.js.map +0 -1
  786. package/dist/installer/targets/types.d.ts +0 -108
  787. package/dist/installer/targets/types.d.ts.map +0 -1
  788. package/dist/installer/targets/types.js +0 -16
  789. package/dist/installer/targets/types.js.map +0 -1
  790. package/dist/markdown/cli.d.ts +0 -16
  791. package/dist/markdown/cli.d.ts.map +0 -1
  792. package/dist/markdown/cli.js +0 -575
  793. package/dist/markdown/cli.js.map +0 -1
  794. package/dist/markdown/constants.d.ts +0 -22
  795. package/dist/markdown/constants.d.ts.map +0 -1
  796. package/dist/markdown/constants.js +0 -71
  797. package/dist/markdown/constants.js.map +0 -1
  798. package/dist/markdown/dedup.d.ts.map +0 -1
  799. package/dist/markdown/dedup.js.map +0 -1
  800. package/dist/markdown/errors.d.ts +0 -22
  801. package/dist/markdown/errors.d.ts.map +0 -1
  802. package/dist/markdown/errors.js +0 -45
  803. package/dist/markdown/errors.js.map +0 -1
  804. package/dist/markdown/extractor.d.ts.map +0 -1
  805. package/dist/markdown/extractor.js.map +0 -1
  806. package/dist/markdown/frontmatter-parser.d.ts +0 -47
  807. package/dist/markdown/frontmatter-parser.d.ts.map +0 -1
  808. package/dist/markdown/frontmatter-parser.js +0 -199
  809. package/dist/markdown/frontmatter-parser.js.map +0 -1
  810. package/dist/markdown/indexer.d.ts +0 -34
  811. package/dist/markdown/indexer.d.ts.map +0 -1
  812. package/dist/markdown/indexer.js +0 -256
  813. package/dist/markdown/indexer.js.map +0 -1
  814. package/dist/markdown/mcp-tools.d.ts +0 -33
  815. package/dist/markdown/mcp-tools.d.ts.map +0 -1
  816. package/dist/markdown/mcp-tools.js +0 -300
  817. package/dist/markdown/mcp-tools.js.map +0 -1
  818. package/dist/markdown/query.d.ts +0 -108
  819. package/dist/markdown/query.d.ts.map +0 -1
  820. package/dist/markdown/query.js +0 -570
  821. package/dist/markdown/query.js.map +0 -1
  822. package/dist/markdown/schema-bootstrap.d.ts +0 -40
  823. package/dist/markdown/schema-bootstrap.d.ts.map +0 -1
  824. package/dist/markdown/schema-bootstrap.js +0 -85
  825. package/dist/markdown/schema-bootstrap.js.map +0 -1
  826. package/dist/markdown/schema.sql +0 -124
  827. package/dist/markdown/store.d.ts.map +0 -1
  828. package/dist/markdown/store.js.map +0 -1
  829. package/dist/markdown/summary-extractor.d.ts.map +0 -1
  830. package/dist/markdown/summary-extractor.js.map +0 -1
  831. package/dist/markdown/types.d.ts +0 -159
  832. package/dist/markdown/types.d.ts.map +0 -1
  833. package/dist/markdown/types.js.map +0 -1
  834. package/dist/markdown/validator.d.ts +0 -44
  835. package/dist/markdown/validator.d.ts.map +0 -1
  836. package/dist/markdown/validator.js +0 -95
  837. package/dist/markdown/validator.js.map +0 -1
  838. package/dist/mcp/daemon-manager.d.ts +0 -42
  839. package/dist/mcp/daemon-manager.d.ts.map +0 -1
  840. package/dist/mcp/daemon-manager.js +0 -129
  841. package/dist/mcp/daemon-manager.js.map +0 -1
  842. package/dist/mcp/daemon-paths.d.ts +0 -46
  843. package/dist/mcp/daemon-paths.d.ts.map +0 -1
  844. package/dist/mcp/daemon-paths.js +0 -125
  845. package/dist/mcp/daemon-paths.js.map +0 -1
  846. package/dist/mcp/daemon-registry.d.ts +0 -47
  847. package/dist/mcp/daemon-registry.d.ts.map +0 -1
  848. package/dist/mcp/daemon-registry.js +0 -229
  849. package/dist/mcp/daemon-registry.js.map +0 -1
  850. package/dist/mcp/daemon.d.ts +0 -220
  851. package/dist/mcp/daemon.d.ts.map +0 -1
  852. package/dist/mcp/daemon.js +0 -637
  853. package/dist/mcp/daemon.js.map +0 -1
  854. package/dist/mcp/dynamic-boundaries.d.ts +0 -41
  855. package/dist/mcp/dynamic-boundaries.d.ts.map +0 -1
  856. package/dist/mcp/dynamic-boundaries.js +0 -359
  857. package/dist/mcp/dynamic-boundaries.js.map +0 -1
  858. package/dist/mcp/engine.d.ts +0 -105
  859. package/dist/mcp/engine.d.ts.map +0 -1
  860. package/dist/mcp/engine.js +0 -278
  861. package/dist/mcp/engine.js.map +0 -1
  862. package/dist/mcp/index.d.ts +0 -113
  863. package/dist/mcp/index.d.ts.map +0 -1
  864. package/dist/mcp/index.js +0 -499
  865. package/dist/mcp/index.js.map +0 -1
  866. package/dist/mcp/liveness-watchdog.d.ts +0 -18
  867. package/dist/mcp/liveness-watchdog.d.ts.map +0 -1
  868. package/dist/mcp/liveness-watchdog.js +0 -207
  869. package/dist/mcp/liveness-watchdog.js.map +0 -1
  870. package/dist/mcp/ppid-watchdog.d.ts +0 -44
  871. package/dist/mcp/ppid-watchdog.d.ts.map +0 -1
  872. package/dist/mcp/ppid-watchdog.js +0 -27
  873. package/dist/mcp/ppid-watchdog.js.map +0 -1
  874. package/dist/mcp/proxy.d.ts +0 -87
  875. package/dist/mcp/proxy.d.ts.map +0 -1
  876. package/dist/mcp/proxy.js +0 -641
  877. package/dist/mcp/proxy.js.map +0 -1
  878. package/dist/mcp/server-instructions.d.ts +0 -34
  879. package/dist/mcp/server-instructions.d.ts.map +0 -1
  880. package/dist/mcp/server-instructions.js +0 -106
  881. package/dist/mcp/server-instructions.js.map +0 -1
  882. package/dist/mcp/session.d.ts +0 -79
  883. package/dist/mcp/session.d.ts.map +0 -1
  884. package/dist/mcp/session.js +0 -330
  885. package/dist/mcp/session.js.map +0 -1
  886. package/dist/mcp/stdin-teardown.d.ts +0 -27
  887. package/dist/mcp/stdin-teardown.d.ts.map +0 -1
  888. package/dist/mcp/stdin-teardown.js +0 -49
  889. package/dist/mcp/stdin-teardown.js.map +0 -1
  890. package/dist/mcp/tools.d.ts +0 -547
  891. package/dist/mcp/tools.d.ts.map +0 -1
  892. package/dist/mcp/tools.js +0 -4122
  893. package/dist/mcp/tools.js.map +0 -1
  894. package/dist/mcp/transport.d.ts +0 -188
  895. package/dist/mcp/transport.d.ts.map +0 -1
  896. package/dist/mcp/transport.js +0 -359
  897. package/dist/mcp/transport.js.map +0 -1
  898. package/dist/mcp/version.d.ts +0 -19
  899. package/dist/mcp/version.d.ts.map +0 -1
  900. package/dist/mcp/version.js +0 -71
  901. package/dist/mcp/version.js.map +0 -1
  902. package/dist/project-config.d.ts +0 -36
  903. package/dist/project-config.d.ts.map +0 -1
  904. package/dist/project-config.js +0 -235
  905. package/dist/project-config.js.map +0 -1
  906. package/dist/reasoning/config.d.ts +0 -45
  907. package/dist/reasoning/config.d.ts.map +0 -1
  908. package/dist/reasoning/config.js +0 -171
  909. package/dist/reasoning/config.js.map +0 -1
  910. package/dist/reasoning/credentials.d.ts +0 -5
  911. package/dist/reasoning/credentials.d.ts.map +0 -1
  912. package/dist/reasoning/credentials.js +0 -83
  913. package/dist/reasoning/credentials.js.map +0 -1
  914. package/dist/reasoning/login.d.ts +0 -21
  915. package/dist/reasoning/login.d.ts.map +0 -1
  916. package/dist/reasoning/login.js +0 -85
  917. package/dist/reasoning/login.js.map +0 -1
  918. package/dist/reasoning/reasoner.d.ts +0 -43
  919. package/dist/reasoning/reasoner.d.ts.map +0 -1
  920. package/dist/reasoning/reasoner.js +0 -308
  921. package/dist/reasoning/reasoner.js.map +0 -1
  922. package/dist/resolution/c-fnptr-synthesizer.d.ts +0 -33
  923. package/dist/resolution/c-fnptr-synthesizer.d.ts.map +0 -1
  924. package/dist/resolution/c-fnptr-synthesizer.js +0 -352
  925. package/dist/resolution/c-fnptr-synthesizer.js.map +0 -1
  926. package/dist/resolution/callback-synthesizer.d.ts +0 -15
  927. package/dist/resolution/callback-synthesizer.d.ts.map +0 -1
  928. package/dist/resolution/callback-synthesizer.js +0 -2926
  929. package/dist/resolution/callback-synthesizer.js.map +0 -1
  930. package/dist/resolution/frameworks/astro.d.ts +0 -9
  931. package/dist/resolution/frameworks/astro.d.ts.map +0 -1
  932. package/dist/resolution/frameworks/astro.js +0 -169
  933. package/dist/resolution/frameworks/astro.js.map +0 -1
  934. package/dist/resolution/frameworks/cargo-workspace.d.ts +0 -18
  935. package/dist/resolution/frameworks/cargo-workspace.d.ts.map +0 -1
  936. package/dist/resolution/frameworks/cargo-workspace.js +0 -225
  937. package/dist/resolution/frameworks/cargo-workspace.js.map +0 -1
  938. package/dist/resolution/frameworks/csharp.d.ts +0 -8
  939. package/dist/resolution/frameworks/csharp.d.ts.map +0 -1
  940. package/dist/resolution/frameworks/csharp.js +0 -241
  941. package/dist/resolution/frameworks/csharp.js.map +0 -1
  942. package/dist/resolution/frameworks/drupal.d.ts +0 -51
  943. package/dist/resolution/frameworks/drupal.d.ts.map +0 -1
  944. package/dist/resolution/frameworks/drupal.js +0 -367
  945. package/dist/resolution/frameworks/drupal.js.map +0 -1
  946. package/dist/resolution/frameworks/expo-modules.d.ts +0 -3
  947. package/dist/resolution/frameworks/expo-modules.d.ts.map +0 -1
  948. package/dist/resolution/frameworks/expo-modules.js +0 -148
  949. package/dist/resolution/frameworks/expo-modules.js.map +0 -1
  950. package/dist/resolution/frameworks/express.d.ts +0 -8
  951. package/dist/resolution/frameworks/express.d.ts.map +0 -1
  952. package/dist/resolution/frameworks/express.js +0 -308
  953. package/dist/resolution/frameworks/express.js.map +0 -1
  954. package/dist/resolution/frameworks/fabric.d.ts +0 -3
  955. package/dist/resolution/frameworks/fabric.d.ts.map +0 -1
  956. package/dist/resolution/frameworks/fabric.js +0 -354
  957. package/dist/resolution/frameworks/fabric.js.map +0 -1
  958. package/dist/resolution/frameworks/go.d.ts +0 -8
  959. package/dist/resolution/frameworks/go.d.ts.map +0 -1
  960. package/dist/resolution/frameworks/go.js +0 -161
  961. package/dist/resolution/frameworks/go.js.map +0 -1
  962. package/dist/resolution/frameworks/goframe.d.ts +0 -41
  963. package/dist/resolution/frameworks/goframe.d.ts.map +0 -1
  964. package/dist/resolution/frameworks/goframe.js +0 -112
  965. package/dist/resolution/frameworks/goframe.js.map +0 -1
  966. package/dist/resolution/frameworks/index.d.ts +0 -50
  967. package/dist/resolution/frameworks/index.d.ts.map +0 -1
  968. package/dist/resolution/frameworks/index.js +0 -169
  969. package/dist/resolution/frameworks/index.js.map +0 -1
  970. package/dist/resolution/frameworks/java.d.ts +0 -8
  971. package/dist/resolution/frameworks/java.d.ts.map +0 -1
  972. package/dist/resolution/frameworks/java.js +0 -509
  973. package/dist/resolution/frameworks/java.js.map +0 -1
  974. package/dist/resolution/frameworks/laravel.d.ts +0 -13
  975. package/dist/resolution/frameworks/laravel.d.ts.map +0 -1
  976. package/dist/resolution/frameworks/laravel.js +0 -257
  977. package/dist/resolution/frameworks/laravel.js.map +0 -1
  978. package/dist/resolution/frameworks/nestjs.d.ts +0 -26
  979. package/dist/resolution/frameworks/nestjs.d.ts.map +0 -1
  980. package/dist/resolution/frameworks/nestjs.js +0 -698
  981. package/dist/resolution/frameworks/nestjs.js.map +0 -1
  982. package/dist/resolution/frameworks/play.d.ts +0 -19
  983. package/dist/resolution/frameworks/play.d.ts.map +0 -1
  984. package/dist/resolution/frameworks/play.js +0 -111
  985. package/dist/resolution/frameworks/play.js.map +0 -1
  986. package/dist/resolution/frameworks/python.d.ts +0 -10
  987. package/dist/resolution/frameworks/python.d.ts.map +0 -1
  988. package/dist/resolution/frameworks/python.js +0 -400
  989. package/dist/resolution/frameworks/python.js.map +0 -1
  990. package/dist/resolution/frameworks/react-native.d.ts +0 -3
  991. package/dist/resolution/frameworks/react-native.d.ts.map +0 -1
  992. package/dist/resolution/frameworks/react-native.js +0 -410
  993. package/dist/resolution/frameworks/react-native.js.map +0 -1
  994. package/dist/resolution/frameworks/react.d.ts +0 -8
  995. package/dist/resolution/frameworks/react.d.ts.map +0 -1
  996. package/dist/resolution/frameworks/react.js +0 -334
  997. package/dist/resolution/frameworks/react.js.map +0 -1
  998. package/dist/resolution/frameworks/ruby.d.ts +0 -8
  999. package/dist/resolution/frameworks/ruby.d.ts.map +0 -1
  1000. package/dist/resolution/frameworks/ruby.js +0 -302
  1001. package/dist/resolution/frameworks/ruby.js.map +0 -1
  1002. package/dist/resolution/frameworks/rust.d.ts +0 -8
  1003. package/dist/resolution/frameworks/rust.d.ts.map +0 -1
  1004. package/dist/resolution/frameworks/rust.js +0 -304
  1005. package/dist/resolution/frameworks/rust.js.map +0 -1
  1006. package/dist/resolution/frameworks/svelte.d.ts +0 -9
  1007. package/dist/resolution/frameworks/svelte.d.ts.map +0 -1
  1008. package/dist/resolution/frameworks/svelte.js +0 -253
  1009. package/dist/resolution/frameworks/svelte.js.map +0 -1
  1010. package/dist/resolution/frameworks/swift-objc.d.ts +0 -37
  1011. package/dist/resolution/frameworks/swift-objc.d.ts.map +0 -1
  1012. package/dist/resolution/frameworks/swift-objc.js +0 -252
  1013. package/dist/resolution/frameworks/swift-objc.js.map +0 -1
  1014. package/dist/resolution/frameworks/swift.d.ts +0 -10
  1015. package/dist/resolution/frameworks/swift.d.ts.map +0 -1
  1016. package/dist/resolution/frameworks/swift.js +0 -400
  1017. package/dist/resolution/frameworks/swift.js.map +0 -1
  1018. package/dist/resolution/frameworks/vue.d.ts +0 -9
  1019. package/dist/resolution/frameworks/vue.d.ts.map +0 -1
  1020. package/dist/resolution/frameworks/vue.js +0 -303
  1021. package/dist/resolution/frameworks/vue.js.map +0 -1
  1022. package/dist/resolution/go-module.d.ts +0 -26
  1023. package/dist/resolution/go-module.d.ts.map +0 -1
  1024. package/dist/resolution/go-module.js +0 -78
  1025. package/dist/resolution/go-module.js.map +0 -1
  1026. package/dist/resolution/goframe-synthesizer.d.ts +0 -28
  1027. package/dist/resolution/goframe-synthesizer.d.ts.map +0 -1
  1028. package/dist/resolution/goframe-synthesizer.js +0 -158
  1029. package/dist/resolution/goframe-synthesizer.js.map +0 -1
  1030. package/dist/resolution/import-resolver.d.ts +0 -78
  1031. package/dist/resolution/import-resolver.d.ts.map +0 -1
  1032. package/dist/resolution/import-resolver.js +0 -1849
  1033. package/dist/resolution/import-resolver.js.map +0 -1
  1034. package/dist/resolution/index.d.ts +0 -196
  1035. package/dist/resolution/index.d.ts.map +0 -1
  1036. package/dist/resolution/index.js +0 -1341
  1037. package/dist/resolution/index.js.map +0 -1
  1038. package/dist/resolution/lru-cache.d.ts +0 -24
  1039. package/dist/resolution/lru-cache.d.ts.map +0 -1
  1040. package/dist/resolution/lru-cache.js +0 -62
  1041. package/dist/resolution/lru-cache.js.map +0 -1
  1042. package/dist/resolution/name-matcher.d.ts +0 -93
  1043. package/dist/resolution/name-matcher.d.ts.map +0 -1
  1044. package/dist/resolution/name-matcher.js +0 -1212
  1045. package/dist/resolution/name-matcher.js.map +0 -1
  1046. package/dist/resolution/path-aliases.d.ts +0 -68
  1047. package/dist/resolution/path-aliases.d.ts.map +0 -1
  1048. package/dist/resolution/path-aliases.js +0 -238
  1049. package/dist/resolution/path-aliases.js.map +0 -1
  1050. package/dist/resolution/scope-index.d.ts +0 -86
  1051. package/dist/resolution/scope-index.d.ts.map +0 -1
  1052. package/dist/resolution/scope-index.js +0 -143
  1053. package/dist/resolution/scope-index.js.map +0 -1
  1054. package/dist/resolution/stdlib-blocklist.d.ts +0 -53
  1055. package/dist/resolution/stdlib-blocklist.d.ts.map +0 -1
  1056. package/dist/resolution/stdlib-blocklist.js +0 -143
  1057. package/dist/resolution/stdlib-blocklist.js.map +0 -1
  1058. package/dist/resolution/strip-comments.d.ts +0 -27
  1059. package/dist/resolution/strip-comments.d.ts.map +0 -1
  1060. package/dist/resolution/strip-comments.js +0 -443
  1061. package/dist/resolution/strip-comments.js.map +0 -1
  1062. package/dist/resolution/swift-objc-bridge.d.ts +0 -134
  1063. package/dist/resolution/swift-objc-bridge.d.ts.map +0 -1
  1064. package/dist/resolution/swift-objc-bridge.js +0 -256
  1065. package/dist/resolution/swift-objc-bridge.js.map +0 -1
  1066. package/dist/resolution/types.d.ts +0 -233
  1067. package/dist/resolution/types.d.ts.map +0 -1
  1068. package/dist/resolution/types.js +0 -8
  1069. package/dist/resolution/types.js.map +0 -1
  1070. package/dist/resolution/workspace-packages.d.ts +0 -48
  1071. package/dist/resolution/workspace-packages.d.ts.map +0 -1
  1072. package/dist/resolution/workspace-packages.js +0 -208
  1073. package/dist/resolution/workspace-packages.js.map +0 -1
  1074. package/dist/search/ast-helpers.d.ts +0 -42
  1075. package/dist/search/ast-helpers.d.ts.map +0 -1
  1076. package/dist/search/ast-helpers.js +0 -106
  1077. package/dist/search/ast-helpers.js.map +0 -1
  1078. package/dist/search/call-sites.d.ts +0 -398
  1079. package/dist/search/call-sites.d.ts.map +0 -1
  1080. package/dist/search/call-sites.js +0 -1433
  1081. package/dist/search/call-sites.js.map +0 -1
  1082. package/dist/search/context.d.ts +0 -134
  1083. package/dist/search/context.d.ts.map +0 -1
  1084. package/dist/search/context.js +0 -575
  1085. package/dist/search/context.js.map +0 -1
  1086. package/dist/search/impact.d.ts +0 -139
  1087. package/dist/search/impact.d.ts.map +0 -1
  1088. package/dist/search/impact.js +0 -646
  1089. package/dist/search/impact.js.map +0 -1
  1090. package/dist/search/query-parser.d.ts +0 -57
  1091. package/dist/search/query-parser.d.ts.map +0 -1
  1092. package/dist/search/query-parser.js +0 -177
  1093. package/dist/search/query-parser.js.map +0 -1
  1094. package/dist/search/query-utils.d.ts +0 -87
  1095. package/dist/search/query-utils.d.ts.map +0 -1
  1096. package/dist/search/query-utils.js +0 -449
  1097. package/dist/search/query-utils.js.map +0 -1
  1098. package/dist/search/related.d.ts +0 -178
  1099. package/dist/search/related.d.ts.map +0 -1
  1100. package/dist/search/related.js +0 -667
  1101. package/dist/search/related.js.map +0 -1
  1102. package/dist/search/slice.d.ts +0 -148
  1103. package/dist/search/slice.d.ts.map +0 -1
  1104. package/dist/search/slice.js +0 -460
  1105. package/dist/search/slice.js.map +0 -1
  1106. package/dist/search/snr-constants.d.ts +0 -41
  1107. package/dist/search/snr-constants.d.ts.map +0 -1
  1108. package/dist/search/snr-constants.js +0 -44
  1109. package/dist/search/snr-constants.js.map +0 -1
  1110. package/dist/search/types.d.ts +0 -28
  1111. package/dist/search/types.d.ts.map +0 -1
  1112. package/dist/search/types.js +0 -12
  1113. package/dist/search/types.js.map +0 -1
  1114. package/dist/sync/git-hooks.d.ts +0 -45
  1115. package/dist/sync/git-hooks.d.ts.map +0 -1
  1116. package/dist/sync/git-hooks.js +0 -225
  1117. package/dist/sync/git-hooks.js.map +0 -1
  1118. package/dist/sync/index.d.ts +0 -19
  1119. package/dist/sync/index.d.ts.map +0 -1
  1120. package/dist/sync/index.js +0 -35
  1121. package/dist/sync/index.js.map +0 -1
  1122. package/dist/sync/watch-policy.d.ts +0 -48
  1123. package/dist/sync/watch-policy.d.ts.map +0 -1
  1124. package/dist/sync/watch-policy.js +0 -124
  1125. package/dist/sync/watch-policy.js.map +0 -1
  1126. package/dist/sync/watcher.d.ts +0 -350
  1127. package/dist/sync/watcher.d.ts.map +0 -1
  1128. package/dist/sync/watcher.js +0 -811
  1129. package/dist/sync/watcher.js.map +0 -1
  1130. package/dist/sync/worktree.d.ts +0 -54
  1131. package/dist/sync/worktree.d.ts.map +0 -1
  1132. package/dist/sync/worktree.js +0 -137
  1133. package/dist/sync/worktree.js.map +0 -1
  1134. package/dist/telemetry/index.d.ts +0 -143
  1135. package/dist/telemetry/index.d.ts.map +0 -1
  1136. package/dist/telemetry/index.js +0 -541
  1137. package/dist/telemetry/index.js.map +0 -1
  1138. package/dist/timeline/bash-semantics.d.ts.map +0 -1
  1139. package/dist/timeline/bash-semantics.js.map +0 -1
  1140. package/dist/timeline/cli.d.ts.map +0 -1
  1141. package/dist/timeline/cli.js.map +0 -1
  1142. package/dist/timeline/constants.d.ts +0 -62
  1143. package/dist/timeline/constants.d.ts.map +0 -1
  1144. package/dist/timeline/constants.js +0 -73
  1145. package/dist/timeline/constants.js.map +0 -1
  1146. package/dist/timeline/errors.d.ts.map +0 -1
  1147. package/dist/timeline/errors.js.map +0 -1
  1148. package/dist/timeline/hook-runner.d.ts.map +0 -1
  1149. package/dist/timeline/hook-runner.js.map +0 -1
  1150. package/dist/timeline/hooks.d.ts.map +0 -1
  1151. package/dist/timeline/hooks.js.map +0 -1
  1152. package/dist/timeline/index.d.ts.map +0 -1
  1153. package/dist/timeline/index.js.map +0 -1
  1154. package/dist/timeline/indexer.d.ts.map +0 -1
  1155. package/dist/timeline/indexer.js.map +0 -1
  1156. package/dist/timeline/installer.d.ts.map +0 -1
  1157. package/dist/timeline/installer.js.map +0 -1
  1158. package/dist/timeline/payload.d.ts.map +0 -1
  1159. package/dist/timeline/payload.js.map +0 -1
  1160. package/dist/timeline/post-tool-summary.d.ts.map +0 -1
  1161. package/dist/timeline/post-tool-summary.js.map +0 -1
  1162. package/dist/timeline/recorder.d.ts.map +0 -1
  1163. package/dist/timeline/recorder.js.map +0 -1
  1164. package/dist/timeline/schema-bootstrap.d.ts +0 -42
  1165. package/dist/timeline/schema-bootstrap.d.ts.map +0 -1
  1166. package/dist/timeline/schema-bootstrap.js +0 -81
  1167. package/dist/timeline/schema-bootstrap.js.map +0 -1
  1168. package/dist/timeline/store.d.ts.map +0 -1
  1169. package/dist/timeline/store.js.map +0 -1
  1170. package/dist/timeline/types.d.ts.map +0 -1
  1171. package/dist/timeline/types.js.map +0 -1
  1172. package/dist/types.d.ts +0 -392
  1173. package/dist/types.d.ts.map +0 -1
  1174. package/dist/types.js +0 -81
  1175. package/dist/types.js.map +0 -1
  1176. package/dist/ui/glyphs.d.ts +0 -42
  1177. package/dist/ui/glyphs.d.ts.map +0 -1
  1178. package/dist/ui/glyphs.js +0 -78
  1179. package/dist/ui/glyphs.js.map +0 -1
  1180. package/dist/ui/shimmer-progress.d.ts +0 -11
  1181. package/dist/ui/shimmer-progress.d.ts.map +0 -1
  1182. package/dist/ui/shimmer-progress.js +0 -90
  1183. package/dist/ui/shimmer-progress.js.map +0 -1
  1184. package/dist/ui/shimmer-worker.d.ts +0 -2
  1185. package/dist/ui/shimmer-worker.d.ts.map +0 -1
  1186. package/dist/ui/shimmer-worker.js +0 -118
  1187. package/dist/ui/shimmer-worker.js.map +0 -1
  1188. package/dist/ui/types.d.ts +0 -17
  1189. package/dist/ui/types.d.ts.map +0 -1
  1190. package/dist/ui/types.js +0 -3
  1191. package/dist/ui/types.js.map +0 -1
  1192. package/dist/upgrade/index.d.ts +0 -132
  1193. package/dist/upgrade/index.d.ts.map +0 -1
  1194. package/dist/upgrade/index.js +0 -498
  1195. package/dist/upgrade/index.js.map +0 -1
  1196. package/dist/utils.d.ts +0 -224
  1197. package/dist/utils.d.ts.map +0 -1
  1198. package/dist/utils.js +0 -583
  1199. package/dist/utils.js.map +0 -1
  1200. package/scripts/add-lang/bench.sh +0 -60
  1201. package/scripts/add-lang/check-grammar.mjs +0 -75
  1202. package/scripts/add-lang/dump-ast.mjs +0 -103
  1203. package/scripts/add-lang/verify-extraction.mjs +0 -70
  1204. package/scripts/agent-eval/ab-adoption.sh +0 -91
  1205. package/scripts/agent-eval/ab-hook.sh +0 -86
  1206. package/scripts/agent-eval/ab-impl.sh +0 -78
  1207. package/scripts/agent-eval/ab-new-vs-baseline.sh +0 -102
  1208. package/scripts/agent-eval/ab-sufficiency.sh +0 -78
  1209. package/scripts/agent-eval/arms-F.sh +0 -21
  1210. package/scripts/agent-eval/arms-matrix.sh +0 -37
  1211. package/scripts/agent-eval/audit.sh +0 -68
  1212. package/scripts/agent-eval/bench-readme.sh +0 -28
  1213. package/scripts/agent-eval/bench-why-repo.sh +0 -22
  1214. package/scripts/agent-eval/block-read-hook.sh +0 -19
  1215. package/scripts/agent-eval/hook-settings.json +0 -15
  1216. package/scripts/agent-eval/itrun.sh +0 -120
  1217. package/scripts/agent-eval/offload-eval-3arm.sh +0 -72
  1218. package/scripts/agent-eval/offload-eval-cost.mjs +0 -133
  1219. package/scripts/agent-eval/offload-eval-effort.mjs +0 -108
  1220. package/scripts/agent-eval/offload-eval-frontload-matrix.sh +0 -25
  1221. package/scripts/agent-eval/offload-eval-frontload.sh +0 -47
  1222. package/scripts/agent-eval/offload-eval-ground-truth.json +0 -18
  1223. package/scripts/agent-eval/offload-eval-hook.mjs +0 -84
  1224. package/scripts/agent-eval/offload-eval-judge.mjs +0 -103
  1225. package/scripts/agent-eval/offload-eval-matrix.sh +0 -20
  1226. package/scripts/agent-eval/offload-eval-metrics.mjs +0 -94
  1227. package/scripts/agent-eval/offload-eval-refs1.sh +0 -50
  1228. package/scripts/agent-eval/offload-eval-setup.sh +0 -24
  1229. package/scripts/agent-eval/offload-eval-styles.sh +0 -72
  1230. package/scripts/agent-eval/offload-eval-summarize.mjs +0 -68
  1231. package/scripts/agent-eval/offload-eval.md +0 -76
  1232. package/scripts/agent-eval/parse-arms.mjs +0 -116
  1233. package/scripts/agent-eval/parse-bench-readme.mjs +0 -84
  1234. package/scripts/agent-eval/parse-run.mjs +0 -45
  1235. package/scripts/agent-eval/parse-session.mjs +0 -93
  1236. package/scripts/agent-eval/probe-context.mjs +0 -21
  1237. package/scripts/agent-eval/probe-explore.mjs +0 -40
  1238. package/scripts/agent-eval/probe-node.mjs +0 -20
  1239. package/scripts/agent-eval/probe-sweep.mjs +0 -119
  1240. package/scripts/agent-eval/probe-trace.mjs +0 -20
  1241. package/scripts/agent-eval/redirect-read-hook.sh +0 -38
  1242. package/scripts/agent-eval/run-agent.sh +0 -34
  1243. package/scripts/agent-eval/run-all.sh +0 -69
  1244. package/scripts/agent-eval/run-arms.sh +0 -56
  1245. package/scripts/agent-eval/seq-matrix.mjs +0 -137
  1246. package/scripts/agent-eval/subagent-token-cost.py +0 -188
  1247. package/scripts/build-bundle.sh +0 -118
  1248. package/scripts/extract-release-notes.mjs +0 -130
  1249. package/scripts/local-install.sh +0 -41
  1250. package/scripts/npm-sdk.js +0 -75
  1251. package/scripts/npm-shim.js +0 -246
  1252. package/scripts/pack-npm.sh +0 -118
  1253. package/scripts/prepare-release.mjs +0 -270
  1254. /package/dist/{dbquery → core/dbquery}/config.d.ts +0 -0
  1255. /package/dist/{dbquery → core/dbquery}/config.js +0 -0
  1256. /package/dist/{dbquery → core/dbquery}/constants.d.ts +0 -0
  1257. /package/dist/{dbquery → core/dbquery}/constants.js +0 -0
  1258. /package/dist/{dbquery → core/dbquery}/drivers/mysql.d.ts +0 -0
  1259. /package/dist/{dbquery → core/dbquery}/drivers/mysql.js +0 -0
  1260. /package/dist/{dbquery → core/dbquery}/drivers/postgres.d.ts +0 -0
  1261. /package/dist/{dbquery → core/dbquery}/drivers/postgres.js +0 -0
  1262. /package/dist/{dbquery → core/dbquery}/executor.d.ts +0 -0
  1263. /package/dist/{dbquery → core/dbquery}/executor.js +0 -0
  1264. /package/dist/{dbquery → core/dbquery}/format.d.ts +0 -0
  1265. /package/dist/{dbquery → core/dbquery}/format.js +0 -0
  1266. /package/dist/{dbquery → core/dbquery}/identifiers.d.ts +0 -0
  1267. /package/dist/{dbquery → core/dbquery}/identifiers.js +0 -0
  1268. /package/dist/{dbquery → core/dbquery}/index.d.ts +0 -0
  1269. /package/dist/{dbquery → core/dbquery}/index.js +0 -0
  1270. /package/dist/{dbquery → core/dbquery}/logging.d.ts +0 -0
  1271. /package/dist/{dbquery → core/dbquery}/logging.js +0 -0
  1272. /package/dist/{dbquery → core/dbquery}/queries.d.ts +0 -0
  1273. /package/dist/{dbquery → core/dbquery}/queries.js +0 -0
  1274. /package/dist/{dbquery → core/dbquery}/safety.d.ts +0 -0
  1275. /package/dist/{dbquery → core/dbquery}/safety.js +0 -0
  1276. /package/dist/{markdown → core/markdown}/dedup.d.ts +0 -0
  1277. /package/dist/{markdown → core/markdown}/dedup.js +0 -0
  1278. /package/dist/{markdown → core/markdown}/extractor.d.ts +0 -0
  1279. /package/dist/{markdown → core/markdown}/extractor.js +0 -0
  1280. /package/dist/{markdown → core/markdown}/store.d.ts +0 -0
  1281. /package/dist/{markdown → core/markdown}/store.js +0 -0
  1282. /package/dist/{markdown → core/markdown}/summary-extractor.d.ts +0 -0
  1283. /package/dist/{markdown → core/markdown}/summary-extractor.js +0 -0
  1284. /package/dist/{markdown → core/markdown}/types.js +0 -0
  1285. /package/dist/{timeline → core/timeline}/bash-semantics.d.ts +0 -0
  1286. /package/dist/{timeline → core/timeline}/bash-semantics.js +0 -0
  1287. /package/dist/{timeline → core/timeline}/cli.d.ts +0 -0
  1288. /package/dist/{timeline → core/timeline}/cli.js +0 -0
  1289. /package/dist/{timeline → core/timeline}/errors.d.ts +0 -0
  1290. /package/dist/{timeline → core/timeline}/errors.js +0 -0
  1291. /package/dist/{timeline → core/timeline}/hook-runner.d.ts +0 -0
  1292. /package/dist/{timeline → core/timeline}/hook-runner.js +0 -0
  1293. /package/dist/{timeline → core/timeline}/hooks.d.ts +0 -0
  1294. /package/dist/{timeline → core/timeline}/hooks.js +0 -0
  1295. /package/dist/{timeline → core/timeline}/index.d.ts +0 -0
  1296. /package/dist/{timeline → core/timeline}/index.js +0 -0
  1297. /package/dist/{timeline → core/timeline}/indexer.d.ts +0 -0
  1298. /package/dist/{timeline → core/timeline}/indexer.js +0 -0
  1299. /package/dist/{timeline → core/timeline}/installer.d.ts +0 -0
  1300. /package/dist/{timeline → core/timeline}/installer.js +0 -0
  1301. /package/dist/{timeline → core/timeline}/payload.d.ts +0 -0
  1302. /package/dist/{timeline → core/timeline}/payload.js +0 -0
  1303. /package/dist/{timeline → core/timeline}/post-tool-summary.d.ts +0 -0
  1304. /package/dist/{timeline → core/timeline}/post-tool-summary.js +0 -0
  1305. /package/dist/{timeline → core/timeline}/recorder.d.ts +0 -0
  1306. /package/dist/{timeline → core/timeline}/recorder.js +0 -0
  1307. /package/dist/{timeline → core/timeline}/schema.sql +0 -0
  1308. /package/dist/{timeline → core/timeline}/store.d.ts +0 -0
  1309. /package/dist/{timeline → core/timeline}/store.js +0 -0
  1310. /package/dist/{timeline → core/timeline}/types.d.ts +0 -0
  1311. /package/dist/{timeline → core/timeline}/types.js +0 -0
@@ -1,1009 +0,0 @@
1
- "use strict";
2
- /**
3
- * CLI wiring for the api-test subsystem.
4
- *
5
- * Exposes `registerApiTestCommands(program)` — called once from
6
- * `src/bin/codegraph.ts`. All api-test subcommands live under
7
- * `codegraph api-test <sub>`. The scan subcommand (T-20) is wired here;
8
- * the analyze/assemble/run/report/list subcommands will be added in
9
- * T-30 / T-40 / T-50 / T-60.
10
- *
11
- * Spec contract — scan:
12
- * - Full re-scan (delete `docs/api-test/<service>/` subtree, rebuild).
13
- * - Writes one `.bru` + one `.md` per endpoint under
14
- * `docs/api-test/<service>/<svc_id>_<methodName>.{bru,md}`.
15
- * - Writes `docs/api-test/bruno.json` at the api-test root with the
16
- * minimal Bruno collection schema.
17
- * - Failed endpoints don't abort the rest — warnings go to stderr.
18
- *
19
- * Exit codes:
20
- * 0 success (or partial success with warnings)
21
- * 2 config error (ConfigError — missing/invalid profile or config)
22
- * 5 argument error
23
- */
24
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
25
- if (k2 === undefined) k2 = k;
26
- var desc = Object.getOwnPropertyDescriptor(m, k);
27
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
28
- desc = { enumerable: true, get: function() { return m[k]; } };
29
- }
30
- Object.defineProperty(o, k2, desc);
31
- }) : (function(o, m, k, k2) {
32
- if (k2 === undefined) k2 = k;
33
- o[k2] = m[k];
34
- }));
35
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
36
- Object.defineProperty(o, "default", { enumerable: true, value: v });
37
- }) : function(o, v) {
38
- o["default"] = v;
39
- });
40
- var __importStar = (this && this.__importStar) || (function () {
41
- var ownKeys = function(o) {
42
- ownKeys = Object.getOwnPropertyNames || function (o) {
43
- var ar = [];
44
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
45
- return ar;
46
- };
47
- return ownKeys(o);
48
- };
49
- return function (mod) {
50
- if (mod && mod.__esModule) return mod;
51
- var result = {};
52
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
53
- __setModuleDefault(result, mod);
54
- return result;
55
- };
56
- })();
57
- Object.defineProperty(exports, "__esModule", { value: true });
58
- exports.__INTERNAL_CLI = void 0;
59
- exports.registerApiTestCommands = registerApiTestCommands;
60
- const fs = __importStar(require("node:fs"));
61
- const path = __importStar(require("node:path"));
62
- const config_1 = require("./config");
63
- const errors_1 = require("./errors");
64
- const parser_httpservice_1 = require("./parser-httpservice");
65
- const bru_writer_1 = require("./bru-writer");
66
- const md_writer_1 = require("./md-writer");
67
- const java_parser_1 = require("./java-parser");
68
- const impl_finder_1 = require("./impl-finder");
69
- const field_extractor_1 = require("./field-extractor");
70
- const call_chain_extractor_1 = require("./call-chain-extractor");
71
- const assemble_1 = require("./assemble");
72
- const bru_runner_1 = require("./bru-runner");
73
- const test_history_1 = require("./test-history");
74
- const report_1 = require("./report");
75
- const errors_2 = require("./errors");
76
- const enhance_prepare_1 = require("./enhance-prepare");
77
- const enhance_write_1 = require("./enhance-write");
78
- const snapshot_1 = require("./snapshot");
79
- const verify_prepare_1 = require("./verify-prepare");
80
- const verify_write_1 = require("./verify-write");
81
- /** Default output root (relative to project root). */
82
- const DEFAULT_OUTPUT_DIR = 'docs/api-test';
83
- /** Minimal Bruno collection config — written to `<outputDir>/bruno.json`. */
84
- const BRUNO_COLLECTION_CONFIG = {
85
- version: 1,
86
- name: 'hx-api-test',
87
- type: 'collection',
88
- };
89
- class ArgError extends Error {
90
- }
91
- /**
92
- * Attach the `api-test` command group to a commander program.
93
- */
94
- function registerApiTestCommands(program) {
95
- const apiTest = program
96
- .command('api-test')
97
- .description('Java HTTP-service scan + Bruno test scaffolding (independent subsystem)');
98
- // -- api-test scan --------------------------------------------------------
99
- apiTest
100
- .command('scan')
101
- .description('Scan Java source for @Center interfaces and regenerate .bru + .md pairs under docs/api-test/')
102
- .option('--project-root <path>', 'Project root to scan (defaults to cwd)', process.cwd())
103
- .option('--output-dir <path>', 'Output directory (defaults to <projectRoot>/docs/api-test)')
104
- .option('--filter <pattern>', 'Only emit endpoints whose service name matches the regex (optional)')
105
- .option('--dry-run', 'Resolve + render, but do not write files')
106
- .action(async (options) => {
107
- try {
108
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
109
- const outputDir = path.resolve(options.outputDir ?? path.join(projectRoot, DEFAULT_OUTPUT_DIR));
110
- const config = (0, config_1.loadConfig)(projectRoot);
111
- // Filter regex (optional)
112
- let filterRe = null;
113
- if (options.filter) {
114
- try {
115
- filterRe = new RegExp(options.filter);
116
- }
117
- catch (err) {
118
- throw new ArgError(`--filter is not a valid regex: ${err instanceof Error ? err.message : String(err)}`);
119
- }
120
- }
121
- // Full re-scan: clear the existing output subtree before rebuilding.
122
- // bruno.json is also rewritten below, so we don't preserve it.
123
- if (!options.dryRun) {
124
- await clearOutputDir(outputDir);
125
- }
126
- const endpoints = await (0, parser_httpservice_1.scanEndpoints)(projectRoot, config);
127
- const filtered = filterRe
128
- ? endpoints.filter((e) => filterRe.test(e.service))
129
- : endpoints;
130
- let okCount = 0;
131
- let warnCount = 0;
132
- for (const endpoint of filtered) {
133
- try {
134
- if (options.dryRun) {
135
- // Dry-run: render to stdout (or just count) — don't write files.
136
- const bru = (0, bru_writer_1.renderBru)(endpoint, config);
137
- const md = (0, md_writer_1.renderMd)(endpoint);
138
- void bru;
139
- void md;
140
- }
141
- else {
142
- await (0, bru_writer_1.writeBru)(endpoint, config, outputDir);
143
- await (0, md_writer_1.writeMd)(endpoint, outputDir);
144
- }
145
- okCount++;
146
- }
147
- catch (err) {
148
- warnCount++;
149
- const msg = err instanceof Error ? err.message : String(err);
150
- process.stderr.write(`[api-test] warning: failed to write endpoint ${endpoint.svcId}_${endpoint.method}: ${msg}\n`);
151
- }
152
- }
153
- // Write bruno.json at the api-test root (collection metadata).
154
- if (!options.dryRun) {
155
- await fs.promises.mkdir(outputDir, { recursive: true });
156
- const brunoJsonPath = path.join(outputDir, 'bruno.json');
157
- await fs.promises.writeFile(brunoJsonPath, JSON.stringify(BRUNO_COLLECTION_CONFIG, null, 2) + '\n', 'utf8');
158
- }
159
- process.stdout.write(`[api-test] scan complete: ${okCount} endpoint(s) written` +
160
- (warnCount > 0 ? `, ${warnCount} warning(s)` : '') +
161
- (options.dryRun ? ' (dry-run)' : '') +
162
- ` → ${outputDir}\n`);
163
- if (warnCount > 0)
164
- process.exitCode = 0; // partial success still 0
165
- }
166
- catch (err) {
167
- renderErrorAndExit(err);
168
- }
169
- });
170
- // -- api-test analyze -----------------------------------------------------
171
- apiTest
172
- .command('analyze')
173
- .description('Analyze Java impl classes to fill fields / call_chain / dep_tables / auth_required in .md files')
174
- .option('--project-root <path>', 'Project root to scan (defaults to cwd)', process.cwd())
175
- .option('--output-dir <path>', 'Output directory (defaults to <projectRoot>/docs/api-test)')
176
- .option('--filter <pattern>', 'Only analyze endpoints whose service name matches the regex (optional)')
177
- .option('--dry-run', 'Resolve + extract, but do not write files')
178
- .action(async (options) => {
179
- try {
180
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
181
- const outputDir = path.resolve(options.outputDir ?? path.join(projectRoot, DEFAULT_OUTPUT_DIR));
182
- const config = (0, config_1.loadConfig)(projectRoot);
183
- // Per spec §9, analyze does NOT load the profile (only run does).
184
- // Profile.json absence must not fail the analyze phase.
185
- // Filter regex (optional)
186
- let filterRe = null;
187
- if (options.filter) {
188
- try {
189
- filterRe = new RegExp(options.filter);
190
- }
191
- catch (err) {
192
- throw new ArgError(`--filter is not a valid regex: ${err instanceof Error ? err.message : String(err)}`);
193
- }
194
- }
195
- // Re-scan to get the fresh Endpoint[] (full overwrite — we don't
196
- // read existing .md files because re-scan gives us the same metadata
197
- // plus a clean slate; "全部覆盖" semantics).
198
- const endpoints = await (0, parser_httpservice_1.scanEndpoints)(projectRoot, config);
199
- const filtered = filterRe
200
- ? endpoints.filter((e) => filterRe.test(e.service))
201
- : endpoints;
202
- // Build the allClasses cache: parse every .java file under
203
- // projectRoot once, accumulate ClassInfo[]. Used by findImplFor,
204
- // findVoClass (called by extractFields).
205
- const allClasses = [];
206
- for (const javaFile of iterJavaFilesCached(projectRoot)) {
207
- try {
208
- const classes = await (0, java_parser_1.parseJavaFile)(javaFile);
209
- allClasses.push(...classes);
210
- }
211
- catch (err) {
212
- const msg = err instanceof Error ? err.message : String(err);
213
- process.stderr.write(`[api-test] warning: failed to parse ${javaFile}: ${msg}\n`);
214
- }
215
- }
216
- let okCount = 0;
217
- let skipCount = 0;
218
- let warnCount = 0;
219
- for (const endpoint of filtered) {
220
- try {
221
- const result = await analyzeEndpoint(endpoint, allClasses);
222
- endpoint.fields = result.fields;
223
- endpoint.callChain = result.callChain;
224
- endpoint.depTables = result.depTables;
225
- endpoint.authRequired = result.authRequired;
226
- if (result.skipReason) {
227
- endpoint.status = 'skip';
228
- endpoint.skipReason = result.skipReason;
229
- skipCount++;
230
- }
231
- else {
232
- endpoint.status = 'active';
233
- endpoint.skipReason = null;
234
- okCount++;
235
- }
236
- if (!options.dryRun) {
237
- // Re-render + overwrite the .md file (full overwrite).
238
- await (0, md_writer_1.writeMd)(endpoint, outputDir);
239
- }
240
- }
241
- catch (err) {
242
- warnCount++;
243
- const msg = err instanceof Error ? err.message : String(err);
244
- process.stderr.write(`[api-test] warning: failed to analyze endpoint ${endpoint.svcId}_${endpoint.method}: ${msg}\n`);
245
- // Mark as skip so the failure is visible in the .md.
246
- endpoint.status = 'skip';
247
- endpoint.skipReason = `analyze_error: ${msg}`;
248
- if (!options.dryRun) {
249
- try {
250
- await (0, md_writer_1.writeMd)(endpoint, outputDir);
251
- }
252
- catch {
253
- // swallow — best-effort
254
- }
255
- }
256
- }
257
- }
258
- process.stdout.write(`[api-test] analyze complete: ${okCount} ok, ${skipCount} skipped` +
259
- (warnCount > 0 ? `, ${warnCount} warning(s)` : '') +
260
- (options.dryRun ? ' (dry-run)' : '') +
261
- ` → ${outputDir}\n`);
262
- if (warnCount > 0)
263
- process.exitCode = 0;
264
- }
265
- catch (err) {
266
- renderErrorAndExit(err);
267
- }
268
- });
269
- // -- api-test assemble -----------------------------------------------------
270
- apiTest
271
- .command('assemble')
272
- .description('Assemble request bodies from fixture/db-query data and write them into .bru body:json blocks')
273
- .option('--project-root <path>', 'Project root (defaults to cwd)', process.cwd())
274
- .option('--output-dir <path>', 'Output directory (defaults to <projectRoot>/docs/api-test)')
275
- .option('--filter <pattern>', 'Only assemble endpoints whose service name matches the regex (optional)')
276
- .option('--dry-run', 'Resolve + assemble, but do not write files')
277
- .action(async (options) => {
278
- try {
279
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
280
- const outputDir = path.resolve(options.outputDir ?? path.join(projectRoot, DEFAULT_OUTPUT_DIR));
281
- const config = (0, config_1.loadConfig)(projectRoot);
282
- const fixtures = (0, config_1.loadFixtures)(projectRoot);
283
- // Per spec §9, assemble does NOT load the profile (only run does).
284
- // The profile is not needed for body assembly — Bruno's `{{var}}`
285
- // syntax resolves env variables at request time during the run phase.
286
- // Filter regex (optional)
287
- let filterRe = null;
288
- if (options.filter) {
289
- try {
290
- filterRe = new RegExp(options.filter);
291
- }
292
- catch (err) {
293
- throw new ArgError(`--filter is not a valid regex: ${err instanceof Error ? err.message : String(err)}`);
294
- }
295
- }
296
- // Re-scan + re-analyze to get fresh endpoints with fields populated.
297
- // (Same pattern as the analyze CLI — "full overwrite" semantics. The
298
- // .md files are human-readable artifacts; the assemble phase doesn't
299
- // parse them back, it re-derives from source so the body always
300
- // matches the current code.)
301
- const endpoints = await (0, parser_httpservice_1.scanEndpoints)(projectRoot, config);
302
- const filtered = filterRe
303
- ? endpoints.filter((e) => filterRe.test(e.service))
304
- : endpoints;
305
- // Build the allClasses cache for analyze.
306
- const allClasses = [];
307
- for (const javaFile of iterJavaFilesCached(projectRoot)) {
308
- try {
309
- const classes = await (0, java_parser_1.parseJavaFile)(javaFile);
310
- allClasses.push(...classes);
311
- }
312
- catch (err) {
313
- const msg = err instanceof Error ? err.message : String(err);
314
- process.stderr.write(`[api-test] warning: failed to parse ${javaFile}: ${msg}\n`);
315
- }
316
- }
317
- let okCount = 0;
318
- let skipCount = 0;
319
- let warnCount = 0;
320
- for (const endpoint of filtered) {
321
- try {
322
- // Re-analyze to populate fields/callChain/depTables/authRequired.
323
- const result = await analyzeEndpoint(endpoint, allClasses);
324
- endpoint.fields = result.fields;
325
- endpoint.callChain = result.callChain;
326
- endpoint.depTables = result.depTables;
327
- endpoint.authRequired = result.authRequired;
328
- if (result.skipReason) {
329
- // Analyze-phase skip (impl_not_found / param_no_strong_type) —
330
- // propagate to .md, don't attempt assemble.
331
- endpoint.status = 'skip';
332
- endpoint.skipReason = result.skipReason;
333
- skipCount++;
334
- if (!options.dryRun) {
335
- await (0, md_writer_1.writeMd)(endpoint, outputDir);
336
- }
337
- continue;
338
- }
339
- endpoint.status = 'active';
340
- endpoint.skipReason = null;
341
- // Only assemble `active` endpoints.
342
- const assembled = await (0, assemble_1.assembleEndpoint)(endpoint, config, fixtures, projectRoot);
343
- if (assembled.skipped) {
344
- endpoint.status = 'skip';
345
- endpoint.skipReason = assembled.reason;
346
- skipCount++;
347
- if (!options.dryRun) {
348
- // Update .md with the skip status. Don't touch .bru body for
349
- // skipped endpoints (per spec: "skip 状态的 endpoint → 不修改 .bru body").
350
- await (0, md_writer_1.writeMd)(endpoint, outputDir);
351
- }
352
- }
353
- else {
354
- okCount++;
355
- if (!options.dryRun) {
356
- // Write the assembled body into the .bru's body:json block.
357
- // First ensure the .bru exists (scan phase writes it; if the
358
- // user skipped scan, we write it fresh here).
359
- if (!endpoint.bruPath || !fs.existsSync(endpoint.bruPath)) {
360
- await (0, bru_writer_1.writeBru)(endpoint, config, outputDir);
361
- }
362
- await (0, assemble_1.writeBruBody)(endpoint.bruPath, assembled.body);
363
- }
364
- }
365
- }
366
- catch (err) {
367
- warnCount++;
368
- const msg = err instanceof Error ? err.message : String(err);
369
- process.stderr.write(`[api-test] warning: failed to assemble endpoint ${endpoint.svcId}_${endpoint.method}: ${msg}\n`);
370
- endpoint.status = 'skip';
371
- endpoint.skipReason = `assemble_error: ${msg}`;
372
- if (!options.dryRun) {
373
- try {
374
- await (0, md_writer_1.writeMd)(endpoint, outputDir);
375
- }
376
- catch {
377
- // swallow — best-effort
378
- }
379
- }
380
- }
381
- }
382
- process.stdout.write(`[api-test] assemble complete: ${okCount} ok, ${skipCount} skipped` +
383
- (warnCount > 0 ? `, ${warnCount} warning(s)` : '') +
384
- (options.dryRun ? ' (dry-run)' : '') +
385
- ` → ${outputDir}\n`);
386
- if (warnCount > 0)
387
- process.exitCode = 0;
388
- }
389
- catch (err) {
390
- renderErrorAndExit(err);
391
- }
392
- });
393
- // -- api-test run ----------------------------------------------------------
394
- apiTest
395
- .command('run')
396
- .description('Run assembled .bru requests via Bruno CLI and append results to JSONL history')
397
- .option('--project-root <path>', 'Project root (defaults to cwd)', process.cwd())
398
- .option('--output-dir <path>', 'Collection directory (defaults to <projectRoot>/docs/api-test)')
399
- .option('--filter <pattern>', 'Only run endpoints whose service name matches the regex (optional)')
400
- .option('--status <status>', 'Only run endpoints with this status (active|skip)', 'active')
401
- .action(async (options) => {
402
- try {
403
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
404
- const outputDir = path.resolve(options.outputDir ?? path.join(projectRoot, DEFAULT_OUTPUT_DIR));
405
- const config = (0, config_1.loadConfig)(projectRoot);
406
- const profile = (0, config_1.loadProfile)(projectRoot);
407
- // Validate --status.
408
- const statusFilter = options.status ?? 'active';
409
- if (statusFilter !== 'active' && statusFilter !== 'skip') {
410
- throw new ArgError(`--status must be "active" or "skip", got: ${statusFilter}`);
411
- }
412
- // Filter regex (optional) — narrows by service name.
413
- let filterRe = null;
414
- if (options.filter) {
415
- try {
416
- filterRe = new RegExp(options.filter);
417
- }
418
- catch (err) {
419
- throw new ArgError(`--filter is not a valid regex: ${err instanceof Error ? err.message : String(err)}`);
420
- }
421
- }
422
- // Re-scan to get the endpoint list (service + method + bruPath +
423
- // mdPath). The .bru files are assumed to already exist on disk from
424
- // a prior scan/analyze/assemble — run doesn't write .bru files.
425
- const endpoints = await (0, parser_httpservice_1.scanEndpoints)(projectRoot, config);
426
- const filteredEndpoints = filterRe
427
- ? endpoints.filter((e) => filterRe.test(e.service))
428
- : endpoints;
429
- // Read each endpoint's .md file to determine status. Endpoints whose
430
- // .md doesn't exist yet (scan never ran) default to 'active' so a
431
- // fresh collection still runs.
432
- const endpointStatuses = new Map();
433
- for (const e of filteredEndpoints) {
434
- endpointStatuses.set(`${e.svcId}_${e.method}`, readEndpointStatus(e, outputDir));
435
- }
436
- // Apply --status filter: only keep endpoints whose status matches.
437
- // Bruno CLI runs the whole collection dir (or a service subdir when
438
- // --filter narrows to one service); we filter the RESULTS by status
439
- // after the run.
440
- const filterService = pickFilterService(filterRe, filteredEndpoints);
441
- let results;
442
- try {
443
- results = await (0, bru_runner_1.runBrunoCollection)(outputDir, profile, filterService ? { service: filterService } : undefined);
444
- }
445
- catch (err) {
446
- if (err instanceof errors_1.BrunoCliError) {
447
- process.stderr.write(`[api-test] ${err.message}\n`);
448
- process.exitCode = 4;
449
- return;
450
- }
451
- throw err;
452
- }
453
- // Match results back to endpoints by name to enrich with service +
454
- // status info. Results without a matching endpoint are still recorded
455
- // (service = '(unknown)').
456
- const endpointByName = new Map();
457
- for (const e of filteredEndpoints) {
458
- endpointByName.set(`${e.svcId}_${e.method}`, e);
459
- }
460
- const ranAt = new Date().toISOString();
461
- let passedCount = 0;
462
- let failedCount = 0;
463
- let skippedCount = 0;
464
- for (const result of results) {
465
- const endpoint = endpointByName.get(result.endpoint);
466
- const service = endpoint?.service ?? '(unknown)';
467
- const status = endpointStatuses.get(result.endpoint) ?? 'active';
468
- // --status filter: skip endpoints whose status doesn't match.
469
- if (status !== statusFilter) {
470
- skippedCount++;
471
- continue;
472
- }
473
- const judgment = judgePass(result, profile);
474
- const testRun = {
475
- endpoint: result.endpoint,
476
- service,
477
- ranAt,
478
- httpStatus: result.httpStatus,
479
- bizCode: judgment.bizCode,
480
- durationMs: result.durationMs,
481
- passed: judgment.passed,
482
- error: judgment.error,
483
- };
484
- try {
485
- (0, test_history_1.appendTestRunSync)(testRun, projectRoot);
486
- }
487
- catch (err) {
488
- const msg = err instanceof Error ? err.message : String(err);
489
- process.stderr.write(`[api-test] warning: failed to append history for ${result.endpoint}: ${msg}\n`);
490
- }
491
- if (judgment.passed) {
492
- passedCount++;
493
- }
494
- else {
495
- failedCount++;
496
- }
497
- }
498
- process.stdout.write(`[api-test] run complete: ${passedCount} passed, ${failedCount} failed` +
499
- (skippedCount > 0 ? `, ${skippedCount} skipped` : '') +
500
- ` → ${outputDir}\n`);
501
- // Non-zero exit when any endpoint failed, so CI can gate on it.
502
- if (failedCount > 0)
503
- process.exitCode = 1;
504
- }
505
- catch (err) {
506
- renderErrorAndExit(err);
507
- }
508
- });
509
- // -- api-test report -------------------------------------------------------
510
- apiTest
511
- .command('report')
512
- .description('Aggregate the day\'s JSONL run history + .md catalog into a Markdown report')
513
- .option('--project-root <path>', 'Project root (defaults to cwd)', process.cwd())
514
- .option('--date <YYYY-MM-DD>', 'Report date, defaults to today (local)')
515
- .action(async (options) => {
516
- try {
517
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
518
- const date = options.date ?? todayLocalYmd();
519
- const md = await (0, report_1.generateReport)(projectRoot, date);
520
- const outPath = (0, report_1.reportFilePath)(projectRoot, date);
521
- await fs.promises.mkdir(path.dirname(outPath), { recursive: true });
522
- await fs.promises.writeFile(outPath, md + '\n', 'utf8');
523
- process.stdout.write(`${outPath}\n`);
524
- }
525
- catch (err) {
526
- renderErrorAndExit(err);
527
- }
528
- });
529
- // -- api-test list ---------------------------------------------------------
530
- apiTest
531
- .command('list')
532
- .description('List every catalog endpoint with its most recent run result, after filters')
533
- .option('--project-root <path>', 'Project root (defaults to cwd)', process.cwd())
534
- .option('--service <name>', 'Filter by service name (exact match)')
535
- .option('--status <status>', 'Filter by status (active|skip)')
536
- .option('--svc-id <id>', 'Filter by svc_id (exact match)')
537
- .action(async (options) => {
538
- try {
539
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
540
- const filters = {};
541
- if (options.service)
542
- filters.service = options.service;
543
- if (options.svcId)
544
- filters.svcId = options.svcId;
545
- if (options.status) {
546
- if (options.status !== 'active' && options.status !== 'skip') {
547
- throw new ArgError(`--status must be "active" or "skip", got: ${options.status}`);
548
- }
549
- filters.status = options.status;
550
- }
551
- const rows = (0, report_1.listEndpoints)(projectRoot, filters);
552
- if (rows.length === 0) {
553
- process.stdout.write('(no endpoints match the filters)\n');
554
- return;
555
- }
556
- const table = (0, report_1.renderListTable)(rows);
557
- process.stdout.write(table + '\n');
558
- }
559
- catch (err) {
560
- renderErrorAndExit(err);
561
- }
562
- });
563
- // -- api-test enhance-prepare ---------------------------------------------
564
- apiTest
565
- .command('enhance-prepare')
566
- .description('Aggregate catalog .md + impl path + db sample rows + prior AI fields into a JSON payload for AI field inference')
567
- .option('--project-root <path>', 'Project root (defaults to cwd)', process.cwd())
568
- .option('--service <name>', 'Service subdirectory under docs/api-test/ (defaults to inst-service)', 'inst-service')
569
- .option('--endpoint <name>', 'Endpoint stem <svc_id>_<method> (optional; defaults to all .md in the service dir)')
570
- .action(async (options) => {
571
- try {
572
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
573
- const service = options.service ?? 'inst-service';
574
- const results = await (0, enhance_prepare_1.enhancePrepare)(projectRoot, service, options.endpoint);
575
- process.stdout.write(JSON.stringify(results, null, 2) + '\n');
576
- }
577
- catch (err) {
578
- renderErrorAndExit(err);
579
- }
580
- });
581
- // -- api-test enhance-write -----------------------------------------------
582
- apiTest
583
- .command('enhance-write')
584
- .description('Re-generate a .bru file with AI-produced docs/tests/body blocks and persist AI-inferred fields')
585
- .requiredOption('--endpoint <name>', 'Endpoint stem <svc_id>_<method>')
586
- .requiredOption('--docs <file>', 'AI-generated docs block content (markdown)')
587
- .requiredOption('--tests <file>', 'AI-generated tests block content (JS)')
588
- .requiredOption('--body <file>', 'AI-assembled body JSON')
589
- .option('--ai-fields <file>', 'AI-inferred source_table fields JSON (optional)')
590
- .option('--service <name>', 'Service subdirectory (defaults to inst-service)', 'inst-service')
591
- .option('--project-root <path>', 'Project root (defaults to cwd)', process.cwd())
592
- .action(async (options) => {
593
- try {
594
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
595
- const bruPath = await (0, enhance_write_1.enhanceWrite)({
596
- projectRoot,
597
- endpoint: options.endpoint,
598
- docsFile: options.docs,
599
- testsFile: options.tests,
600
- bodyFile: options.body,
601
- aiFieldsFile: options.aiFields ?? null,
602
- service: options.service ?? 'inst-service',
603
- });
604
- process.stdout.write(bruPath + '\n');
605
- }
606
- catch (err) {
607
- renderErrorAndExit(err);
608
- }
609
- });
610
- // -- api-test snapshot -----------------------------------------------------
611
- apiTest
612
- .command('snapshot')
613
- .description('Capture dep_tables row snapshots before bru run, stored as runs/<run-id>-before.json')
614
- .requiredOption('--endpoint <name>', 'Endpoint stem <svc_id>_<method>')
615
- .requiredOption('--run-id <id>', 'Run identifier for before.json filename')
616
- .option('--service <name>', 'Service subdirectory (defaults to inst-service)', 'inst-service')
617
- .option('--project-root <path>', 'Project root (defaults to cwd)', process.cwd())
618
- .action(async (options) => {
619
- try {
620
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
621
- const result = await (0, snapshot_1.snapshot)(projectRoot, options.endpoint, options.runId, options.service ?? 'inst-service');
622
- process.stdout.write(JSON.stringify(result, null, 2) + '\n');
623
- }
624
- catch (err) {
625
- renderErrorAndExit(err);
626
- }
627
- });
628
- // -- api-test verify-prepare ----------------------------------------------
629
- apiTest
630
- .command('verify-prepare')
631
- .description('Read bru run report + before.json + post-run db snapshot, output structured JSON for AI verify')
632
- .requiredOption('--endpoint <name>', 'Endpoint stem <svc_id>_<method>')
633
- .requiredOption('--results <file>', 'bru run --output JSON report path')
634
- .requiredOption('--run-id <id>', 'Run identifier for before.json lookup')
635
- .option('--service <name>', 'Service subdirectory (defaults to inst-service)', 'inst-service')
636
- .option('--project-root <path>', 'Project root (defaults to cwd)', process.cwd())
637
- .action(async (options) => {
638
- try {
639
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
640
- const result = await (0, verify_prepare_1.verifyPrepare)(projectRoot, options.endpoint, options.results, options.runId, options.service ?? 'inst-service');
641
- process.stdout.write(JSON.stringify(result, null, 2) + '\n');
642
- }
643
- catch (err) {
644
- renderErrorAndExit(err);
645
- }
646
- });
647
- // -- api-test verify-write ------------------------------------------------
648
- apiTest
649
- .command('verify-write')
650
- .description('Read verify-prepare JSON + AI temp files, compute overall_passed, append to ai JSONL')
651
- .requiredOption('--endpoint <name>', 'Endpoint stem <svc_id>_<method>')
652
- .requiredOption('--verify-prepare-json <file>', 'verify-prepare output JSON path')
653
- .requiredOption('--ai-assertions <file>', 'AI-generated assertions result JSON')
654
- .requiredOption('--db-verify <file>', 'AI-generated DB verify result JSON')
655
- .requiredOption('--ran-at <iso>', 'ISO-8601 timestamp for JSONL filename + Layer 1 association')
656
- .option('--service <name>', 'Service subdirectory (defaults to inst-service)', 'inst-service')
657
- .option('--project-root <path>', 'Project root (defaults to cwd)', process.cwd())
658
- .action(async (options) => {
659
- try {
660
- const projectRoot = path.resolve(options.projectRoot ?? process.cwd());
661
- const jsonlPath = await (0, verify_write_1.verifyWrite)({
662
- projectRoot,
663
- endpoint: options.endpoint,
664
- verifyPrepareJsonFile: options.verifyPrepareJson,
665
- aiAssertionsFile: options.aiAssertions,
666
- dbVerifyFile: options.dbVerify,
667
- ranAt: options.ranAt,
668
- service: options.service ?? 'inst-service',
669
- });
670
- process.stdout.write(jsonlPath + '\n');
671
- }
672
- catch (err) {
673
- renderErrorAndExit(err);
674
- }
675
- });
676
- }
677
- // ─── Helpers ───────────────────────────────────────────────────────────────
678
- /**
679
- * Walk `projectRoot` and yield every `.java` file path. Same ignore list as
680
- * the scan phase (parser-httpservice.iterJavaFiles) — duplicated here to
681
- * avoid leaking the scan module's internal helper through the CLI surface.
682
- * Symlinks are not followed.
683
- */
684
- function* iterJavaFilesCached(root) {
685
- let entries;
686
- try {
687
- entries = fs.readdirSync(root, { withFileTypes: true });
688
- }
689
- catch {
690
- return;
691
- }
692
- for (const entry of entries) {
693
- if (entry.name.startsWith('.')) {
694
- if (entry.isDirectory())
695
- continue;
696
- }
697
- if (entry.isDirectory()) {
698
- if (DEFAULT_IGNORE_DIRS.has(entry.name))
699
- continue;
700
- yield* iterJavaFilesCached(path.join(root, entry.name));
701
- }
702
- else if (entry.isFile() && entry.name.endsWith('.java')) {
703
- yield path.join(root, entry.name);
704
- }
705
- }
706
- }
707
- /** Default ignore list — mirrors parser-httpservice.DEFAULT_IGNORE_DIRS. */
708
- const DEFAULT_IGNORE_DIRS = new Set([
709
- 'node_modules',
710
- 'dist',
711
- 'build',
712
- 'target',
713
- 'out',
714
- '.git',
715
- '.cgraphx',
716
- ]);
717
- /**
718
- * Run the analyze pipeline for one endpoint:
719
- * 1. findImplFor(interfaceFqn, allClasses) — locate the impl class.
720
- * 2. Match the interface method to the impl method (name + param count).
721
- * 3. extractFields + extractCallChain.
722
- *
723
- * Returns the enriched fields/callChain/depTables/authRequired, plus a
724
- * `skipReason` string when the endpoint should be marked `status: skip`.
725
- */
726
- async function analyzeEndpoint(endpoint, allClasses) {
727
- // 1. Find the impl class.
728
- const implInfo = await (0, impl_finder_1.findImplFor)(endpoint.interfaceFqn, allClasses);
729
- if (!implInfo) {
730
- return {
731
- fields: [],
732
- callChain: [],
733
- depTables: [],
734
- authRequired: false,
735
- skipReason: 'impl_not_found',
736
- };
737
- }
738
- // 2. Match the interface method to the impl method by name + param count.
739
- // The interface method's signature is on `endpoint.signature` (a string),
740
- // but we have `endpoint.method` (name) and can count params from the
741
- // signature. The impl method's parameters are on `implInfo.methods`.
742
- const paramCount = countParamsInSignature(endpoint.signature);
743
- const implMethod = findImplMethod(implInfo, endpoint.method, paramCount);
744
- if (!implMethod) {
745
- return {
746
- fields: [],
747
- callChain: [],
748
- depTables: [],
749
- authRequired: false,
750
- skipReason: 'impl_method_not_found',
751
- };
752
- }
753
- // 3. Extract fields + call chain.
754
- const fields = await (0, field_extractor_1.extractFields)(endpoint, implInfo, implMethod, allClasses);
755
- // When reverse-engineering fails, extractFields returns [] — mark skip.
756
- const fieldExtractionFailed = implMethod.parameters.length > 0 && fields.length === 0;
757
- const { callChain, depTables, authRequired } = await (0, call_chain_extractor_1.extractCallChain)(implInfo, implMethod);
758
- return {
759
- fields,
760
- callChain,
761
- depTables,
762
- authRequired,
763
- skipReason: fieldExtractionFailed ? 'param_no_strong_type' : null,
764
- };
765
- }
766
- /** Count parameters in a signature string like `Object qryOrderList(Object reqVo)`. */
767
- function countParamsInSignature(signature) {
768
- const m = /\((.*)\)/.exec(signature);
769
- if (!m)
770
- return 0;
771
- const inner = (m[1] ?? '').trim();
772
- if (!inner)
773
- return 0;
774
- // Naive split on commas — doesn't handle generic commas in `Map<K,V>` etc.
775
- // For param-count matching, we strip generic angle-bracket contents first.
776
- const cleaned = inner.replace(/<[^>]*>/g, '');
777
- return cleaned.split(',').length;
778
- }
779
- /**
780
- * Find the impl method matching `name` + `paramCount`. Falls back to
781
- * name-only match if paramCount is 0 (defensive — shouldn't happen for
782
- * real @Center methods, which always have ≥1 param).
783
- */
784
- function findImplMethod(implInfo, name, paramCount) {
785
- const byName = implInfo.methods.filter((m) => m.name === name);
786
- if (byName.length === 0)
787
- return null;
788
- if (paramCount === 0)
789
- return byName[0] ?? null;
790
- const byArity = byName.find((m) => m.parameters.length === paramCount);
791
- return byArity ?? byName[0] ?? null;
792
- }
793
- /**
794
- * Remove the existing output subtree so a re-scan doesn't leave stale
795
- * `.bru` / `.md` files behind for endpoints that no longer exist. Safe to
796
- * call on a non-existent dir.
797
- *
798
- * Preserves any files / subdirs the user might have added that are NOT
799
- * `.bru` / `.md` pairs? Spec says "full re-scan" = delete the whole
800
- * `docs/api-test/<service>/` subtree and rewrite bruno.json. We follow
801
- * that literally: delete the entire output dir's *.bru / *.md / bruno.json,
802
- * and remove now-empty service subdirs.
803
- */
804
- async function clearOutputDir(outputDir) {
805
- let entries;
806
- try {
807
- entries = await fs.promises.readdir(outputDir, { withFileTypes: true });
808
- }
809
- catch (err) {
810
- if (err.code === 'ENOENT')
811
- return;
812
- throw err;
813
- }
814
- for (const entry of entries) {
815
- const full = path.join(outputDir, entry.name);
816
- if (entry.isDirectory()) {
817
- // Recurse into service subdirs and clear .bru / .md files; remove the
818
- // subdir if it ends up empty.
819
- await clearServiceSubdir(full);
820
- }
821
- else if (entry.isFile() && (entry.name.endsWith('.bru') || entry.name.endsWith('.md') || entry.name === 'bruno.json')) {
822
- await fs.promises.unlink(full);
823
- }
824
- }
825
- }
826
- /** Clear `.bru` / `.md` files inside a service subdirectory; rmdir if empty. */
827
- async function clearServiceSubdir(serviceDir) {
828
- let entries;
829
- try {
830
- entries = await fs.promises.readdir(serviceDir, { withFileTypes: true });
831
- }
832
- catch (err) {
833
- if (err.code === 'ENOENT')
834
- return;
835
- throw err;
836
- }
837
- let remaining = 0;
838
- for (const entry of entries) {
839
- const full = path.join(serviceDir, entry.name);
840
- if (entry.isDirectory()) {
841
- remaining++; // don't touch nested dirs the user added
842
- }
843
- else if (entry.isFile() && (entry.name.endsWith('.bru') || entry.name.endsWith('.md'))) {
844
- await fs.promises.unlink(full);
845
- }
846
- else {
847
- remaining++;
848
- }
849
- }
850
- if (remaining === 0) {
851
- await fs.promises.rmdir(serviceDir).catch(() => { });
852
- }
853
- }
854
- function renderErrorAndExit(err) {
855
- if (err instanceof ArgError) {
856
- process.stderr.write(`[api-test] ${err.message}\n`);
857
- process.exitCode = 5;
858
- return;
859
- }
860
- if (err instanceof errors_1.ConfigError) {
861
- process.stderr.write(`[api-test] config error: ${err.message}\n`);
862
- process.exitCode = 2;
863
- return;
864
- }
865
- if (err instanceof errors_2.ReportError) {
866
- process.stderr.write(`[api-test] report error: ${err.message}\n`);
867
- process.exitCode = 2;
868
- return;
869
- }
870
- if (err instanceof errors_1.BrunoCliError) {
871
- process.stderr.write(`[api-test] ${err.message}\n`);
872
- process.exitCode = 4;
873
- return;
874
- }
875
- const msg = err instanceof Error ? err.message : String(err);
876
- process.stderr.write(`[api-test] Unexpected error: ${msg}\n`);
877
- process.exitCode = 1;
878
- }
879
- /** Today's date in the local timezone as `YYYY-MM-DD`. */
880
- function todayLocalYmd() {
881
- const d = new Date();
882
- const y = d.getFullYear();
883
- const m = String(d.getMonth() + 1).padStart(2, '0');
884
- const day = String(d.getDate()).padStart(2, '0');
885
- return `${y}-${m}-${day}`;
886
- }
887
- // ─── Run-phase helpers ─────────────────────────────────────────────────────
888
- /**
889
- * Read an endpoint's status from its `.md` frontmatter. Returns 'active'
890
- * when the .md doesn't exist or the status line can't be found (defensive
891
- * — a fresh collection with no analyze phase still runs).
892
- */
893
- function readEndpointStatus(endpoint, outputDir) {
894
- const mdPath = path.join(outputDir, endpoint.service, `${endpoint.svcId}_${endpoint.method}.md`);
895
- let content;
896
- try {
897
- content = fs.readFileSync(mdPath, 'utf8');
898
- }
899
- catch {
900
- return 'active';
901
- }
902
- const m = /^status:\s*(\w+)/m.exec(content);
903
- if (!m)
904
- return 'active';
905
- return m[1] === 'skip' ? 'skip' : 'active';
906
- }
907
- /**
908
- * When `--filter` narrows to exactly one service, return that service name
909
- * so `runBrunoCollection` can narrow Bruno CLI's run to that subdir (faster).
910
- * When multiple services match (or none), return null — run the whole
911
- * collection and filter results after.
912
- */
913
- function pickFilterService(filterRe, endpoints) {
914
- if (!filterRe)
915
- return null;
916
- const services = new Set();
917
- for (const e of endpoints) {
918
- if (filterRe.test(e.service)) {
919
- services.add(e.service);
920
- }
921
- }
922
- if (services.size === 1) {
923
- return [...services][0] ?? null;
924
- }
925
- return null;
926
- }
927
- /**
928
- * Judge pass/fail for one Bruno run result against the profile's biz-code rule.
929
- *
930
- * - Bruno-reported error (timeout / request_failed) → passed=false, error
931
- * forwarded.
932
- * - HTTP 5xx → passed=false, error=http_5xx.
933
- * - HTTP 4xx → passed=false, error=http_4xx.
934
- * - Other non-200 → passed=false, error=http_non_200.
935
- * - HTTP 200 + bizCodeField null → passed=true (HTTP-only check).
936
- * - HTTP 200 + bizCodeField set + value in bizCodeSuccessValues → passed=true.
937
- * - HTTP 200 + bizCodeField set + value NOT in success values → passed=false,
938
- * error=biz_code_value_mismatch.
939
- * - HTTP 200 + bizCodeField set + field missing from response body →
940
- * passed=false, error=biz_code_field_missing.
941
- */
942
- function judgePass(result, profile) {
943
- // Bruno-reported errors take precedence (timeout, request_failed, etc.).
944
- if (result.error) {
945
- return { passed: false, bizCode: null, error: result.error };
946
- }
947
- // Non-200 HTTP statuses.
948
- if (result.httpStatus >= 500) {
949
- return { passed: false, bizCode: null, error: 'http_5xx' };
950
- }
951
- if (result.httpStatus >= 400) {
952
- return { passed: false, bizCode: null, error: 'http_4xx' };
953
- }
954
- if (result.httpStatus !== 200) {
955
- return { passed: false, bizCode: null, error: 'http_non_200' };
956
- }
957
- // HTTP 200 — check biz code if configured.
958
- if (profile.bizCodeField === null) {
959
- return { passed: true, bizCode: null, error: null };
960
- }
961
- const bizCode = extractBizCode(result.responseBody, profile.bizCodeField);
962
- if (bizCode === null) {
963
- return { passed: false, bizCode: null, error: 'biz_code_field_missing' };
964
- }
965
- if (profile.bizCodeSuccessValues.includes(bizCode)) {
966
- return { passed: true, bizCode, error: null };
967
- }
968
- return { passed: false, bizCode, error: 'biz_code_value_mismatch' };
969
- }
970
- /**
971
- * Extract the biz code value from a response body. The body may be a JSON
972
- * object or a JSON string. Returns the stringified value, or null when the
973
- * field is absent / the body can't be parsed.
974
- */
975
- function extractBizCode(responseBody, bizCodeField) {
976
- if (!responseBody)
977
- return null;
978
- // Try parsing as JSON first.
979
- let parsed;
980
- try {
981
- parsed = JSON.parse(responseBody);
982
- }
983
- catch {
984
- // Not JSON — can't extract a structured field.
985
- return null;
986
- }
987
- if (parsed && typeof parsed === 'object' && !Array.isArray(parsed)) {
988
- const v = parsed[bizCodeField];
989
- if (v === undefined || v === null)
990
- return null;
991
- return String(v);
992
- }
993
- return null;
994
- }
995
- // Internal helpers re-exported for tests.
996
- exports.__INTERNAL_CLI = {
997
- DEFAULT_OUTPUT_DIR,
998
- BRUNO_COLLECTION_CONFIG,
999
- clearOutputDir,
1000
- iterJavaFilesCached,
1001
- analyzeEndpoint,
1002
- countParamsInSignature,
1003
- findImplMethod,
1004
- readEndpointStatus,
1005
- pickFilterService,
1006
- judgePass,
1007
- extractBizCode,
1008
- };
1009
- //# sourceMappingURL=cli.js.map