@opencodehub/ingestion 0.1.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 (563) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +69 -0
  3. package/dist/extract/index.d.ts +8 -0
  4. package/dist/extract/index.d.ts.map +1 -0
  5. package/dist/extract/index.js +6 -0
  6. package/dist/extract/index.js.map +1 -0
  7. package/dist/extract/orm-detector.d.ts +19 -0
  8. package/dist/extract/orm-detector.d.ts.map +1 -0
  9. package/dist/extract/orm-detector.js +209 -0
  10. package/dist/extract/orm-detector.js.map +1 -0
  11. package/dist/extract/property-access.d.ts +76 -0
  12. package/dist/extract/property-access.d.ts.map +1 -0
  13. package/dist/extract/property-access.js +260 -0
  14. package/dist/extract/property-access.js.map +1 -0
  15. package/dist/extract/receiver-resolver.d.ts +86 -0
  16. package/dist/extract/receiver-resolver.d.ts.map +1 -0
  17. package/dist/extract/receiver-resolver.js +77 -0
  18. package/dist/extract/receiver-resolver.js.map +1 -0
  19. package/dist/extract/route-detector-java.d.ts +29 -0
  20. package/dist/extract/route-detector-java.d.ts.map +1 -0
  21. package/dist/extract/route-detector-java.js +190 -0
  22. package/dist/extract/route-detector-java.js.map +1 -0
  23. package/dist/extract/route-detector-nestjs.d.ts +30 -0
  24. package/dist/extract/route-detector-nestjs.d.ts.map +1 -0
  25. package/dist/extract/route-detector-nestjs.js +134 -0
  26. package/dist/extract/route-detector-nestjs.js.map +1 -0
  27. package/dist/extract/route-detector-python.d.ts +28 -0
  28. package/dist/extract/route-detector-python.d.ts.map +1 -0
  29. package/dist/extract/route-detector-python.js +100 -0
  30. package/dist/extract/route-detector-python.js.map +1 -0
  31. package/dist/extract/route-detector-rails.d.ts +28 -0
  32. package/dist/extract/route-detector-rails.d.ts.map +1 -0
  33. package/dist/extract/route-detector-rails.js +162 -0
  34. package/dist/extract/route-detector-rails.js.map +1 -0
  35. package/dist/extract/route-detector.d.ts +45 -0
  36. package/dist/extract/route-detector.d.ts.map +1 -0
  37. package/dist/extract/route-detector.js +467 -0
  38. package/dist/extract/route-detector.js.map +1 -0
  39. package/dist/extract/tool-detector.d.ts +26 -0
  40. package/dist/extract/tool-detector.d.ts.map +1 -0
  41. package/dist/extract/tool-detector.js +364 -0
  42. package/dist/extract/tool-detector.js.map +1 -0
  43. package/dist/extract/types.d.ts +89 -0
  44. package/dist/extract/types.d.ts.map +1 -0
  45. package/dist/extract/types.js +11 -0
  46. package/dist/extract/types.js.map +1 -0
  47. package/dist/index.d.ts +10 -0
  48. package/dist/index.d.ts.map +1 -0
  49. package/dist/index.js +10 -0
  50. package/dist/index.js.map +1 -0
  51. package/dist/parse/cobol-regex.d.ts +85 -0
  52. package/dist/parse/cobol-regex.d.ts.map +1 -0
  53. package/dist/parse/cobol-regex.js +355 -0
  54. package/dist/parse/cobol-regex.js.map +1 -0
  55. package/dist/parse/grammar-registry.d.ts +115 -0
  56. package/dist/parse/grammar-registry.d.ts.map +1 -0
  57. package/dist/parse/grammar-registry.js +278 -0
  58. package/dist/parse/grammar-registry.js.map +1 -0
  59. package/dist/parse/index.d.ts +14 -0
  60. package/dist/parse/index.d.ts.map +1 -0
  61. package/dist/parse/index.js +10 -0
  62. package/dist/parse/index.js.map +1 -0
  63. package/dist/parse/language-detector.d.ts +17 -0
  64. package/dist/parse/language-detector.d.ts.map +1 -0
  65. package/dist/parse/language-detector.js +104 -0
  66. package/dist/parse/language-detector.js.map +1 -0
  67. package/dist/parse/parse-worker.d.ts +24 -0
  68. package/dist/parse/parse-worker.d.ts.map +1 -0
  69. package/dist/parse/parse-worker.js +230 -0
  70. package/dist/parse/parse-worker.js.map +1 -0
  71. package/dist/parse/types.d.ts +49 -0
  72. package/dist/parse/types.d.ts.map +1 -0
  73. package/dist/parse/types.js +11 -0
  74. package/dist/parse/types.js.map +1 -0
  75. package/dist/parse/unified-queries.d.ts +37 -0
  76. package/dist/parse/unified-queries.d.ts.map +1 -0
  77. package/dist/parse/unified-queries.js +623 -0
  78. package/dist/parse/unified-queries.js.map +1 -0
  79. package/dist/parse/wasm-fallback.d.ts +88 -0
  80. package/dist/parse/wasm-fallback.d.ts.map +1 -0
  81. package/dist/parse/wasm-fallback.js +258 -0
  82. package/dist/parse/wasm-fallback.js.map +1 -0
  83. package/dist/parse/worker-pool.d.ts +48 -0
  84. package/dist/parse/worker-pool.d.ts.map +1 -0
  85. package/dist/parse/worker-pool.js +97 -0
  86. package/dist/parse/worker-pool.js.map +1 -0
  87. package/dist/pipeline/dep-parsers/go.d.ts +25 -0
  88. package/dist/pipeline/dep-parsers/go.d.ts.map +1 -0
  89. package/dist/pipeline/dep-parsers/go.js +146 -0
  90. package/dist/pipeline/dep-parsers/go.js.map +1 -0
  91. package/dist/pipeline/dep-parsers/index.d.ts +17 -0
  92. package/dist/pipeline/dep-parsers/index.d.ts.map +1 -0
  93. package/dist/pipeline/dep-parsers/index.js +16 -0
  94. package/dist/pipeline/dep-parsers/index.js.map +1 -0
  95. package/dist/pipeline/dep-parsers/maven.d.ts +24 -0
  96. package/dist/pipeline/dep-parsers/maven.d.ts.map +1 -0
  97. package/dist/pipeline/dep-parsers/maven.js +131 -0
  98. package/dist/pipeline/dep-parsers/maven.js.map +1 -0
  99. package/dist/pipeline/dep-parsers/npm.d.ts +30 -0
  100. package/dist/pipeline/dep-parsers/npm.d.ts.map +1 -0
  101. package/dist/pipeline/dep-parsers/npm.js +309 -0
  102. package/dist/pipeline/dep-parsers/npm.js.map +1 -0
  103. package/dist/pipeline/dep-parsers/nuget.d.ts +24 -0
  104. package/dist/pipeline/dep-parsers/nuget.d.ts.map +1 -0
  105. package/dist/pipeline/dep-parsers/nuget.js +178 -0
  106. package/dist/pipeline/dep-parsers/nuget.js.map +1 -0
  107. package/dist/pipeline/dep-parsers/python.d.ts +21 -0
  108. package/dist/pipeline/dep-parsers/python.d.ts.map +1 -0
  109. package/dist/pipeline/dep-parsers/python.js +369 -0
  110. package/dist/pipeline/dep-parsers/python.js.map +1 -0
  111. package/dist/pipeline/dep-parsers/rust.d.ts +18 -0
  112. package/dist/pipeline/dep-parsers/rust.d.ts.map +1 -0
  113. package/dist/pipeline/dep-parsers/rust.js +134 -0
  114. package/dist/pipeline/dep-parsers/rust.js.map +1 -0
  115. package/dist/pipeline/dep-parsers/spdx-normalize.d.ts +15 -0
  116. package/dist/pipeline/dep-parsers/spdx-normalize.d.ts.map +1 -0
  117. package/dist/pipeline/dep-parsers/spdx-normalize.js +31 -0
  118. package/dist/pipeline/dep-parsers/spdx-normalize.js.map +1 -0
  119. package/dist/pipeline/dep-parsers/types.d.ts +63 -0
  120. package/dist/pipeline/dep-parsers/types.d.ts.map +1 -0
  121. package/dist/pipeline/dep-parsers/types.js +56 -0
  122. package/dist/pipeline/dep-parsers/types.js.map +1 -0
  123. package/dist/pipeline/gitignore-stack.d.ts +44 -0
  124. package/dist/pipeline/gitignore-stack.d.ts.map +1 -0
  125. package/dist/pipeline/gitignore-stack.js +69 -0
  126. package/dist/pipeline/gitignore-stack.js.map +1 -0
  127. package/dist/pipeline/gitignore.d.ts +67 -0
  128. package/dist/pipeline/gitignore.d.ts.map +1 -0
  129. package/dist/pipeline/gitignore.js +210 -0
  130. package/dist/pipeline/gitignore.js.map +1 -0
  131. package/dist/pipeline/index.d.ts +53 -0
  132. package/dist/pipeline/index.d.ts.map +1 -0
  133. package/dist/pipeline/index.js +29 -0
  134. package/dist/pipeline/index.js.map +1 -0
  135. package/dist/pipeline/orchestrator.d.ts +105 -0
  136. package/dist/pipeline/orchestrator.d.ts.map +1 -0
  137. package/dist/pipeline/orchestrator.js +175 -0
  138. package/dist/pipeline/orchestrator.js.map +1 -0
  139. package/dist/pipeline/ownership-helpers/drift.d.ts +41 -0
  140. package/dist/pipeline/ownership-helpers/drift.d.ts.map +1 -0
  141. package/dist/pipeline/ownership-helpers/drift.js +122 -0
  142. package/dist/pipeline/ownership-helpers/drift.js.map +1 -0
  143. package/dist/pipeline/ownership-helpers/gini-community.d.ts +24 -0
  144. package/dist/pipeline/ownership-helpers/gini-community.d.ts.map +1 -0
  145. package/dist/pipeline/ownership-helpers/gini-community.js +32 -0
  146. package/dist/pipeline/ownership-helpers/gini-community.js.map +1 -0
  147. package/dist/pipeline/ownership-helpers/git-blame-batcher.d.ts +71 -0
  148. package/dist/pipeline/ownership-helpers/git-blame-batcher.d.ts.map +1 -0
  149. package/dist/pipeline/ownership-helpers/git-blame-batcher.js +178 -0
  150. package/dist/pipeline/ownership-helpers/git-blame-batcher.js.map +1 -0
  151. package/dist/pipeline/ownership-helpers/line-overlap.d.ts +35 -0
  152. package/dist/pipeline/ownership-helpers/line-overlap.d.ts.map +1 -0
  153. package/dist/pipeline/ownership-helpers/line-overlap.js +62 -0
  154. package/dist/pipeline/ownership-helpers/line-overlap.js.map +1 -0
  155. package/dist/pipeline/ownership-helpers/orphan.d.ts +73 -0
  156. package/dist/pipeline/ownership-helpers/orphan.d.ts.map +1 -0
  157. package/dist/pipeline/ownership-helpers/orphan.js +117 -0
  158. package/dist/pipeline/ownership-helpers/orphan.js.map +1 -0
  159. package/dist/pipeline/phases/accesses.d.ts +44 -0
  160. package/dist/pipeline/phases/accesses.d.ts.map +1 -0
  161. package/dist/pipeline/phases/accesses.js +194 -0
  162. package/dist/pipeline/phases/accesses.js.map +1 -0
  163. package/dist/pipeline/phases/annotate.d.ts +28 -0
  164. package/dist/pipeline/phases/annotate.d.ts.map +1 -0
  165. package/dist/pipeline/phases/annotate.js +60 -0
  166. package/dist/pipeline/phases/annotate.js.map +1 -0
  167. package/dist/pipeline/phases/cochange.d.ts +42 -0
  168. package/dist/pipeline/phases/cochange.d.ts.map +1 -0
  169. package/dist/pipeline/phases/cochange.js +0 -0
  170. package/dist/pipeline/phases/cochange.js.map +1 -0
  171. package/dist/pipeline/phases/communities.d.ts +34 -0
  172. package/dist/pipeline/phases/communities.d.ts.map +1 -0
  173. package/dist/pipeline/phases/communities.js +412 -0
  174. package/dist/pipeline/phases/communities.js.map +1 -0
  175. package/dist/pipeline/phases/complexity.d.ts +50 -0
  176. package/dist/pipeline/phases/complexity.d.ts.map +1 -0
  177. package/dist/pipeline/phases/complexity.js +794 -0
  178. package/dist/pipeline/phases/complexity.js.map +1 -0
  179. package/dist/pipeline/phases/confidence-demote.d.ts +23 -0
  180. package/dist/pipeline/phases/confidence-demote.d.ts.map +1 -0
  181. package/dist/pipeline/phases/confidence-demote.js +113 -0
  182. package/dist/pipeline/phases/confidence-demote.js.map +1 -0
  183. package/dist/pipeline/phases/content-cache.d.ts +166 -0
  184. package/dist/pipeline/phases/content-cache.d.ts.map +1 -0
  185. package/dist/pipeline/phases/content-cache.js +323 -0
  186. package/dist/pipeline/phases/content-cache.js.map +1 -0
  187. package/dist/pipeline/phases/coverage-parsers/cobertura.d.ts +25 -0
  188. package/dist/pipeline/phases/coverage-parsers/cobertura.d.ts.map +1 -0
  189. package/dist/pipeline/phases/coverage-parsers/cobertura.js +139 -0
  190. package/dist/pipeline/phases/coverage-parsers/cobertura.js.map +1 -0
  191. package/dist/pipeline/phases/coverage-parsers/coverage-py.d.ts +25 -0
  192. package/dist/pipeline/phases/coverage-parsers/coverage-py.d.ts.map +1 -0
  193. package/dist/pipeline/phases/coverage-parsers/coverage-py.js +51 -0
  194. package/dist/pipeline/phases/coverage-parsers/coverage-py.js.map +1 -0
  195. package/dist/pipeline/phases/coverage-parsers/jacoco.d.ts +32 -0
  196. package/dist/pipeline/phases/coverage-parsers/jacoco.d.ts.map +1 -0
  197. package/dist/pipeline/phases/coverage-parsers/jacoco.js +98 -0
  198. package/dist/pipeline/phases/coverage-parsers/jacoco.js.map +1 -0
  199. package/dist/pipeline/phases/coverage-parsers/lcov.d.ts +21 -0
  200. package/dist/pipeline/phases/coverage-parsers/lcov.d.ts.map +1 -0
  201. package/dist/pipeline/phases/coverage-parsers/lcov.js +104 -0
  202. package/dist/pipeline/phases/coverage-parsers/lcov.js.map +1 -0
  203. package/dist/pipeline/phases/coverage-parsers/types.d.ts +27 -0
  204. package/dist/pipeline/phases/coverage-parsers/types.d.ts.map +1 -0
  205. package/dist/pipeline/phases/coverage-parsers/types.js +39 -0
  206. package/dist/pipeline/phases/coverage-parsers/types.js.map +1 -0
  207. package/dist/pipeline/phases/coverage.d.ts +39 -0
  208. package/dist/pipeline/phases/coverage.d.ts.map +1 -0
  209. package/dist/pipeline/phases/coverage.js +154 -0
  210. package/dist/pipeline/phases/coverage.js.map +1 -0
  211. package/dist/pipeline/phases/cross-file.d.ts +40 -0
  212. package/dist/pipeline/phases/cross-file.d.ts.map +1 -0
  213. package/dist/pipeline/phases/cross-file.js +411 -0
  214. package/dist/pipeline/phases/cross-file.js.map +1 -0
  215. package/dist/pipeline/phases/dead-code.d.ts +28 -0
  216. package/dist/pipeline/phases/dead-code.d.ts.map +1 -0
  217. package/dist/pipeline/phases/dead-code.js +157 -0
  218. package/dist/pipeline/phases/dead-code.js.map +1 -0
  219. package/dist/pipeline/phases/default-set.d.ts +24 -0
  220. package/dist/pipeline/phases/default-set.d.ts.map +1 -0
  221. package/dist/pipeline/phases/default-set.js +133 -0
  222. package/dist/pipeline/phases/default-set.js.map +1 -0
  223. package/dist/pipeline/phases/dependencies.d.ts +59 -0
  224. package/dist/pipeline/phases/dependencies.d.ts.map +1 -0
  225. package/dist/pipeline/phases/dependencies.js +281 -0
  226. package/dist/pipeline/phases/dependencies.js.map +1 -0
  227. package/dist/pipeline/phases/embedder-pool.d.ts +31 -0
  228. package/dist/pipeline/phases/embedder-pool.d.ts.map +1 -0
  229. package/dist/pipeline/phases/embedder-pool.js +79 -0
  230. package/dist/pipeline/phases/embedder-pool.js.map +1 -0
  231. package/dist/pipeline/phases/embedder-worker.d.ts +28 -0
  232. package/dist/pipeline/phases/embedder-worker.d.ts.map +1 -0
  233. package/dist/pipeline/phases/embedder-worker.js +43 -0
  234. package/dist/pipeline/phases/embedder-worker.js.map +1 -0
  235. package/dist/pipeline/phases/embeddings.d.ts +117 -0
  236. package/dist/pipeline/phases/embeddings.d.ts.map +1 -0
  237. package/dist/pipeline/phases/embeddings.js +697 -0
  238. package/dist/pipeline/phases/embeddings.js.map +1 -0
  239. package/dist/pipeline/phases/fetches.d.ts +47 -0
  240. package/dist/pipeline/phases/fetches.d.ts.map +1 -0
  241. package/dist/pipeline/phases/fetches.js +207 -0
  242. package/dist/pipeline/phases/fetches.js.map +1 -0
  243. package/dist/pipeline/phases/incremental-helper.d.ts +96 -0
  244. package/dist/pipeline/phases/incremental-helper.d.ts.map +1 -0
  245. package/dist/pipeline/phases/incremental-helper.js +125 -0
  246. package/dist/pipeline/phases/incremental-helper.js.map +1 -0
  247. package/dist/pipeline/phases/incremental-scope.d.ts +67 -0
  248. package/dist/pipeline/phases/incremental-scope.d.ts.map +1 -0
  249. package/dist/pipeline/phases/incremental-scope.js +225 -0
  250. package/dist/pipeline/phases/incremental-scope.js.map +1 -0
  251. package/dist/pipeline/phases/markdown.d.ts +29 -0
  252. package/dist/pipeline/phases/markdown.d.ts.map +1 -0
  253. package/dist/pipeline/phases/markdown.js +298 -0
  254. package/dist/pipeline/phases/markdown.js.map +1 -0
  255. package/dist/pipeline/phases/mro.d.ts +24 -0
  256. package/dist/pipeline/phases/mro.d.ts.map +1 -0
  257. package/dist/pipeline/phases/mro.js +303 -0
  258. package/dist/pipeline/phases/mro.js.map +1 -0
  259. package/dist/pipeline/phases/openapi.d.ts +52 -0
  260. package/dist/pipeline/phases/openapi.d.ts.map +1 -0
  261. package/dist/pipeline/phases/openapi.js +285 -0
  262. package/dist/pipeline/phases/openapi.js.map +1 -0
  263. package/dist/pipeline/phases/orm.d.ts +26 -0
  264. package/dist/pipeline/phases/orm.d.ts.map +1 -0
  265. package/dist/pipeline/phases/orm.js +183 -0
  266. package/dist/pipeline/phases/orm.js.map +1 -0
  267. package/dist/pipeline/phases/ownership.d.ts +88 -0
  268. package/dist/pipeline/phases/ownership.d.ts.map +1 -0
  269. package/dist/pipeline/phases/ownership.js +479 -0
  270. package/dist/pipeline/phases/ownership.js.map +1 -0
  271. package/dist/pipeline/phases/parse.d.ts +63 -0
  272. package/dist/pipeline/phases/parse.d.ts.map +1 -0
  273. package/dist/pipeline/phases/parse.js +994 -0
  274. package/dist/pipeline/phases/parse.js.map +1 -0
  275. package/dist/pipeline/phases/processes.d.ts +47 -0
  276. package/dist/pipeline/phases/processes.d.ts.map +1 -0
  277. package/dist/pipeline/phases/processes.js +620 -0
  278. package/dist/pipeline/phases/processes.js.map +1 -0
  279. package/dist/pipeline/phases/profile.d.ts +33 -0
  280. package/dist/pipeline/phases/profile.d.ts.map +1 -0
  281. package/dist/pipeline/phases/profile.js +91 -0
  282. package/dist/pipeline/phases/profile.js.map +1 -0
  283. package/dist/pipeline/phases/repo-node.d.ts +112 -0
  284. package/dist/pipeline/phases/repo-node.d.ts.map +1 -0
  285. package/dist/pipeline/phases/repo-node.js +272 -0
  286. package/dist/pipeline/phases/repo-node.js.map +1 -0
  287. package/dist/pipeline/phases/risk-snapshot.d.ts +34 -0
  288. package/dist/pipeline/phases/risk-snapshot.d.ts.map +1 -0
  289. package/dist/pipeline/phases/risk-snapshot.js +63 -0
  290. package/dist/pipeline/phases/risk-snapshot.js.map +1 -0
  291. package/dist/pipeline/phases/routes.d.ts +31 -0
  292. package/dist/pipeline/phases/routes.d.ts.map +1 -0
  293. package/dist/pipeline/phases/routes.js +262 -0
  294. package/dist/pipeline/phases/routes.js.map +1 -0
  295. package/dist/pipeline/phases/sbom.d.ts +45 -0
  296. package/dist/pipeline/phases/sbom.d.ts.map +1 -0
  297. package/dist/pipeline/phases/sbom.js +289 -0
  298. package/dist/pipeline/phases/sbom.js.map +1 -0
  299. package/dist/pipeline/phases/scan.d.ts +54 -0
  300. package/dist/pipeline/phases/scan.d.ts.map +1 -0
  301. package/dist/pipeline/phases/scan.js +340 -0
  302. package/dist/pipeline/phases/scan.js.map +1 -0
  303. package/dist/pipeline/phases/scip-index.d.ts +54 -0
  304. package/dist/pipeline/phases/scip-index.d.ts.map +1 -0
  305. package/dist/pipeline/phases/scip-index.js +469 -0
  306. package/dist/pipeline/phases/scip-index.js.map +1 -0
  307. package/dist/pipeline/phases/structure.d.ts +21 -0
  308. package/dist/pipeline/phases/structure.d.ts.map +1 -0
  309. package/dist/pipeline/phases/structure.js +115 -0
  310. package/dist/pipeline/phases/structure.js.map +1 -0
  311. package/dist/pipeline/phases/summarize.d.ts +126 -0
  312. package/dist/pipeline/phases/summarize.d.ts.map +1 -0
  313. package/dist/pipeline/phases/summarize.js +401 -0
  314. package/dist/pipeline/phases/summarize.js.map +1 -0
  315. package/dist/pipeline/phases/temporal-helpers/branch-divergence.d.ts +42 -0
  316. package/dist/pipeline/phases/temporal-helpers/branch-divergence.d.ts.map +1 -0
  317. package/dist/pipeline/phases/temporal-helpers/branch-divergence.js +96 -0
  318. package/dist/pipeline/phases/temporal-helpers/branch-divergence.js.map +1 -0
  319. package/dist/pipeline/phases/temporal-helpers/churn-decay.d.ts +22 -0
  320. package/dist/pipeline/phases/temporal-helpers/churn-decay.d.ts.map +1 -0
  321. package/dist/pipeline/phases/temporal-helpers/churn-decay.js +32 -0
  322. package/dist/pipeline/phases/temporal-helpers/churn-decay.js.map +1 -0
  323. package/dist/pipeline/phases/temporal-helpers/conventional-commits.d.ts +21 -0
  324. package/dist/pipeline/phases/temporal-helpers/conventional-commits.d.ts.map +1 -0
  325. package/dist/pipeline/phases/temporal-helpers/conventional-commits.js +37 -0
  326. package/dist/pipeline/phases/temporal-helpers/conventional-commits.js.map +1 -0
  327. package/dist/pipeline/phases/temporal-helpers/gini.d.ts +32 -0
  328. package/dist/pipeline/phases/temporal-helpers/gini.d.ts.map +1 -0
  329. package/dist/pipeline/phases/temporal-helpers/gini.js +78 -0
  330. package/dist/pipeline/phases/temporal-helpers/gini.js.map +1 -0
  331. package/dist/pipeline/phases/temporal-helpers/revert-detect.d.ts +14 -0
  332. package/dist/pipeline/phases/temporal-helpers/revert-detect.d.ts.map +1 -0
  333. package/dist/pipeline/phases/temporal-helpers/revert-detect.js +25 -0
  334. package/dist/pipeline/phases/temporal-helpers/revert-detect.js.map +1 -0
  335. package/dist/pipeline/phases/temporal-helpers/test-pair.d.ts +18 -0
  336. package/dist/pipeline/phases/temporal-helpers/test-pair.d.ts.map +1 -0
  337. package/dist/pipeline/phases/temporal-helpers/test-pair.js +119 -0
  338. package/dist/pipeline/phases/temporal-helpers/test-pair.js.map +1 -0
  339. package/dist/pipeline/phases/temporal.d.ts +65 -0
  340. package/dist/pipeline/phases/temporal.d.ts.map +1 -0
  341. package/dist/pipeline/phases/temporal.js +621 -0
  342. package/dist/pipeline/phases/temporal.js.map +1 -0
  343. package/dist/pipeline/phases/tools.d.ts +21 -0
  344. package/dist/pipeline/phases/tools.d.ts.map +1 -0
  345. package/dist/pipeline/phases/tools.js +118 -0
  346. package/dist/pipeline/phases/tools.js.map +1 -0
  347. package/dist/pipeline/profile-detectors/api-contracts.d.ts +18 -0
  348. package/dist/pipeline/profile-detectors/api-contracts.d.ts.map +1 -0
  349. package/dist/pipeline/profile-detectors/api-contracts.js +78 -0
  350. package/dist/pipeline/profile-detectors/api-contracts.js.map +1 -0
  351. package/dist/pipeline/profile-detectors/framework-detector.d.ts +11 -0
  352. package/dist/pipeline/profile-detectors/framework-detector.d.ts.map +1 -0
  353. package/dist/pipeline/profile-detectors/framework-detector.js +11 -0
  354. package/dist/pipeline/profile-detectors/framework-detector.js.map +1 -0
  355. package/dist/pipeline/profile-detectors/frameworks-catalog.d.ts +7 -0
  356. package/dist/pipeline/profile-detectors/frameworks-catalog.d.ts.map +1 -0
  357. package/dist/pipeline/profile-detectors/frameworks-catalog.js +7 -0
  358. package/dist/pipeline/profile-detectors/frameworks-catalog.js.map +1 -0
  359. package/dist/pipeline/profile-detectors/frameworks.d.ts +7 -0
  360. package/dist/pipeline/profile-detectors/frameworks.d.ts.map +1 -0
  361. package/dist/pipeline/profile-detectors/frameworks.js +7 -0
  362. package/dist/pipeline/profile-detectors/frameworks.js.map +1 -0
  363. package/dist/pipeline/profile-detectors/iac.d.ts +22 -0
  364. package/dist/pipeline/profile-detectors/iac.d.ts.map +1 -0
  365. package/dist/pipeline/profile-detectors/iac.js +97 -0
  366. package/dist/pipeline/profile-detectors/iac.js.map +1 -0
  367. package/dist/pipeline/profile-detectors/languages.d.ts +18 -0
  368. package/dist/pipeline/profile-detectors/languages.d.ts.map +1 -0
  369. package/dist/pipeline/profile-detectors/languages.js +60 -0
  370. package/dist/pipeline/profile-detectors/languages.js.map +1 -0
  371. package/dist/pipeline/profile-detectors/manifests.d.ts +7 -0
  372. package/dist/pipeline/profile-detectors/manifests.d.ts.map +1 -0
  373. package/dist/pipeline/profile-detectors/manifests.js +7 -0
  374. package/dist/pipeline/profile-detectors/manifests.js.map +1 -0
  375. package/dist/pipeline/profile-detectors/src-dirs.d.ts +17 -0
  376. package/dist/pipeline/profile-detectors/src-dirs.d.ts.map +1 -0
  377. package/dist/pipeline/profile-detectors/src-dirs.js +89 -0
  378. package/dist/pipeline/profile-detectors/src-dirs.js.map +1 -0
  379. package/dist/pipeline/profile-detectors/variant-detectors.d.ts +7 -0
  380. package/dist/pipeline/profile-detectors/variant-detectors.d.ts.map +1 -0
  381. package/dist/pipeline/profile-detectors/variant-detectors.js +7 -0
  382. package/dist/pipeline/profile-detectors/variant-detectors.js.map +1 -0
  383. package/dist/pipeline/runner.d.ts +54 -0
  384. package/dist/pipeline/runner.d.ts.map +1 -0
  385. package/dist/pipeline/runner.js +247 -0
  386. package/dist/pipeline/runner.js.map +1 -0
  387. package/dist/pipeline/types.d.ts +235 -0
  388. package/dist/pipeline/types.d.ts.map +1 -0
  389. package/dist/pipeline/types.js +15 -0
  390. package/dist/pipeline/types.js.map +1 -0
  391. package/dist/providers/c.d.ts +3 -0
  392. package/dist/providers/c.d.ts.map +1 -0
  393. package/dist/providers/c.js +162 -0
  394. package/dist/providers/c.js.map +1 -0
  395. package/dist/providers/cobol.d.ts +19 -0
  396. package/dist/providers/cobol.d.ts.map +1 -0
  397. package/dist/providers/cobol.js +44 -0
  398. package/dist/providers/cobol.js.map +1 -0
  399. package/dist/providers/cpp.d.ts +3 -0
  400. package/dist/providers/cpp.d.ts.map +1 -0
  401. package/dist/providers/cpp.js +200 -0
  402. package/dist/providers/cpp.js.map +1 -0
  403. package/dist/providers/csharp.d.ts +3 -0
  404. package/dist/providers/csharp.d.ts.map +1 -0
  405. package/dist/providers/csharp.js +292 -0
  406. package/dist/providers/csharp.js.map +1 -0
  407. package/dist/providers/dart.d.ts +3 -0
  408. package/dist/providers/dart.d.ts.map +1 -0
  409. package/dist/providers/dart.js +214 -0
  410. package/dist/providers/dart.js.map +1 -0
  411. package/dist/providers/definition-ids.d.ts +18 -0
  412. package/dist/providers/definition-ids.d.ts.map +1 -0
  413. package/dist/providers/definition-ids.js +23 -0
  414. package/dist/providers/definition-ids.js.map +1 -0
  415. package/dist/providers/extract-helpers.d.ts +60 -0
  416. package/dist/providers/extract-helpers.d.ts.map +1 -0
  417. package/dist/providers/extract-helpers.js +296 -0
  418. package/dist/providers/extract-helpers.js.map +1 -0
  419. package/dist/providers/extraction-types.d.ts +85 -0
  420. package/dist/providers/extraction-types.d.ts.map +1 -0
  421. package/dist/providers/extraction-types.js +13 -0
  422. package/dist/providers/extraction-types.js.map +1 -0
  423. package/dist/providers/go.d.ts +3 -0
  424. package/dist/providers/go.d.ts.map +1 -0
  425. package/dist/providers/go.js +359 -0
  426. package/dist/providers/go.js.map +1 -0
  427. package/dist/providers/http-detect.d.ts +44 -0
  428. package/dist/providers/http-detect.d.ts.map +1 -0
  429. package/dist/providers/http-detect.js +307 -0
  430. package/dist/providers/http-detect.js.map +1 -0
  431. package/dist/providers/index.d.ts +38 -0
  432. package/dist/providers/index.d.ts.map +1 -0
  433. package/dist/providers/index.js +33 -0
  434. package/dist/providers/index.js.map +1 -0
  435. package/dist/providers/java.d.ts +3 -0
  436. package/dist/providers/java.d.ts.map +1 -0
  437. package/dist/providers/java.js +259 -0
  438. package/dist/providers/java.js.map +1 -0
  439. package/dist/providers/javascript.d.ts +3 -0
  440. package/dist/providers/javascript.d.ts.map +1 -0
  441. package/dist/providers/javascript.js +139 -0
  442. package/dist/providers/javascript.js.map +1 -0
  443. package/dist/providers/kotlin.d.ts +3 -0
  444. package/dist/providers/kotlin.d.ts.map +1 -0
  445. package/dist/providers/kotlin.js +175 -0
  446. package/dist/providers/kotlin.js.map +1 -0
  447. package/dist/providers/php.d.ts +3 -0
  448. package/dist/providers/php.d.ts.map +1 -0
  449. package/dist/providers/php.js +218 -0
  450. package/dist/providers/php.js.map +1 -0
  451. package/dist/providers/python-accesses.d.ts +9 -0
  452. package/dist/providers/python-accesses.d.ts.map +1 -0
  453. package/dist/providers/python-accesses.js +22 -0
  454. package/dist/providers/python-accesses.js.map +1 -0
  455. package/dist/providers/python.d.ts +3 -0
  456. package/dist/providers/python.d.ts.map +1 -0
  457. package/dist/providers/python.js +323 -0
  458. package/dist/providers/python.js.map +1 -0
  459. package/dist/providers/registry.d.ts +4 -0
  460. package/dist/providers/registry.d.ts.map +1 -0
  461. package/dist/providers/registry.js +46 -0
  462. package/dist/providers/registry.js.map +1 -0
  463. package/dist/providers/resolution/c3.d.ts +6 -0
  464. package/dist/providers/resolution/c3.d.ts.map +1 -0
  465. package/dist/providers/resolution/c3.js +76 -0
  466. package/dist/providers/resolution/c3.js.map +1 -0
  467. package/dist/providers/resolution/context.d.ts +38 -0
  468. package/dist/providers/resolution/context.d.ts.map +1 -0
  469. package/dist/providers/resolution/context.js +45 -0
  470. package/dist/providers/resolution/context.js.map +1 -0
  471. package/dist/providers/resolution/first-wins.d.ts +3 -0
  472. package/dist/providers/resolution/first-wins.d.ts.map +1 -0
  473. package/dist/providers/resolution/first-wins.js +27 -0
  474. package/dist/providers/resolution/first-wins.js.map +1 -0
  475. package/dist/providers/resolution/mro.d.ts +16 -0
  476. package/dist/providers/resolution/mro.d.ts.map +1 -0
  477. package/dist/providers/resolution/mro.js +14 -0
  478. package/dist/providers/resolution/mro.js.map +1 -0
  479. package/dist/providers/resolution/none.d.ts +3 -0
  480. package/dist/providers/resolution/none.d.ts.map +1 -0
  481. package/dist/providers/resolution/none.js +11 -0
  482. package/dist/providers/resolution/none.js.map +1 -0
  483. package/dist/providers/resolution/python-all-filter.d.ts +25 -0
  484. package/dist/providers/resolution/python-all-filter.d.ts.map +1 -0
  485. package/dist/providers/resolution/python-all-filter.js +64 -0
  486. package/dist/providers/resolution/python-all-filter.js.map +1 -0
  487. package/dist/providers/resolution/resolver-strategy.d.ts +42 -0
  488. package/dist/providers/resolution/resolver-strategy.d.ts.map +1 -0
  489. package/dist/providers/resolution/resolver-strategy.js +50 -0
  490. package/dist/providers/resolution/resolver-strategy.js.map +1 -0
  491. package/dist/providers/resolution/single-inheritance.d.ts +3 -0
  492. package/dist/providers/resolution/single-inheritance.d.ts.map +1 -0
  493. package/dist/providers/resolution/single-inheritance.js +21 -0
  494. package/dist/providers/resolution/single-inheritance.js.map +1 -0
  495. package/dist/providers/resolution/stack-graphs/__fixtures__/mock-tree.d.ts +16 -0
  496. package/dist/providers/resolution/stack-graphs/__fixtures__/mock-tree.d.ts.map +1 -0
  497. package/dist/providers/resolution/stack-graphs/__fixtures__/mock-tree.js +50 -0
  498. package/dist/providers/resolution/stack-graphs/__fixtures__/mock-tree.js.map +1 -0
  499. package/dist/providers/resolution/stack-graphs/glue.d.ts +15 -0
  500. package/dist/providers/resolution/stack-graphs/glue.d.ts.map +1 -0
  501. package/dist/providers/resolution/stack-graphs/glue.js +44 -0
  502. package/dist/providers/resolution/stack-graphs/glue.js.map +1 -0
  503. package/dist/providers/resolution/stack-graphs/node-edge-builder.d.ts +30 -0
  504. package/dist/providers/resolution/stack-graphs/node-edge-builder.d.ts.map +1 -0
  505. package/dist/providers/resolution/stack-graphs/node-edge-builder.js +366 -0
  506. package/dist/providers/resolution/stack-graphs/node-edge-builder.js.map +1 -0
  507. package/dist/providers/resolution/stack-graphs/partial-path-engine.d.ts +9 -0
  508. package/dist/providers/resolution/stack-graphs/partial-path-engine.d.ts.map +1 -0
  509. package/dist/providers/resolution/stack-graphs/partial-path-engine.js +152 -0
  510. package/dist/providers/resolution/stack-graphs/partial-path-engine.js.map +1 -0
  511. package/dist/providers/resolution/stack-graphs/rule-parser.d.ts +11 -0
  512. package/dist/providers/resolution/stack-graphs/rule-parser.d.ts.map +1 -0
  513. package/dist/providers/resolution/stack-graphs/rule-parser.js +247 -0
  514. package/dist/providers/resolution/stack-graphs/rule-parser.js.map +1 -0
  515. package/dist/providers/resolution/stack-graphs/types.d.ts +93 -0
  516. package/dist/providers/resolution/stack-graphs/types.d.ts.map +1 -0
  517. package/dist/providers/resolution/stack-graphs/types.js +11 -0
  518. package/dist/providers/resolution/stack-graphs/types.js.map +1 -0
  519. package/dist/providers/resolution/stack-graphs-python.d.ts +27 -0
  520. package/dist/providers/resolution/stack-graphs-python.d.ts.map +1 -0
  521. package/dist/providers/resolution/stack-graphs-python.js +104 -0
  522. package/dist/providers/resolution/stack-graphs-python.js.map +1 -0
  523. package/dist/providers/resolution/stack-graphs-ts.d.ts +134 -0
  524. package/dist/providers/resolution/stack-graphs-ts.d.ts.map +1 -0
  525. package/dist/providers/resolution/stack-graphs-ts.js +372 -0
  526. package/dist/providers/resolution/stack-graphs-ts.js.map +1 -0
  527. package/dist/providers/ruby.d.ts +3 -0
  528. package/dist/providers/ruby.d.ts.map +1 -0
  529. package/dist/providers/ruby.js +259 -0
  530. package/dist/providers/ruby.js.map +1 -0
  531. package/dist/providers/rust.d.ts +3 -0
  532. package/dist/providers/rust.d.ts.map +1 -0
  533. package/dist/providers/rust.js +318 -0
  534. package/dist/providers/rust.js.map +1 -0
  535. package/dist/providers/swift.d.ts +3 -0
  536. package/dist/providers/swift.d.ts.map +1 -0
  537. package/dist/providers/swift.js +177 -0
  538. package/dist/providers/swift.js.map +1 -0
  539. package/dist/providers/test-helpers.d.ts +24 -0
  540. package/dist/providers/test-helpers.d.ts.map +1 -0
  541. package/dist/providers/test-helpers.js +33 -0
  542. package/dist/providers/test-helpers.js.map +1 -0
  543. package/dist/providers/ts-shared.d.ts +30 -0
  544. package/dist/providers/ts-shared.d.ts.map +1 -0
  545. package/dist/providers/ts-shared.js +328 -0
  546. package/dist/providers/ts-shared.js.map +1 -0
  547. package/dist/providers/tsx.d.ts +7 -0
  548. package/dist/providers/tsx.d.ts.map +1 -0
  549. package/dist/providers/tsx.js +79 -0
  550. package/dist/providers/tsx.js.map +1 -0
  551. package/dist/providers/types.d.ts +166 -0
  552. package/dist/providers/types.d.ts.map +1 -0
  553. package/dist/providers/types.js +7 -0
  554. package/dist/providers/types.js.map +1 -0
  555. package/dist/providers/typescript-family-accesses.d.ts +14 -0
  556. package/dist/providers/typescript-family-accesses.d.ts.map +1 -0
  557. package/dist/providers/typescript-family-accesses.js +27 -0
  558. package/dist/providers/typescript-family-accesses.js.map +1 -0
  559. package/dist/providers/typescript.d.ts +9 -0
  560. package/dist/providers/typescript.d.ts.map +1 -0
  561. package/dist/providers/typescript.js +84 -0
  562. package/dist/providers/typescript.js.map +1 -0
  563. package/package.json +108 -0
