gitnexus 1.6.6-rc.11 → 1.6.6-rc.110

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 (526) hide show
  1. package/README.md +23 -2
  2. package/dist/_shared/index.d.ts +1 -1
  3. package/dist/_shared/index.d.ts.map +1 -1
  4. package/dist/_shared/index.js +1 -1
  5. package/dist/_shared/index.js.map +1 -1
  6. package/dist/_shared/language-detection.d.ts +6 -0
  7. package/dist/_shared/language-detection.d.ts.map +1 -1
  8. package/dist/_shared/language-detection.js +10 -0
  9. package/dist/_shared/language-detection.js.map +1 -1
  10. package/dist/_shared/pipeline.d.ts +1 -1
  11. package/dist/_shared/pipeline.d.ts.map +1 -1
  12. package/dist/_shared/scope-resolution/reference-site.d.ts +8 -0
  13. package/dist/_shared/scope-resolution/reference-site.d.ts.map +1 -1
  14. package/dist/_shared/scope-resolution/registries/context.d.ts +8 -1
  15. package/dist/_shared/scope-resolution/registries/context.d.ts.map +1 -1
  16. package/dist/_shared/scope-resolution/registries/context.js.map +1 -1
  17. package/dist/_shared/scope-resolution/symbol-definition.d.ts +4 -0
  18. package/dist/_shared/scope-resolution/symbol-definition.d.ts.map +1 -1
  19. package/dist/_shared/scope-resolution/types.d.ts +5 -2
  20. package/dist/_shared/scope-resolution/types.d.ts.map +1 -1
  21. package/dist/cli/ai-context.js +16 -7
  22. package/dist/cli/analyze.d.ts +5 -0
  23. package/dist/cli/analyze.js +391 -23
  24. package/dist/cli/clean.d.ts +1 -0
  25. package/dist/cli/clean.js +39 -9
  26. package/dist/cli/cli-message.d.ts +33 -3
  27. package/dist/cli/cli-message.js +14 -0
  28. package/dist/cli/detect-changes-format.d.ts +1 -0
  29. package/dist/cli/detect-changes-format.js +45 -0
  30. package/dist/cli/doctor.d.ts +2 -0
  31. package/dist/cli/doctor.js +79 -20
  32. package/dist/cli/eval-server.d.ts +4 -2
  33. package/dist/cli/eval-server.js +55 -51
  34. package/dist/cli/format-elapsed.d.ts +1 -0
  35. package/dist/cli/format-elapsed.js +9 -0
  36. package/dist/cli/help-i18n.d.ts +2 -0
  37. package/dist/cli/help-i18n.js +204 -0
  38. package/dist/cli/i18n/en.d.ts +211 -0
  39. package/dist/cli/i18n/en.js +211 -0
  40. package/dist/cli/i18n/index.d.ts +9 -0
  41. package/dist/cli/i18n/index.js +41 -0
  42. package/dist/cli/i18n/resources.d.ts +424 -0
  43. package/dist/cli/i18n/resources.js +6 -0
  44. package/dist/cli/i18n/zh-CN.d.ts +211 -0
  45. package/dist/cli/i18n/zh-CN.js +211 -0
  46. package/dist/cli/index.js +30 -24
  47. package/dist/cli/lazy-action.d.ts +1 -0
  48. package/dist/cli/lazy-action.js +17 -0
  49. package/dist/cli/list.js +15 -10
  50. package/dist/cli/optional-grammars.d.ts +11 -8
  51. package/dist/cli/optional-grammars.js +12 -8
  52. package/dist/cli/remove.js +12 -11
  53. package/dist/cli/serve.js +4 -13
  54. package/dist/cli/setup.js +200 -12
  55. package/dist/cli/status.js +11 -10
  56. package/dist/cli/tool.d.ts +7 -1
  57. package/dist/cli/tool.js +40 -42
  58. package/dist/cli/wiki.js +79 -22
  59. package/dist/config/ignore-service.js +10 -7
  60. package/dist/core/embeddings/embedder.js +5 -1
  61. package/dist/core/embeddings/embedding-pipeline.d.ts +14 -0
  62. package/dist/core/embeddings/embedding-pipeline.js +29 -8
  63. package/dist/core/git-staleness.js +3 -0
  64. package/dist/core/group/cross-impact.js +4 -0
  65. package/dist/core/group/extractors/grpc-extractor.d.ts +61 -0
  66. package/dist/core/group/extractors/grpc-extractor.js +179 -3
  67. package/dist/core/group/extractors/grpc-patterns/java.js +63 -0
  68. package/dist/core/group/extractors/grpc-patterns/node.js +29 -12
  69. package/dist/core/group/extractors/grpc-patterns/proto.js +2 -1
  70. package/dist/core/group/extractors/grpc-patterns/types.d.ts +12 -0
  71. package/dist/core/group/extractors/http-patterns/index.d.ts +7 -2
  72. package/dist/core/group/extractors/http-patterns/index.js +19 -1
  73. package/dist/core/group/extractors/http-patterns/java.js +589 -65
  74. package/dist/core/group/extractors/http-patterns/kotlin.d.ts +8 -0
  75. package/dist/core/group/extractors/http-patterns/kotlin.js +552 -0
  76. package/dist/core/group/extractors/http-patterns/python.js +570 -20
  77. package/dist/core/group/extractors/http-patterns/types.d.ts +47 -1
  78. package/dist/core/group/extractors/http-route-extractor.d.ts +1 -0
  79. package/dist/core/group/extractors/http-route-extractor.js +111 -32
  80. package/dist/core/group/service.d.ts +1 -0
  81. package/dist/core/group/sync.js +53 -59
  82. package/dist/core/ingestion/call-extractors/configs/c-cpp.js +157 -0
  83. package/dist/core/ingestion/call-processor.js +107 -12
  84. package/dist/core/ingestion/cobol/cobol-preprocessor.d.ts +11 -0
  85. package/dist/core/ingestion/cobol/cobol-preprocessor.js +227 -73
  86. package/dist/core/ingestion/cobol-processor.d.ts +1 -0
  87. package/dist/core/ingestion/cobol-processor.js +69 -3
  88. package/dist/core/ingestion/csharp-namespace-gate.d.ts +25 -0
  89. package/dist/core/ingestion/csharp-namespace-gate.js +129 -0
  90. package/dist/core/ingestion/export-detection.js +0 -5
  91. package/dist/core/ingestion/field-extractors/configs/dart.js +1 -4
  92. package/dist/core/ingestion/field-extractors/configs/php.js +1 -2
  93. package/dist/core/ingestion/field-extractors/configs/swift.js +1 -1
  94. package/dist/core/ingestion/field-extractors/typescript.js +0 -29
  95. package/dist/core/ingestion/filesystem-walker.js +37 -5
  96. package/dist/core/ingestion/finalize-orchestrator.js +5 -0
  97. package/dist/core/ingestion/heritage-extractors/configs/cpp.d.ts +16 -0
  98. package/dist/core/ingestion/heritage-extractors/configs/cpp.js +18 -0
  99. package/dist/core/ingestion/heritage-extractors/configs/csharp.d.ts +27 -0
  100. package/dist/core/ingestion/heritage-extractors/configs/csharp.js +35 -0
  101. package/dist/core/ingestion/heritage-extractors/configs/go.d.ts +25 -1
  102. package/dist/core/ingestion/heritage-extractors/configs/go.js +39 -2
  103. package/dist/core/ingestion/heritage-extractors/configs/java.d.ts +11 -0
  104. package/dist/core/ingestion/heritage-extractors/configs/java.js +13 -0
  105. package/dist/core/ingestion/heritage-extractors/configs/javascript.d.ts +8 -0
  106. package/dist/core/ingestion/heritage-extractors/configs/javascript.js +10 -0
  107. package/dist/core/ingestion/heritage-extractors/configs/kotlin.d.ts +11 -0
  108. package/dist/core/ingestion/heritage-extractors/configs/kotlin.js +13 -0
  109. package/dist/core/ingestion/heritage-extractors/configs/python.d.ts +9 -0
  110. package/dist/core/ingestion/heritage-extractors/configs/python.js +11 -0
  111. package/dist/core/ingestion/heritage-extractors/configs/ruby.d.ts +8 -1
  112. package/dist/core/ingestion/heritage-extractors/configs/ruby.js +9 -0
  113. package/dist/core/ingestion/heritage-extractors/configs/rust.d.ts +9 -0
  114. package/dist/core/ingestion/heritage-extractors/configs/rust.js +11 -0
  115. package/dist/core/ingestion/heritage-extractors/configs/typescript.d.ts +15 -0
  116. package/dist/core/ingestion/heritage-extractors/configs/typescript.js +19 -0
  117. package/dist/core/ingestion/heritage-extractors/generic.js +17 -4
  118. package/dist/core/ingestion/heritage-extractors/supertype-alternation.d.ts +82 -0
  119. package/dist/core/ingestion/heritage-extractors/supertype-alternation.js +193 -0
  120. package/dist/core/ingestion/heritage-processor.js +6 -0
  121. package/dist/core/ingestion/heritage-types.d.ts +20 -0
  122. package/dist/core/ingestion/import-processor.js +2 -2
  123. package/dist/core/ingestion/import-resolvers/configs/csharp.js +25 -10
  124. package/dist/core/ingestion/import-resolvers/configs/swift.d.ts +21 -0
  125. package/dist/core/ingestion/import-resolvers/configs/swift.js +72 -11
  126. package/dist/core/ingestion/import-resolvers/csharp.d.ts +6 -2
  127. package/dist/core/ingestion/import-resolvers/csharp.js +11 -2
  128. package/dist/core/ingestion/import-resolvers/python.d.ts +1 -1
  129. package/dist/core/ingestion/import-resolvers/types.d.ts +3 -1
  130. package/dist/core/ingestion/import-resolvers/utils.d.ts +1 -1
  131. package/dist/core/ingestion/language-config.d.ts +40 -3
  132. package/dist/core/ingestion/language-config.js +232 -35
  133. package/dist/core/ingestion/languages/c/captures.js +41 -23
  134. package/dist/core/ingestion/languages/c/query.js +6 -0
  135. package/dist/core/ingestion/languages/c-cpp.js +5 -3
  136. package/dist/core/ingestion/languages/cobol/captures.d.ts +13 -0
  137. package/dist/core/ingestion/languages/cobol/captures.js +250 -0
  138. package/dist/core/ingestion/languages/cobol/index.d.ts +14 -0
  139. package/dist/core/ingestion/languages/cobol/index.js +14 -0
  140. package/dist/core/ingestion/languages/cobol/interpret.d.ts +46 -0
  141. package/dist/core/ingestion/languages/cobol/interpret.js +79 -0
  142. package/dist/core/ingestion/languages/cobol/scope-resolver.d.ts +13 -0
  143. package/dist/core/ingestion/languages/cobol/scope-resolver.js +69 -0
  144. package/dist/core/ingestion/languages/cobol.js +9 -2
  145. package/dist/core/ingestion/languages/cpp/adl.d.ts +14 -21
  146. package/dist/core/ingestion/languages/cpp/adl.js +116 -43
  147. package/dist/core/ingestion/languages/cpp/arity-metadata.js +2 -8
  148. package/dist/core/ingestion/languages/cpp/captures.js +430 -57
  149. package/dist/core/ingestion/languages/cpp/constraint-filter.js +102 -32
  150. package/dist/core/ingestion/languages/cpp/conversion-rank.d.ts +21 -21
  151. package/dist/core/ingestion/languages/cpp/conversion-rank.js +48 -25
  152. package/dist/core/ingestion/languages/cpp/inline-namespaces.d.ts +2 -2
  153. package/dist/core/ingestion/languages/cpp/inline-namespaces.js +8 -14
  154. package/dist/core/ingestion/languages/cpp/query.js +87 -0
  155. package/dist/core/ingestion/languages/cpp/range-bindings.js +20 -5
  156. package/dist/core/ingestion/languages/cpp/scope-resolver.js +7 -1
  157. package/dist/core/ingestion/languages/cpp/two-phase-lookup.d.ts +8 -3
  158. package/dist/core/ingestion/languages/cpp/two-phase-lookup.js +149 -37
  159. package/dist/core/ingestion/languages/cpp/type-classifier.d.ts +9 -9
  160. package/dist/core/ingestion/languages/cpp/type-classifier.js +12 -8
  161. package/dist/core/ingestion/languages/cpp/user-defined-conversions.d.ts +5 -0
  162. package/dist/core/ingestion/languages/cpp/user-defined-conversions.js +122 -0
  163. package/dist/core/ingestion/languages/csharp/captures.js +91 -37
  164. package/dist/core/ingestion/languages/csharp/import-target.d.ts +8 -4
  165. package/dist/core/ingestion/languages/csharp/import-target.js +128 -78
  166. package/dist/core/ingestion/languages/csharp/namespace-siblings.d.ts +65 -6
  167. package/dist/core/ingestion/languages/csharp/namespace-siblings.js +420 -108
  168. package/dist/core/ingestion/languages/csharp/resolution-config.d.ts +14 -0
  169. package/dist/core/ingestion/languages/csharp/resolution-config.js +15 -0
  170. package/dist/core/ingestion/languages/csharp/scope-resolver.js +10 -2
  171. package/dist/core/ingestion/languages/go/captures.js +225 -25
  172. package/dist/core/ingestion/languages/go/range-binding.js +20 -5
  173. package/dist/core/ingestion/languages/go.js +50 -0
  174. package/dist/core/ingestion/languages/index.js +3 -1
  175. package/dist/core/ingestion/languages/java/captures.js +271 -26
  176. package/dist/core/ingestion/languages/java/interpret.js +12 -8
  177. package/dist/core/ingestion/languages/java/package-siblings.d.ts +17 -0
  178. package/dist/core/ingestion/languages/java/package-siblings.js +147 -0
  179. package/dist/core/ingestion/languages/java/query.js +75 -0
  180. package/dist/core/ingestion/languages/java/scope-resolver.d.ts +5 -39
  181. package/dist/core/ingestion/languages/java/scope-resolver.js +157 -45
  182. package/dist/core/ingestion/languages/java.js +35 -0
  183. package/dist/core/ingestion/languages/javascript/arity.d.ts +11 -0
  184. package/dist/core/ingestion/languages/javascript/arity.js +11 -0
  185. package/dist/core/ingestion/languages/javascript/captures.d.ts +30 -0
  186. package/dist/core/ingestion/languages/javascript/captures.js +844 -0
  187. package/dist/core/ingestion/languages/javascript/import-target.d.ts +29 -0
  188. package/dist/core/ingestion/languages/javascript/import-target.js +53 -0
  189. package/dist/core/ingestion/languages/javascript/index.d.ts +48 -0
  190. package/dist/core/ingestion/languages/javascript/index.js +48 -0
  191. package/dist/core/ingestion/languages/javascript/interpret.d.ts +29 -0
  192. package/dist/core/ingestion/languages/javascript/interpret.js +41 -0
  193. package/dist/core/ingestion/languages/javascript/merge-bindings.d.ts +16 -0
  194. package/dist/core/ingestion/languages/javascript/merge-bindings.js +18 -0
  195. package/dist/core/ingestion/languages/javascript/query.d.ts +52 -0
  196. package/dist/core/ingestion/languages/javascript/query.js +524 -0
  197. package/dist/core/ingestion/languages/javascript/scope-resolver.d.ts +37 -0
  198. package/dist/core/ingestion/languages/javascript/scope-resolver.js +73 -0
  199. package/dist/core/ingestion/languages/javascript/simple-hooks.d.ts +32 -0
  200. package/dist/core/ingestion/languages/javascript/simple-hooks.js +37 -0
  201. package/dist/core/ingestion/languages/kotlin/arity-metadata.d.ts +7 -0
  202. package/dist/core/ingestion/languages/kotlin/arity-metadata.js +20 -0
  203. package/dist/core/ingestion/languages/kotlin/arity.d.ts +2 -0
  204. package/dist/core/ingestion/languages/kotlin/arity.js +15 -0
  205. package/dist/core/ingestion/languages/kotlin/cache-stats.d.ts +7 -0
  206. package/dist/core/ingestion/languages/kotlin/cache-stats.js +15 -0
  207. package/dist/core/ingestion/languages/kotlin/captures.d.ts +2 -0
  208. package/dist/core/ingestion/languages/kotlin/captures.js +1051 -0
  209. package/dist/core/ingestion/languages/kotlin/companion-scopes.d.ts +7 -0
  210. package/dist/core/ingestion/languages/kotlin/companion-scopes.js +56 -0
  211. package/dist/core/ingestion/languages/kotlin/import-decomposer.d.ts +3 -0
  212. package/dist/core/ingestion/languages/kotlin/import-decomposer.js +37 -0
  213. package/dist/core/ingestion/languages/kotlin/import-target.d.ts +6 -0
  214. package/dist/core/ingestion/languages/kotlin/import-target.js +132 -0
  215. package/dist/core/ingestion/languages/kotlin/index.d.ts +8 -0
  216. package/dist/core/ingestion/languages/kotlin/index.js +8 -0
  217. package/dist/core/ingestion/languages/kotlin/interpret.d.ts +4 -0
  218. package/dist/core/ingestion/languages/kotlin/interpret.js +70 -0
  219. package/dist/core/ingestion/languages/kotlin/merge-bindings.d.ts +2 -0
  220. package/dist/core/ingestion/languages/kotlin/merge-bindings.js +25 -0
  221. package/dist/core/ingestion/languages/kotlin/owners.d.ts +3 -0
  222. package/dist/core/ingestion/languages/kotlin/owners.js +130 -0
  223. package/dist/core/ingestion/languages/kotlin/query.d.ts +3 -0
  224. package/dist/core/ingestion/languages/kotlin/query.js +158 -0
  225. package/dist/core/ingestion/languages/kotlin/receiver-binding.d.ts +3 -0
  226. package/dist/core/ingestion/languages/kotlin/receiver-binding.js +100 -0
  227. package/dist/core/ingestion/languages/kotlin/scope-resolver.d.ts +39 -0
  228. package/dist/core/ingestion/languages/kotlin/scope-resolver.js +162 -0
  229. package/dist/core/ingestion/languages/kotlin/simple-hooks.d.ts +4 -0
  230. package/dist/core/ingestion/languages/kotlin/simple-hooks.js +37 -0
  231. package/dist/core/ingestion/languages/kotlin.js +10 -0
  232. package/dist/core/ingestion/languages/php/captures.js +136 -19
  233. package/dist/core/ingestion/languages/php/import-decomposer.js +2 -33
  234. package/dist/core/ingestion/languages/php/namespace-siblings.d.ts +25 -0
  235. package/dist/core/ingestion/languages/php/namespace-siblings.js +98 -39
  236. package/dist/core/ingestion/languages/php/receiver-binding.js +8 -4
  237. package/dist/core/ingestion/languages/python/captures.js +127 -10
  238. package/dist/core/ingestion/languages/python/depends-references.d.ts +19 -0
  239. package/dist/core/ingestion/languages/python/depends-references.js +65 -0
  240. package/dist/core/ingestion/languages/python/import-target.d.ts +4 -5
  241. package/dist/core/ingestion/languages/python/import-target.js +108 -16
  242. package/dist/core/ingestion/languages/python/index-stats.d.ts +18 -0
  243. package/dist/core/ingestion/languages/python/index-stats.js +25 -0
  244. package/dist/core/ingestion/languages/python/scope-resolver.js +7 -6
  245. package/dist/core/ingestion/languages/ruby/arity.d.ts +22 -0
  246. package/dist/core/ingestion/languages/ruby/arity.js +38 -0
  247. package/dist/core/ingestion/languages/ruby/cache-stats.d.ts +7 -0
  248. package/dist/core/ingestion/languages/ruby/cache-stats.js +15 -0
  249. package/dist/core/ingestion/languages/ruby/captures.d.ts +2 -0
  250. package/dist/core/ingestion/languages/ruby/captures.js +627 -0
  251. package/dist/core/ingestion/languages/ruby/import-target.d.ts +26 -0
  252. package/dist/core/ingestion/languages/ruby/import-target.js +84 -0
  253. package/dist/core/ingestion/languages/ruby/index.d.ts +11 -0
  254. package/dist/core/ingestion/languages/ruby/index.js +11 -0
  255. package/dist/core/ingestion/languages/ruby/interpret.d.ts +29 -0
  256. package/dist/core/ingestion/languages/ruby/interpret.js +109 -0
  257. package/dist/core/ingestion/languages/ruby/merge-bindings.d.ts +2 -0
  258. package/dist/core/ingestion/languages/ruby/merge-bindings.js +18 -0
  259. package/dist/core/ingestion/languages/ruby/query.d.ts +36 -0
  260. package/dist/core/ingestion/languages/ruby/query.js +216 -0
  261. package/dist/core/ingestion/languages/ruby/receiver-binding.d.ts +33 -0
  262. package/dist/core/ingestion/languages/ruby/receiver-binding.js +66 -0
  263. package/dist/core/ingestion/languages/ruby/scope-resolver.d.ts +2 -0
  264. package/dist/core/ingestion/languages/ruby/scope-resolver.js +208 -0
  265. package/dist/core/ingestion/languages/ruby/simple-hooks.d.ts +14 -0
  266. package/dist/core/ingestion/languages/ruby/simple-hooks.js +41 -0
  267. package/dist/core/ingestion/languages/ruby.js +9 -0
  268. package/dist/core/ingestion/languages/rust/arity.d.ts +2 -0
  269. package/dist/core/ingestion/languages/rust/arity.js +13 -0
  270. package/dist/core/ingestion/languages/rust/cache-stats.d.ts +7 -0
  271. package/dist/core/ingestion/languages/rust/cache-stats.js +15 -0
  272. package/dist/core/ingestion/languages/rust/captures.d.ts +2 -0
  273. package/dist/core/ingestion/languages/rust/captures.js +261 -0
  274. package/dist/core/ingestion/languages/rust/import-decomposer.d.ts +8 -0
  275. package/dist/core/ingestion/languages/rust/import-decomposer.js +164 -0
  276. package/dist/core/ingestion/languages/rust/import-target.d.ts +14 -0
  277. package/dist/core/ingestion/languages/rust/import-target.js +105 -0
  278. package/dist/core/ingestion/languages/rust/index.d.ts +12 -0
  279. package/dist/core/ingestion/languages/rust/index.js +12 -0
  280. package/dist/core/ingestion/languages/rust/interpret.d.ts +4 -0
  281. package/dist/core/ingestion/languages/rust/interpret.js +178 -0
  282. package/dist/core/ingestion/languages/rust/merge-bindings.d.ts +2 -0
  283. package/dist/core/ingestion/languages/rust/merge-bindings.js +18 -0
  284. package/dist/core/ingestion/languages/rust/method-owners.d.ts +19 -0
  285. package/dist/core/ingestion/languages/rust/method-owners.js +63 -0
  286. package/dist/core/ingestion/languages/rust/query.d.ts +3 -0
  287. package/dist/core/ingestion/languages/rust/query.js +145 -0
  288. package/dist/core/ingestion/languages/rust/range-binding.d.ts +18 -0
  289. package/dist/core/ingestion/languages/rust/range-binding.js +598 -0
  290. package/dist/core/ingestion/languages/rust/receiver-binding.d.ts +20 -0
  291. package/dist/core/ingestion/languages/rust/receiver-binding.js +143 -0
  292. package/dist/core/ingestion/languages/rust/scope-resolver.d.ts +2 -0
  293. package/dist/core/ingestion/languages/rust/scope-resolver.js +136 -0
  294. package/dist/core/ingestion/languages/rust/simple-hooks.d.ts +8 -0
  295. package/dist/core/ingestion/languages/rust/simple-hooks.js +27 -0
  296. package/dist/core/ingestion/languages/rust.js +9 -0
  297. package/dist/core/ingestion/languages/swift/arity-metadata.d.ts +24 -0
  298. package/dist/core/ingestion/languages/swift/arity-metadata.js +41 -0
  299. package/dist/core/ingestion/languages/swift/arity.d.ts +29 -0
  300. package/dist/core/ingestion/languages/swift/arity.js +42 -0
  301. package/dist/core/ingestion/languages/swift/base-type.d.ts +20 -0
  302. package/dist/core/ingestion/languages/swift/base-type.js +27 -0
  303. package/dist/core/ingestion/languages/swift/cache-stats.d.ts +15 -0
  304. package/dist/core/ingestion/languages/swift/cache-stats.js +26 -0
  305. package/dist/core/ingestion/languages/swift/captures.d.ts +35 -0
  306. package/dist/core/ingestion/languages/swift/captures.js +495 -0
  307. package/dist/core/ingestion/languages/swift/implicit-imports.d.ts +34 -0
  308. package/dist/core/ingestion/languages/swift/implicit-imports.js +57 -0
  309. package/dist/core/ingestion/languages/swift/import-decomposer.d.ts +24 -0
  310. package/dist/core/ingestion/languages/swift/import-decomposer.js +84 -0
  311. package/dist/core/ingestion/languages/swift/import-target.d.ts +33 -0
  312. package/dist/core/ingestion/languages/swift/import-target.js +81 -0
  313. package/dist/core/ingestion/languages/swift/index.d.ts +37 -0
  314. package/dist/core/ingestion/languages/swift/index.js +37 -0
  315. package/dist/core/ingestion/languages/swift/interpret.d.ts +15 -0
  316. package/dist/core/ingestion/languages/swift/interpret.js +89 -0
  317. package/dist/core/ingestion/languages/swift/merge-bindings.d.ts +20 -0
  318. package/dist/core/ingestion/languages/swift/merge-bindings.js +48 -0
  319. package/dist/core/ingestion/languages/swift/query.d.ts +46 -0
  320. package/dist/core/ingestion/languages/swift/query.js +194 -0
  321. package/dist/core/ingestion/languages/swift/receiver-binding.d.ts +40 -0
  322. package/dist/core/ingestion/languages/swift/receiver-binding.js +161 -0
  323. package/dist/core/ingestion/languages/swift/scope-resolver.d.ts +50 -0
  324. package/dist/core/ingestion/languages/swift/scope-resolver.js +189 -0
  325. package/dist/core/ingestion/languages/swift/sibling-type-bindings.d.ts +34 -0
  326. package/dist/core/ingestion/languages/swift/sibling-type-bindings.js +65 -0
  327. package/dist/core/ingestion/languages/swift/signature-bindings.d.ts +25 -0
  328. package/dist/core/ingestion/languages/swift/signature-bindings.js +66 -0
  329. package/dist/core/ingestion/languages/swift/simple-hooks.d.ts +37 -0
  330. package/dist/core/ingestion/languages/swift/simple-hooks.js +60 -0
  331. package/dist/core/ingestion/languages/swift/target-grouping.d.ts +51 -0
  332. package/dist/core/ingestion/languages/swift/target-grouping.js +93 -0
  333. package/dist/core/ingestion/languages/swift/target-siblings.d.ts +30 -0
  334. package/dist/core/ingestion/languages/swift/target-siblings.js +71 -0
  335. package/dist/core/ingestion/languages/swift.js +11 -0
  336. package/dist/core/ingestion/languages/typescript/array-callback.d.ts +41 -0
  337. package/dist/core/ingestion/languages/typescript/array-callback.js +55 -0
  338. package/dist/core/ingestion/languages/typescript/captures.js +218 -23
  339. package/dist/core/ingestion/languages/typescript/import-target.d.ts +3 -0
  340. package/dist/core/ingestion/languages/typescript/import-target.js +1 -1
  341. package/dist/core/ingestion/languages/typescript/query.js +100 -14
  342. package/dist/core/ingestion/languages/typescript/receiver-binding.js +0 -1
  343. package/dist/core/ingestion/languages/typescript/scope-resolver.js +5 -1
  344. package/dist/core/ingestion/languages/typescript/simple-hooks.d.ts +10 -0
  345. package/dist/core/ingestion/languages/typescript/simple-hooks.js +4 -1
  346. package/dist/core/ingestion/languages/typescript.js +59 -14
  347. package/dist/core/ingestion/method-extractors/configs/c-cpp.js +4 -0
  348. package/dist/core/ingestion/method-extractors/configs/dart.js +0 -1
  349. package/dist/core/ingestion/method-extractors/configs/php.js +0 -1
  350. package/dist/core/ingestion/method-types.d.ts +4 -3
  351. package/dist/core/ingestion/model/heritage-map.js +34 -0
  352. package/dist/core/ingestion/model/scope-resolution-indexes.d.ts +56 -1
  353. package/dist/core/ingestion/parsing-processor.d.ts +6 -1
  354. package/dist/core/ingestion/parsing-processor.js +151 -28
  355. package/dist/core/ingestion/pipeline-phases/communities.js +2 -2
  356. package/dist/core/ingestion/pipeline-phases/mro.d.ts +1 -1
  357. package/dist/core/ingestion/pipeline-phases/mro.js +3 -3
  358. package/dist/core/ingestion/pipeline-phases/parse-impl.d.ts +25 -1
  359. package/dist/core/ingestion/pipeline-phases/parse-impl.js +667 -101
  360. package/dist/core/ingestion/pipeline-phases/parse.d.ts +2 -1
  361. package/dist/core/ingestion/pipeline-phases/processes.js +2 -2
  362. package/dist/core/ingestion/pipeline-phases/routes.d.ts +8 -0
  363. package/dist/core/ingestion/pipeline-phases/routes.js +110 -21
  364. package/dist/core/ingestion/pipeline.d.ts +50 -0
  365. package/dist/core/ingestion/pipeline.js +2 -0
  366. package/dist/core/ingestion/registry-primary-flag.d.ts +3 -2
  367. package/dist/core/ingestion/registry-primary-flag.js +12 -7
  368. package/dist/core/ingestion/route-extractors/fastapi-router-bindings.d.ts +134 -0
  369. package/dist/core/ingestion/route-extractors/fastapi-router-bindings.js +208 -0
  370. package/dist/core/ingestion/route-extractors/laravel.d.ts +13 -0
  371. package/dist/core/ingestion/route-extractors/laravel.js +419 -0
  372. package/dist/core/ingestion/scope-extractor.d.ts +39 -5
  373. package/dist/core/ingestion/scope-extractor.js +113 -14
  374. package/dist/core/ingestion/scope-resolution/contract/scope-resolver.d.ts +128 -3
  375. package/dist/core/ingestion/scope-resolution/contract/scope-resolver.js +13 -1
  376. package/dist/core/ingestion/scope-resolution/graph-bridge/edges.d.ts +21 -0
  377. package/dist/core/ingestion/scope-resolution/graph-bridge/edges.js +40 -0
  378. package/dist/core/ingestion/scope-resolution/graph-bridge/ids.d.ts +2 -1
  379. package/dist/core/ingestion/scope-resolution/graph-bridge/ids.js +13 -1
  380. package/dist/core/ingestion/scope-resolution/graph-bridge/node-lookup.js +29 -7
  381. package/dist/core/ingestion/scope-resolution/passes/compound-receiver.js +18 -3
  382. package/dist/core/ingestion/scope-resolution/passes/free-call-fallback.d.ts +51 -0
  383. package/dist/core/ingestion/scope-resolution/passes/free-call-fallback.js +211 -12
  384. package/dist/core/ingestion/scope-resolution/passes/imported-return-types.js +21 -1
  385. package/dist/core/ingestion/scope-resolution/passes/overload-narrowing.d.ts +9 -2
  386. package/dist/core/ingestion/scope-resolution/passes/overload-narrowing.js +161 -6
  387. package/dist/core/ingestion/scope-resolution/passes/receiver-bound-calls.d.ts +10 -2
  388. package/dist/core/ingestion/scope-resolution/passes/receiver-bound-calls.js +300 -14
  389. package/dist/core/ingestion/scope-resolution/pipeline/phase.d.ts +3 -0
  390. package/dist/core/ingestion/scope-resolution/pipeline/phase.js +116 -0
  391. package/dist/core/ingestion/scope-resolution/pipeline/registry.js +12 -0
  392. package/dist/core/ingestion/scope-resolution/pipeline/run.d.ts +18 -0
  393. package/dist/core/ingestion/scope-resolution/pipeline/run.js +106 -19
  394. package/dist/core/ingestion/scope-resolution/pipeline/validate-bindings-immutability.d.ts +2 -2
  395. package/dist/core/ingestion/scope-resolution/pipeline/validate-bindings-immutability.js +46 -2
  396. package/dist/core/ingestion/scope-resolution/resolution-outcome.d.ts +24 -0
  397. package/dist/core/ingestion/scope-resolution/resolution-outcome.js +1 -0
  398. package/dist/core/ingestion/scope-resolution/scope/walkers.d.ts +81 -0
  399. package/dist/core/ingestion/scope-resolution/scope/walkers.js +281 -33
  400. package/dist/core/ingestion/tree-sitter-queries.d.ts +11 -11
  401. package/dist/core/ingestion/tree-sitter-queries.js +356 -44
  402. package/dist/core/ingestion/ts-js-hoc-utils.d.ts +12 -0
  403. package/dist/core/ingestion/ts-js-hoc-utils.js +105 -0
  404. package/dist/core/ingestion/type-env.d.ts +2 -1
  405. package/dist/core/ingestion/type-env.js +5 -7
  406. package/dist/core/ingestion/type-extractors/c-cpp.js +8 -10
  407. package/dist/core/ingestion/type-extractors/csharp.js +18 -34
  408. package/dist/core/ingestion/type-extractors/go.js +2 -10
  409. package/dist/core/ingestion/type-extractors/jvm.js +6 -5
  410. package/dist/core/ingestion/type-extractors/php.js +1 -1
  411. package/dist/core/ingestion/type-extractors/python.js +1 -1
  412. package/dist/core/ingestion/type-extractors/ruby.js +2 -2
  413. package/dist/core/ingestion/type-extractors/rust.js +0 -16
  414. package/dist/core/ingestion/type-extractors/shared.d.ts +2 -2
  415. package/dist/core/ingestion/type-extractors/shared.js +25 -11
  416. package/dist/core/ingestion/type-extractors/swift.js +5 -5
  417. package/dist/core/ingestion/type-extractors/typescript.js +1 -1
  418. package/dist/core/ingestion/utils/ast-helpers.d.ts +68 -0
  419. package/dist/core/ingestion/utils/ast-helpers.js +166 -1
  420. package/dist/core/ingestion/utils/deferred-resolution-profile.d.ts +65 -0
  421. package/dist/core/ingestion/utils/deferred-resolution-profile.js +137 -0
  422. package/dist/core/ingestion/utils/env.d.ts +13 -0
  423. package/dist/core/ingestion/utils/env.js +18 -0
  424. package/dist/core/ingestion/utils/method-props.d.ts +11 -1
  425. package/dist/core/ingestion/utils/method-props.js +42 -0
  426. package/dist/core/ingestion/utils/verbose.js +2 -7
  427. package/dist/core/ingestion/variable-extractors/configs/dart.js +0 -9
  428. package/dist/core/ingestion/workers/parse-worker.d.ts +33 -11
  429. package/dist/core/ingestion/workers/parse-worker.js +253 -406
  430. package/dist/core/ingestion/workers/quarantine.d.ts +45 -0
  431. package/dist/core/ingestion/workers/quarantine.js +38 -0
  432. package/dist/core/ingestion/workers/worker-pool.d.ts +223 -2
  433. package/dist/core/ingestion/workers/worker-pool.js +1129 -74
  434. package/dist/core/lbug/extension-loader.d.ts +17 -1
  435. package/dist/core/lbug/extension-loader.js +22 -1
  436. package/dist/core/lbug/lbug-adapter.d.ts +15 -0
  437. package/dist/core/lbug/lbug-adapter.js +316 -109
  438. package/dist/core/lbug/lbug-config.d.ts +9 -0
  439. package/dist/core/lbug/lbug-config.js +261 -3
  440. package/dist/core/lbug/native-check.d.ts +6 -0
  441. package/dist/core/lbug/native-check.js +71 -0
  442. package/dist/core/lbug/pool-adapter.d.ts +19 -0
  443. package/dist/core/lbug/pool-adapter.js +199 -12
  444. package/dist/core/lbug/sidecar-recovery.d.ts +68 -0
  445. package/dist/core/lbug/sidecar-recovery.js +277 -0
  446. package/dist/core/lbug/wal-checkpoint-driver.d.ts +98 -0
  447. package/dist/core/lbug/wal-checkpoint-driver.js +189 -0
  448. package/dist/core/run-analyze.d.ts +21 -0
  449. package/dist/core/run-analyze.js +153 -7
  450. package/dist/core/search/fts-indexes.d.ts +6 -1
  451. package/dist/core/search/fts-indexes.js +28 -1
  452. package/dist/core/tree-sitter/parser-loader.d.ts +13 -0
  453. package/dist/core/tree-sitter/parser-loader.js +4 -0
  454. package/dist/core/tree-sitter/safe-parse.d.ts +70 -3
  455. package/dist/core/tree-sitter/safe-parse.js +214 -11
  456. package/dist/core/wiki/cursor-client.js +2 -1
  457. package/dist/core/wiki/generator.d.ts +17 -1
  458. package/dist/core/wiki/generator.js +198 -7
  459. package/dist/core/wiki/graph-queries.d.ts +3 -0
  460. package/dist/core/wiki/graph-queries.js +9 -1
  461. package/dist/core/wiki/llm-client.d.ts +2 -2
  462. package/dist/core/wiki/llm-client.js +13 -5
  463. package/dist/core/wiki/local-cli-client.d.ts +17 -0
  464. package/dist/core/wiki/local-cli-client.js +270 -0
  465. package/dist/mcp/local/local-backend.d.ts +18 -0
  466. package/dist/mcp/local/local-backend.js +295 -38
  467. package/dist/mcp/server.d.ts +16 -1
  468. package/dist/mcp/server.js +39 -8
  469. package/dist/mcp/tools.js +21 -1
  470. package/dist/server/api.js +35 -21
  471. package/dist/server/git-clone.js +2 -0
  472. package/dist/storage/git.js +10 -1
  473. package/dist/storage/parse-cache.js +1 -1
  474. package/dist/storage/repo-manager.d.ts +3 -1
  475. package/dist/types/pipeline.d.ts +7 -0
  476. package/hooks/antigravity/gitnexus-antigravity-hook.cjs +346 -0
  477. package/hooks/claude/gitnexus-hook.cjs +4 -0
  478. package/hooks/claude/hook-db-lock-probe.cjs +3 -0
  479. package/package.json +8 -9
  480. package/scripts/build-tree-sitter-dart.cjs +4 -0
  481. package/scripts/build-tree-sitter-proto.cjs +3 -4
  482. package/scripts/build-tree-sitter-swift.cjs +39 -0
  483. package/scripts/build.js +36 -4
  484. package/scripts/cross-platform-tests.ts +137 -0
  485. package/scripts/materialize-vendor-grammars.cjs +72 -0
  486. package/scripts/run-cross-platform.ts +44 -0
  487. package/scripts/run-parity.ts +128 -0
  488. package/vendor/tree-sitter-dart/package.json +1 -1
  489. package/vendor/tree-sitter-proto/package.json +1 -1
  490. package/vendor/tree-sitter-swift/package.json +1 -8
  491. package/web/assets/agent-BRX-afm3.js +634 -0
  492. package/web/assets/{architectureDiagram-UL44E2DR-DvIkEGkp.js → architectureDiagram-UL44E2DR-B1oYB8-c.js} +1 -1
  493. package/web/assets/{chunk-LCXTWHL2-CqJ0oo1x.js → chunk-LCXTWHL2-SPC6pgWI.js} +1 -1
  494. package/web/assets/{chunk-RG4AUYOV-D0M6vdq9.js → chunk-RG4AUYOV-DZXr4Yv3.js} +1 -1
  495. package/web/assets/{classDiagram-KGZ6W3CR-BB-saqC1.js → classDiagram-KGZ6W3CR-BqpOj8L9.js} +1 -1
  496. package/web/assets/{classDiagram-v2-72OJOZXJ-Bp2bAlS5.js → classDiagram-v2-72OJOZXJ-FmElywK2.js} +1 -1
  497. package/web/assets/{diagram-3NCE3AQN-BUxnDPOY.js → diagram-3NCE3AQN-BWtJXMDq.js} +1 -1
  498. package/web/assets/{diagram-GF46GFSD-BJTyqqvI.js → diagram-GF46GFSD-Hh-fChxU.js} +1 -1
  499. package/web/assets/{diagram-QXG6HAR7-DilMHamP.js → diagram-QXG6HAR7-DYeQHxGU.js} +1 -1
  500. package/web/assets/{diagram-WEQXMOUZ-8KUrarg1.js → diagram-WEQXMOUZ-DYGU4T0y.js} +1 -1
  501. package/web/assets/{erDiagram-L5TCEMPS-Doj9mSiW.js → erDiagram-L5TCEMPS-bN3wlP2A.js} +1 -1
  502. package/web/assets/{flowDiagram-H6V6AXG4-BOSR-i3p.js → flowDiagram-H6V6AXG4-YACVtF3-.js} +1 -1
  503. package/web/assets/index-BKWA-m7o.css +2 -0
  504. package/web/assets/index-BhnAdWTt.js +626 -0
  505. package/web/assets/{infoDiagram-3YFTVSEB-Ce_TvtaV.js → infoDiagram-3YFTVSEB-BWBzD28-.js} +1 -1
  506. package/web/assets/{ishikawaDiagram-BNXS4ZKH-4MXIDCSF.js → ishikawaDiagram-BNXS4ZKH-B8qYT-j9.js} +1 -1
  507. package/web/assets/{kanban-definition-75IXJCU3-yYdfm8Kk.js → kanban-definition-75IXJCU3-BeoPr5Tl.js} +1 -1
  508. package/web/assets/{mindmap-definition-2TDM6QVE-DFNEKM77.js → mindmap-definition-2TDM6QVE-CdLLN_so.js} +1 -1
  509. package/web/assets/{pieDiagram-CU6KROY3-iZAqpvhd.js → pieDiagram-CU6KROY3-DEd2a_k_.js} +1 -1
  510. package/web/assets/{requirementDiagram-JXO7QTGE-CtDijhnf.js → requirementDiagram-JXO7QTGE-QNeTo5C_.js} +1 -1
  511. package/web/assets/{sequenceDiagram-VS2MUI6T-BdjvyCHM.js → sequenceDiagram-VS2MUI6T-BHC7q7yJ.js} +1 -1
  512. package/web/assets/{stateDiagram-7D4R322I-e5odN9fG.js → stateDiagram-7D4R322I-KONnc2Px.js} +1 -1
  513. package/web/assets/{stateDiagram-v2-36443NZ5-vPsvjR2D.js → stateDiagram-v2-36443NZ5-C2QfuMlu.js} +1 -1
  514. package/web/assets/{timeline-definition-O6YCAMPW-DPAksNQp.js → timeline-definition-O6YCAMPW-D4t4NJx1.js} +1 -1
  515. package/web/assets/{vennDiagram-MWXL3ELB-Dtlfdt7J.js → vennDiagram-MWXL3ELB-6bctC9Yg.js} +1 -1
  516. package/web/assets/{wardleyDiagram-CUQ6CDDI-B23uRMUC.js → wardleyDiagram-CUQ6CDDI-BPZYNTvC.js} +1 -1
  517. package/web/assets/{xychartDiagram-N2JHSOCM-DxwHeksW.js → xychartDiagram-N2JHSOCM-lBI9O6DW.js} +1 -1
  518. package/web/index.html +2 -2
  519. package/vendor/node_modules/node-addon-api/node_addon_api.Makefile +0 -6
  520. package/vendor/node_modules/node-addon-api/node_addon_api.target.mk +0 -106
  521. package/vendor/node_modules/node-addon-api/node_addon_api_except.target.mk +0 -110
  522. package/vendor/node_modules/node-addon-api/node_addon_api_except_all.target.mk +0 -106
  523. package/vendor/node_modules/node-addon-api/node_addon_api_maybe.target.mk +0 -106
  524. package/web/assets/agent-D2kLt6Dl.js +0 -597
  525. package/web/assets/index-BleGLU8S.css +0 -2
  526. package/web/assets/index-j4-NuleT.js +0 -623
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  **Graph-powered code intelligence for AI agents.** Index any codebase into a knowledge graph, then query it via MCP or CLI.
4
4
 
