seer-mcp 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 (371) hide show
  1. package/.vscode/settings.json +3 -0
  2. package/LICENSE +176 -0
  3. package/README.md +272 -0
  4. package/README_dev.md +199 -0
  5. package/dist/bundle/ci.d.ts +47 -0
  6. package/dist/bundle/ci.d.ts.map +1 -0
  7. package/dist/bundle/ci.js +113 -0
  8. package/dist/bundle/ci.js.map +1 -0
  9. package/dist/bundle/contract.d.ts +111 -0
  10. package/dist/bundle/contract.d.ts.map +1 -0
  11. package/dist/bundle/contract.js +352 -0
  12. package/dist/bundle/contract.js.map +1 -0
  13. package/dist/bundle/export.d.ts +36 -0
  14. package/dist/bundle/export.d.ts.map +1 -0
  15. package/dist/bundle/export.js +152 -0
  16. package/dist/bundle/export.js.map +1 -0
  17. package/dist/bundle/external.d.ts +66 -0
  18. package/dist/bundle/external.d.ts.map +1 -0
  19. package/dist/bundle/external.js +238 -0
  20. package/dist/bundle/external.js.map +1 -0
  21. package/dist/bundle/format.d.ts +94 -0
  22. package/dist/bundle/format.d.ts.map +1 -0
  23. package/dist/bundle/format.js +42 -0
  24. package/dist/bundle/format.js.map +1 -0
  25. package/dist/bundle/import.d.ts +49 -0
  26. package/dist/bundle/import.d.ts.map +1 -0
  27. package/dist/bundle/import.js +116 -0
  28. package/dist/bundle/import.js.map +1 -0
  29. package/dist/cli/index.d.ts +3 -0
  30. package/dist/cli/index.d.ts.map +1 -0
  31. package/dist/cli/index.js +1402 -0
  32. package/dist/cli/index.js.map +1 -0
  33. package/dist/cli/init.d.ts +48 -0
  34. package/dist/cli/init.d.ts.map +1 -0
  35. package/dist/cli/init.js +284 -0
  36. package/dist/cli/init.js.map +1 -0
  37. package/dist/db/schema.d.ts +3 -0
  38. package/dist/db/schema.d.ts.map +1 -0
  39. package/dist/db/schema.js +616 -0
  40. package/dist/db/schema.js.map +1 -0
  41. package/dist/db/store.d.ts +1011 -0
  42. package/dist/db/store.d.ts.map +1 -0
  43. package/dist/db/store.js +3888 -0
  44. package/dist/db/store.js.map +1 -0
  45. package/dist/graph/pagerank.d.ts +9 -0
  46. package/dist/graph/pagerank.d.ts.map +1 -0
  47. package/dist/graph/pagerank.js +47 -0
  48. package/dist/graph/pagerank.js.map +1 -0
  49. package/dist/indexer/architecture.d.ts +72 -0
  50. package/dist/indexer/architecture.d.ts.map +1 -0
  51. package/dist/indexer/architecture.js +112 -0
  52. package/dist/indexer/architecture.js.map +1 -0
  53. package/dist/indexer/behavior.d.ts +75 -0
  54. package/dist/indexer/behavior.d.ts.map +1 -0
  55. package/dist/indexer/behavior.js +395 -0
  56. package/dist/indexer/behavior.js.map +1 -0
  57. package/dist/indexer/boundaries.d.ts +60 -0
  58. package/dist/indexer/boundaries.d.ts.map +1 -0
  59. package/dist/indexer/boundaries.js +366 -0
  60. package/dist/indexer/boundaries.js.map +1 -0
  61. package/dist/indexer/churn.d.ts +15 -0
  62. package/dist/indexer/churn.d.ts.map +1 -0
  63. package/dist/indexer/churn.js +49 -0
  64. package/dist/indexer/churn.js.map +1 -0
  65. package/dist/indexer/classify.d.ts +9 -0
  66. package/dist/indexer/classify.d.ts.map +1 -0
  67. package/dist/indexer/classify.js +90 -0
  68. package/dist/indexer/classify.js.map +1 -0
  69. package/dist/indexer/context.d.ts +176 -0
  70. package/dist/indexer/context.d.ts.map +1 -0
  71. package/dist/indexer/context.js +193 -0
  72. package/dist/indexer/context.js.map +1 -0
  73. package/dist/indexer/continuity.d.ts +67 -0
  74. package/dist/indexer/continuity.d.ts.map +1 -0
  75. package/dist/indexer/continuity.js +288 -0
  76. package/dist/indexer/continuity.js.map +1 -0
  77. package/dist/indexer/detectchanges.d.ts +32 -0
  78. package/dist/indexer/detectchanges.d.ts.map +1 -0
  79. package/dist/indexer/detectchanges.js +74 -0
  80. package/dist/indexer/detectchanges.js.map +1 -0
  81. package/dist/indexer/discovery.d.ts +37 -0
  82. package/dist/indexer/discovery.d.ts.map +1 -0
  83. package/dist/indexer/discovery.js +136 -0
  84. package/dist/indexer/discovery.js.map +1 -0
  85. package/dist/indexer/externaldeps.d.ts +18 -0
  86. package/dist/indexer/externaldeps.d.ts.map +1 -0
  87. package/dist/indexer/externaldeps.js +288 -0
  88. package/dist/indexer/externaldeps.js.map +1 -0
  89. package/dist/indexer/freshness.d.ts +48 -0
  90. package/dist/indexer/freshness.d.ts.map +1 -0
  91. package/dist/indexer/freshness.js +128 -0
  92. package/dist/indexer/freshness.js.map +1 -0
  93. package/dist/indexer/git.d.ts +144 -0
  94. package/dist/indexer/git.d.ts.map +1 -0
  95. package/dist/indexer/git.js +444 -0
  96. package/dist/indexer/git.js.map +1 -0
  97. package/dist/indexer/index.d.ts +145 -0
  98. package/dist/indexer/index.d.ts.map +1 -0
  99. package/dist/indexer/index.js +930 -0
  100. package/dist/indexer/index.js.map +1 -0
  101. package/dist/indexer/modules.d.ts +62 -0
  102. package/dist/indexer/modules.d.ts.map +1 -0
  103. package/dist/indexer/modules.js +293 -0
  104. package/dist/indexer/modules.js.map +1 -0
  105. package/dist/indexer/preflight.d.ts +154 -0
  106. package/dist/indexer/preflight.d.ts.map +1 -0
  107. package/dist/indexer/preflight.js +399 -0
  108. package/dist/indexer/preflight.js.map +1 -0
  109. package/dist/indexer/protoScanner.d.ts +34 -0
  110. package/dist/indexer/protoScanner.d.ts.map +1 -0
  111. package/dist/indexer/protoScanner.js +133 -0
  112. package/dist/indexer/protoScanner.js.map +1 -0
  113. package/dist/indexer/risk.d.ts +115 -0
  114. package/dist/indexer/risk.d.ts.map +1 -0
  115. package/dist/indexer/risk.js +194 -0
  116. package/dist/indexer/risk.js.map +1 -0
  117. package/dist/indexer/serviceHostScanner.d.ts +25 -0
  118. package/dist/indexer/serviceHostScanner.d.ts.map +1 -0
  119. package/dist/indexer/serviceHostScanner.js +95 -0
  120. package/dist/indexer/serviceHostScanner.js.map +1 -0
  121. package/dist/indexer/serviceLinks.d.ts +105 -0
  122. package/dist/indexer/serviceLinks.d.ts.map +1 -0
  123. package/dist/indexer/serviceLinks.js +509 -0
  124. package/dist/indexer/serviceLinks.js.map +1 -0
  125. package/dist/indexer/shapehash.d.ts +98 -0
  126. package/dist/indexer/shapehash.d.ts.map +1 -0
  127. package/dist/indexer/shapehash.js +354 -0
  128. package/dist/indexer/shapehash.js.map +1 -0
  129. package/dist/indexer/skeleton.d.ts +15 -0
  130. package/dist/indexer/skeleton.d.ts.map +1 -0
  131. package/dist/indexer/skeleton.js +136 -0
  132. package/dist/indexer/skeleton.js.map +1 -0
  133. package/dist/indexer/symbolhistory.d.ts +41 -0
  134. package/dist/indexer/symbolhistory.d.ts.map +1 -0
  135. package/dist/indexer/symbolhistory.js +124 -0
  136. package/dist/indexer/symbolhistory.js.map +1 -0
  137. package/dist/indexer/watcher.d.ts +68 -0
  138. package/dist/indexer/watcher.d.ts.map +1 -0
  139. package/dist/indexer/watcher.js +179 -0
  140. package/dist/indexer/watcher.js.map +1 -0
  141. package/dist/mcp/server.d.ts +80 -0
  142. package/dist/mcp/server.d.ts.map +1 -0
  143. package/dist/mcp/server.js +1610 -0
  144. package/dist/mcp/server.js.map +1 -0
  145. package/dist/parser/index.d.ts +8 -0
  146. package/dist/parser/index.d.ts.map +1 -0
  147. package/dist/parser/index.js +33 -0
  148. package/dist/parser/index.js.map +1 -0
  149. package/dist/parser/languages/cpp.d.ts +3 -0
  150. package/dist/parser/languages/cpp.d.ts.map +1 -0
  151. package/dist/parser/languages/cpp.js +350 -0
  152. package/dist/parser/languages/cpp.js.map +1 -0
  153. package/dist/parser/languages/csharp.d.ts +3 -0
  154. package/dist/parser/languages/csharp.d.ts.map +1 -0
  155. package/dist/parser/languages/csharp.js +239 -0
  156. package/dist/parser/languages/csharp.js.map +1 -0
  157. package/dist/parser/languages/go.d.ts +3 -0
  158. package/dist/parser/languages/go.d.ts.map +1 -0
  159. package/dist/parser/languages/go.js +259 -0
  160. package/dist/parser/languages/go.js.map +1 -0
  161. package/dist/parser/languages/java.d.ts +3 -0
  162. package/dist/parser/languages/java.d.ts.map +1 -0
  163. package/dist/parser/languages/java.js +391 -0
  164. package/dist/parser/languages/java.js.map +1 -0
  165. package/dist/parser/languages/python.d.ts +3 -0
  166. package/dist/parser/languages/python.d.ts.map +1 -0
  167. package/dist/parser/languages/python.js +396 -0
  168. package/dist/parser/languages/python.js.map +1 -0
  169. package/dist/parser/languages/rust.d.ts +3 -0
  170. package/dist/parser/languages/rust.d.ts.map +1 -0
  171. package/dist/parser/languages/rust.js +159 -0
  172. package/dist/parser/languages/rust.js.map +1 -0
  173. package/dist/parser/languages/typescript.d.ts +3 -0
  174. package/dist/parser/languages/typescript.d.ts.map +1 -0
  175. package/dist/parser/languages/typescript.js +1442 -0
  176. package/dist/parser/languages/typescript.js.map +1 -0
  177. package/dist/parser/parserContext.d.ts +77 -0
  178. package/dist/parser/parserContext.d.ts.map +1 -0
  179. package/dist/parser/parserContext.js +354 -0
  180. package/dist/parser/parserContext.js.map +1 -0
  181. package/dist/parser/walker.d.ts +81 -0
  182. package/dist/parser/walker.d.ts.map +1 -0
  183. package/dist/parser/walker.js +217 -0
  184. package/dist/parser/walker.js.map +1 -0
  185. package/dist/parser/worker.d.ts +66 -0
  186. package/dist/parser/worker.d.ts.map +1 -0
  187. package/dist/parser/worker.js +129 -0
  188. package/dist/parser/worker.js.map +1 -0
  189. package/dist/parser/workerpool.d.ts +107 -0
  190. package/dist/parser/workerpool.d.ts.map +1 -0
  191. package/dist/parser/workerpool.js +383 -0
  192. package/dist/parser/workerpool.js.map +1 -0
  193. package/dist/scip/format.d.ts +87 -0
  194. package/dist/scip/format.d.ts.map +1 -0
  195. package/dist/scip/format.js +31 -0
  196. package/dist/scip/format.js.map +1 -0
  197. package/dist/scip/import.d.ts +37 -0
  198. package/dist/scip/import.d.ts.map +1 -0
  199. package/dist/scip/import.js +180 -0
  200. package/dist/scip/import.js.map +1 -0
  201. package/dist/types.d.ts +392 -0
  202. package/dist/types.d.ts.map +1 -0
  203. package/dist/types.js +4 -0
  204. package/dist/types.js.map +1 -0
  205. package/docs/architecture.md +105 -0
  206. package/docs/benchmarks/methodology.md +134 -0
  207. package/docs/benchmarks/raw-results.md +71 -0
  208. package/docs/benchmarks.md +74 -0
  209. package/docs/cli.md +148 -0
  210. package/docs/examples/behavior-tests.md +70 -0
  211. package/docs/examples/change-history.md +85 -0
  212. package/docs/examples/pre-edit-context.md +81 -0
  213. package/docs/examples/service-links.md +88 -0
  214. package/docs/examples.md +80 -0
  215. package/docs/faq.md +70 -0
  216. package/docs/internals.md +104 -0
  217. package/docs/languages.md +70 -0
  218. package/docs/limits.md +52 -0
  219. package/docs/mcp.md +199 -0
  220. package/docs/quickstart.md +119 -0
  221. package/docs/testing.md +123 -0
  222. package/docs/tools.md +115 -0
  223. package/package.json +52 -0
  224. package/research-codebase.md +578 -0
  225. package/seer-cli-docs.md +326 -0
  226. package/seer-master-guide.md +246 -0
  227. package/src/bundle/ci.ts +141 -0
  228. package/src/bundle/contract.ts +387 -0
  229. package/src/bundle/export.ts +175 -0
  230. package/src/bundle/external.ts +285 -0
  231. package/src/bundle/format.ts +92 -0
  232. package/src/bundle/import.ts +157 -0
  233. package/src/cli/index.ts +1249 -0
  234. package/src/cli/init.ts +389 -0
  235. package/src/db/schema.ts +614 -0
  236. package/src/db/store.ts +4306 -0
  237. package/src/graph/pagerank.ts +53 -0
  238. package/src/indexer/architecture.ts +148 -0
  239. package/src/indexer/behavior.ts +466 -0
  240. package/src/indexer/boundaries.ts +374 -0
  241. package/src/indexer/churn.ts +58 -0
  242. package/src/indexer/classify.ts +96 -0
  243. package/src/indexer/context.ts +340 -0
  244. package/src/indexer/continuity.ts +322 -0
  245. package/src/indexer/detectchanges.ts +94 -0
  246. package/src/indexer/discovery.ts +176 -0
  247. package/src/indexer/externaldeps.ts +243 -0
  248. package/src/indexer/freshness.ts +166 -0
  249. package/src/indexer/git.ts +453 -0
  250. package/src/indexer/index.ts +1092 -0
  251. package/src/indexer/modules.ts +358 -0
  252. package/src/indexer/preflight.ts +548 -0
  253. package/src/indexer/protoScanner.ts +147 -0
  254. package/src/indexer/risk.ts +304 -0
  255. package/src/indexer/serviceHostScanner.ts +92 -0
  256. package/src/indexer/serviceLinks.ts +543 -0
  257. package/src/indexer/shapehash.ts +370 -0
  258. package/src/indexer/skeleton.ts +169 -0
  259. package/src/indexer/symbolhistory.ts +172 -0
  260. package/src/indexer/watcher.ts +206 -0
  261. package/src/mcp/server.ts +1659 -0
  262. package/src/parser/index.ts +37 -0
  263. package/src/parser/languages/cpp.ts +361 -0
  264. package/src/parser/languages/csharp.ts +235 -0
  265. package/src/parser/languages/go.ts +259 -0
  266. package/src/parser/languages/java.ts +382 -0
  267. package/src/parser/languages/python.ts +370 -0
  268. package/src/parser/languages/rust.ts +164 -0
  269. package/src/parser/languages/typescript.ts +1435 -0
  270. package/src/parser/parserContext.ts +392 -0
  271. package/src/parser/walker.ts +306 -0
  272. package/src/parser/worker.ts +181 -0
  273. package/src/parser/workerpool.ts +448 -0
  274. package/src/scip/format.ts +83 -0
  275. package/src/scip/import.ts +216 -0
  276. package/src/types.ts +457 -0
  277. package/tests/benchmark-service-links.ts +244 -0
  278. package/tests/bug-regressions.ts +626 -0
  279. package/tests/filters.ts +264 -0
  280. package/tests/fixtures/Counter.tsx +38 -0
  281. package/tests/fixtures/caller.ts +7 -0
  282. package/tests/fixtures/collisions.ts +23 -0
  283. package/tests/fixtures/local_helper.ts +5 -0
  284. package/tests/fixtures/overloads.java +17 -0
  285. package/tests/fixtures/remote_helper.ts +4 -0
  286. package/tests/fixtures/sample.c +15 -0
  287. package/tests/fixtures/sample.cpp +47 -0
  288. package/tests/fixtures/sample.cs +62 -0
  289. package/tests/fixtures/sample.go +68 -0
  290. package/tests/fixtures/sample.h +30 -0
  291. package/tests/fixtures/sample.java +85 -0
  292. package/tests/fixtures/sample.py +46 -0
  293. package/tests/fixtures/sample.rs +78 -0
  294. package/tests/fixtures/sample.ts +76 -0
  295. package/tests/fixtures-service/HttpClients.cs +30 -0
  296. package/tests/fixtures-service/HttpClients.java +24 -0
  297. package/tests/fixtures-service/billing.ts +15 -0
  298. package/tests/fixtures-service/docker-compose.yml +15 -0
  299. package/tests/fixtures-service/gateway.ts +10 -0
  300. package/tests/fixtures-service/get_user.ts +11 -0
  301. package/tests/fixtures-service/graphql_client.ts +63 -0
  302. package/tests/fixtures-service/graphql_server.ts +30 -0
  303. package/tests/fixtures-service/grpc_client.go +30 -0
  304. package/tests/fixtures-service/http_clients.go +23 -0
  305. package/tests/fixtures-service/http_clients.py +38 -0
  306. package/tests/fixtures-service/http_clients.ts +49 -0
  307. package/tests/fixtures-service/k8s/payment-service.yaml +22 -0
  308. package/tests/fixtures-service/k8s_calls.ts +20 -0
  309. package/tests/fixtures-service/messaging.ts +87 -0
  310. package/tests/fixtures-service/trpc_client.ts +39 -0
  311. package/tests/fixtures-service/trpc_server.ts +39 -0
  312. package/tests/fixtures-service/user_service.proto +33 -0
  313. package/tests/fixtures-trackcd/Cargo.toml +11 -0
  314. package/tests/fixtures-trackcd/SpringController.java +36 -0
  315. package/tests/fixtures-trackcd/auth_service.ts +19 -0
  316. package/tests/fixtures-trackcd/complex_module.py +50 -0
  317. package/tests/fixtures-trackcd/express_app.js +30 -0
  318. package/tests/fixtures-trackcd/fastapi_app.py +49 -0
  319. package/tests/fixtures-trackcd/fastify_object_routes.js +32 -0
  320. package/tests/fixtures-trackcd/go.mod +8 -0
  321. package/tests/fixtures-trackcd/package.json +15 -0
  322. package/tests/fixtures-trackcd/requirements.txt +4 -0
  323. package/tests/fixtures-trackcd/tests/auth_service.test.ts +13 -0
  324. package/tests/fixtures-tracke/auth/AuthService.ts +23 -0
  325. package/tests/fixtures-tracke/auth/crypto.ts +7 -0
  326. package/tests/fixtures-tracke/billing/Billing.ts +20 -0
  327. package/tests/fixtures-tracke/billing/Invoice.ts +10 -0
  328. package/tests/fixtures-tracke/billing/server.ts +17 -0
  329. package/tests/fixtures-tracke/package.json +7 -0
  330. package/tests/fixtures-tracke/tests/auth.test.ts +23 -0
  331. package/tests/fixtures-tracke/tests/billing.test.ts +14 -0
  332. package/tests/fixtures-trackf/package.json +5 -0
  333. package/tests/fixtures-trackf/src/auth.ts +26 -0
  334. package/tests/fixtures-trackf/src/handlers.ts +35 -0
  335. package/tests/fixtures-tracki/billing/routes.ts +12 -0
  336. package/tests/fixtures-tracki/gateway/client.ts +13 -0
  337. package/tests/git-features.ts +267 -0
  338. package/tests/init.ts +141 -0
  339. package/tests/mcp-jit.ts +130 -0
  340. package/tests/mcp-smoke.ts +191 -0
  341. package/tests/mcp-trackcd.ts +169 -0
  342. package/tests/mcp-tracke.ts +229 -0
  343. package/tests/mcp-trackf.ts +330 -0
  344. package/tests/mcp-trackg.ts +219 -0
  345. package/tests/mcp-tracki.ts +174 -0
  346. package/tests/mcp-watcher.ts +126 -0
  347. package/tests/optspec.ts +194 -0
  348. package/tests/parallel-index.ts +333 -0
  349. package/tests/parallel-read.ts +125 -0
  350. package/tests/parallel-recovery.ts +241 -0
  351. package/tests/perf-callers.ts +145 -0
  352. package/tests/query-parity.ts +184 -0
  353. package/tests/query-perf.ts +55 -0
  354. package/tests/scale-parallel-parity.ts +225 -0
  355. package/tests/scale-test.ts +523 -0
  356. package/tests/smoke.ts +396 -0
  357. package/tests/trackcd.ts +325 -0
  358. package/tests/tracke-collisions.ts +255 -0
  359. package/tests/tracke.ts +314 -0
  360. package/tests/trackf-bugs.ts +406 -0
  361. package/tests/trackf.ts +390 -0
  362. package/tests/trackg.ts +1372 -0
  363. package/tests/tracki-boundaries.ts +202 -0
  364. package/tests/tracki-continuity.ts +253 -0
  365. package/tests/tracki-contract-diff.ts +249 -0
  366. package/tests/tracki-external-bundles.ts +341 -0
  367. package/tests/tracki-preflight.ts +251 -0
  368. package/tests/verify-roles.ts +51 -0
  369. package/tests/worker-parity.ts +286 -0
  370. package/tests/worker-pool.ts +262 -0
  371. package/tsconfig.json +20 -0