@@ -0,0 +1,235 @@
1
+ /**
2
+ * Shared types for the pipeline runner and phase modules.
3
+ *
4
+ * The pipeline is a static DAG: each phase declares its dependencies by name,
5
+ * the runner validates (duplicate / missing / cycle) and sorts phases
6
+ * topologically, then executes in order. Phases communicate via a typed
7
+ * output map keyed by phase name; each phase only sees outputs of phases it
8
+ * declared as dependencies (dep isolation prevents hidden coupling).
9
+ *
10
+ * The runner plus scan/structure/parse are the core; markdown, routes,
11
+ * tools, orm, crossFile, mro, communities, and processes extend the set
12
+ * without touching this file.
13
+ */
14
+ import type { CodeRelation, GraphNode, KnowledgeGraph } from "@opencodehub/core-types";
15
+ /** Runtime context supplied to each phase. */
16
+ export interface PipelineContext {
17
+ /** Absolute repository root path. */
18
+ readonly repoPath: string;
19
+ /** Normalized pipeline options. */
20
+ readonly options: PipelineOptions;
21
+ /** Single shared mutable graph accumulator populated across phases. */
22
+ readonly graph: KnowledgeGraph;
23
+ /** Outputs emitted by phases that completed before the caller. */
24
+ readonly phaseOutputs: ReadonlyMap<string, unknown>;
25
+ /** Optional progress sink; thrown errors from the callback are swallowed. */
26
+ readonly onProgress?: (ev: ProgressEvent) => void;
27
+ }
28
+ /**
29
+ * Minimal projection of a prior-run graph sufficient for the incremental-scope
30
+ * phase to compute the import-closure walk. We intentionally keep this
31
+ * narrower than a full {@link KnowledgeGraph} so callers can materialise
32
+ * it cheaply from persisted storage (DuckDB rows, sidecar JSON, etc.) without
33
+ * hydrating every node/edge kind in the graph.
34
+ *
35
+ * All arrays carry repo-relative posix paths (matching `ScannedFile.relPath`).
36
+ * The inputs must be pre-deduplicated; no validation is performed downstream.
37
+ */
38
+ export interface PreviousGraph {
39
+ /**
40
+ * Relative file paths present in the prior index, each paired with the
41
+ * content-addressed sha256 captured on the last successful scan. Paths
42
+ * absent from the current scan are silently ignored; paths whose hash
43
+ * differs from the current scan are treated as "changed" and seed the
44
+ * closure walk.
45
+ */
46
+ readonly files: readonly {
47
+ readonly relPath: string;
48
+ readonly contentSha: string;
49
+ }[];
50
+ /**
51
+ * IMPORTS edges at file granularity — `importer` depends on `target`. The
52
+ * shape mirrors the edges written by the parse phase (`File -> File`). Edges
53
+ * whose endpoints are outside `files` are ignored by the closure walk.
54
+ */
55
+ readonly importEdges: readonly {
56
+ readonly importer: string;
57
+ readonly target: string;
58
+ }[];
59
+ /**
60
+ * Heritage neighbourhoods per file. Used to grow the closure by one hop of
61
+ * EXTENDS/IMPLEMENTS ancestors + descendants so an edit to a base class
62
+ * refreshes its subtype MROs. Empty array is valid (no heritage known).
63
+ */
64
+ readonly heritageEdges: readonly {
65
+ readonly childFile: string;
66
+ readonly parentFile: string;
67
+ }[];
68
+ /**
69
+ * Full prior-run node set. When present, the four active incremental
70
+ * phases (crossFile/mro/communities/processes) carry forward any
71
+ * non-closure node from the prior run so incremental mode produces a
72
+ * byte-identical graph hash vs a fresh full run at the same commit.
73
+ * `undefined` keeps the passive contract where incremental-scope emits
74
+ * the closure hint but the downstream phases re-compute from scratch.
75
+ */
76
+ readonly nodes?: readonly GraphNode[];
77
+ /**
78
+ * Full prior-run edge set. Paired with {@link nodes}; see its docstring
79
+ * for activation semantics. Active incremental phases use this snapshot
80
+ * to carry forward edges whose both endpoints lie outside the closure
81
+ * unchanged. Edges whose endpoints are now missing from the current
82
+ * graph are silently dropped on carry-forward.
83
+ */
84
+ readonly edges?: readonly CodeRelation[];
85
+ }
86
+ /** Operator knobs accepted by the top-level `runIngestion` entry. */
87
+ export interface PipelineOptions {
88
+ /** Re-run phases even if a prior run's artifacts look current. */
89
+ readonly force?: boolean;
90
+ /**
91
+ * Snapshot of the prior index, supplied when the orchestrator is invoked in
92
+ * incremental mode. When present the {@link INCREMENTAL_SCOPE_PHASE_NAME}
93
+ * phase walks the IMPORTS closure and emits the set of files that need
94
+ * re-processing. When absent (or when `--force` is set), the phase declares
95
+ * a full reindex. See `packages/ingestion/src/pipeline/phases/incremental-scope.ts`.
96
+ */
97
+ readonly incrementalFrom?: PreviousGraph;
98
+ /**
99
+ * Refuse to spawn any child that hits the network. Phase authors are
100
+ * expected to honor this by avoiding network IO; the orchestrator does
101
+ * not sandbox — it simply threads the flag through.
102
+ */
103
+ readonly offline?: boolean;
104
+ /** Extra chatter on the progress callback (implementation-defined). */
105
+ readonly verbose?: boolean;
106
+ /** Skip `git` invocations during scan when we are not in a git repo. */
107
+ readonly skipGit?: boolean;
108
+ /** Per-file byte cap; files larger than this are skipped with a warning. */
109
+ readonly byteCapPerFile?: number;
110
+ /** Overall file cap; scan stops accepting files once this is reached. */
111
+ readonly maxTotalFiles?: number;
112
+ /**
113
+ * Populate the embeddings table. Requires `codehub setup --embeddings` to
114
+ * have installed weights on disk. When false (default) the embeddings
115
+ * phase returns an empty result without loading ONNX.
116
+ */
117
+ readonly embeddings?: boolean;
118
+ /**
119
+ * Which embedder variant to load when `embeddings=true`. Defaults to
120
+ * `fp32`. Ignored when `embeddings=false`.
121
+ */
122
+ readonly embeddingsVariant?: "fp32" | "int8";
123
+ /** Override the model directory used by the embedder. */
124
+ readonly embeddingsModelDir?: string;
125
+ /**
126
+ * Hierarchical tiers to emit when `embeddings=true` (P03). Defaults to
127
+ * `["symbol"]` so v1.0 behaviour is preserved. Pass
128
+ * `["symbol", "file", "community"]` to emit all three tiers; the phase
129
+ * de-dupes and normalizes the order. Unknown tier names are silently
130
+ * filtered at the TS type level.
131
+ */
132
+ readonly embeddingsGranularity?: readonly ("symbol" | "file" | "community")[];
133
+ /**
134
+ * Number of ONNX embedder workers to run in parallel. `undefined` or
135
+ * `<= 1` preserves the legacy in-process path (single main-thread
136
+ * embedder, no Piscina overhead). Values >= 2 spin up a worker pool of
137
+ * independent OnnxEmbedder instances. Each worker holds its own
138
+ * session (~300 MB RSS on fp32), so sizing above `os.cpus().length - 1`
139
+ * buys nothing and risks memory pressure. Ignored when the HTTP
140
+ * backend is selected via `CODEHUB_EMBEDDING_URL`.
141
+ */
142
+ readonly embeddingsWorkers?: number;
143
+ /**
144
+ * Batch size for cross-node inference. The embeddings phase groups
145
+ * chunks across symbols/files/communities into a single
146
+ * `embedder.embedBatch()` call; this knob controls that batch size.
147
+ * Defaults to 32 (see `DEFAULT_EMBEDDING_BATCH_SIZE` in the phase
148
+ * module). `1` restores the legacy one-node-per-call pattern.
149
+ */
150
+ readonly embeddingsBatchSize?: number;
151
+ /**
152
+ * When `true`, the SBOM phase emits `.codehub/sbom.cyclonedx.json` and
153
+ * `.codehub/sbom.spdx.json` from Dependency nodes. When `false` (the
154
+ * default), the phase is a no-op. Toggled via the `codehub analyze
155
+ * --sbom` flag.
156
+ */
157
+ readonly sbom?: boolean;
158
+ /**
159
+ * When `true` (default), SBOM emission uses a fixed epoch timestamp and
160
+ * a content-addressed document namespace so byte-identical SBOMs are
161
+ * produced for byte-identical Dependency sets. This keeps downstream
162
+ * attestations and diff-based review stable. Setting `false` swaps the
163
+ * epoch for `Date.now()` (floored to the second) and the namespace for
164
+ * a random UUID; reserved for ad-hoc local use.
165
+ */
166
+ readonly reproducibleSbom?: boolean;
167
+ /**
168
+ * When `true`, the coverage phase probes for lcov / cobertura / jacoco /
169
+ * coverage.py artifacts and annotates `File` nodes with
170
+ * `coveragePercent` + `coveredLines`. Default `false` so analyze stays
171
+ * quiet in repos without a coverage pipeline. Toggled via the
172
+ * `codehub analyze --coverage` flag.
173
+ */
174
+ readonly coverage?: boolean;
175
+ /**
176
+ * When `true`, the `summarize` phase walks callable symbols, computes a
177
+ * content hash from their source span, and issues a Bedrock summarize
178
+ * call for cache misses. Gated OFF by default because the phase spends
179
+ * real money. The `offline` flag always wins — when `offline === true`
180
+ * the phase is a no-op regardless of this flag.
181
+ */
182
+ readonly summaries?: boolean | undefined;
183
+ /**
184
+ * Upper bound on the number of Bedrock summarize calls per pipeline run.
185
+ * Defaults to `0`, which runs the phase in dry-run mode: it enumerates
186
+ * eligible symbols and reports `wouldHaveSummarized` without contacting
187
+ * Bedrock. Set to a positive integer (e.g. 10) to actually summarize a
188
+ * bounded subset. Ignored when `summaries !== true`. The CLI resolves
189
+ * `--max-summaries auto` to a concrete integer before calling into the
190
+ * pipeline, so this field is always numeric inside the pipeline.
191
+ */
192
+ readonly maxSummariesPerRun?: number | undefined;
193
+ /**
194
+ * Override the Bedrock model id used by the summarize phase. When
195
+ * undefined, the phase uses `DEFAULT_MODEL_ID` from
196
+ * `@opencodehub/summarizer`.
197
+ */
198
+ readonly summaryModel?: string | undefined;
199
+ /**
200
+ * When `true`, detectors that pattern-match on receiver identifiers
201
+ * skip heuristic-only matches entirely — edges are emitted only when a
202
+ * receiver's module origin was confirmed via the import graph or
203
+ * ts-morph. Exposed by the `codehub analyze --strict-detectors` flag
204
+ * (DET-O-001).
205
+ */
206
+ readonly strictDetectors?: boolean;
207
+ }
208
+ /** Lightweight progress event emitted during pipeline execution. */
209
+ export interface ProgressEvent {
210
+ readonly phase: string;
211
+ readonly kind: "start" | "end" | "note" | "warn" | "error";
212
+ readonly pct?: number;
213
+ readonly message?: string;
214
+ readonly elapsedMs?: number;
215
+ }
216
+ /** Declarative phase description. */
217
+ export interface PipelinePhase<TOutput = unknown> {
218
+ /** Unique phase identifier — must be distinct within a DAG. */
219
+ readonly name: string;
220
+ /** Other phase names that must complete before this one runs. */
221
+ readonly deps: readonly string[];
222
+ /**
223
+ * Execute the phase against the shared context. `deps` is pre-filtered to
224
+ * only include outputs of phases this phase declared as dependencies.
225
+ */
226
+ run(ctx: PipelineContext, deps: ReadonlyMap<string, unknown>): Promise<TOutput>;
227
+ }
228
+ /** Per-phase summary returned by {@link runPipeline}. */
229
+ export interface PhaseResult {
230
+ readonly name: string;
231
+ readonly output: unknown;
232
+ readonly durationMs: number;
233
+ readonly warnings: readonly string[];
234
+ }
235
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/pipeline/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Shared types for the pipeline runner and phase modules.
3
+ *
4
+ * The pipeline is a static DAG: each phase declares its dependencies by name,
5
+ * the runner validates (duplicate / missing / cycle) and sorts phases
6
+ * topologically, then executes in order. Phases communicate via a typed
7
+ * output map keyed by phase name; each phase only sees outputs of phases it
8
+ * declared as dependencies (dep isolation prevents hidden coupling).
9
+ *
10
+ * The runner plus scan/structure/parse are the core; markdown, routes,
11
+ * tools, orm, crossFile, mro, communities, and processes extend the set
12
+ * without touching this file.
13
+ */
14
+ export {};
15
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/pipeline/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG"}
@@ -0,0 +1,3 @@
1
+ import type { LanguageProvider } from "./types.js";
2
+ export declare const cProvider: LanguageProvider;
3
+ //# sourceMappingURL=c.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c.d.ts","sourceRoot":"","sources":["../../src/providers/c.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAKV,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAqKpB,eAAO,MAAM,SAAS,EAAE,gBAcvB,CAAC"}
@@ -0,0 +1,162 @@
1
+ import { getLine, innermostEnclosingDef, isInside, pairDefinitionsWithNames, } from "./extract-helpers.js";
2
+ /**
3
+ * C provider.
4
+ *
5
+ * Definitions: functions, typedefs, structs, unions, enums, static variables,
6
+ * macro definitions. The grammar tags `struct_specifier`/`union_specifier`
7
+ * with `@definition.class` and uses `@definition.type` for `typedef` and
8
+ * `enum_specifier`.
9
+ *
10
+ * Calls: `call_expression` with a bare identifier callee. Qualified calls
11
+ * (e.g. `namespace::foo()`) are a C++ concept — not applicable here.
12
+ *
13
+ * Imports: `#include` directives — system headers (`<h>`) and user headers
14
+ * (`"h"`) are both treated as `package-wildcard` imports at MVP.
15
+ *
16
+ * Heritage: C has no inheritance, so this is always `[]`.
17
+ *
18
+ * Exports: at MVP we treat `static` identifiers (file-scoped) as not
19
+ * exported; everything else is. We use the header line of the definition
20
+ * to check for the `static` storage-class specifier.
21
+ */
22
+ const C_DEF_KIND_MAP = {
23
+ "definition.function": "Function",
24
+ "definition.class": "Struct",
25
+ "definition.type": "Typedef",
26
+ "definition.enum": "Enum",
27
+ "definition.union": "Union",
28
+ "definition.constant": "Const",
29
+ "definition.macro": "Macro",
30
+ };
31
+ function extractCDefinitions(input) {
32
+ const { filePath, captures, sourceText } = input;
33
+ const paired = pairDefinitionsWithNames(captures);
34
+ const defCaptures = captures.filter((c) => c.tag.startsWith("definition."));
35
+ const out = [];
36
+ for (const { def, name } of paired) {
37
+ const kind = C_DEF_KIND_MAP[def.tag];
38
+ if (kind === undefined)
39
+ continue;
40
+ let owner;
41
+ const ownerDef = innermostEnclosingDef(def, defCaptures);
42
+ if (ownerDef !== undefined) {
43
+ const ownerPaired = paired.find((p) => p.def === ownerDef);
44
+ if (ownerPaired !== undefined)
45
+ owner = ownerPaired.name.text;
46
+ }
47
+ const qualifiedName = owner !== undefined ? `${owner}.${name.text}` : name.text;
48
+ const headerLine = getLine(sourceText, def.startLine);
49
+ const isStatic = /\bstatic\b/.test(headerLine);
50
+ // C convention: identifiers prefixed with `_` tend to be internal; we
51
+ // respect both `static` and leading-underscore as non-exported.
52
+ const isExported = !isStatic && !name.text.startsWith("_");
53
+ out.push({
54
+ kind,
55
+ name: name.text,
56
+ qualifiedName,
57
+ filePath,
58
+ startLine: def.startLine,
59
+ endLine: def.endLine,
60
+ isExported,
61
+ ...(owner !== undefined ? { owner } : {}),
62
+ });
63
+ }
64
+ return out;
65
+ }
66
+ function extractCCalls(input) {
67
+ const { filePath, captures, definitions } = input;
68
+ const defCaptures = captures.filter((c) => c.tag.startsWith("definition."));
69
+ const callRefs = captures.filter((c) => c.tag === "reference.call");
70
+ const out = [];
71
+ for (const ref of callRefs) {
72
+ const innerName = findNameInside(captures, ref);
73
+ const calleeName = innerName?.text ?? ref.text;
74
+ const enclosingDef = innermostEnclosingDef(ref, defCaptures);
75
+ const callerQualifiedName = enclosingDef
76
+ ? qualifiedForCapture(enclosingDef, definitions)
77
+ : "<module>";
78
+ out.push({
79
+ callerQualifiedName,
80
+ calleeName,
81
+ filePath,
82
+ startLine: ref.startLine,
83
+ });
84
+ }
85
+ return out;
86
+ }
87
+ function findNameInside(captures, outer) {
88
+ let best;
89
+ for (const c of captures) {
90
+ if (c.tag !== "name")
91
+ continue;
92
+ if (!isInside(c, outer))
93
+ continue;
94
+ if (best === undefined || c.startLine < best.startLine)
95
+ best = c;
96
+ }
97
+ return best;
98
+ }
99
+ function qualifiedForCapture(def, definitions) {
100
+ for (const d of definitions) {
101
+ if (d.startLine === def.startLine)
102
+ return d.qualifiedName;
103
+ }
104
+ return "<module>";
105
+ }
106
+ /**
107
+ * Parse `#include` directives. Covers both forms:
108
+ * `#include <stdio.h>` system headers
109
+ * `#include "local.h"` user headers
110
+ *
111
+ * The quoted form may appear in `localAlias` in future revisions; today we
112
+ * just record the raw path. `kind` is `package-wildcard` since an include
113
+ * pulls in every symbol exposed by the header.
114
+ */
115
+ function extractCImports(input) {
116
+ const { filePath, sourceText } = input;
117
+ // We deliberately avoid the shared `stripComments` helper — it treats `#`
118
+ // as a line-comment starter (Python/Ruby/shell convention), which would
119
+ // eat `#include` directives. `//` and `/* */` are handled by the regex
120
+ // itself: an include line must start with `#include` before any comment.
121
+ const stripped = stripCStyleComments(sourceText);
122
+ const out = [];
123
+ // System includes: #include <path>
124
+ const systemRe = /^\s*#\s*include\s+<([^>]+)>/gm;
125
+ for (const m of stripped.matchAll(systemRe)) {
126
+ out.push({ filePath, source: m[1], kind: "package-wildcard" });
127
+ }
128
+ // User includes: #include "path"
129
+ const userRe = /^\s*#\s*include\s+"([^"]+)"/gm;
130
+ for (const m of stripped.matchAll(userRe)) {
131
+ out.push({ filePath, source: m[1], kind: "package-wildcard" });
132
+ }
133
+ return out;
134
+ }
135
+ /**
136
+ * Strip C-style line and block comments without touching `#` — which is
137
+ * a preprocessor sigil, not a comment.
138
+ */
139
+ function stripCStyleComments(src) {
140
+ // Replace block comments with spaces to preserve line numbers.
141
+ let out = src.replace(/\/\*[\s\S]*?\*\//g, (s) => s.replace(/[^\n]/g, " "));
142
+ out = out.replace(/\/\/[^\n]*/g, "");
143
+ return out;
144
+ }
145
+ function extractCHeritage(_input) {
146
+ return [];
147
+ }
148
+ export const cProvider = {
149
+ id: "c",
150
+ extensions: [".c", ".h"],
151
+ importSemantics: "named",
152
+ mroStrategy: "none",
153
+ typeConfig: { structural: false, nominal: true, generics: false },
154
+ heritageEdge: null,
155
+ isExportedIdentifier: (name) => !name.startsWith("_"),
156
+ extractDefinitions: extractCDefinitions,
157
+ extractCalls: extractCCalls,
158
+ extractImports: extractCImports,
159
+ isExported: (def) => def.isExported,
160
+ extractHeritage: extractCHeritage,
161
+ };
162
+ //# sourceMappingURL=c.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c.js","sourceRoot":"","sources":["../../src/providers/c.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * COBOL language provider — stub.
3
+ *
4
+ * COBOL has no tree-sitter grammar, so the parse pipeline does NOT route
5
+ * `.cbl` / `.cob` / `.cpy` files through the worker pool or this provider's
6
+ * extract methods. Instead, `packages/ingestion/src/parse/cobol-regex.ts`
7
+ * emits `CodeElement` graph nodes directly from a regex pass.
8
+ *
9
+ * This stub exists solely to satisfy the compile-time
10
+ * `satisfies Record<LanguageId, LanguageProvider>` constraint in
11
+ * `providers/registry.ts`. Every extract method returns an empty array; the
12
+ * receiver-inference and heritage hooks follow the "no inheritance" defaults.
13
+ * Calling any of these methods indicates the parse phase failed to route
14
+ * COBOL files correctly — the resulting empty output is preferable to a
15
+ * crash, but upstream callers should treat it as a bug signal.
16
+ */
17
+ import type { LanguageProvider } from "./types.js";
18
+ export declare const cobolProvider: LanguageProvider;
19
+ //# sourceMappingURL=cobol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cobol.d.ts","sourceRoot":"","sources":["../../src/providers/cobol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAQH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,eAAO,MAAM,aAAa,EAAE,gBA2B3B,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * COBOL language provider — stub.
3
+ *
4
+ * COBOL has no tree-sitter grammar, so the parse pipeline does NOT route
5
+ * `.cbl` / `.cob` / `.cpy` files through the worker pool or this provider's
6
+ * extract methods. Instead, `packages/ingestion/src/parse/cobol-regex.ts`
7
+ * emits `CodeElement` graph nodes directly from a regex pass.
8
+ *
9
+ * This stub exists solely to satisfy the compile-time
10
+ * `satisfies Record<LanguageId, LanguageProvider>` constraint in
11
+ * `providers/registry.ts`. Every extract method returns an empty array; the
12
+ * receiver-inference and heritage hooks follow the "no inheritance" defaults.
13
+ * Calling any of these methods indicates the parse phase failed to route
14
+ * COBOL files correctly — the resulting empty output is preferable to a
15
+ * crash, but upstream callers should treat it as a bug signal.
16
+ */
17
+ export const cobolProvider = {
18
+ id: "cobol",
19
+ extensions: [".cbl", ".cob", ".cpy"],
20
+ importSemantics: "named",
21
+ mroStrategy: "none",
22
+ typeConfig: {
23
+ structural: false,
24
+ nominal: false,
25
+ generics: false,
26
+ },
27
+ heritageEdge: null,
28
+ extractDefinitions() {
29
+ return [];
30
+ },
31
+ extractCalls() {
32
+ return [];
33
+ },
34
+ extractImports() {
35
+ return [];
36
+ },
37
+ isExported() {
38
+ return false;
39
+ },
40
+ extractHeritage() {
41
+ return [];
42
+ },
43
+ };
44
+ //# sourceMappingURL=cobol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cobol.js","sourceRoot":"","sources":["../../src/providers/cobol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAUH,MAAM,CAAC,MAAM,aAAa,GAAqB;IAC7C,EAAE,EAAE,OAAO;IACX,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IACpC,eAAe,EAAE,OAAO;IACxB,WAAW,EAAE,MAAM;IACnB,UAAU,EAAE;QACV,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,KAAK;KAChB;IACD,YAAY,EAAE,IAAI;IAElB,kBAAkB;QAChB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,YAAY;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,cAAc;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,UAAU;QACR,OAAO,KAAK,CAAC;IACf,CAAC;IACD,eAAe;QACb,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { LanguageProvider } from "./types.js";
2
+ export declare const cppProvider: LanguageProvider;
3
+ //# sourceMappingURL=cpp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cpp.d.ts","sourceRoot":"","sources":["../../src/providers/cpp.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAKV,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAiNpB,eAAO,MAAM,WAAW,EAAE,gBAczB,CAAC"}