@jafreck/lore 0.3.6 → 0.3.8

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 (206) hide show
  1. package/README.md +38 -150
  2. package/dist/cli.d.ts +2 -1
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +80 -32
  5. package/dist/cli.js.map +1 -1
  6. package/dist/db/read-only.d.ts +22 -43
  7. package/dist/db/read-only.d.ts.map +1 -1
  8. package/dist/db/read-only.js +80 -156
  9. package/dist/db/read-only.js.map +1 -1
  10. package/dist/db/schema.d.ts +9 -0
  11. package/dist/db/schema.d.ts.map +1 -1
  12. package/dist/db/schema.js +171 -85
  13. package/dist/db/schema.js.map +1 -1
  14. package/dist/discovery/poller.d.ts +6 -16
  15. package/dist/discovery/poller.d.ts.map +1 -1
  16. package/dist/discovery/poller.js +21 -52
  17. package/dist/discovery/poller.js.map +1 -1
  18. package/dist/discovery/scip-flush.d.ts +44 -0
  19. package/dist/discovery/scip-flush.d.ts.map +1 -0
  20. package/dist/discovery/scip-flush.js +67 -0
  21. package/dist/discovery/scip-flush.js.map +1 -0
  22. package/dist/discovery/watcher.d.ts +6 -16
  23. package/dist/discovery/watcher.d.ts.map +1 -1
  24. package/dist/discovery/watcher.js +22 -54
  25. package/dist/discovery/watcher.js.map +1 -1
  26. package/dist/docs/docs.d.ts +0 -2
  27. package/dist/docs/docs.d.ts.map +1 -1
  28. package/dist/docs/docs.js +0 -27
  29. package/dist/docs/docs.js.map +1 -1
  30. package/dist/embeddings/embedder.d.ts +12 -8
  31. package/dist/embeddings/embedder.d.ts.map +1 -1
  32. package/dist/embeddings/embedder.js +35 -19
  33. package/dist/embeddings/embedder.js.map +1 -1
  34. package/dist/index.d.ts +5 -2
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +3 -2
  37. package/dist/index.js.map +1 -1
  38. package/dist/indexer/index.d.ts +19 -10
  39. package/dist/indexer/index.d.ts.map +1 -1
  40. package/dist/indexer/index.js +135 -28
  41. package/dist/indexer/index.js.map +1 -1
  42. package/dist/indexer/pipeline.d.ts +44 -21
  43. package/dist/indexer/pipeline.d.ts.map +1 -1
  44. package/dist/indexer/pipeline.js +48 -26
  45. package/dist/indexer/pipeline.js.map +1 -1
  46. package/dist/indexer/stages/docs-index.d.ts +1 -3
  47. package/dist/indexer/stages/docs-index.d.ts.map +1 -1
  48. package/dist/indexer/stages/docs-index.js +1 -25
  49. package/dist/indexer/stages/docs-index.js.map +1 -1
  50. package/dist/indexer/stages/index.d.ts +4 -2
  51. package/dist/indexer/stages/index.d.ts.map +1 -1
  52. package/dist/indexer/stages/index.js +3 -2
  53. package/dist/indexer/stages/index.js.map +1 -1
  54. package/dist/indexer/stages/lsp-enrichment.d.ts +1 -1
  55. package/dist/indexer/stages/lsp-enrichment.d.ts.map +1 -1
  56. package/dist/indexer/stages/lsp-enrichment.js +44 -21
  57. package/dist/indexer/stages/lsp-enrichment.js.map +1 -1
  58. package/dist/indexer/stages/overlay-cleanup.d.ts +31 -0
  59. package/dist/indexer/stages/overlay-cleanup.d.ts.map +1 -0
  60. package/dist/indexer/stages/overlay-cleanup.js +64 -0
  61. package/dist/indexer/stages/overlay-cleanup.js.map +1 -0
  62. package/dist/indexer/stages/reverse-deps.d.ts +13 -0
  63. package/dist/indexer/stages/reverse-deps.d.ts.map +1 -0
  64. package/dist/indexer/stages/reverse-deps.js +81 -0
  65. package/dist/indexer/stages/reverse-deps.js.map +1 -0
  66. package/dist/indexer/stages/{scip-source.d.ts → scip-indexer.d.ts} +38 -9
  67. package/dist/indexer/stages/scip-indexer.d.ts.map +1 -0
  68. package/dist/indexer/stages/{scip-source.js → scip-indexer.js} +359 -98
  69. package/dist/indexer/stages/scip-indexer.js.map +1 -0
  70. package/dist/indexer/stages/source-index.d.ts +3 -3
  71. package/dist/indexer/stages/source-index.d.ts.map +1 -1
  72. package/dist/indexer/stages/source-index.js +188 -70
  73. package/dist/indexer/stages/source-index.js.map +1 -1
  74. package/dist/lsp/enrichment.d.ts.map +1 -1
  75. package/dist/lsp/enrichment.js +1 -18
  76. package/dist/lsp/enrichment.js.map +1 -1
  77. package/dist/parsing/extractors/go.d.ts.map +1 -1
  78. package/dist/parsing/extractors/go.js +0 -38
  79. package/dist/parsing/extractors/go.js.map +1 -1
  80. package/dist/parsing/extractors/javascript.d.ts.map +1 -1
  81. package/dist/parsing/extractors/javascript.js +0 -47
  82. package/dist/parsing/extractors/javascript.js.map +1 -1
  83. package/dist/parsing/extractors/python.d.ts.map +1 -1
  84. package/dist/parsing/extractors/python.js +0 -22
  85. package/dist/parsing/extractors/python.js.map +1 -1
  86. package/dist/parsing/extractors/types.d.ts +0 -16
  87. package/dist/parsing/extractors/types.d.ts.map +1 -1
  88. package/dist/parsing/extractors/types.js +1 -1
  89. package/dist/parsing/extractors/types.js.map +1 -1
  90. package/dist/parsing/extractors/typescript.d.ts.map +1 -1
  91. package/dist/parsing/extractors/typescript.js +18 -2
  92. package/dist/parsing/extractors/typescript.js.map +1 -1
  93. package/dist/resolution/call-graph.d.ts +3 -1
  94. package/dist/resolution/call-graph.d.ts.map +1 -1
  95. package/dist/resolution/call-graph.js +15 -13
  96. package/dist/resolution/call-graph.js.map +1 -1
  97. package/dist/resolution/resolution-method.d.ts +1 -1
  98. package/dist/resolution/resolution-method.d.ts.map +1 -1
  99. package/dist/resolution/resolution-method.js +2 -0
  100. package/dist/resolution/resolution-method.js.map +1 -1
  101. package/dist/resolution/resolver.d.ts +6 -0
  102. package/dist/resolution/resolver.d.ts.map +1 -1
  103. package/dist/resolution/resolver.js +21 -0
  104. package/dist/resolution/resolver.js.map +1 -1
  105. package/dist/runtime.d.ts +0 -2
  106. package/dist/runtime.d.ts.map +1 -1
  107. package/dist/runtime.js.map +1 -1
  108. package/dist/scip/compdb.d.ts +38 -0
  109. package/dist/scip/compdb.d.ts.map +1 -0
  110. package/dist/scip/compdb.js +138 -0
  111. package/dist/scip/compdb.js.map +1 -0
  112. package/dist/scip/enrichment.d.ts +6 -1
  113. package/dist/scip/enrichment.d.ts.map +1 -1
  114. package/dist/scip/enrichment.js +62 -5
  115. package/dist/scip/enrichment.js.map +1 -1
  116. package/dist/scip/installer.d.ts +59 -0
  117. package/dist/scip/installer.d.ts.map +1 -0
  118. package/dist/scip/installer.js +302 -0
  119. package/dist/scip/installer.js.map +1 -0
  120. package/dist/scip/registry.d.ts +1 -1
  121. package/dist/scip/registry.d.ts.map +1 -1
  122. package/dist/scip/registry.js +33 -5
  123. package/dist/scip/registry.js.map +1 -1
  124. package/dist/server/server.d.ts +3 -8
  125. package/dist/server/server.d.ts.map +1 -1
  126. package/dist/server/server.js +7 -66
  127. package/dist/server/server.js.map +1 -1
  128. package/dist/server/tool-registry.d.ts +2 -2
  129. package/dist/server/tool-registry.d.ts.map +1 -1
  130. package/dist/server/tool-registry.js +37 -41
  131. package/dist/server/tool-registry.js.map +1 -1
  132. package/dist/server/tools/cohesion.d.ts +46 -0
  133. package/dist/server/tools/cohesion.d.ts.map +1 -0
  134. package/dist/server/tools/cohesion.js +100 -0
  135. package/dist/server/tools/cohesion.js.map +1 -0
  136. package/dist/server/tools/dependents.d.ts +139 -0
  137. package/dist/server/tools/dependents.d.ts.map +1 -0
  138. package/dist/server/tools/dependents.js +354 -0
  139. package/dist/server/tools/dependents.js.map +1 -0
  140. package/dist/server/tools/diff.d.ts +73 -0
  141. package/dist/server/tools/diff.d.ts.map +1 -0
  142. package/dist/server/tools/diff.js +157 -0
  143. package/dist/server/tools/diff.js.map +1 -0
  144. package/dist/server/tools/graph.d.ts +7 -3
  145. package/dist/server/tools/graph.d.ts.map +1 -1
  146. package/dist/server/tools/graph.js +15 -85
  147. package/dist/server/tools/graph.js.map +1 -1
  148. package/dist/server/tools/metrics.d.ts +5 -30
  149. package/dist/server/tools/metrics.d.ts.map +1 -1
  150. package/dist/server/tools/metrics.js +21 -57
  151. package/dist/server/tools/metrics.js.map +1 -1
  152. package/dist/server/tools/structure.d.ts +77 -0
  153. package/dist/server/tools/structure.d.ts.map +1 -0
  154. package/dist/server/tools/structure.js +309 -0
  155. package/dist/server/tools/structure.js.map +1 -0
  156. package/dist/server/tools/test-map.d.ts +7 -0
  157. package/dist/server/tools/test-map.d.ts.map +1 -1
  158. package/dist/server/tools/test-map.js +18 -1
  159. package/dist/server/tools/test-map.js.map +1 -1
  160. package/dist/server/tools/trace.d.ts +84 -0
  161. package/dist/server/tools/trace.d.ts.map +1 -0
  162. package/dist/server/tools/trace.js +317 -0
  163. package/dist/server/tools/trace.js.map +1 -0
  164. package/dist/testing/coverage.d.ts +11 -0
  165. package/dist/testing/coverage.d.ts.map +1 -1
  166. package/dist/testing/coverage.js +34 -2
  167. package/dist/testing/coverage.js.map +1 -1
  168. package/dist/testing/test-mapper.d.ts +1 -1
  169. package/dist/testing/test-mapper.d.ts.map +1 -1
  170. package/dist/testing/test-mapper.js +1 -0
  171. package/dist/testing/test-mapper.js.map +1 -1
  172. package/package.json +3 -1
  173. package/dist/indexer/stages/scip-enrichment.d.ts +0 -43
  174. package/dist/indexer/stages/scip-enrichment.d.ts.map +0 -1
  175. package/dist/indexer/stages/scip-enrichment.js +0 -174
  176. package/dist/indexer/stages/scip-enrichment.js.map +0 -1
  177. package/dist/indexer/stages/scip-source.d.ts.map +0 -1
  178. package/dist/indexer/stages/scip-source.js.map +0 -1
  179. package/dist/server/tools/annotations.d.ts +0 -40
  180. package/dist/server/tools/annotations.d.ts.map +0 -1
  181. package/dist/server/tools/annotations.js +0 -35
  182. package/dist/server/tools/annotations.js.map +0 -1
  183. package/dist/server/tools/architecture.d.ts +0 -67
  184. package/dist/server/tools/architecture.d.ts.map +0 -1
  185. package/dist/server/tools/architecture.js +0 -209
  186. package/dist/server/tools/architecture.js.map +0 -1
  187. package/dist/server/tools/coverage.d.ts +0 -67
  188. package/dist/server/tools/coverage.d.ts.map +0 -1
  189. package/dist/server/tools/coverage.js +0 -74
  190. package/dist/server/tools/coverage.js.map +0 -1
  191. package/dist/server/tools/graph-analysis.d.ts +0 -64
  192. package/dist/server/tools/graph-analysis.d.ts.map +0 -1
  193. package/dist/server/tools/graph-analysis.js +0 -82
  194. package/dist/server/tools/graph-analysis.js.map +0 -1
  195. package/dist/server/tools/notes.d.ts +0 -165
  196. package/dist/server/tools/notes.d.ts.map +0 -1
  197. package/dist/server/tools/notes.js +0 -214
  198. package/dist/server/tools/notes.js.map +0 -1
  199. package/dist/server/tools/routes.d.ts +0 -38
  200. package/dist/server/tools/routes.d.ts.map +0 -1
  201. package/dist/server/tools/routes.js +0 -38
  202. package/dist/server/tools/routes.js.map +0 -1
  203. package/dist/server/tools/writeback.d.ts +0 -49
  204. package/dist/server/tools/writeback.d.ts.map +0 -1
  205. package/dist/server/tools/writeback.js +0 -68
  206. package/dist/server/tools/writeback.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"embedder.d.ts","sourceRoot":"","sources":["../../src/embeddings/embedder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,uCAAuC;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,wCAAwC;IACxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,wBAAwB,GAAG,MAAM,CASpF;AAED,mFAAmF;AACnF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAyBD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAAG,CAAC,EAAE,EAAE,CAiBlF;AASD,iDAAiD;AACjD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAEtD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,sBAAuB,YAAW,iBAAiB;IAC9D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,WAAW,CAAS;gBAEhB,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS;IAKhD,gEAAgE;IAChE,IAAI,IAAI,IAAI,MAAM,CAKjB;IAED,wEAAwE;IACxE,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBrB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAS3C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAS9B;;;OAGG;IACH,OAAO,CAAC,YAAY;CAUrB;AAID;;;;;;;;;GASG;AACH,qBAAa,qBAAsB,YAAW,iBAAiB;IAC7D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAC/C,OAAO,CAAC,YAAY,CAA8B;gBAEtC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS;IAIhD,IAAI,SAAS,IAAI,MAAM,CAAiC;IAExD,IAAI,IAAI,IAAI,MAAM,CAA4B;IAExC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAOrB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAM3C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAM/B;AAID;;;GAGG;AACH,eAAO,MAAM,uBAAuB,8BAA8B,CAAC"}