@@ -0,0 +1,180 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.importScip = importScip;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ const crypto_1 = __importDefault(require("crypto"));
10
+ /**
11
+ * Import a SCIP index into the Store, layering precise SCIP symbols and
12
+ * references over the existing tree-sitter graph. Tree-sitter rows are never
13
+ * deleted; SCIP symbols with the same file/line/kind/qualified-name as an
14
+ * existing row reuse its id (and the existing row is re-labeled 'scip-merge').
15
+ *
16
+ * The import is idempotent on the (path, sha256) pair: re-importing the exact
17
+ * same file is a no-op. Re-importing the same path with new content clears
18
+ * the SCIP-sourced rows for that path first.
19
+ */
20
+ async function importScip(scipPath, store, options) {
21
+ const start = Date.now();
22
+ const log = options.log ?? (() => { });
23
+ const abs = path_1.default.resolve(scipPath);
24
+ if (!fs_1.default.existsSync(abs)) {
25
+ throw new Error(`SCIP index not found: ${abs}`);
26
+ }
27
+ const content = fs_1.default.readFileSync(abs);
28
+ const sha = crypto_1.default.createHash('sha256').update(content).digest('hex');
29
+ // Idempotency check — same path + sha = already imported, return a cheap
30
+ // no-op result.
31
+ if (store.hasScipImport(abs, sha)) {
32
+ log(`SCIP ${path_1.default.basename(abs)} already imported (sha ${sha.slice(0, 8)}); skipping`);
33
+ return {
34
+ path: abs, sha256: sha, tool: null,
35
+ documentsProcessed: 0, symbolsInserted: 0, symbolsMerged: 0, edgesInserted: 0,
36
+ filesMissing: 0, elapsedMs: Date.now() - start,
37
+ };
38
+ }
39
+ // Wipe SCIP rows from THIS exact path so re-imports don't accumulate.
40
+ // Other SCIP layers stay untouched — clearScipProvenance(path) is scoped
41
+ // to the path's scip_imports.id.
42
+ store.clearScipProvenance(abs);
43
+ // Currently we only parse the JSON envelope. Binary .scip support can be
44
+ // added later by piping through a protobuf decoder; the rest of the
45
+ // pipeline below stays unchanged because it works against the parsed
46
+ // ScipIndex shape.
47
+ let scip;
48
+ try {
49
+ scip = JSON.parse(content.toString('utf-8'));
50
+ }
51
+ catch (err) {
52
+ throw new Error(`Failed to parse SCIP JSON ${abs}: ${err.message}`);
53
+ }
54
+ // Map repo-relative paths → file_id by matching against the indexer's view.
55
+ const allFiles = store.listFiles();
56
+ const fileByRel = new Map();
57
+ for (const f of allFiles) {
58
+ fileByRel.set(normalizePath(f.relPath), f.id);
59
+ }
60
+ const requireFileInIndex = options.requireFileInIndex ?? true;
61
+ let documentsProcessed = 0;
62
+ let symbolsInserted = 0;
63
+ let symbolsMerged = 0;
64
+ let edgesInserted = 0;
65
+ let filesMissing = 0;
66
+ // Record the import FIRST so we have an id to link every symbol/edge back
67
+ // to. Counts are zero now and patched up at the end — the row exists from
68
+ // the moment of insertion so scip_import_id foreign keys are always valid.
69
+ const scipImportId = store.recordScipImport(abs, sha, scip.tool ?? null, scip.projectRoot ?? options.repoRoot, 0, 0);
70
+ // Pass 1: insert SCIP symbols, keep a (scipSymbolId → storeSymbolId) map.
71
+ const idMap = new Map();
72
+ // Track per-file definition occurrences so pass 2 can resolve references.
73
+ store.rawDb().exec('BEGIN');
74
+ try {
75
+ for (const doc of scip.documents) {
76
+ const rel = normalizePath(doc.relativePath);
77
+ const fileId = fileByRel.get(rel);
78
+ if (fileId == null) {
79
+ if (requireFileInIndex) {
80
+ filesMissing++;
81
+ continue;
82
+ }
83
+ }
84
+ documentsProcessed++;
85
+ const fid = fileId ?? -1;
86
+ if (fid < 0)
87
+ continue;
88
+ for (const sym of doc.symbols) {
89
+ const def = scipSymbolToSymbolDef(sym);
90
+ const { id, merged } = store.insertOrMergeScipSymbol(fid, def, scipImportId);
91
+ idMap.set(sym.symbolId, id);
92
+ if (merged)
93
+ symbolsMerged++;
94
+ else
95
+ symbolsInserted++;
96
+ }
97
+ }
98
+ // Pass 2: insert reference edges. We need both ends in the idMap, so any
99
+ // reference whose target wasn't defined in this SCIP doc (cross-package
100
+ // refs) is skipped. For each reference occurrence inside a function/
101
+ // method's range we attribute the edge to that enclosing symbol — same
102
+ // strategy tree-sitter uses for call-edge resolution.
103
+ for (const doc of scip.documents) {
104
+ const rel = normalizePath(doc.relativePath);
105
+ const fileId = fileByRel.get(rel);
106
+ if (fileId == null)
107
+ continue;
108
+ // Build a per-file ordered list of (definitionSymbolId, range) so we
109
+ // can attribute references to the smallest enclosing definition.
110
+ const localDefs = [];
111
+ for (const sym of doc.symbols) {
112
+ const storeId = idMap.get(sym.symbolId);
113
+ if (storeId == null)
114
+ continue;
115
+ localDefs.push({
116
+ id: storeId,
117
+ symbolId: sym.symbolId,
118
+ startLine: sym.range.startLine,
119
+ endLine: sym.range.endLine,
120
+ });
121
+ }
122
+ // Sort by line range size ascending so the smallest enclosing def wins.
123
+ localDefs.sort((a, b) => (a.endLine - a.startLine) - (b.endLine - b.startLine));
124
+ for (const occ of doc.occurrences) {
125
+ if (occ.role !== 'reference')
126
+ continue;
127
+ const targetId = idMap.get(occ.symbolId);
128
+ if (targetId == null)
129
+ continue;
130
+ // Find smallest enclosing local definition.
131
+ let fromId = null;
132
+ for (const d of localDefs) {
133
+ if (occ.range.startLine >= d.startLine && occ.range.startLine <= d.endLine) {
134
+ fromId = d.id;
135
+ break;
136
+ }
137
+ }
138
+ if (fromId == null)
139
+ continue;
140
+ // Use the displayName of the target symbol so to_name stays consistent
141
+ // with tree-sitter's edge representation.
142
+ const targetSymbol = doc.symbols.find(s => s.symbolId === occ.symbolId);
143
+ const toName = targetSymbol?.displayName ?? occ.symbolId;
144
+ store.insertScipEdge(fromId, targetId, toName, 'call', occ.range.startLine, scipImportId);
145
+ edgesInserted++;
146
+ }
147
+ }
148
+ store.rawDb().exec('COMMIT');
149
+ }
150
+ catch (err) {
151
+ store.rawDb().exec('ROLLBACK');
152
+ throw err;
153
+ }
154
+ // Patch the counts now that we know them — keeps the layer self-describing
155
+ // for the bundle manifest.
156
+ store.recordScipImport(abs, sha, scip.tool ?? null, scip.projectRoot ?? options.repoRoot, symbolsInserted + symbolsMerged, edgesInserted);
157
+ log(`SCIP ${path_1.default.basename(abs)}: ${documentsProcessed} docs, ${symbolsInserted} new, ${symbolsMerged} merged, ${edgesInserted} edges (${filesMissing} files missing)`);
158
+ return {
159
+ path: abs, sha256: sha, tool: scip.tool ?? null,
160
+ documentsProcessed, symbolsInserted, symbolsMerged, edgesInserted,
161
+ filesMissing, elapsedMs: Date.now() - start,
162
+ };
163
+ }
164
+ function scipSymbolToSymbolDef(sym) {
165
+ // SCIP doesn't carry symbol_role; assume 'definition'.
166
+ return {
167
+ name: sym.displayName,
168
+ qualifiedName: sym.qualifiedName,
169
+ kind: sym.kind,
170
+ lineStart: sym.range.startLine,
171
+ lineEnd: sym.range.endLine,
172
+ colStart: sym.range.startCharacter,
173
+ colEnd: sym.range.endCharacter,
174
+ signature: sym.signature,
175
+ };
176
+ }
177
+ function normalizePath(p) {
178
+ return p.replace(/\\/g, '/');
179
+ }
180
+ //# sourceMappingURL=import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/scip/import.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,392 @@
1
+ export type Language = 'python' | 'javascript' | 'typescript' | 'go' | 'java' | 'rust' | 'c' | 'cpp' | 'csharp' | 'proto';
2
+ export type SymbolKind = 'function' | 'class' | 'method' | 'interface' | 'struct' | 'enum' | 'type' | 'constructor' | 'variable';
3
+ export type EdgeKind = 'call' | 'import' | 'inherits' | 'implements' | 'tests';
4
+ /**
5
+ * What variety of symbol this row represents.
6
+ * - 'definition' — the canonical, body-bearing definition site. The default
7
+ * and the only role indexed by every extractor on every
8
+ * symbol historically. Rankable when the kind allows it.
9
+ * - 'declaration' — a forward declaration or prototype (no body). C/C++
10
+ * class-body method declarations and forward declarations
11
+ * fall here. Not rankable; excluded from agent-facing
12
+ * defaults unless `includeDeclarations=true`.
13
+ * - 'type_ref' — a bare use of a type name (no body, no declaration).
14
+ * Not yet emitted by any extractor — the slot exists so a
15
+ * future indexing mode can store reference sites without
16
+ * re-shaping the schema.
17
+ */
18
+ export type SymbolRole = 'definition' | 'declaration' | 'type_ref';
19
+ export interface SymbolDef {
20
+ name: string;
21
+ /**
22
+ * Dotted path including all enclosing class/struct/impl scopes.
23
+ * Computed by the walker from the def stack — extractors should not set it.
24
+ * E.g. `Alpha.run`, `AuthService.login`, `PaymentService.process_payment`.
25
+ * Equals `name` for top-level definitions.
26
+ */
27
+ qualifiedName?: string;
28
+ kind: SymbolKind;
29
+ lineStart: number;
30
+ lineEnd: number;
31
+ colStart: number;
32
+ colEnd: number;
33
+ signature?: string;
34
+ /**
35
+ * Complexity metrics, populated by language extractors via the walker.
36
+ * `loc`/`cyclomatic`/`cognitive`/`maxNesting` are non-null only for
37
+ * function-like symbols (function, method, constructor) where they make
38
+ * sense. For classes/structs/enums/types they stay null.
39
+ */
40
+ loc?: number;
41
+ cyclomatic?: number;
42
+ cognitive?: number;
43
+ maxNesting?: number;
44
+ /**
45
+ * Optional. When omitted, the Store treats this as `'definition'` —
46
+ * matches all pre-existing extractor behavior. C/C++ field_declaration
47
+ * (class-body method declarations) and forward declarations set this to
48
+ * `'declaration'` so default agent-facing queries can hide them.
49
+ */
50
+ symbolRole?: SymbolRole;
51
+ /**
52
+ * Extra owning-scope segments that are NOT on the lexical definition stack.
53
+ * Used for out-of-line definitions whose declarator names a qualifier that
54
+ * the walker can't see lexically — e.g. a C++ method defined at namespace
55
+ * scope as `T Vec<T>::dot(...) { ... }` sets `scopePath = ['Vec']` so its
56
+ * qualified name becomes `geo.Vec.dot` (the true owner) instead of `geo.dot`
57
+ * (which reads like a free function). The walker folds these segments into
58
+ * the qualified name and keys overload disambiguation on (scope + name), so
59
+ * `Foo::bar` and `Baz::bar` stay distinct instead of collapsing to bar / bar#1.
60
+ * Extractors set short names only; this is the one sanctioned scope hint.
61
+ */
62
+ scopePath?: string[];
63
+ }
64
+ export interface SymbolRef {
65
+ calleeName: string;
66
+ callerName: string;
67
+ kind: EdgeKind;
68
+ line: number;
69
+ }
70
+ /**
71
+ * v9 Track-H — protocols supported by the service-link layer. HTTP was the
72
+ * only protocol at v8; v9 generalizes to RPC/messaging/streaming protocols.
73
+ * Protocol-specific fields are stored sparsely on the same row.
74
+ */
75
+ export type ServiceProtocol = 'http' | 'trpc' | 'graphql' | 'grpc' | 'kafka' | 'sqs' | 'sns' | 'rabbitmq' | 'nats' | 'redis_pubsub' | 'websocket' | 'sse';
76
+ /**
77
+ * One route / endpoint detected during parsing.
78
+ *
79
+ * For HTTP (default): Express/Fastify/FastAPI/Flask/Spring routes. `method` +
80
+ * `path` carry the matchable contract; `framework` records the library.
81
+ *
82
+ * v9 Track-H: the same row shape now represents tRPC procedures, GraphQL
83
+ * resolvers, gRPC service methods, Kafka/SQS/RabbitMQ consumers, etc. The
84
+ * protocol-specific fields (operation/topic/queue/exchange/service/broker)
85
+ * are populated by the protocol's extractor and left undefined elsewhere.
86
+ *
87
+ * The handler is named when the route maps to a local function; the post-pass
88
+ * resolves `handlerName` → a `symbol_id` after all definitions are inserted.
89
+ */
90
+ export interface RouteDef {
91
+ method: string;
92
+ path: string;
93
+ framework: string;
94
+ handlerName?: string;
95
+ line: number;
96
+ /** v9 Track-H. Defaults to 'http' when omitted (every pre-v9 RouteDef). */
97
+ protocol?: ServiceProtocol;
98
+ /** tRPC procedure path ('user.getById'), GraphQL operation name, gRPC method. */
99
+ operation?: string;
100
+ /** Kafka / pub-sub topic the consumer subscribes to. */
101
+ topic?: string;
102
+ /** SQS / RabbitMQ queue the consumer reads from. */
103
+ queue?: string;
104
+ /** RabbitMQ exchange. */
105
+ exchange?: string;
106
+ /** gRPC service name; k8s service hostname for HTTP routes inside a service module. */
107
+ service?: string;
108
+ /** Broker host / cluster identifier (kafka:9092, sqs.us-east-1, etc.). */
109
+ broker?: string;
110
+ /** Protocol-specific catch-all already serialized as JSON. */
111
+ metadataJson?: string;
112
+ }
113
+ /** A static read of an environment variable or config key. */
114
+ export interface ConfigKeyRead {
115
+ key: string;
116
+ source: 'env' | 'config';
117
+ callerName?: string;
118
+ line: number;
119
+ }
120
+ /**
121
+ * One outbound HTTP client call detected during parsing — fetch / axios /
122
+ * requests / http.Get / HttpClient.GetAsync / etc.
123
+ *
124
+ * Routes are HANDLERS (registered with the framework so an incoming request
125
+ * lands on a function); ServiceCalls are CLIENTS (your code dialing OUT to
126
+ * another service). They are deliberately separate concepts; the post-index
127
+ * resolver rendezvous-matches calls to routes to build service_links.
128
+ *
129
+ * `rawTarget` always carries the literal/expression as written — if the path
130
+ * can't be confidently extracted, normalizedPath stays undefined but the call
131
+ * is still recorded so seer can show "this code calls something via fetch()"
132
+ * even when the target can't be resolved.
133
+ *
134
+ * `callerName` is the enclosing function/method's qualified name at the call
135
+ * site; the walker sets it from the def stack, and the indexer backfills the
136
+ * resolved symbol id from the symbolIdMap.
137
+ */
138
+ export interface ServiceCallDef {
139
+ /** v9 Track-H — HTTP at v8; v9 generalizes to RPC / messaging / streaming. */
140
+ protocol: ServiceProtocol;
141
+ /** Upper-cased HTTP method when known: 'GET' | 'POST' | … | 'ANY' if unknown.
142
+ * For non-HTTP protocols, may carry the operation kind ('query'/'mutation'/'publish'). */
143
+ method?: string;
144
+ /** Original literal/expression text at the call site (truncated to 240 chars) */
145
+ rawTarget: string;
146
+ /** /api/users when extractable; undefined when dynamic and not recoverable */
147
+ normalizedPath?: string;
148
+ /** Hostname / service name (e.g. "payment-service") when present in the URL */
149
+ hostHint?: string;
150
+ /** Env-variable name used in URL building (e.g. "PAYMENT_URL") when seen */
151
+ envKey?: string;
152
+ /** Library that emitted this call: 'fetch' / 'axios' / 'requests' / 'http.Get' / 'trpc' / 'apollo' / … */
153
+ framework: string;
154
+ /** Enclosing symbol qualified name; '' for module-level reads */
155
+ callerName?: string;
156
+ line: number;
157
+ /**
158
+ * Extractor confidence (0..1). High (≥0.9) for unambiguous literal-path
159
+ * calls; lower when only a host or env key was recovered.
160
+ */
161
+ confidence: number;
162
+ /** tRPC procedure path ('user.getById'), GraphQL operation name, gRPC method. */
163
+ operation?: string;
164
+ /** Kafka / pub-sub topic this call publishes to. */
165
+ topic?: string;
166
+ /** SQS / RabbitMQ queue this call publishes to. */
167
+ queue?: string;
168
+ /** RabbitMQ exchange. */
169
+ exchange?: string;
170
+ /** gRPC service name; k8s service hostname for outbound HTTP. */
171
+ service?: string;
172
+ /** Broker host / cluster identifier. */
173
+ broker?: string;
174
+ /** Protocol-specific catch-all (serialized JSON object). */
175
+ metadataJson?: string;
176
+ }
177
+ export interface FileExtraction {
178
+ language: Language;
179
+ definitions: SymbolDef[];
180
+ references: SymbolRef[];
181
+ importedModules: string[];
182
+ routes?: RouteDef[];
183
+ configKeys?: ConfigKeyRead[];
184
+ /** v8 Track G — HTTP/etc. client calls (outbound). Optional so legacy
185
+ * extractors that don't implement detection produce undefined / []. */
186
+ serviceCalls?: ServiceCallDef[];
187
+ }
188
+ export interface SymbolRow {
189
+ id: number;
190
+ name: string;
191
+ qualifiedName: string | null;
192
+ kind: string;
193
+ fileId: number;
194
+ filePath: string;
195
+ lineStart: number;
196
+ lineEnd: number;
197
+ signature: string | null;
198
+ pagerank: number;
199
+ loc?: number | null;
200
+ cyclomatic?: number | null;
201
+ cognitive?: number | null;
202
+ maxNesting?: number | null;
203
+ /**
204
+ * Stored variety of symbol. Null on pre-v5 DBs that haven't yet been
205
+ * re-indexed; the Store treats null as `'definition'` for filter logic.
206
+ */
207
+ symbolRole?: SymbolRole | null;
208
+ }
209
+ export interface CallerRow {
210
+ callerName: string;
211
+ callerQualifiedName: string | null;
212
+ callerKind: string;
213
+ callerFile: string;
214
+ callerLine: number;
215
+ edgeKind: string;
216
+ }
217
+ export interface CalleeRow {
218
+ calleeName: string;
219
+ calleeKind: string | null;
220
+ calleeFile: string | null;
221
+ calleeLineStart: number | null;
222
+ edgeKind: string;
223
+ }
224
+ export interface RouteRow {
225
+ id: number;
226
+ method: string;
227
+ path: string;
228
+ framework: string;
229
+ handlerName: string | null;
230
+ handlerId: number | null;
231
+ handlerSymbol: string | null;
232
+ handlerFile: string | null;
233
+ filePath: string;
234
+ line: number;
235
+ protocol?: string | null;
236
+ operation?: string | null;
237
+ topic?: string | null;
238
+ queue?: string | null;
239
+ exchange?: string | null;
240
+ service?: string | null;
241
+ broker?: string | null;
242
+ metadataJson?: string | null;
243
+ }
244
+ export interface ExternalDepRow {
245
+ id: number;
246
+ ecosystem: string;
247
+ name: string;
248
+ versionRange: string | null;
249
+ manifestPath: string;
250
+ isDev: number;
251
+ }
252
+ export interface ConfigKeyRow {
253
+ id: number;
254
+ key: string;
255
+ source: string;
256
+ filePath: string;
257
+ symbolId: number | null;
258
+ symbolName: string | null;
259
+ line: number;
260
+ }
261
+ export interface FileChurnRow {
262
+ fileId: number;
263
+ filePath: string;
264
+ commitCount: number;
265
+ lastCommitSha: string | null;
266
+ lastCommitAt: number | null;
267
+ topAuthor: string | null;
268
+ secondAuthor: string | null;
269
+ }
270
+ export interface SymbolHistoryRow {
271
+ id: number;
272
+ symbolId: number;
273
+ symbolKey: string;
274
+ commitSha: string;
275
+ authorName: string | null;
276
+ authorEmail: string | null;
277
+ committedAt: number;
278
+ message: string | null;
279
+ linesAdded: number;
280
+ linesRemoved: number;
281
+ prNumber: number | null;
282
+ prUrl: string | null;
283
+ matchStrategy: string;
284
+ confidence: number;
285
+ }
286
+ /**
287
+ * v8 Track G — row returned by Store.listServiceCalls(). The caller is the
288
+ * AST-attributed enclosing function/method; the call always carries the raw
289
+ * literal/expression text as written.
290
+ */
291
+ export interface ServiceCallRow {
292
+ id: number;
293
+ protocol: string;
294
+ method: string | null;
295
+ rawTarget: string;
296
+ normalizedPath: string | null;
297
+ hostHint: string | null;
298
+ envKey: string | null;
299
+ framework: string;
300
+ line: number;
301
+ confidence: number;
302
+ filePath: string;
303
+ callerSymbolId: number | null;
304
+ callerName: string | null;
305
+ callerQualifiedName: string | null;
306
+ callerKind: string | null;
307
+ operation: string | null;
308
+ topic: string | null;
309
+ queue: string | null;
310
+ exchange: string | null;
311
+ service: string | null;
312
+ broker: string | null;
313
+ metadataJson: string | null;
314
+ }
315
+ /**
316
+ * v8 Track G — row returned by Store.listServiceLinks(). Each link rendezvous-
317
+ * matches one service_call (the caller side) with one route (the handler side)
318
+ * and carries the deterministic match_kind + confidence.
319
+ */
320
+ export interface ServiceLinkRow {
321
+ id: number;
322
+ callId: number;
323
+ routeId: number | null;
324
+ protocol: string;
325
+ matchKind: string;
326
+ confidence: number;
327
+ evidenceJson: string;
328
+ callerSymbolId: number | null;
329
+ callerName: string | null;
330
+ callerQualifiedName: string | null;
331
+ callerFile: string | null;
332
+ callerLine: number;
333
+ callMethod: string | null;
334
+ callRawTarget: string;
335
+ callNormalizedPath: string | null;
336
+ callFramework: string;
337
+ callEnvKey: string | null;
338
+ callHostHint: string | null;
339
+ handlerSymbolId: number | null;
340
+ handlerName: string | null;
341
+ handlerQualifiedName: string | null;
342
+ handlerFile: string | null;
343
+ handlerLine: number | null;
344
+ routeMethod: string | null;
345
+ routePath: string | null;
346
+ routeFramework: string | null;
347
+ callOperation: string | null;
348
+ callTopic: string | null;
349
+ callQueue: string | null;
350
+ callService: string | null;
351
+ routeOperation: string | null;
352
+ routeTopic: string | null;
353
+ routeQueue: string | null;
354
+ routeService: string | null;
355
+ }
356
+ export interface StatsRow {
357
+ files: number;
358
+ symbols: number;
359
+ edges: number;
360
+ resolvedEdges: number;
361
+ languages: Record<string, number>;
362
+ roles?: {
363
+ project: number;
364
+ vendor: number;
365
+ generated: number;
366
+ test: number;
367
+ };
368
+ routes?: number;
369
+ externalDependencies?: number;
370
+ configKeys?: number;
371
+ symbolHistory?: number;
372
+ /** Number of clustered modules; 0 if the clustering pass hasn't run. */
373
+ modules?: number;
374
+ /** v7: SCIP files imported into this DB; 0 on pre-v7. */
375
+ scipImports?: number;
376
+ /** v7: symbols with a non-null structural shape_hash. */
377
+ shapeHashed?: number;
378
+ /**
379
+ * v7: symbol + edge counts grouped by provenance. Always present at v7;
380
+ * agents can use it to see how much precision SCIP contributed vs the
381
+ * tree-sitter baseline.
382
+ */
383
+ provenance?: {
384
+ symbols: Record<string, number>;
385
+ edges: Record<string, number>;
386
+ };
387
+ /** v8 Track G — total service_calls rows (outbound HTTP/etc. clients). */
388
+ serviceCalls?: number;
389
+ /** v8 Track G — total service_links rows (caller↔handler rendezvous). */
390
+ serviceLinks?: number;
391
+ }
392
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // Core shared types for the Seer indexer
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,yCAAyC"}