5
- Works with **Cursor**, **Claude Code**, **Codex**, **Windsurf**, **Cline**, **OpenCode**, and any MCP-compatible tool.
5
+ Works with **Cursor**, **Claude Code**, **Antigravity** (Google), **Codex**, **Windsurf**, **Cline**, **OpenCode**, and any MCP-compatible tool.
6
6
 
7
7
  [![npm version](https://img.shields.io/npm/v/gitnexus.svg)](https://www.npmjs.com/package/gitnexus)
8
8
  [![License: PolyForm Noncommercial](https://img.shields.io/badge/License-PolyForm%20Noncommercial-blue.svg)](https://polyformproject.org/licenses/noncommercial/1.0.0/)
@@ -34,6 +34,7 @@ To configure MCP for your editor, run `npx gitnexus setup` once — or set it up
34
34
  |--------|-----|--------|---------------------|---------|
35
35
  | **Claude Code** | Yes | Yes | Yes (PreToolUse) | **Full** |
36
36
  | **Cursor** | Yes | Yes | Yes (postToolUse, [manual install](../gitnexus-cursor-integration/README.md#hook-install)) | **Full** |
37
+ | **Antigravity** (Google) | Yes | Yes | Yes (AfterTool, [Gemini CLI hooks schema](https://geminicli.com/docs/hooks/reference/)) | **Full** |
37
38
  | **Codex** | Yes | Yes | — | MCP + Skills |
38
39
  | **Windsurf** | Yes | — | — | MCP |
39
40
  | **OpenCode** | Yes | Yes | — | MCP + Skills |
@@ -151,12 +152,14 @@ Your AI agent gets these tools automatically:
151
152
  ```bash
152
153
  gitnexus setup # Configure MCP for your editors (one-time)
153
154
  gitnexus analyze [path] # Index a repository (or update stale index)
154
- gitnexus analyze --force # Force full re-index
155
+ gitnexus analyze --repair-fts # Fast path: rebuild/verify only FTS indexes on existing index data
156
+ gitnexus analyze --force # Full rebuild: re-parse + graph rebuild + FTS rebuild
155
157
  gitnexus analyze --embeddings # Enable embedding generation (slower, better search)
156
158
  gitnexus analyze --skip-agents-md # Preserve custom AGENTS.md/CLAUDE.md gitnexus section edits
157
159
  gitnexus analyze --verbose # Log skipped files when parsers are unavailable
158
160
  gitnexus analyze --max-file-size 1024 # Skip files larger than N KB (default: 512, cap: 32768)
159
161
  gitnexus analyze --worker-timeout 60 # Increase worker idle timeout for slow parses
162
+ gitnexus analyze --wal-checkpoint-threshold 67108864 # 64 MiB. Control LadybugDB WAL auto-checkpoint threshold (default: 67108864 = 64 MiB; -1 keeps Ladybug stock ~16 MiB)
160
163
  gitnexus mcp # Start MCP server (stdio) — serves all indexed repos
161
164
  gitnexus serve # Start local HTTP server (multi-repo) for web UI
162
165
  gitnexus index # Register an existing .gitnexus/ folder into the global registry
@@ -167,6 +170,13 @@ gitnexus clean --all --force # Delete all indexes
167
170
  gitnexus wiki [path] # Generate LLM-powered docs from knowledge graph
168
171
  gitnexus wiki --model <model> # Wiki with custom LLM model (default: gpt-4o-mini)
169
172
 
173
+ # Direct graph queries — the same tools the MCP server exposes, no MCP daemon needed
174
+ gitnexus query "<concept>" # Process-grouped hybrid search
175
+ gitnexus context <symbol> [--uid <uid> | --file <path>] # 360° symbol view; flags disambiguate a shared name
176
+ gitnexus impact <symbol> [--uid <uid> | --file <path> | --kind <kind>] # Blast radius; flags disambiguate a shared name
177
+ gitnexus detect-changes # Map the working-tree diff to affected symbols and execution flows
178
+ gitnexus cypher "<query>" # Run a raw Cypher query against the knowledge graph
179
+
170
180
  # Repository groups (multi-repo / monorepo service tracking)
171
181
  gitnexus group create <name> # Create a repository group
172
182
  gitnexus group add <group> <groupPath> <registryName> # Add a repo to a group. <groupPath> is a hierarchy path (e.g. hr/hiring/backend); <registryName> is the repo's name from the registry (see `gitnexus list`)
@@ -306,6 +316,7 @@ Configure the behavior with two environment variables:
306
316
  |----------|--------|---------|--------|
307
317
  | `GITNEXUS_LBUG_EXTENSION_INSTALL` | `auto`, `load-only`, `never` | `auto` | `auto` runs one bounded INSTALL if LOAD fails. `load-only` only uses already-installed extensions (recommended for offline / firewalled environments). `never` skips optional extensions entirely. |
308
318
  | `GITNEXUS_LBUG_EXTENSION_INSTALL_TIMEOUT_MS` | positive integer | `15000` | Wall-clock budget for the out-of-process `INSTALL` child before it is killed. |
319
+ | `GITNEXUS_WAL_CHECKPOINT_THRESHOLD` | integer `>= -1` | `67108864` (64 MiB) | LadybugDB WAL auto-checkpoint threshold during analyze (bytes). Auto-checkpoint remains enabled; `-1` keeps Ladybug's stock ~16 MiB. Larger thresholds reduce checkpoint frequency but increase the WAL size at rotation time — choose a smaller value on disk-constrained environments. |
309
320
 
310
321
  ```bash
311
322
  # Offline/airgapped: never reach the network for extensions
@@ -358,6 +369,16 @@ npx gitnexus analyze
358
369
 
359
370
  For repositories with very large source files, `GITNEXUS_WORKER_SUB_BATCH_MAX_BYTES` controls the worker job byte budget. The default is **8388608 bytes (8 MB)**.
360
371
 
372
+ ### Worker pool resilience tuning
373
+
374
+ Three env vars expose the pool's resilience layers (respawn budget, cumulative-timeout cap, circuit breaker). Defaults are tuned for typical repos; bump them when an analyze legitimately needs more retries, or lower them to fail-fast on a known-bad shape.
375
+
376
+ | Variable | Default | Effect |
377
+ | ------------------------------------------------- | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
378
+ | `GITNEXUS_WORKER_MAX_RESPAWNS_PER_SLOT` | `3` | Max replacement spawns per slot before the slot is dropped from the active rotation. |
379
+ | `GITNEXUS_WORKER_MAX_CUMULATIVE_TIMEOUT_MS` | `5 × subBatchTimeoutMs` | Total retry wall-time budget per job before quarantining. Bounds exponentially-growing retry waits. |
380
+ | `GITNEXUS_WORKER_CONSECUTIVE_FAILURE_THRESHOLD` | `max(3, poolSize)` | Per-slot consecutive deaths before the pool's circuit breaker trips. After tripping, dispatches require a fresh pool. |
381
+
361
382
  ## Privacy
362
383
 
363
384
  - All processing happens locally on your machine
@@ -2,7 +2,7 @@ export type { NodeLabel, NodeProperties, RelationshipType, GraphNode, GraphRelat
2
2
  export { NODE_TABLES, REL_TABLE_NAME, REL_TYPES, EMBEDDING_TABLE_NAME, } from './lbug/schema-constants.js';
3
3
  export type { NodeTableName, RelType } from './lbug/schema-constants.js';
4
4
  export { SupportedLanguages } from './languages.js';
5
- export { getLanguageFromFilename, getSyntaxLanguageFromFilename } from './language-detection.js';
5
+ export { getLanguageFromFilename, getSyntaxLanguageFromFilename, isBladeTemplateFilename, } from './language-detection.js';
6
6
  export type { MroStrategy } from './mro-strategy.js';
7
7
  export type { PipelinePhase, PipelineProgress } from './pipeline.js';
8
8
  export type { ParameterTypeClass, SymbolDefinition } from './scope-resolution/symbol-definition.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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"}
@@ -2,7 +2,7 @@
2
2
  export { NODE_TABLES, REL_TABLE_NAME, REL_TYPES, EMBEDDING_TABLE_NAME, } from './lbug/schema-constants.js';
3
3
  // Language support
4
4
  export { SupportedLanguages } from './languages.js';
5
- export { getLanguageFromFilename, getSyntaxLanguageFromFilename } from './language-detection.js';
5
+ export { getLanguageFromFilename, getSyntaxLanguageFromFilename, isBladeTemplateFilename, } from './language-detection.js';
6
6
  // Evidence + tie-break constants (RFC Appendix A, Appendix B)
7
7
  export { EvidenceWeights, typeBindingWeightAtDepth } from './scope-resolution/evidence-weights.js';
8
8
  export { ORIGIN_PRIORITY } from './scope-resolution/origin-priority.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,mBAAmB;AACnB,OAAO,EACL,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AAGpC,mBAAmB;AACnB,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AAiCjG,8DAA8D;AAC9D,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,yDAAyD;AACzD,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,+CAA+C,CAAC;AAGvD,sEAAsE;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAGrF,gEAAgE;AAChE,yEAAyE;AACzE,2DAA2D;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAOxE,oFAAoF;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAMvF,uEAAuE;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAUpE,sEAAsE;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AAKvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAKrF,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAC;AAEpF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAEpG,OAAO,EACL,gCAAgC,EAChC,kBAAkB,GACnB,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAUlG,2EAA2E;AAC3E,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAErF,OAAO,EACL,cAAc,EACd,cAAc,EACd,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAG1E,8EAA8E;AAC9E,wEAAwE;AACxE,wEAAwE;AACxE,8DAA8D;AAC9D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAEjG,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,kBAAkB,EAClB,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAG3C,mDAAmD;AACnD,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,GACf,MAAM,sCAAsC,CAAC;AAG9C,gEAAgE;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAMpE,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,mBAAmB;AACnB,OAAO,EACL,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AAGpC,mBAAmB;AACnB,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAiCjC,8DAA8D;AAC9D,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,yDAAyD;AACzD,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,+CAA+C,CAAC;AAGvD,sEAAsE;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAGrF,gEAAgE;AAChE,yEAAyE;AACzE,2DAA2D;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAOxE,oFAAoF;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAMvF,uEAAuE;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAUpE,sEAAsE;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AAKvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAKrF,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAC;AAEpF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAEpG,OAAO,EACL,gCAAgC,EAChC,kBAAkB,GACnB,MAAM,6CAA6C,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAUlG,2EAA2E;AAC3E,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAErF,OAAO,EACL,cAAc,EACd,cAAc,EACd,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAG1E,8EAA8E;AAC9E,wEAAwE;AACxE,wEAAwE;AACxE,8DAA8D;AAC9D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAEjG,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,kBAAkB,EAClB,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAG3C,mDAAmD;AACnD,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,GACf,MAAM,sCAAsC,CAAC;AAG9C,gEAAgE;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAMpE,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC"}
@@ -9,6 +9,12 @@
9
9
  * 3. TypeScript will error if you miss either step (exhaustive Record)
10
10
  */
11
11
  import { SupportedLanguages } from './languages.js';
12
+ /**
13
+ * Laravel Blade templates are source templates whose filename convention ends
14
+ * in `.blade.php`. They may contain PHP snippets, but the full file is not a
15
+ * pure PHP translation unit and must not enter the generic PHP provider path.
16
+ */
17
+ export declare const isBladeTemplateFilename: (filePath: string) => boolean;
12
18
  /**
13
19
  * Map file extension to SupportedLanguage enum.
14
20
  * Returns null if the file extension is not recognized.
@@ -1 +1 @@
1
- {"version":3,"file":"language-detection.d.ts","sourceRoot":"","sources":["../src/language-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AA+CpD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAAI,UAAU,MAAM,KAAG,kBAAkB,GAAG,IAgB/E,CAAC;AAwDF;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,GAAI,UAAU,MAAM,KAAG,MAQhE,CAAC"}
1
+ {"version":3,"file":"language-detection.d.ts","sourceRoot":"","sources":["../src/language-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AA+CpD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAI,UAAU,MAAM,KAAG,OACQ,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAAI,UAAU,MAAM,KAAG,kBAAkB,GAAG,IAkB/E,CAAC;AAwDF;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,GAAI,UAAU,MAAM,KAAG,MAUhE,CAAC"}
@@ -48,11 +48,19 @@ for (const [lang, exts] of Object.entries(EXTENSION_MAP)) {
48
48
  extToLang.set(ext, lang);
49
49
  }
50
50
  }
51
+ /**
52
+ * Laravel Blade templates are source templates whose filename convention ends
53
+ * in `.blade.php`. They may contain PHP snippets, but the full file is not a
54
+ * pure PHP translation unit and must not enter the generic PHP provider path.
55
+ */
56
+ export const isBladeTemplateFilename = (filePath) => filePath.replace(/\\/g, '/').toLowerCase().endsWith('.blade.php');
51
57
  /**
52
58
  * Map file extension to SupportedLanguage enum.
53
59
  * Returns null if the file extension is not recognized.
54
60
  */
55
61
  export const getLanguageFromFilename = (filename) => {
62
+ if (isBladeTemplateFilename(filename))
63
+ return null;
56
64
  // Fast path: check the extension map
57
65
  const lastDot = filename.lastIndexOf('.');
58
66
  if (lastDot >= 0) {
@@ -125,6 +133,8 @@ const AUXILIARY_BASENAME_MAP = {
125
133
  * Returns 'text' for unrecognised files.
126
134
  */
127
135
  export const getSyntaxLanguageFromFilename = (filePath) => {
136
+ if (isBladeTemplateFilename(filePath))
137
+ return 'markup';
128
138
  const lang = getLanguageFromFilename(filePath);
129
139
  if (lang)
130
140
  return SYNTAX_MAP[lang];
@@ -1 +1 @@
1
- {"version":3,"file":"language-detection.js","sourceRoot":"","sources":["../src/language-detection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"language-detection.js","sourceRoot":"","sources":["../src/language-detection.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Pipeline progress types — shared between CLI and web.
3
3
  */
4
- export type PipelinePhase = 'idle' | 'extracting' | 'structure' | 'parsing' | 'imports' | 'calls' | 'heritage' | 'communities' | 'processes' | 'enriching' | 'complete' | 'error';
4
+ export type PipelinePhase = 'idle' | 'extracting' | 'structure' | 'parsing' | 'imports' | 'calls' | 'heritage' | 'scopeResolution' | 'communities' | 'processes' | 'enriching' | 'complete' | 'error';
5
5
  export interface PipelineProgress {
6
6
  phase: PipelinePhase;
7
7
  percent: number;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,YAAY,GACZ,WAAW,GACX,SAAS,GACT,SAAS,GACT,OAAO,GACP,UAAU,GACV,aAAa,GACb,WAAW,GACX,WAAW,GACX,UAAU,GACV,OAAO,CAAC;AAEZ,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACN,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH"}
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,YAAY,GACZ,WAAW,GACX,SAAS,GACT,SAAS,GACT,OAAO,GACP,UAAU,GACV,iBAAiB,GACjB,aAAa,GACb,WAAW,GACX,WAAW,GACX,UAAU,GACV,OAAO,CAAC;AAEZ,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACN,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH"}
@@ -20,6 +20,7 @@
20
20
  * resolution step that reads this record and produces a `Reference`
21
21
  * (defined in `./types.ts`).
22
22
  */
23
+ import type { ParameterTypeClass } from './symbol-definition.js';
23
24
  import type { Range, ScopeId } from './types.js';
24
25
  /**
25
26
  * What kind of usage this reference represents — the graph-edge kind
@@ -71,5 +72,12 @@ export interface ReferenceSite {
71
72
  * (C#: `42` → `'int'`, `"alice"` → `'string'`).
72
73
  */
73
74
  readonly argumentTypes?: readonly string[];
75
+ /**
76
+ * Optional per-argument type-shape sidecar for languages that need
77
+ * cv/ref/pointer distinctions during constraint filtering. This is
78
+ * intentionally separate from `argumentTypes`, which stays normalized
79
+ * for existing overload narrowing and conversion-rank logic.
80
+ */
81
+ readonly argumentTypeClasses?: readonly ParameterTypeClass[];
74
82
  }
75
83
  //# sourceMappingURL=reference-site.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reference-site.d.ts","sourceRoot":"","sources":["../../src/scope-resolution/reference-site.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,MAAM,GACN,OAAO,GACP,gBAAgB,GAChB,UAAU,GACV,YAAY,CAAC;AAEjB;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,CAAC;AAEnE,MAAM,WAAW,aAAa;IAC5B,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,kCAAkC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C"}
1
+ {"version":3,"file":"reference-site.d.ts","sourceRoot":"","sources":["../../src/scope-resolution/reference-site.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,MAAM,GACN,OAAO,GACP,gBAAgB,GAChB,UAAU,GACV,YAAY,CAAC;AAEjB;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,CAAC;AAEnE,MAAM,WAAW,aAAa;IAC5B,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,kCAAkC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC9D"}
@@ -12,7 +12,7 @@
12
12
  * reaches into the CLI package.
13
13
  */
14
14
  import type { NodeLabel } from '../../graph/types.js';
15
- import type { SymbolDefinition } from '../symbol-definition.js';
15
+ import type { ParameterTypeClass, SymbolDefinition } from '../symbol-definition.js';
16
16
  import type { Callsite, DefId } from '../types.js';
17
17
  import type { DefIndex } from '../def-index.js';
18
18
  import type { QualifiedNameIndex } from '../qualified-name-index.js';
@@ -54,6 +54,13 @@ export interface ConstraintContext {
54
54
  * `narrowOverloadCandidates`' `argTypes` parameter.
55
55
  */
56
56
  readonly argumentTypes?: readonly string[];
57
+ /**
58
+ * Optional shape-preserving sidecar aligned with `argumentTypes`.
59
+ * Unknown or unsupported slots should be omitted by producers or
60
+ * marked with `indirection: 'unknown'`; consumers must preserve the
61
+ * monotonic fallback and return 'unknown' instead of guessing.
62
+ */
63
+ readonly argumentTypeClasses?: readonly ParameterTypeClass[];
57
64
  }
58
65
  /**
59
66
  * Per-owner membership view plugged into `LookupParams.ownerScopedContributor`.
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/scope-resolution/registries/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAIvE,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,kBAAkB,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,gBAAgB,GAAG,YAAY,CAAC;IAE7E;;;;;;;;;;OAUG;IACH,uBAAuB,CAAC,CACtB,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,iBAAiB,GACrB,YAAY,CAAC;CACjB;AAED,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,cAAc,CAAC;AAErE;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C;AAID;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,sBAAsB;IACrC,sEAAsE;IACtE,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC;IAC3B;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,gBAAgB,EAAE,CAAC;CACnD;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,yBAAyB,GAAG,CACtC,UAAU,EAAE,KAAK,EACjB,UAAU,EAAE,MAAM,KACf,SAAS,gBAAgB,EAAE,CAAC;AAIjC,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,kBAAkB,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;IACxC,QAAQ,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;IACxD;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,mBAAmB,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;CACvC;AAOD,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAc1C,CAAC;AAEH,eAAO,MAAM,YAAY,EAAE,SAAS,SAAS,EAI3C,CAAC;AAEH,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAK1C,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/scope-resolution/registries/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAIvE,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,kBAAkB,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,gBAAgB,GAAG,YAAY,CAAC;IAE7E;;;;;;;;;;OAUG;IACH,uBAAuB,CAAC,CACtB,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,iBAAiB,GACrB,YAAY,CAAC;CACjB;AAED,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,cAAc,CAAC;AAErE;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC9D;AAID;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,sBAAsB;IACrC,sEAAsE;IACtE,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC;IAC3B;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,gBAAgB,EAAE,CAAC;CACnD;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,yBAAyB,GAAG,CACtC,UAAU,EAAE,KAAK,EACjB,UAAU,EAAE,MAAM,KACf,SAAS,gBAAgB,EAAE,CAAC;AAIjC,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,kBAAkB,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;IACxC,QAAQ,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;IACxD;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,mBAAmB,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;CACvC;AAOD,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAc1C,CAAC;AAEH,eAAO,MAAM,YAAY,EAAE,SAAS,SAAS,EAI3C,CAAC;AAEH,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAK1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/scope-resolution/registries/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAgHH,8EAA8E;AAC9E,EAAE;AACF,0EAA0E;AAC1E,6DAA6D;AAE7D,MAAM,CAAC,MAAM,WAAW,GAAyB,MAAM,CAAC,MAAM,CAAC;IAC7D,OAAO;IACP,WAAW;IACX,MAAM;IACN,QAAQ;IACR,OAAO;IACP,OAAO;IACP,WAAW;IACX,SAAS;IACT,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,UAAU;IACV,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAyB,MAAM,CAAC,MAAM,CAAC;IAC9D,QAAQ;IACR,UAAU;IACV,aAAa;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAyB,MAAM,CAAC,MAAM,CAAC;IAC7D,UAAU;IACV,UAAU;IACV,OAAO;IACP,QAAQ;CACT,CAAC,CAAC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/scope-resolution/registries/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAuHH,8EAA8E;AAC9E,EAAE;AACF,0EAA0E;AAC1E,6DAA6D;AAE7D,MAAM,CAAC,MAAM,WAAW,GAAyB,MAAM,CAAC,MAAM,CAAC;IAC7D,OAAO;IACP,WAAW;IACX,MAAM;IACN,QAAQ;IACR,OAAO;IACP,OAAO;IACP,WAAW;IACX,SAAS;IACT,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,UAAU;IACV,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAyB,MAAM,CAAC,MAAM,CAAC;IAC9D,QAAQ;IACR,UAAU;IACV,aAAa;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAyB,MAAM,CAAC,MAAM,CAAC;IAC7D,UAAU;IACV,UAAU;IACV,OAAO;IACP,QAAQ;CACT,CAAC,CAAC"}
@@ -50,6 +50,10 @@ export interface SymbolDefinition {
50
50
  * `ScopeResolver.constraintCompatibility` hook during overload narrowing.
51
51
  * Absent for symbols that have no constraints (the common case). */
52
52
  templateConstraints?: unknown;
53
+ /** True when the producing language marked this callable as explicit.
54
+ * Currently used by C++ overload ranking to exclude explicit constructors
55
+ * from implicit user-defined conversion candidates. */
56
+ isExplicit?: boolean;
53
57
  /** Links Method/Constructor/Property to owning Class/Struct/Trait nodeId */
54
58
  ownerId?: string;
55
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"symbol-definition.d.ts","sourceRoot":"","sources":["../../src/scope-resolution/symbol-definition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,kBAAkB;IACjC,wFAAwF;IACxF,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,gBAAgB,GAAG,SAAS,CAAC;IACjE,4CAA4C;IAC5C,WAAW,EAAE,OAAO,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3E,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB;;+FAE2F;IAC3F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;iHAC6G;IAC7G,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;uFACmF;IACnF,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B;4FACwF;IACxF,oBAAoB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC5C,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gGAAgG;IAChG,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B;;;;;yEAKqE;IACrE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"symbol-definition.d.ts","sourceRoot":"","sources":["../../src/scope-resolution/symbol-definition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,kBAAkB;IACjC,wFAAwF;IACxF,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,gBAAgB,GAAG,SAAS,CAAC;IACjE,4CAA4C;IAC5C,WAAW,EAAE,OAAO,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3E,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB;;+FAE2F;IAC3F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;iHAC6G;IAC7G,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;uFACmF;IACnF,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B;4FACwF;IACxF,oBAAoB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC5C,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gGAAgG;IAChG,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B;;;;;yEAKqE;IACrE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;4DAEwD;IACxD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -239,8 +239,11 @@ export interface ScopeLookup {
239
239
  }
240
240
  /** Call-site description passed to `arityCompatibility`. */
241
241
  export interface Callsite {
242
- /** Number of arguments at the call site. */
243
- readonly arity: number;
242
+ /** Number of arguments at the call site, if available. */
243
+ readonly arity?: number;
244
+ /** Inferred argument types at the call site, one per argument.
245
+ * An empty string entry means the type was not inferred. */
246
+ readonly argumentTypes?: readonly string[];
244
247
  }
245
248
  /**
246
249
  * A cross-file import edge attached to a module/namespace scope.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/scope-resolution/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/scope-resolution/types.ts"],"names":[],"mappings":"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"}
@@ -156,7 +156,7 @@ async function fileExists(filePath) {
156
156
  * - If file exists without GitNexus section: append
157
157
  * - If file exists with GitNexus section: replace that section
158
158
  */
159
- async function upsertGitNexusSection(filePath, content, projectName, stats) {
159
+ async function upsertGitNexusSection(filePath, content, projectName, stats, noStats) {
160
160
  const exists = await fileExists(filePath);
161
161
  if (!exists) {
162
162
  await fs.writeFile(filePath, content, 'utf-8');
@@ -189,13 +189,22 @@ async function upsertGitNexusSection(filePath, content, projectName, stats) {
189
189
  // like `({target: "symbolName", direction: "upstream"})`
190
190
  // when noStats is set
191
191
  // Passing projectName + stats explicitly makes the contract obvious.
192
- // noStats controls template generation, not keep-section stat updates — the user opted into a stats line by keeping it.
192
+ // --no-stats wins in the keep path too (#1706): a lean block committed
193
+ // to git would otherwise churn the volatile counts on every analyze,
194
+ // producing no-value merge conflicts between branches. Under noStats we
195
+ // drop the parenthetical but still refresh the project name so renames
196
+ // propagate.
193
197
  const newStatsInner = `${stats.nodes || 0} symbols, ${stats.edges || 0} relationships, ${stats.processes || 0} execution flows`;
194
- const statsLine = `Indexed as **${projectName}** (${newStatsInner})`;
198
+ const statsLine = noStats
199
+ ? `Indexed as **${projectName}**`
200
+ : `Indexed as **${projectName}** (${newStatsInner})`;
195
201
  // Match either canonical phrasing at line start (`^` with `m` flag) so we
196
202
  // cannot replace prose embedded mid-paragraph. Deliberately no `$`: text
197
- // after the closing `)` on the same line (e.g. ". MCP tools.") stays intact.
198
- const statsPattern = /^(?:Indexed as|indexed by GitNexus as) \*\*[^*]+\*\* \([^)]+\)/m;
203
+ // after the line on the same line (e.g. ". MCP tools.") stays intact.
204
+ // The parenthetical is optional so a count-free line left by a prior
205
+ // --no-stats run still matches — letting the name refresh, and letting
206
+ // counts return if --no-stats is later dropped.
207
+ const statsPattern = /^(?:Indexed as|indexed by GitNexus as) \*\*[^*]+\*\*(?: \([^)]+\))?/m;
199
208
  if (statsPattern.test(existingSection)) {
200
209
  const updatedSection = existingSection.replace(statsPattern, statsLine);
201
210
  const before = existingContent.substring(0, startIdx);
@@ -300,11 +309,11 @@ export async function generateAIContextFiles(repoPath, _storagePath, projectName
300
309
  if (!options?.skipAgentsMd) {
301
310
  // Create AGENTS.md (standard for Cursor, Windsurf, OpenCode, Cline, etc.)
302
311
  const agentsPath = path.join(repoPath, 'AGENTS.md');
303
- const agentsResult = await upsertGitNexusSection(agentsPath, content, projectName, stats);
312
+ const agentsResult = await upsertGitNexusSection(agentsPath, content, projectName, stats, options?.noStats);
304
313
  createdFiles.push(`AGENTS.md (${agentsResult})`);
305
314
  // Create CLAUDE.md (for Claude Code)
306
315
  const claudePath = path.join(repoPath, 'CLAUDE.md');
307
- const claudeResult = await upsertGitNexusSection(claudePath, content, projectName, stats);
316
+ const claudeResult = await upsertGitNexusSection(claudePath, content, projectName, stats, options?.noStats);
308
317
  createdFiles.push(`CLAUDE.md (${claudeResult})`);
309
318
  }
310
319
  else {
@@ -9,6 +9,7 @@
9
9
  */
10
10
  export interface AnalyzeOptions {
11
11
  force?: boolean;
12
+ repairFts?: boolean;
12
13
  /**
13
14
  * Embedding generation toggle. Commander parses `--embeddings [limit]` as:
14
15
  * - `undefined` when the flag is omitted
@@ -68,6 +69,10 @@ export interface AnalyzeOptions {
68
69
  maxFileSize?: string;
69
70
  /** Override worker sub-batch idle timeout in seconds. */
70
71
  workerTimeout?: string;
72
+ /** Control LadybugDB WAL auto-checkpoint threshold during analyze. */
73
+ walCheckpointThreshold?: string;
74
+ /** Parse worker pool size; 0 disables workers (sequential fallback). */
75
+ workers?: string;
71
76
  embeddingThreads?: string;
72
77
  embeddingBatchSize?: string;
73
78
  embeddingSubBatchSize?: string;