1
+ {"version":3,"file":"embedder.d.ts","sourceRoot":"","sources":["../../src/embeddings/embedder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,uCAAuC;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,wCAAwC;IACxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,wBAAwB,GAAG,MAAM,CASpF;AAED,mFAAmF;AACnF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAyBD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAAG,CAAC,EAAE,EAAE,CAiBlF;AASD,iDAAiD;AACjD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAEtD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,sBAAuB,YAAW,iBAAiB;IAC9D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,WAAW,CAAS;gBAEhB,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS;IAKhD,gEAAgE;IAChE,IAAI,IAAI,IAAI,MAAM,CAKjB;IAED,oDAAoD;IACpD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyCrB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAS3C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAS9B;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;CAKrB;AAID;;;;;;;;;GASG;AACH,qBAAa,qBAAsB,YAAW,iBAAiB;IAC7D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAC/C,OAAO,CAAC,YAAY,CAA8B;gBAEtC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS;IAIhD,IAAI,SAAS,IAAI,MAAM,CAAiC;IAExD,IAAI,IAAI,IAAI,MAAM,CAA4B;IAExC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAOrB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAM3C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAM/B;AAID;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,6CAA6C,CAAC"}
@@ -73,11 +73,11 @@ export function tokenAwareBatch(items, getText) {
73
73
  * Runs ONNX models natively in Node — zero Python dependency.
74
74
  *
75
75
  * Auto-detects the best available ONNX execution provider:
76
- * - `webgpu` when available (Linux/Windows with GPU)
77
- * - `coreml` on Apple Silicon (macOS arm64)
78
- * - `cpu` everywhere else (always available)
76
+ * - `cpu` (always available; only option on macOS with transformers.js v3)
77
+ * - `cuda` on Linux x64 with NVIDIA GPU (requires transformers.js v4+)
78
+ * - `dml` (DirectML) on Windows (requires transformers.js v4+)
79
79
  *
80
- * Override via `LORE_EMBED_DEVICE` env var (e.g. `cpu`, `coreml`, `webgpu`).
80
+ * Override via `LORE_EMBED_DEVICE` env var (e.g. `cpu`, `cuda`, `dml`).
81
81
  * Override quantization via `LORE_EMBED_DTYPE` env var (e.g. `q8`, `q4`, `fp16`).
82
82
  *
83
83
  * Call `init()` first to download/load the model and detect its embedding
@@ -92,7 +92,7 @@ export class TransformersJsProvider {
92
92
  initialized = false;
93
93
  constructor(modelName, dtype) {
94
94
  this.modelName = modelName;
95
- this.dtype = dtype ?? process.env['LORE_EMBED_DTYPE'] ?? 'fp32';
95
+ this.dtype = dtype ?? process.env['LORE_EMBED_DTYPE'] ?? 'q8';
96
96
  }
97
97
  /** Embedding dimensionality — available only after `init()`. */
98
98
  get dims() {
@@ -101,7 +101,7 @@ export class TransformersJsProvider {
101
101
  }
102
102
  return this._dims;
103
103
  }
104
- /** ONNX execution provider selected during init (cpu/coreml/webgpu). */
104
+ /** ONNX execution provider selected during init. */
105
105
  get device() {
106
106
  return this._device ?? 'unknown';
107
107
  }
@@ -112,13 +112,29 @@ export class TransformersJsProvider {
112
112
  async init() {
113
113
  if (this.initialized)
114
114
  return;
115
- const device = this.detectDevice();
116
- this._device = device;
115
+ const preferredDevice = this.detectDevice();
117
116
  const { pipeline } = await import('@huggingface/transformers');
118
- this._pipeline = await pipeline('feature-extraction', this.modelName, {
119
- device: device,
120
- ...(this.dtype !== 'fp32' && { dtype: this.dtype }),
121
- });
117
+ // Try the preferred device, fall back to CPU if unsupported
118
+ let device = preferredDevice;
119
+ try {
120
+ this._pipeline = await pipeline('feature-extraction', this.modelName, {
121
+ device: device,
122
+ ...(this.dtype !== 'fp32' && { dtype: this.dtype }),
123
+ });
124
+ }
125
+ catch (err) {
126
+ if (device !== 'cpu' && err instanceof Error && err.message.includes('Unsupported device')) {
127
+ device = 'cpu';
128
+ this._pipeline = await pipeline('feature-extraction', this.modelName, {
129
+ device: 'cpu',
130
+ ...(this.dtype !== 'fp32' && { dtype: this.dtype }),
131
+ });
132
+ }
133
+ else {
134
+ throw err;
135
+ }
136
+ }
137
+ this._device = device;
122
138
  // Probe the model to detect dimensionality.
123
139
  const probe = await this._pipeline('dimensionality probe', { pooling: 'mean', normalize: true });
124
140
  const probeList = probe.tolist();
@@ -146,15 +162,14 @@ export class TransformersJsProvider {
146
162
  /**
147
163
  * Detect the best available ONNX execution provider.
148
164
  * Respects `LORE_EMBED_DEVICE` env var for explicit override.
165
+ *
166
+ * Transformers.js v3 / onnxruntime-node 1.21 only supports CPU on all
167
+ * platforms. GPU providers (CoreML, CUDA, DirectML) require v4+.
149
168
  */
150
169
  detectDevice() {
151
170
  const envDevice = process.env['LORE_EMBED_DEVICE'];
152
171
  if (envDevice)
153
172
  return envDevice;
154
- // CoreML is available on Apple Silicon via onnxruntime-node
155
- if (process.platform === 'darwin' && process.arch === 'arm64') {
156
- return 'coreml';
157
- }
158
173
  return 'cpu';
159
174
  }
160
175
  }
@@ -201,8 +216,9 @@ export class LazyEmbeddingProvider {
201
216
  }
202
217
  // ─── Default model ────────────────────────────────────────────────────────────
203
218
  /**
204
- * Default embedding model — `Qwen/Qwen3-Embedding-0.6B` is a compact,
205
- * 1024-dim model with strong multilingual and code understanding.
219
+ * Default embedding model — the ONNX-community variant of Qwen3-Embedding-0.6B
220
+ * ships pre-converted ONNX weights compatible with all execution providers
221
+ * (cpu, cuda, dml). 1024-dim, strong multilingual and code understanding.
206
222
  */
207
- export const DEFAULT_EMBEDDING_MODEL = 'Qwen/Qwen3-Embedding-0.6B';
223
+ export const DEFAULT_EMBEDDING_MODEL = 'onnx-community/Qwen3-Embedding-0.6B-ONNX';
208
224
  //# sourceMappingURL=embedder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"embedder.js","sourceRoot":"","sources":["../../src/embeddings/embedder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"embedder.js","sourceRoot":"","sources":["../../src/embeddings/embedder.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -22,6 +22,8 @@ export { installGitHooks } from './git/hooks.js';
22
22
  export type { InstallGitHooksOptions } from './git/hooks.js';
23
23
  export type { EffectiveLspSettings, LspSettingsOverrides } from './lsp/config.js';
24
24
  export type { EffectiveScipSettings, ScipSettingsOverrides } from './scip/config.js';
25
+ export { installAllMissing as installScipIndexers, SCIP_INSTALL_SPECS } from './scip/installer.js';
26
+ export type { ScipInstallResult, ScipInstallSpec } from './scip/installer.js';
25
27
  export { TransformersJsProvider, LazyEmbeddingProvider, DEFAULT_EMBEDDING_MODEL, tokenAwareBatch, hashEmbeddingText, buildStructuralEmbeddingText } from './embeddings/embedder.js';
26
28
  export type { EmbeddingProvider, OnnxDtype } from './embeddings/embedder.js';
27
29
  export type { ExtractionResult, RawCallRef, RawImport, RawSymbol, SymbolExtractor, } from './parsing/extractors/types.js';
@@ -29,18 +31,19 @@ export { RESOLUTION_METHODS, RESOLVED_METHODS, UNRESOLVED_METHODS } from './reso
29
31
  export type { ResolutionMethod } from './resolution/resolution-method.js';
30
32
  export { IndexPipeline } from './indexer/pipeline.js';
31
33
  export type { PipelineContext, PipelineStage } from './indexer/pipeline.js';
32
- export { ScipSourceStage, SourceIndexStage, DocsIndexStage, ImportResolutionStage, DependencyApiStage, ScipEnrichmentStage, LspEnrichmentStage, EmbeddingStage, } from './indexer/stages/index.js';
34
+ export { ScipIndexerStage, SourceIndexStage, DocsIndexStage, ImportResolutionStage, DependencyApiStage, LspEnrichmentStage, EmbeddingStage, } from './indexer/stages/index.js';
33
35
  export { LoreRuntime } from './runtime.js';
34
36
  export type { RuntimeConfig, Refresher } from './runtime.js';
35
37
  export { FileWatcher } from './discovery/watcher.js';
36
38
  export type { WatcherOptions } from './discovery/watcher.js';
37
39
  export { FilePoller } from './discovery/poller.js';
38
40
  export type { PollerOptions } from './discovery/poller.js';
39
- export { createLoreMcpServer, createLoreMcpServerAsync } from './server/server.js';
41
+ export { createLoreMcpServer } from './server/server.js';
40
42
  export type { LoreServerOptions } from './server/server.js';
41
43
  export type { SearchObservation, SearchObserver } from './server/tools/search.js';
42
44
  export { registerTools } from './server/tool-registry.js';
43
45
  export type { ToolModule, ToolDefinition } from './server/tool-registry.js';
46
+ export type { CohesionArgs, CohesionResult } from './server/tools/cohesion.js';
44
47
  export { openReadOnly, getSymbolById, getSymbolsByName, listSymbols, getFileById, getFileByPath, listFiles, listResolvedEdges, listTypeRefs, listSymbolRelationships, } from './db/read-only.js';
45
48
  export type { SymbolRow, FileRow, ResolvedEdge, ListResolvedEdgesOptions, TypeRefEdge, ListTypeRefsOptions, SymbolRelationshipEdge, ListSymbolRelationshipsOptions, } from './db/read-only.js';
46
49
  export { LoreLogger, LogLevel, LOG_LEVEL_NAMES, initLogger, getLogger, resetLogger } from './logger.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -17,19 +17,20 @@ export { detectSymbolCycles, findConnectedComponents, clusterSymbols, buildCodeb
17
17
  export { walkFiles, detectLanguageForPath } from './discovery/walker.js';
18
18
  export { ImportResolver } from './resolution/resolver.js';
19
19
  export { installGitHooks } from './git/hooks.js';
20
+ export { installAllMissing as installScipIndexers, SCIP_INSTALL_SPECS } from './scip/installer.js';
20
21
  export { TransformersJsProvider, LazyEmbeddingProvider, DEFAULT_EMBEDDING_MODEL, tokenAwareBatch, hashEmbeddingText, buildStructuralEmbeddingText } from './embeddings/embedder.js';
21
22
  // ── Resolution method taxonomy (shared constant) ─────────────────────────────
22
23
  export { RESOLUTION_METHODS, RESOLVED_METHODS, UNRESOLVED_METHODS } from './resolution/resolution-method.js';
23
24
  // ── Pipeline (composable indexing stages) ─────────────────────────────────────
24
25
  export { IndexPipeline } from './indexer/pipeline.js';
25
- export { ScipSourceStage, SourceIndexStage, DocsIndexStage, ImportResolutionStage, DependencyApiStage, ScipEnrichmentStage, LspEnrichmentStage, EmbeddingStage, } from './indexer/stages/index.js';
26
+ export { ScipIndexerStage, SourceIndexStage, DocsIndexStage, ImportResolutionStage, DependencyApiStage, LspEnrichmentStage, EmbeddingStage, } from './indexer/stages/index.js';
26
27
  // ── Runtime ───────────────────────────────────────────────────────────────────
27
28
  export { LoreRuntime } from './runtime.js';
28
29
  // ── File watcher / poller ─────────────────────────────────────────────────────
29
30
  export { FileWatcher } from './discovery/watcher.js';
30
31
  export { FilePoller } from './discovery/poller.js';
31
32
  // ── MCP server ────────────────────────────────────────────────────────────────
32
- export { createLoreMcpServer, createLoreMcpServerAsync } from './server/server.js';
33
+ export { createLoreMcpServer } from './server/server.js';
33
34
  export { registerTools } from './server/tool-registry.js';
34
35
  export { openReadOnly, getSymbolById, getSymbolsByName, listSymbols, getFileById, getFileByPath, listFiles, listResolvedEdges, listTypeRefs, listSymbolRelationships, } from './db/read-only.js';
35
36
  // ── Logging ───────────────────────────────────────────────────────────────────
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpF,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,oBAAoB,GACrB,MAAM,gCAAgC,CAAC;AAWxC,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAIjD,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,eAAe,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAUpL,gFAAgF;AAChF,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAG7G,iFAAiF;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,GACf,MAAM,2BAA2B,CAAC;AAGnC,iFAAiF;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,iFAAiF;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,iFAAiF;AACjF,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAGnF,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EACL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,YAAY,EACZ,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAY3B,iFAAiF;AACjF,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGxG,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEpF,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,oBAAoB,GACrB,MAAM,gCAAgC,CAAC;AAWxC,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAIjD,OAAO,EAAE,iBAAiB,IAAI,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEnG,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,eAAe,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAUpL,gFAAgF;AAChF,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAG7G,iFAAiF;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,GACf,MAAM,2BAA2B,CAAC;AAGnC,iFAAiF;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,iFAAiF;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,iFAAiF;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAG1D,OAAO,EACL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,YAAY,EACZ,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAY3B,iFAAiF;AACjF,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGxG,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC"}
@@ -7,13 +7,17 @@
7
7
  * For full builds, `build()` delegates entirely to the pipeline which
8
8
  * enforces the data-dependency chain:
9
9
  * ```
10
- * SourceIndexStageDocsIndexStageImportResolutionStage
11
- * → DependencyApiStageScipEnrichmentStage → LspEnrichmentStage
12
- * → ResolutionStageTestMapStageHistoryStage → EmbeddingStage
10
+ * ScipIndexerStageSourceIndexStageDocsIndexStage
11
+ * → ImportResolutionStageDependencyApiStage
12
+ * → LspEnrichmentStageResolutionStageTestMapStage
13
+ * → HistoryStage → EmbeddingStage
13
14
  * ```
14
15
  *
15
- * For incremental updates, `update()` uses stage-extracted helpers
16
- * while managing the changed-file diff itself.
16
+ * `ScipIndexerStage` now populates both structural data (symbols, refs)
17
+ * and enrichment metadata (type signatures, definition locations) in a
18
+ * single pass. `SourceIndexStage` then adds tree-sitter metrics
19
+ * (complexity, nesting depth) to SCIP-sourced files and handles
20
+ * remaining languages.
17
21
  *
18
22
  * The enrichment → resolution ordering is **load-bearing** and enforced
19
23
  * structurally by the pipeline rather than by call-site discipline.
@@ -29,7 +33,6 @@ interface IndexBuilderOptions {
29
33
  all?: boolean;
30
34
  };
31
35
  embeddingModel?: string;
32
- docsAutoNotes?: boolean;
33
36
  indexDependencies?: boolean;
34
37
  lsp?: EffectiveLspSettings;
35
38
  scip?: EffectiveScipSettings;
@@ -53,7 +56,6 @@ export declare class IndexBuilder {
53
56
  private readonly history;
54
57
  private readonly indexDependencies;
55
58
  private readonly embeddingModel;
56
- private readonly docsAutoNotes;
57
59
  private readonly lspSettings;
58
60
  private readonly scipSettings;
59
61
  constructor(dbPath: string, walkerConfig: WalkerConfig, embedder?: EmbeddingProvider, embeddingModelOrOptions?: string | IndexBuilderOptions);
@@ -65,14 +67,21 @@ export declare class IndexBuilder {
65
67
  */
66
68
  build(): Promise<void>;
67
69
  /**
68
- * Incrementally re-processes only the listed files and updates the DB.
70
+ * Incrementally re-processes only the listed files using the overlay layer.
69
71
  *
70
- * Delegates to the same pipeline as `build()` each stage handles
71
- * `'update'` mode by operating only on the changed-file set.
72
+ * Tree-sitter is the primary indexer; LSP enriches cross-file refs.
73
+ * SCIP is never invoked during overlay updates.
72
74
  *
73
75
  * @param changedFiles Absolute paths of files that have changed.
74
76
  */
75
77
  update(changedFiles: string[]): Promise<void>;
78
+ /**
79
+ * Perform a background baseline rebuild (SCIP reconciliation).
80
+ *
81
+ * Writes to a new generation, then atomically promotes and cleans
82
+ * stale overlay rows. This is the only path that invokes SCIP.
83
+ */
84
+ baselineRebuild(): Promise<void>;
76
85
  /**
77
86
  * Writes an LLM-generated summary for a symbol to `symbol_summaries`.
78
87
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/indexer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAYH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAoB/D,UAAU,mBAAmB;IAC3B,OAAO,CAAC,EAAE,OAAO,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,GAAG,CAAC,EAAE,oBAAoB,CAAC;IAC3B,IAAI,CAAC,EAAE,qBAAqB,CAAC;CAC9B;AAID;;;;;;;;;;;GAWG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8C;IACtE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAU;IAC5C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAU;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;IAC1D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+B;gBAG1D,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,QAAQ,CAAC,EAAE,iBAAiB,EAC5B,uBAAuB,CAAC,EAAE,MAAM,GAAG,mBAAmB;IA2BxD;;;;;OAKG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgE5B;;;;;;;OAOG;IACG,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CnD;;OAEG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,SAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBlF,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBnG,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,aAAa;CAWtB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/indexer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAiBH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAqB/D,UAAU,mBAAmB;IAC3B,OAAO,CAAC,EAAE,OAAO,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,GAAG,CAAC,EAAE,oBAAoB,CAAC;IAC3B,IAAI,CAAC,EAAE,qBAAqB,CAAC;CAC9B;AAID;;;;;;;;;;;GAWG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8C;IACtE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAU;IAC5C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;IAC1D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+B;gBAG1D,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,QAAQ,CAAC,EAAE,iBAAiB,EAC5B,uBAAuB,CAAC,EAAE,MAAM,GAAG,mBAAmB;IA0BxD;;;;;OAKG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA2E5B;;;;;;;OAOG;IACG,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiDnD;;;;;OAKG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IA6DtC;;OAEG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,SAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBlF,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBnG,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,aAAa;CAWtB"}
@@ -7,20 +7,24 @@
7
7
  * For full builds, `build()` delegates entirely to the pipeline which
8
8
  * enforces the data-dependency chain:
9
9
  * ```
10
- * SourceIndexStageDocsIndexStageImportResolutionStage
11
- * → DependencyApiStageScipEnrichmentStage → LspEnrichmentStage
12
- * → ResolutionStageTestMapStageHistoryStage → EmbeddingStage
10
+ * ScipIndexerStageSourceIndexStageDocsIndexStage
11
+ * → ImportResolutionStageDependencyApiStage
12
+ * → LspEnrichmentStageResolutionStageTestMapStage
13
+ * → HistoryStage → EmbeddingStage
13
14
  * ```
14
15
  *
15
- * For incremental updates, `update()` uses stage-extracted helpers
16
- * while managing the changed-file diff itself.
16
+ * `ScipIndexerStage` now populates both structural data (symbols, refs)
17
+ * and enrichment metadata (type signatures, definition locations) in a
18
+ * single pass. `SourceIndexStage` then adds tree-sitter metrics
19
+ * (complexity, nesting depth) to SCIP-sourced files and handles
20
+ * remaining languages.
17
21
  *
18
22
  * The enrichment → resolution ordering is **load-bearing** and enforced
19
23
  * structurally by the pipeline rather than by call-site discipline.
20
24
  */
21
25
  import * as fs from 'node:fs';
22
26
  import { execFileSync } from 'node:child_process';
23
- import { openDb, setLoreMeta, LORE_META_LAST_HEAD_SHA, LORE_META_COVERAGE_LAST_SOURCE_PATH, LORE_META_COVERAGE_LAST_SOURCE_MTIME, } from '../db/schema.js';
27
+ import { openDb, setLoreMeta, incrementGeneration, LORE_META_LAST_HEAD_SHA, LORE_META_GENERATION_PENDING, LORE_META_COVERAGE_LAST_SOURCE_PATH, LORE_META_COVERAGE_LAST_SOURCE_MTIME, } from '../db/schema.js';
24
28
  import { DEFAULT_EMBEDDING_MODEL } from '../embeddings/embedder.js';
25
29
  import { ingestCoverageReport } from '../testing/coverage.js';
26
30
  import { resolveSymbolEdges } from '../resolution/call-graph.js';
@@ -28,7 +32,7 @@ import { refreshTestMappings } from '../testing/test-mapper.js';
28
32
  import { ingestGitHistory } from '../git/history.js';
29
33
  import { getLogger } from '../logger.js';
30
34
  import { IndexPipeline } from './pipeline.js';
31
- import { ScipSourceStage, SourceIndexStage, DocsIndexStage, ImportResolutionStage, DependencyApiStage, LspEnrichmentStage, EmbeddingStage, } from './stages/index.js';
35
+ import { ScipIndexerStage, SourceIndexStage, DocsIndexStage, ImportResolutionStage, DependencyApiStage, LspEnrichmentStage, EmbeddingStage, ReverseDepsStage, OverlayCleanupStage, } from './stages/index.js';
32
36
  // ─── IndexBuilder (façade) ────────────────────────────────────────────────────
33
37
  /**
34
38
  * Façade over the composable `IndexPipeline`.
@@ -49,7 +53,6 @@ export class IndexBuilder {
49
53
  history;
50
54
  indexDependencies;
51
55
  embeddingModel;
52
- docsAutoNotes;
53
56
  lspSettings;
54
57
  scipSettings;
55
58
  constructor(dbPath, walkerConfig, embedder, embeddingModelOrOptions) {
@@ -67,7 +70,6 @@ export class IndexBuilder {
67
70
  this.embedder = null;
68
71
  }
69
72
  this.history = opts.history ?? false;
70
- this.docsAutoNotes = opts.docsAutoNotes ?? true;
71
73
  this.indexDependencies = opts.indexDependencies ?? false;
72
74
  this.lspSettings = opts.lsp ?? null;
73
75
  this.scipSettings = opts.scip ?? null;
@@ -86,21 +88,29 @@ export class IndexBuilder {
86
88
  const branch = this.resolveBranch();
87
89
  log.indexing('build started', { dbPath: this.dbPath, branch, rootDir: this.walkerConfig.rootDir });
88
90
  // Build the pipeline with all stages in dependency order.
89
- // ScipSourceStage runs first for SCIP-covered languages (symbols + refs
90
- // from SCIP directly). SourceIndexStage then handles remaining languages
91
- // via tree-sitter. LSP enrichment is optional for both paths.
91
+ // ScipIndexerStage runs first for SCIP-covered languages (symbols + refs
92
+ // from SCIP directly, with enrichment metadata populated inline).
93
+ // SourceIndexStage then adds tree-sitter metrics to SCIP files and
94
+ // handles remaining languages. LSP enrichment is optional.
95
+ //
96
+ // Stages in arrays run concurrently:
97
+ // - SourceIndexStage + DocsIndexStage: write to disjoint tables.
98
+ // - HistoryStage + LspEnrichment: history writes to
99
+ // commits/commit_files (disjoint from enrichment targets).
92
100
  const pipeline = new IndexPipeline([
93
- new ScipSourceStage(),
94
- new SourceIndexStage(),
95
- new DocsIndexStage(),
101
+ new ScipIndexerStage(),
102
+ [new SourceIndexStage(), new DocsIndexStage()],
96
103
  new ImportResolutionStage(),
97
104
  new DependencyApiStage(),
98
- new LspEnrichmentStage(),
105
+ [new LspEnrichmentStage(), historyStage()],
106
+ ftsRefreshStage(),
99
107
  resolutionStage(),
100
108
  testMapStage(),
101
- historyStage(),
109
+ new ReverseDepsStage(),
102
110
  new EmbeddingStage(),
103
111
  ]);
112
+ // Baseline: set generation to 1 for initial build.
113
+ const generation = incrementGeneration(db);
104
114
  const context = {
105
115
  db,
106
116
  dbPath: this.dbPath,
@@ -113,10 +123,12 @@ export class IndexBuilder {
113
123
  files: [],
114
124
  indexDependencies: this.indexDependencies,
115
125
  history: this.history,
116
- docsAutoNotes: this.docsAutoNotes,
117
126
  staleSymbolIds: [],
118
127
  changedSourcePaths: [],
119
128
  changedDocPaths: [],
129
+ sourceCache: new Map(),
130
+ layer: 'baseline',
131
+ generation,
120
132
  };
121
133
  try {
122
134
  await pipeline.run(context, 'build');
@@ -139,10 +151,10 @@ export class IndexBuilder {
139
151
  }
140
152
  }
141
153
  /**
142
- * Incrementally re-processes only the listed files and updates the DB.
154
+ * Incrementally re-processes only the listed files using the overlay layer.
143
155
  *
144
- * Delegates to the same pipeline as `build()` each stage handles
145
- * `'update'` mode by operating only on the changed-file set.
156
+ * Tree-sitter is the primary indexer; LSP enriches cross-file refs.
157
+ * SCIP is never invoked during overlay updates.
146
158
  *
147
159
  * @param changedFiles Absolute paths of files that have changed.
148
160
  */
@@ -150,16 +162,18 @@ export class IndexBuilder {
150
162
  const db = openDb(this.dbPath);
151
163
  const branch = this.resolveBranch();
152
164
  const log = getLogger();
165
+ // Overlay pipeline: tree-sitter → imports → LSP → resolution → reverse-deps → embedding
166
+ // No SCIP stage — tree-sitter is the primary incremental indexer.
153
167
  const pipeline = new IndexPipeline([
154
- new ScipSourceStage(),
155
- new SourceIndexStage(),
156
- new DocsIndexStage(),
168
+ new ScipIndexerStage(),
169
+ [new SourceIndexStage(), new DocsIndexStage()],
157
170
  new ImportResolutionStage(),
158
171
  new DependencyApiStage(),
159
- new LspEnrichmentStage(),
172
+ [new LspEnrichmentStage(), historyStage()],
173
+ ftsRefreshStage(),
160
174
  resolutionStage(),
161
175
  testMapStage(),
162
- historyStage(),
176
+ new ReverseDepsStage(),
163
177
  new EmbeddingStage(),
164
178
  ]);
165
179
  const context = {
@@ -174,11 +188,13 @@ export class IndexBuilder {
174
188
  files: [],
175
189
  indexDependencies: this.indexDependencies,
176
190
  history: this.history,
177
- docsAutoNotes: this.docsAutoNotes,
178
191
  changedFiles,
179
192
  staleSymbolIds: [],
180
193
  changedSourcePaths: [],
181
194
  changedDocPaths: [],
195
+ sourceCache: new Map(),
196
+ layer: 'overlay',
197
+ generation: 0,
182
198
  };
183
199
  try {
184
200
  await pipeline.run(context, 'update');
@@ -188,6 +204,67 @@ export class IndexBuilder {
188
204
  db.close();
189
205
  }
190
206
  }
207
+ /**
208
+ * Perform a background baseline rebuild (SCIP reconciliation).
209
+ *
210
+ * Writes to a new generation, then atomically promotes and cleans
211
+ * stale overlay rows. This is the only path that invokes SCIP.
212
+ */
213
+ async baselineRebuild() {
214
+ const log = getLogger();
215
+ const rebuildStart = performance.now();
216
+ const rebuildStartedAt = Math.floor(Date.now() / 1000);
217
+ const db = openDb(this.dbPath);
218
+ const branch = this.resolveBranch();
219
+ // Increment pending generation
220
+ const newGeneration = incrementGeneration(db);
221
+ setLoreMeta(db, LORE_META_GENERATION_PENDING, String(newGeneration));
222
+ log.indexing('baseline rebuild started', { generation: newGeneration });
223
+ const pipeline = new IndexPipeline([
224
+ new ScipIndexerStage(),
225
+ [new SourceIndexStage(), new DocsIndexStage()],
226
+ new ImportResolutionStage(),
227
+ new DependencyApiStage(),
228
+ [new LspEnrichmentStage(), historyStage()],
229
+ ftsRefreshStage(),
230
+ resolutionStage(),
231
+ testMapStage(),
232
+ new EmbeddingStage(),
233
+ new OverlayCleanupStage({
234
+ newGeneration,
235
+ rebuildStartedAt,
236
+ headSha: this.readGitValue(['rev-parse', 'HEAD']),
237
+ }),
238
+ ]);
239
+ const context = {
240
+ db,
241
+ dbPath: this.dbPath,
242
+ walkerConfig: this.walkerConfig,
243
+ branch,
244
+ lsp: this.lspSettings,
245
+ scip: this.scipSettings,
246
+ embedder: this.embedder,
247
+ log,
248
+ files: [],
249
+ indexDependencies: this.indexDependencies,
250
+ history: this.history,
251
+ staleSymbolIds: [],
252
+ changedSourcePaths: [],
253
+ changedDocPaths: [],
254
+ sourceCache: new Map(),
255
+ layer: 'baseline',
256
+ generation: newGeneration,
257
+ };
258
+ try {
259
+ await pipeline.run(context, 'build');
260
+ this.saveLastKnownHead(db);
261
+ const indexDurationMs = Math.round(performance.now() - rebuildStart);
262
+ log.indexing('baseline rebuild complete', { generation: newGeneration, durationMs: indexDurationMs });
263
+ }
264
+ finally {
265
+ db.close();
266
+ }
267
+ }
191
268
  /**
192
269
  * Writes an LLM-generated summary for a symbol to `symbol_summaries`.
193
270
  */
@@ -274,7 +351,9 @@ export class IndexBuilder {
274
351
  function resolutionStage() {
275
352
  return {
276
353
  name: 'symbol-resolution',
277
- execute: async (ctx) => { resolveSymbolEdges(ctx.db); },
354
+ execute: async (ctx) => {
355
+ resolveSymbolEdges(ctx.db, { overlayOnly: ctx.layer === 'overlay' });
356
+ },
278
357
  };
279
358
  }
280
359
  /** Refresh test-to-source file mappings. */
@@ -284,6 +363,34 @@ function testMapStage() {
284
363
  execute: async (ctx) => { refreshTestMappings(ctx.db, ctx.branch); },
285
364
  };
286
365
  }
366
+ /**
367
+ * Bulk-refresh the FTS5 index from the enriched `symbols` table.
368
+ *
369
+ * Replaces per-row FTS5 updates during enrichment with a single pass,
370
+ * which is substantially faster for FTS5 virtual tables.
371
+ */
372
+ function ftsRefreshStage() {
373
+ return {
374
+ name: 'fts-refresh',
375
+ execute: async (ctx) => {
376
+ ctx.db.transaction(() => {
377
+ ctx.db.exec('DELETE FROM symbols_fts');
378
+ // Use effective_symbols view to index only the active layer's symbols
379
+ ctx.db.exec(`
380
+ INSERT INTO symbols_fts(rowid, name, signature, kind)
381
+ SELECT s.id,
382
+ s.name,
383
+ COALESCE(s.resolved_type_signature, '') || char(10) ||
384
+ COALESCE(s.resolved_return_type, '') || char(10) ||
385
+ COALESCE(s.signature, '') || char(10) ||
386
+ s.name,
387
+ s.kind
388
+ FROM effective_symbols s
389
+ `);
390
+ })();
391
+ },
392
+ };
393
+ }
287
394
  /** Ingest git history. */
288
395
  function historyStage() {
289
396
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/indexer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,MAAM,EACN,WAAW,EACX,uBAAuB,EACvB,mCAAmC,EACnC,oCAAoC,GACrC,MAAM,iBAAiB,CAAC;AAIzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAuB,MAAM,wBAAwB,CAAC;AAGnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAElB,kBAAkB,EAClB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAa3B,iFAAiF;AAEjF;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,YAAY;IACN,MAAM,CAAS;IACf,YAAY,CAAe;IAC3B,QAAQ,CAA2B;IACnC,OAAO,CAA8C;IACrD,iBAAiB,CAAU;IAC3B,cAAc,CAAS;IACvB,aAAa,CAAU;IACvB,WAAW,CAA8B;IACzC,YAAY,CAA+B;IAE5D,YACE,MAAc,EACd,YAA0B,EAC1B,QAA4B,EAC5B,uBAAsD;QAEtD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QAEjC,MAAM,IAAI,GACR,OAAO,uBAAuB,KAAK,QAAQ;YACzC,CAAC,CAAC,EAAE,cAAc,EAAE,uBAAuB,EAAE;YAC7C,CAAC,CAAC,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;QAEtC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,uBAAuB,CAAC;YACrE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC;QAChD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,IAAI,KAAK,CAAC;QACzD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;IACxC,CAAC;IAED,4EAA4E;IAE5E;;;;;OAKG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAEpC,GAAG,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;QAEnG,0DAA0D;QAC1D,wEAAwE;QACxE,0EAA0E;QAC1E,+DAA+D;QAC/D,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC;YACjC,IAAI,eAAe,EAAE;YACrB,IAAI,gBAAgB,EAAE;YACtB,IAAI,cAAc,EAAE;YACpB,IAAI,qBAAqB,EAAE;YAC3B,IAAI,kBAAkB,EAAE;YACxB,IAAI,kBAAkB,EAAE;YACxB,eAAe,EAAE;YACjB,YAAY,EAAE;YACd,YAAY,EAAE;YACd,IAAI,cAAc,EAAE;SACrB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAoB;YAC/B,EAAE;YACF,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,MAAM;YACN,GAAG,EAAE,IAAI,CAAC,WAAW;YACrB,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG;YACH,KAAK,EAAE,EAAE;YACT,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,cAAc,EAAE,EAAE;YAClB,kBAAkB,EAAE,EAAE;YACtB,eAAe,EAAE,EAAE;SACpB,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACrC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;YAE3B,8CAA8C;YAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACrC,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;YACnE,GAAG,CAAC,OAAO,CAAC,mBAAmB,EAAE;gBAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,WAAW,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;gBACnF,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;gBAC/B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;gBAChC,GAAG,KAAK;gBACR,eAAe;aAChB,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,MAAM,CAAC,YAAsB;QACjC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;QAExB,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC;YACjC,IAAI,eAAe,EAAE;YACrB,IAAI,gBAAgB,EAAE;YACtB,IAAI,cAAc,EAAE;YACpB,IAAI,qBAAqB,EAAE;YAC3B,IAAI,kBAAkB,EAAE;YACxB,IAAI,kBAAkB,EAAE;YACxB,eAAe,EAAE;YACjB,YAAY,EAAE;YACd,YAAY,EAAE;YACd,IAAI,cAAc,EAAE;SACrB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAoB;YAC/B,EAAE;YACF,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,MAAM;YACN,GAAG,EAAE,IAAI,CAAC,WAAW;YACrB,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG;YACH,KAAK,EAAE,EAAE;YACT,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY;YACZ,cAAc,EAAE,EAAE;YAClB,kBAAkB,EAAE,EAAE;YACtB,eAAe,EAAE,EAAE;SACpB,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,QAAgB,EAAE,OAAe,EAAE,KAAK,GAAG,SAAS;QACtE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC;YACH,EAAE,CAAC,OAAO,CACR;0BACkB,CACnB,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAEhC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1E,EAAE,CAAC,OAAO,CACR,0GAA0G,CAC3G,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,UAAkB,EAAE,MAAsB,EAAE,SAAkB;QACjF,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,iBAAiB,GAAG,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC;YAC1F,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;YACvE,oBAAoB,CAAC;gBACnB,EAAE;gBACF,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;gBAClC,UAAU;gBACV,MAAM;gBACN,SAAS,EAAE,iBAAiB;gBAC5B,WAAW;aACZ,CAAC,CAAC;YACH,WAAW,CAAC,EAAE,EAAE,mCAAmC,EAAE,UAAU,CAAC,CAAC;YACjE,WAAW,CAAC,EAAE,EAAE,oCAAoC,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QAC7E,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAED,2EAA2E;IAEnE,aAAa;QACnB,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;QAC9D,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC;IAC5E,CAAC;IAEO,iBAAiB,CAAC,EAAqB;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;QACzD,IAAI,OAAO;YAAE,WAAW,CAAC,EAAE,EAAE,uBAAuB,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAEO,YAAY,CAAC,IAAc;QACjC,IAAI,CAAC;YACH,OAAO,YAAY,CACjB,KAAK,EACL,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAC1C,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAC1D,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,EAAqB;QACzC,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC;YAAC,YAAY,GAAI,EAAE,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QACxH,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC;YAAC,UAAU,GAAI,EAAE,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QAC1H,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC;YAAC,SAAS,GAAI,EAAE,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QAClH,IAAI,WAA+B,CAAC;QACpC,IAAI,CAAC;YAAC,WAAW,GAAI,EAAE,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QACvH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;IAC9D,CAAC;CACF;AAED,iFAAiF;AACjF,4EAA4E;AAE5E,gEAAgE;AAChE,SAAS,eAAe;IACtB,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,4CAA4C;AAC5C,SAAS,YAAY;IACnB,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,mBAAmB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KACrE,CAAC;AACJ,CAAC;AAED,0BAA0B;AAC1B,SAAS,YAAY;IACnB,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACrB,IAAI,CAAC,GAAG,CAAC,OAAO;gBAAE,OAAO;YACzB,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;YAClD,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACvE,MAAM,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/D,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC;QACrD,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/indexer/index.ts"],"names":[],"mappings":"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"}