@bharanidev/bhgraph-darwin-arm64 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/bhgraph +19 -0
- package/lib/dist/bin/bhgraph.d.ts +26 -0
- package/lib/dist/bin/bhgraph.d.ts.map +1 -0
- package/lib/dist/bin/bhgraph.js +2207 -0
- package/lib/dist/bin/bhgraph.js.map +1 -0
- package/lib/dist/bin/command-supervision.d.ts +12 -0
- package/lib/dist/bin/command-supervision.d.ts.map +1 -0
- package/lib/dist/bin/command-supervision.js +89 -0
- package/lib/dist/bin/command-supervision.js.map +1 -0
- package/lib/dist/bin/fatal-handler.d.ts +20 -0
- package/lib/dist/bin/fatal-handler.d.ts.map +1 -0
- package/lib/dist/bin/fatal-handler.js +118 -0
- package/lib/dist/bin/fatal-handler.js.map +1 -0
- package/lib/dist/bin/node-version-check.d.ts +37 -0
- package/lib/dist/bin/node-version-check.d.ts.map +1 -0
- package/lib/dist/bin/node-version-check.js +79 -0
- package/lib/dist/bin/node-version-check.js.map +1 -0
- package/lib/dist/bin/uninstall.d.ts +14 -0
- package/lib/dist/bin/uninstall.d.ts.map +1 -0
- package/lib/dist/bin/uninstall.js +36 -0
- package/lib/dist/bin/uninstall.js.map +1 -0
- package/lib/dist/context/formatter.d.ts +30 -0
- package/lib/dist/context/formatter.d.ts.map +1 -0
- package/lib/dist/context/formatter.js +263 -0
- package/lib/dist/context/formatter.js.map +1 -0
- package/lib/dist/context/index.d.ts +119 -0
- package/lib/dist/context/index.d.ts.map +1 -0
- package/lib/dist/context/index.js +1296 -0
- package/lib/dist/context/index.js.map +1 -0
- package/lib/dist/context/markers.d.ts +19 -0
- package/lib/dist/context/markers.d.ts.map +1 -0
- package/lib/dist/context/markers.js +22 -0
- package/lib/dist/context/markers.js.map +1 -0
- package/lib/dist/db/index.d.ts +142 -0
- package/lib/dist/db/index.d.ts.map +1 -0
- package/lib/dist/db/index.js +335 -0
- package/lib/dist/db/index.js.map +1 -0
- package/lib/dist/db/migrations.d.ts +44 -0
- package/lib/dist/db/migrations.d.ts.map +1 -0
- package/lib/dist/db/migrations.js +182 -0
- package/lib/dist/db/migrations.js.map +1 -0
- package/lib/dist/db/queries.d.ts +452 -0
- package/lib/dist/db/queries.d.ts.map +1 -0
- package/lib/dist/db/queries.js +1740 -0
- package/lib/dist/db/queries.js.map +1 -0
- package/lib/dist/db/schema.sql +182 -0
- package/lib/dist/db/sqlite-adapter.d.ts +53 -0
- package/lib/dist/db/sqlite-adapter.d.ts.map +1 -0
- package/lib/dist/db/sqlite-adapter.js +117 -0
- package/lib/dist/db/sqlite-adapter.js.map +1 -0
- package/lib/dist/directory.d.ts +183 -0
- package/lib/dist/directory.d.ts.map +1 -0
- package/lib/dist/directory.js +797 -0
- package/lib/dist/directory.js.map +1 -0
- package/lib/dist/errors.d.ts +136 -0
- package/lib/dist/errors.d.ts.map +1 -0
- package/lib/dist/errors.js +219 -0
- package/lib/dist/errors.js.map +1 -0
- package/lib/dist/extraction/astro-extractor.d.ts +79 -0
- package/lib/dist/extraction/astro-extractor.d.ts.map +1 -0
- package/lib/dist/extraction/astro-extractor.js +320 -0
- package/lib/dist/extraction/astro-extractor.js.map +1 -0
- package/lib/dist/extraction/cfml-extractor.d.ts +107 -0
- package/lib/dist/extraction/cfml-extractor.d.ts.map +1 -0
- package/lib/dist/extraction/cfml-extractor.js +494 -0
- package/lib/dist/extraction/cfml-extractor.js.map +1 -0
- package/lib/dist/extraction/dfm-extractor.d.ts +31 -0
- package/lib/dist/extraction/dfm-extractor.d.ts.map +1 -0
- package/lib/dist/extraction/dfm-extractor.js +151 -0
- package/lib/dist/extraction/dfm-extractor.js.map +1 -0
- package/lib/dist/extraction/extraction-version.d.ts +25 -0
- package/lib/dist/extraction/extraction-version.d.ts.map +1 -0
- package/lib/dist/extraction/extraction-version.js +28 -0
- package/lib/dist/extraction/extraction-version.js.map +1 -0
- package/lib/dist/extraction/function-ref.d.ts +118 -0
- package/lib/dist/extraction/function-ref.d.ts.map +1 -0
- package/lib/dist/extraction/function-ref.js +727 -0
- package/lib/dist/extraction/function-ref.js.map +1 -0
- package/lib/dist/extraction/generated-detection.d.ts +30 -0
- package/lib/dist/extraction/generated-detection.d.ts.map +1 -0
- package/lib/dist/extraction/generated-detection.js +83 -0
- package/lib/dist/extraction/generated-detection.js.map +1 -0
- package/lib/dist/extraction/grammars.d.ts +123 -0
- package/lib/dist/extraction/grammars.d.ts.map +1 -0
- package/lib/dist/extraction/grammars.js +589 -0
- package/lib/dist/extraction/grammars.js.map +1 -0
- package/lib/dist/extraction/index.d.ts +232 -0
- package/lib/dist/extraction/index.d.ts.map +1 -0
- package/lib/dist/extraction/index.js +2269 -0
- package/lib/dist/extraction/index.js.map +1 -0
- package/lib/dist/extraction/languages/arkts.d.ts +3 -0
- package/lib/dist/extraction/languages/arkts.d.ts.map +1 -0
- package/lib/dist/extraction/languages/arkts.js +127 -0
- package/lib/dist/extraction/languages/arkts.js.map +1 -0
- package/lib/dist/extraction/languages/c-cpp.d.ts +110 -0
- package/lib/dist/extraction/languages/c-cpp.d.ts.map +1 -0
- package/lib/dist/extraction/languages/c-cpp.js +837 -0
- package/lib/dist/extraction/languages/c-cpp.js.map +1 -0
- package/lib/dist/extraction/languages/cfquery.d.ts +12 -0
- package/lib/dist/extraction/languages/cfquery.d.ts.map +1 -0
- package/lib/dist/extraction/languages/cfquery.js +28 -0
- package/lib/dist/extraction/languages/cfquery.js.map +1 -0
- package/lib/dist/extraction/languages/cfscript.d.ts +3 -0
- package/lib/dist/extraction/languages/cfscript.d.ts.map +1 -0
- package/lib/dist/extraction/languages/cfscript.js +73 -0
- package/lib/dist/extraction/languages/cfscript.js.map +1 -0
- package/lib/dist/extraction/languages/cobol.d.ts +33 -0
- package/lib/dist/extraction/languages/cobol.d.ts.map +1 -0
- package/lib/dist/extraction/languages/cobol.js +499 -0
- package/lib/dist/extraction/languages/cobol.js.map +1 -0
- package/lib/dist/extraction/languages/csharp.d.ts +25 -0
- package/lib/dist/extraction/languages/csharp.d.ts.map +1 -0
- package/lib/dist/extraction/languages/csharp.js +175 -0
- package/lib/dist/extraction/languages/csharp.js.map +1 -0
- package/lib/dist/extraction/languages/dart.d.ts +3 -0
- package/lib/dist/extraction/languages/dart.d.ts.map +1 -0
- package/lib/dist/extraction/languages/dart.js +374 -0
- package/lib/dist/extraction/languages/dart.js.map +1 -0
- package/lib/dist/extraction/languages/erlang.d.ts +3 -0
- package/lib/dist/extraction/languages/erlang.d.ts.map +1 -0
- package/lib/dist/extraction/languages/erlang.js +350 -0
- package/lib/dist/extraction/languages/erlang.js.map +1 -0
- package/lib/dist/extraction/languages/go.d.ts +3 -0
- package/lib/dist/extraction/languages/go.d.ts.map +1 -0
- package/lib/dist/extraction/languages/go.js +111 -0
- package/lib/dist/extraction/languages/go.js.map +1 -0
- package/lib/dist/extraction/languages/index.d.ts +10 -0
- package/lib/dist/extraction/languages/index.d.ts.map +1 -0
- package/lib/dist/extraction/languages/index.js +71 -0
- package/lib/dist/extraction/languages/index.js.map +1 -0
- package/lib/dist/extraction/languages/java.d.ts +3 -0
- package/lib/dist/extraction/languages/java.d.ts.map +1 -0
- package/lib/dist/extraction/languages/java.js +315 -0
- package/lib/dist/extraction/languages/java.js.map +1 -0
- package/lib/dist/extraction/languages/javascript.d.ts +3 -0
- package/lib/dist/extraction/languages/javascript.d.ts.map +1 -0
- package/lib/dist/extraction/languages/javascript.js +106 -0
- package/lib/dist/extraction/languages/javascript.js.map +1 -0
- package/lib/dist/extraction/languages/kotlin.d.ts +3 -0
- package/lib/dist/extraction/languages/kotlin.d.ts.map +1 -0
- package/lib/dist/extraction/languages/kotlin.js +379 -0
- package/lib/dist/extraction/languages/kotlin.js.map +1 -0
- package/lib/dist/extraction/languages/lua.d.ts +3 -0
- package/lib/dist/extraction/languages/lua.d.ts.map +1 -0
- package/lib/dist/extraction/languages/lua.js +150 -0
- package/lib/dist/extraction/languages/lua.js.map +1 -0
- package/lib/dist/extraction/languages/luau.d.ts +3 -0
- package/lib/dist/extraction/languages/luau.d.ts.map +1 -0
- package/lib/dist/extraction/languages/luau.js +37 -0
- package/lib/dist/extraction/languages/luau.js.map +1 -0
- package/lib/dist/extraction/languages/nix.d.ts +3 -0
- package/lib/dist/extraction/languages/nix.d.ts.map +1 -0
- package/lib/dist/extraction/languages/nix.js +294 -0
- package/lib/dist/extraction/languages/nix.js.map +1 -0
- package/lib/dist/extraction/languages/objc.d.ts +3 -0
- package/lib/dist/extraction/languages/objc.d.ts.map +1 -0
- package/lib/dist/extraction/languages/objc.js +175 -0
- package/lib/dist/extraction/languages/objc.js.map +1 -0
- package/lib/dist/extraction/languages/pascal.d.ts +3 -0
- package/lib/dist/extraction/languages/pascal.d.ts.map +1 -0
- package/lib/dist/extraction/languages/pascal.js +77 -0
- package/lib/dist/extraction/languages/pascal.js.map +1 -0
- package/lib/dist/extraction/languages/php.d.ts +3 -0
- package/lib/dist/extraction/languages/php.d.ts.map +1 -0
- package/lib/dist/extraction/languages/php.js +196 -0
- package/lib/dist/extraction/languages/php.js.map +1 -0
- package/lib/dist/extraction/languages/python.d.ts +3 -0
- package/lib/dist/extraction/languages/python.d.ts.map +1 -0
- package/lib/dist/extraction/languages/python.js +56 -0
- package/lib/dist/extraction/languages/python.js.map +1 -0
- package/lib/dist/extraction/languages/r.d.ts +3 -0
- package/lib/dist/extraction/languages/r.d.ts.map +1 -0
- package/lib/dist/extraction/languages/r.js +314 -0
- package/lib/dist/extraction/languages/r.js.map +1 -0
- package/lib/dist/extraction/languages/ruby.d.ts +3 -0
- package/lib/dist/extraction/languages/ruby.d.ts.map +1 -0
- package/lib/dist/extraction/languages/ruby.js +149 -0
- package/lib/dist/extraction/languages/ruby.js.map +1 -0
- package/lib/dist/extraction/languages/rust.d.ts +3 -0
- package/lib/dist/extraction/languages/rust.d.ts.map +1 -0
- package/lib/dist/extraction/languages/rust.js +142 -0
- package/lib/dist/extraction/languages/rust.js.map +1 -0
- package/lib/dist/extraction/languages/scala.d.ts +3 -0
- package/lib/dist/extraction/languages/scala.d.ts.map +1 -0
- package/lib/dist/extraction/languages/scala.js +209 -0
- package/lib/dist/extraction/languages/scala.js.map +1 -0
- package/lib/dist/extraction/languages/solidity.d.ts +3 -0
- package/lib/dist/extraction/languages/solidity.d.ts.map +1 -0
- package/lib/dist/extraction/languages/solidity.js +293 -0
- package/lib/dist/extraction/languages/solidity.js.map +1 -0
- package/lib/dist/extraction/languages/swift.d.ts +3 -0
- package/lib/dist/extraction/languages/swift.d.ts.map +1 -0
- package/lib/dist/extraction/languages/swift.js +152 -0
- package/lib/dist/extraction/languages/swift.js.map +1 -0
- package/lib/dist/extraction/languages/terraform.d.ts +3 -0
- package/lib/dist/extraction/languages/terraform.d.ts.map +1 -0
- package/lib/dist/extraction/languages/terraform.js +641 -0
- package/lib/dist/extraction/languages/terraform.js.map +1 -0
- package/lib/dist/extraction/languages/typescript.d.ts +16 -0
- package/lib/dist/extraction/languages/typescript.d.ts.map +1 -0
- package/lib/dist/extraction/languages/typescript.js +167 -0
- package/lib/dist/extraction/languages/typescript.js.map +1 -0
- package/lib/dist/extraction/languages/vbnet.d.ts +11 -0
- package/lib/dist/extraction/languages/vbnet.d.ts.map +1 -0
- package/lib/dist/extraction/languages/vbnet.js +141 -0
- package/lib/dist/extraction/languages/vbnet.js.map +1 -0
- package/lib/dist/extraction/liquid-extractor.d.ts +59 -0
- package/lib/dist/extraction/liquid-extractor.d.ts.map +1 -0
- package/lib/dist/extraction/liquid-extractor.js +357 -0
- package/lib/dist/extraction/liquid-extractor.js.map +1 -0
- package/lib/dist/extraction/mybatis-extractor.d.ts +68 -0
- package/lib/dist/extraction/mybatis-extractor.d.ts.map +1 -0
- package/lib/dist/extraction/mybatis-extractor.js +300 -0
- package/lib/dist/extraction/mybatis-extractor.js.map +1 -0
- package/lib/dist/extraction/parse-pool.d.ts +126 -0
- package/lib/dist/extraction/parse-pool.d.ts.map +1 -0
- package/lib/dist/extraction/parse-pool.js +319 -0
- package/lib/dist/extraction/parse-pool.js.map +1 -0
- package/lib/dist/extraction/parse-worker.d.ts +8 -0
- package/lib/dist/extraction/parse-worker.d.ts.map +1 -0
- package/lib/dist/extraction/parse-worker.js +97 -0
- package/lib/dist/extraction/parse-worker.js.map +1 -0
- package/lib/dist/extraction/razor-extractor.d.ts +42 -0
- package/lib/dist/extraction/razor-extractor.d.ts.map +1 -0
- package/lib/dist/extraction/razor-extractor.js +285 -0
- package/lib/dist/extraction/razor-extractor.js.map +1 -0
- package/lib/dist/extraction/svelte-extractor.d.ts +56 -0
- package/lib/dist/extraction/svelte-extractor.d.ts.map +1 -0
- package/lib/dist/extraction/svelte-extractor.js +275 -0
- package/lib/dist/extraction/svelte-extractor.js.map +1 -0
- package/lib/dist/extraction/tree-sitter-helpers.d.ts +28 -0
- package/lib/dist/extraction/tree-sitter-helpers.d.ts.map +1 -0
- package/lib/dist/extraction/tree-sitter-helpers.js +153 -0
- package/lib/dist/extraction/tree-sitter-helpers.js.map +1 -0
- package/lib/dist/extraction/tree-sitter-types.d.ts +258 -0
- package/lib/dist/extraction/tree-sitter-types.d.ts.map +1 -0
- package/lib/dist/extraction/tree-sitter-types.js +10 -0
- package/lib/dist/extraction/tree-sitter-types.js.map +1 -0
- package/lib/dist/extraction/tree-sitter.d.ts +706 -0
- package/lib/dist/extraction/tree-sitter.d.ts.map +1 -0
- package/lib/dist/extraction/tree-sitter.js +6506 -0
- package/lib/dist/extraction/tree-sitter.js.map +1 -0
- package/lib/dist/extraction/vue-extractor.d.ts +51 -0
- package/lib/dist/extraction/vue-extractor.d.ts.map +1 -0
- package/lib/dist/extraction/vue-extractor.js +254 -0
- package/lib/dist/extraction/vue-extractor.js.map +1 -0
- package/lib/dist/extraction/wasm/tree-sitter-arkts.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-c_sharp.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-cfml.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-cfquery.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-cfscript.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-cobol.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-erlang.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-lua.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-luau.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-nix.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-r.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-scala.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-terraform.wasm +0 -0
- package/lib/dist/extraction/wasm/tree-sitter-vbnet.wasm +0 -0
- package/lib/dist/extraction/wasm-runtime-flags.d.ts +38 -0
- package/lib/dist/extraction/wasm-runtime-flags.d.ts.map +1 -0
- package/lib/dist/extraction/wasm-runtime-flags.js +106 -0
- package/lib/dist/extraction/wasm-runtime-flags.js.map +1 -0
- package/lib/dist/graph/index.d.ts +8 -0
- package/lib/dist/graph/index.d.ts.map +1 -0
- package/lib/dist/graph/index.js +13 -0
- package/lib/dist/graph/index.js.map +1 -0
- package/lib/dist/graph/queries.d.ts +106 -0
- package/lib/dist/graph/queries.d.ts.map +1 -0
- package/lib/dist/graph/queries.js +339 -0
- package/lib/dist/graph/queries.js.map +1 -0
- package/lib/dist/graph/traversal.d.ts +127 -0
- package/lib/dist/graph/traversal.d.ts.map +1 -0
- package/lib/dist/graph/traversal.js +599 -0
- package/lib/dist/graph/traversal.js.map +1 -0
- package/lib/dist/index.d.ts +642 -0
- package/lib/dist/index.d.ts.map +1 -0
- package/lib/dist/index.js +1387 -0
- package/lib/dist/index.js.map +1 -0
- package/lib/dist/installer/config-writer.d.ts +28 -0
- package/lib/dist/installer/config-writer.d.ts.map +1 -0
- package/lib/dist/installer/config-writer.js +91 -0
- package/lib/dist/installer/config-writer.js.map +1 -0
- package/lib/dist/installer/index.d.ts +100 -0
- package/lib/dist/installer/index.d.ts.map +1 -0
- package/lib/dist/installer/index.js +526 -0
- package/lib/dist/installer/index.js.map +1 -0
- package/lib/dist/installer/instructions-template.d.ts +41 -0
- package/lib/dist/installer/instructions-template.d.ts.map +1 -0
- package/lib/dist/installer/instructions-template.js +53 -0
- package/lib/dist/installer/instructions-template.js.map +1 -0
- package/lib/dist/installer/targets/antigravity.d.ts +57 -0
- package/lib/dist/installer/targets/antigravity.d.ts.map +1 -0
- package/lib/dist/installer/targets/antigravity.js +308 -0
- package/lib/dist/installer/targets/antigravity.js.map +1 -0
- package/lib/dist/installer/targets/claude.d.ts +62 -0
- package/lib/dist/installer/targets/claude.d.ts.map +1 -0
- package/lib/dist/installer/targets/claude.js +454 -0
- package/lib/dist/installer/targets/claude.js.map +1 -0
- package/lib/dist/installer/targets/codex.d.ts +18 -0
- package/lib/dist/installer/targets/codex.d.ts.map +1 -0
- package/lib/dist/installer/targets/codex.js +185 -0
- package/lib/dist/installer/targets/codex.js.map +1 -0
- package/lib/dist/installer/targets/cursor.d.ts +35 -0
- package/lib/dist/installer/targets/cursor.d.ts.map +1 -0
- package/lib/dist/installer/targets/cursor.js +254 -0
- package/lib/dist/installer/targets/cursor.js.map +1 -0
- package/lib/dist/installer/targets/gemini.d.ts +26 -0
- package/lib/dist/installer/targets/gemini.d.ts.map +1 -0
- package/lib/dist/installer/targets/gemini.js +165 -0
- package/lib/dist/installer/targets/gemini.js.map +1 -0
- package/lib/dist/installer/targets/hermes.d.ts +18 -0
- package/lib/dist/installer/targets/hermes.d.ts.map +1 -0
- package/lib/dist/installer/targets/hermes.js +359 -0
- package/lib/dist/installer/targets/hermes.js.map +1 -0
- package/lib/dist/installer/targets/kiro.d.ts +27 -0
- package/lib/dist/installer/targets/kiro.d.ts.map +1 -0
- package/lib/dist/installer/targets/kiro.js +178 -0
- package/lib/dist/installer/targets/kiro.js.map +1 -0
- package/lib/dist/installer/targets/opencode.d.ts +38 -0
- package/lib/dist/installer/targets/opencode.d.ts.map +1 -0
- package/lib/dist/installer/targets/opencode.js +288 -0
- package/lib/dist/installer/targets/opencode.js.map +1 -0
- package/lib/dist/installer/targets/registry.d.ts +35 -0
- package/lib/dist/installer/targets/registry.d.ts.map +1 -0
- package/lib/dist/installer/targets/registry.js +91 -0
- package/lib/dist/installer/targets/registry.js.map +1 -0
- package/lib/dist/installer/targets/shared.d.ts +101 -0
- package/lib/dist/installer/targets/shared.d.ts.map +1 -0
- package/lib/dist/installer/targets/shared.js +264 -0
- package/lib/dist/installer/targets/shared.js.map +1 -0
- package/lib/dist/installer/targets/toml.d.ts +52 -0
- package/lib/dist/installer/targets/toml.d.ts.map +1 -0
- package/lib/dist/installer/targets/toml.js +147 -0
- package/lib/dist/installer/targets/toml.js.map +1 -0
- package/lib/dist/installer/targets/types.d.ts +108 -0
- package/lib/dist/installer/targets/types.d.ts.map +1 -0
- package/lib/dist/installer/targets/types.js +16 -0
- package/lib/dist/installer/targets/types.js.map +1 -0
- package/lib/dist/mcp/daemon-manager.d.ts +42 -0
- package/lib/dist/mcp/daemon-manager.d.ts.map +1 -0
- package/lib/dist/mcp/daemon-manager.js +129 -0
- package/lib/dist/mcp/daemon-manager.js.map +1 -0
- package/lib/dist/mcp/daemon-paths.d.ts +73 -0
- package/lib/dist/mcp/daemon-paths.d.ts.map +1 -0
- package/lib/dist/mcp/daemon-paths.js +165 -0
- package/lib/dist/mcp/daemon-paths.js.map +1 -0
- package/lib/dist/mcp/daemon-registry.d.ts +47 -0
- package/lib/dist/mcp/daemon-registry.d.ts.map +1 -0
- package/lib/dist/mcp/daemon-registry.js +233 -0
- package/lib/dist/mcp/daemon-registry.js.map +1 -0
- package/lib/dist/mcp/daemon.d.ts +290 -0
- package/lib/dist/mcp/daemon.d.ts.map +1 -0
- package/lib/dist/mcp/daemon.js +840 -0
- package/lib/dist/mcp/daemon.js.map +1 -0
- package/lib/dist/mcp/dynamic-boundaries.d.ts +41 -0
- package/lib/dist/mcp/dynamic-boundaries.d.ts.map +1 -0
- package/lib/dist/mcp/dynamic-boundaries.js +360 -0
- package/lib/dist/mcp/dynamic-boundaries.js.map +1 -0
- package/lib/dist/mcp/early-ppid.d.ts +26 -0
- package/lib/dist/mcp/early-ppid.d.ts.map +1 -0
- package/lib/dist/mcp/early-ppid.js +29 -0
- package/lib/dist/mcp/early-ppid.js.map +1 -0
- package/lib/dist/mcp/engine.d.ts +122 -0
- package/lib/dist/mcp/engine.d.ts.map +1 -0
- package/lib/dist/mcp/engine.js +350 -0
- package/lib/dist/mcp/engine.js.map +1 -0
- package/lib/dist/mcp/index.d.ts +113 -0
- package/lib/dist/mcp/index.d.ts.map +1 -0
- package/lib/dist/mcp/index.js +498 -0
- package/lib/dist/mcp/index.js.map +1 -0
- package/lib/dist/mcp/liveness-watchdog.d.ts +18 -0
- package/lib/dist/mcp/liveness-watchdog.d.ts.map +1 -0
- package/lib/dist/mcp/liveness-watchdog.js +207 -0
- package/lib/dist/mcp/liveness-watchdog.js.map +1 -0
- package/lib/dist/mcp/ppid-watchdog.d.ts +62 -0
- package/lib/dist/mcp/ppid-watchdog.d.ts.map +1 -0
- package/lib/dist/mcp/ppid-watchdog.js +64 -0
- package/lib/dist/mcp/ppid-watchdog.js.map +1 -0
- package/lib/dist/mcp/proxy.d.ts +87 -0
- package/lib/dist/mcp/proxy.d.ts.map +1 -0
- package/lib/dist/mcp/proxy.js +659 -0
- package/lib/dist/mcp/proxy.js.map +1 -0
- package/lib/dist/mcp/query-pool.d.ts +94 -0
- package/lib/dist/mcp/query-pool.d.ts.map +1 -0
- package/lib/dist/mcp/query-pool.js +297 -0
- package/lib/dist/mcp/query-pool.js.map +1 -0
- package/lib/dist/mcp/query-worker.d.ts +24 -0
- package/lib/dist/mcp/query-worker.d.ts.map +1 -0
- package/lib/dist/mcp/query-worker.js +87 -0
- package/lib/dist/mcp/query-worker.js.map +1 -0
- package/lib/dist/mcp/server-instructions.d.ts +34 -0
- package/lib/dist/mcp/server-instructions.d.ts.map +1 -0
- package/lib/dist/mcp/server-instructions.js +106 -0
- package/lib/dist/mcp/server-instructions.js.map +1 -0
- package/lib/dist/mcp/session.d.ts +79 -0
- package/lib/dist/mcp/session.d.ts.map +1 -0
- package/lib/dist/mcp/session.js +330 -0
- package/lib/dist/mcp/session.js.map +1 -0
- package/lib/dist/mcp/startup-handshake.d.ts +44 -0
- package/lib/dist/mcp/startup-handshake.d.ts.map +1 -0
- package/lib/dist/mcp/startup-handshake.js +73 -0
- package/lib/dist/mcp/startup-handshake.js.map +1 -0
- package/lib/dist/mcp/stdin-teardown.d.ts +27 -0
- package/lib/dist/mcp/stdin-teardown.d.ts.map +1 -0
- package/lib/dist/mcp/stdin-teardown.js +49 -0
- package/lib/dist/mcp/stdin-teardown.js.map +1 -0
- package/lib/dist/mcp/tools.d.ts +613 -0
- package/lib/dist/mcp/tools.d.ts.map +1 -0
- package/lib/dist/mcp/tools.js +4424 -0
- package/lib/dist/mcp/tools.js.map +1 -0
- package/lib/dist/mcp/transport.d.ts +188 -0
- package/lib/dist/mcp/transport.d.ts.map +1 -0
- package/lib/dist/mcp/transport.js +359 -0
- package/lib/dist/mcp/transport.js.map +1 -0
- package/lib/dist/mcp/version.d.ts +19 -0
- package/lib/dist/mcp/version.d.ts.map +1 -0
- package/lib/dist/mcp/version.js +71 -0
- package/lib/dist/mcp/version.js.map +1 -0
- package/lib/dist/project-config.d.ts +94 -0
- package/lib/dist/project-config.d.ts.map +1 -0
- package/lib/dist/project-config.js +374 -0
- package/lib/dist/project-config.js.map +1 -0
- package/lib/dist/resolution/c-fnptr-synthesizer.d.ts +5 -0
- package/lib/dist/resolution/c-fnptr-synthesizer.d.ts.map +1 -0
- package/lib/dist/resolution/c-fnptr-synthesizer.js +1038 -0
- package/lib/dist/resolution/c-fnptr-synthesizer.js.map +1 -0
- package/lib/dist/resolution/callback-synthesizer.d.ts +15 -0
- package/lib/dist/resolution/callback-synthesizer.d.ts.map +1 -0
- package/lib/dist/resolution/callback-synthesizer.js +3658 -0
- package/lib/dist/resolution/callback-synthesizer.js.map +1 -0
- package/lib/dist/resolution/cooperative-yield.d.ts +32 -0
- package/lib/dist/resolution/cooperative-yield.d.ts.map +1 -0
- package/lib/dist/resolution/cooperative-yield.js +42 -0
- package/lib/dist/resolution/cooperative-yield.js.map +1 -0
- package/lib/dist/resolution/frameworks/astro.d.ts +9 -0
- package/lib/dist/resolution/frameworks/astro.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/astro.js +169 -0
- package/lib/dist/resolution/frameworks/astro.js.map +1 -0
- package/lib/dist/resolution/frameworks/cargo-workspace.d.ts +18 -0
- package/lib/dist/resolution/frameworks/cargo-workspace.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/cargo-workspace.js +225 -0
- package/lib/dist/resolution/frameworks/cargo-workspace.js.map +1 -0
- package/lib/dist/resolution/frameworks/cics.d.ts +20 -0
- package/lib/dist/resolution/frameworks/cics.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/cics.js +90 -0
- package/lib/dist/resolution/frameworks/cics.js.map +1 -0
- package/lib/dist/resolution/frameworks/csharp.d.ts +8 -0
- package/lib/dist/resolution/frameworks/csharp.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/csharp.js +241 -0
- package/lib/dist/resolution/frameworks/csharp.js.map +1 -0
- package/lib/dist/resolution/frameworks/drupal.d.ts +51 -0
- package/lib/dist/resolution/frameworks/drupal.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/drupal.js +367 -0
- package/lib/dist/resolution/frameworks/drupal.js.map +1 -0
- package/lib/dist/resolution/frameworks/expo-modules.d.ts +3 -0
- package/lib/dist/resolution/frameworks/expo-modules.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/expo-modules.js +148 -0
- package/lib/dist/resolution/frameworks/expo-modules.js.map +1 -0
- package/lib/dist/resolution/frameworks/express.d.ts +8 -0
- package/lib/dist/resolution/frameworks/express.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/express.js +308 -0
- package/lib/dist/resolution/frameworks/express.js.map +1 -0
- package/lib/dist/resolution/frameworks/fabric.d.ts +3 -0
- package/lib/dist/resolution/frameworks/fabric.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/fabric.js +354 -0
- package/lib/dist/resolution/frameworks/fabric.js.map +1 -0
- package/lib/dist/resolution/frameworks/go.d.ts +8 -0
- package/lib/dist/resolution/frameworks/go.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/go.js +161 -0
- package/lib/dist/resolution/frameworks/go.js.map +1 -0
- package/lib/dist/resolution/frameworks/goframe.d.ts +41 -0
- package/lib/dist/resolution/frameworks/goframe.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/goframe.js +112 -0
- package/lib/dist/resolution/frameworks/goframe.js.map +1 -0
- package/lib/dist/resolution/frameworks/index.d.ts +50 -0
- package/lib/dist/resolution/frameworks/index.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/index.js +175 -0
- package/lib/dist/resolution/frameworks/index.js.map +1 -0
- package/lib/dist/resolution/frameworks/java.d.ts +8 -0
- package/lib/dist/resolution/frameworks/java.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/java.js +517 -0
- package/lib/dist/resolution/frameworks/java.js.map +1 -0
- package/lib/dist/resolution/frameworks/laravel.d.ts +13 -0
- package/lib/dist/resolution/frameworks/laravel.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/laravel.js +257 -0
- package/lib/dist/resolution/frameworks/laravel.js.map +1 -0
- package/lib/dist/resolution/frameworks/nestjs.d.ts +26 -0
- package/lib/dist/resolution/frameworks/nestjs.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/nestjs.js +698 -0
- package/lib/dist/resolution/frameworks/nestjs.js.map +1 -0
- package/lib/dist/resolution/frameworks/play.d.ts +19 -0
- package/lib/dist/resolution/frameworks/play.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/play.js +111 -0
- package/lib/dist/resolution/frameworks/play.js.map +1 -0
- package/lib/dist/resolution/frameworks/python.d.ts +10 -0
- package/lib/dist/resolution/frameworks/python.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/python.js +400 -0
- package/lib/dist/resolution/frameworks/python.js.map +1 -0
- package/lib/dist/resolution/frameworks/react-native.d.ts +3 -0
- package/lib/dist/resolution/frameworks/react-native.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/react-native.js +410 -0
- package/lib/dist/resolution/frameworks/react-native.js.map +1 -0
- package/lib/dist/resolution/frameworks/react.d.ts +8 -0
- package/lib/dist/resolution/frameworks/react.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/react.js +334 -0
- package/lib/dist/resolution/frameworks/react.js.map +1 -0
- package/lib/dist/resolution/frameworks/ruby.d.ts +8 -0
- package/lib/dist/resolution/frameworks/ruby.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/ruby.js +302 -0
- package/lib/dist/resolution/frameworks/ruby.js.map +1 -0
- package/lib/dist/resolution/frameworks/rust.d.ts +8 -0
- package/lib/dist/resolution/frameworks/rust.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/rust.js +304 -0
- package/lib/dist/resolution/frameworks/rust.js.map +1 -0
- package/lib/dist/resolution/frameworks/svelte.d.ts +9 -0
- package/lib/dist/resolution/frameworks/svelte.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/svelte.js +253 -0
- package/lib/dist/resolution/frameworks/svelte.js.map +1 -0
- package/lib/dist/resolution/frameworks/swift-objc.d.ts +37 -0
- package/lib/dist/resolution/frameworks/swift-objc.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/swift-objc.js +252 -0
- package/lib/dist/resolution/frameworks/swift-objc.js.map +1 -0
- package/lib/dist/resolution/frameworks/swift.d.ts +10 -0
- package/lib/dist/resolution/frameworks/swift.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/swift.js +400 -0
- package/lib/dist/resolution/frameworks/swift.js.map +1 -0
- package/lib/dist/resolution/frameworks/terraform.d.ts +38 -0
- package/lib/dist/resolution/frameworks/terraform.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/terraform.js +277 -0
- package/lib/dist/resolution/frameworks/terraform.js.map +1 -0
- package/lib/dist/resolution/frameworks/vue.d.ts +9 -0
- package/lib/dist/resolution/frameworks/vue.d.ts.map +1 -0
- package/lib/dist/resolution/frameworks/vue.js +303 -0
- package/lib/dist/resolution/frameworks/vue.js.map +1 -0
- package/lib/dist/resolution/go-module.d.ts +26 -0
- package/lib/dist/resolution/go-module.d.ts.map +1 -0
- package/lib/dist/resolution/go-module.js +78 -0
- package/lib/dist/resolution/go-module.js.map +1 -0
- package/lib/dist/resolution/goframe-synthesizer.d.ts +28 -0
- package/lib/dist/resolution/goframe-synthesizer.d.ts.map +1 -0
- package/lib/dist/resolution/goframe-synthesizer.js +158 -0
- package/lib/dist/resolution/goframe-synthesizer.js.map +1 -0
- package/lib/dist/resolution/import-resolver.d.ts +85 -0
- package/lib/dist/resolution/import-resolver.d.ts.map +1 -0
- package/lib/dist/resolution/import-resolver.js +1974 -0
- package/lib/dist/resolution/import-resolver.js.map +1 -0
- package/lib/dist/resolution/index.d.ts +238 -0
- package/lib/dist/resolution/index.d.ts.map +1 -0
- package/lib/dist/resolution/index.js +1633 -0
- package/lib/dist/resolution/index.js.map +1 -0
- package/lib/dist/resolution/lru-cache.d.ts +24 -0
- package/lib/dist/resolution/lru-cache.d.ts.map +1 -0
- package/lib/dist/resolution/lru-cache.js +62 -0
- package/lib/dist/resolution/lru-cache.js.map +1 -0
- package/lib/dist/resolution/name-matcher.d.ts +112 -0
- package/lib/dist/resolution/name-matcher.d.ts.map +1 -0
- package/lib/dist/resolution/name-matcher.js +1701 -0
- package/lib/dist/resolution/name-matcher.js.map +1 -0
- package/lib/dist/resolution/path-aliases.d.ts +68 -0
- package/lib/dist/resolution/path-aliases.d.ts.map +1 -0
- package/lib/dist/resolution/path-aliases.js +238 -0
- package/lib/dist/resolution/path-aliases.js.map +1 -0
- package/lib/dist/resolution/strip-comments.d.ts +27 -0
- package/lib/dist/resolution/strip-comments.d.ts.map +1 -0
- package/lib/dist/resolution/strip-comments.js +492 -0
- package/lib/dist/resolution/strip-comments.js.map +1 -0
- package/lib/dist/resolution/swift-objc-bridge.d.ts +134 -0
- package/lib/dist/resolution/swift-objc-bridge.d.ts.map +1 -0
- package/lib/dist/resolution/swift-objc-bridge.js +256 -0
- package/lib/dist/resolution/swift-objc-bridge.js.map +1 -0
- package/lib/dist/resolution/types.d.ts +253 -0
- package/lib/dist/resolution/types.d.ts.map +1 -0
- package/lib/dist/resolution/types.js +8 -0
- package/lib/dist/resolution/types.js.map +1 -0
- package/lib/dist/resolution/workspace-packages.d.ts +58 -0
- package/lib/dist/resolution/workspace-packages.d.ts.map +1 -0
- package/lib/dist/resolution/workspace-packages.js +346 -0
- package/lib/dist/resolution/workspace-packages.js.map +1 -0
- package/lib/dist/search/identifier-segments.d.ts +60 -0
- package/lib/dist/search/identifier-segments.d.ts.map +1 -0
- package/lib/dist/search/identifier-segments.js +176 -0
- package/lib/dist/search/identifier-segments.js.map +1 -0
- package/lib/dist/search/query-parser.d.ts +57 -0
- package/lib/dist/search/query-parser.d.ts.map +1 -0
- package/lib/dist/search/query-parser.js +177 -0
- package/lib/dist/search/query-parser.js.map +1 -0
- package/lib/dist/search/query-utils.d.ts +87 -0
- package/lib/dist/search/query-utils.d.ts.map +1 -0
- package/lib/dist/search/query-utils.js +449 -0
- package/lib/dist/search/query-utils.js.map +1 -0
- package/lib/dist/sync/git-hooks.d.ts +45 -0
- package/lib/dist/sync/git-hooks.d.ts.map +1 -0
- package/lib/dist/sync/git-hooks.js +227 -0
- package/lib/dist/sync/git-hooks.js.map +1 -0
- package/lib/dist/sync/index.d.ts +19 -0
- package/lib/dist/sync/index.d.ts.map +1 -0
- package/lib/dist/sync/index.js +35 -0
- package/lib/dist/sync/index.js.map +1 -0
- package/lib/dist/sync/watch-policy.d.ts +48 -0
- package/lib/dist/sync/watch-policy.d.ts.map +1 -0
- package/lib/dist/sync/watch-policy.js +124 -0
- package/lib/dist/sync/watch-policy.js.map +1 -0
- package/lib/dist/sync/watcher.d.ts +355 -0
- package/lib/dist/sync/watcher.d.ts.map +1 -0
- package/lib/dist/sync/watcher.js +848 -0
- package/lib/dist/sync/watcher.js.map +1 -0
- package/lib/dist/sync/worktree.d.ts +63 -0
- package/lib/dist/sync/worktree.d.ts.map +1 -0
- package/lib/dist/sync/worktree.js +182 -0
- package/lib/dist/sync/worktree.js.map +1 -0
- package/lib/dist/telemetry/index.d.ts +143 -0
- package/lib/dist/telemetry/index.d.ts.map +1 -0
- package/lib/dist/telemetry/index.js +541 -0
- package/lib/dist/telemetry/index.js.map +1 -0
- package/lib/dist/types.d.ts +415 -0
- package/lib/dist/types.d.ts.map +1 -0
- package/lib/dist/types.js +91 -0
- package/lib/dist/types.js.map +1 -0
- package/lib/dist/ui/glyphs.d.ts +42 -0
- package/lib/dist/ui/glyphs.d.ts.map +1 -0
- package/lib/dist/ui/glyphs.js +78 -0
- package/lib/dist/ui/glyphs.js.map +1 -0
- package/lib/dist/ui/shimmer-progress.d.ts +11 -0
- package/lib/dist/ui/shimmer-progress.d.ts.map +1 -0
- package/lib/dist/ui/shimmer-progress.js +90 -0
- package/lib/dist/ui/shimmer-progress.js.map +1 -0
- package/lib/dist/ui/shimmer-worker.d.ts +2 -0
- package/lib/dist/ui/shimmer-worker.d.ts.map +1 -0
- package/lib/dist/ui/shimmer-worker.js +118 -0
- package/lib/dist/ui/shimmer-worker.js.map +1 -0
- package/lib/dist/ui/types.d.ts +17 -0
- package/lib/dist/ui/types.d.ts.map +1 -0
- package/lib/dist/ui/types.js +3 -0
- package/lib/dist/ui/types.js.map +1 -0
- package/lib/dist/upgrade/index.d.ts +132 -0
- package/lib/dist/upgrade/index.d.ts.map +1 -0
- package/lib/dist/upgrade/index.js +498 -0
- package/lib/dist/upgrade/index.js.map +1 -0
- package/lib/dist/utils.d.ts +224 -0
- package/lib/dist/utils.d.ts.map +1 -0
- package/lib/dist/utils.js +583 -0
- package/lib/dist/utils.js.map +1 -0
- package/lib/node_modules/.package-lock.json +125 -0
- package/lib/node_modules/@clack/core/CHANGELOG.md +348 -0
- package/lib/node_modules/@clack/core/LICENSE +9 -0
- package/lib/node_modules/@clack/core/README.md +22 -0
- package/lib/node_modules/@clack/core/dist/index.d.mts +363 -0
- package/lib/node_modules/@clack/core/dist/index.mjs +17 -0
- package/lib/node_modules/@clack/core/dist/index.mjs.map +1 -0
- package/lib/node_modules/@clack/core/package.json +63 -0
- package/lib/node_modules/@clack/prompts/CHANGELOG.md +591 -0
- package/lib/node_modules/@clack/prompts/LICENSE +9 -0
- package/lib/node_modules/@clack/prompts/README.md +375 -0
- package/lib/node_modules/@clack/prompts/dist/index.d.mts +396 -0
- package/lib/node_modules/@clack/prompts/dist/index.mjs +144 -0
- package/lib/node_modules/@clack/prompts/dist/index.mjs.map +1 -0
- package/lib/node_modules/@clack/prompts/package.json +68 -0
- package/lib/node_modules/commander/LICENSE +22 -0
- package/lib/node_modules/commander/Readme.md +1176 -0
- package/lib/node_modules/commander/esm.mjs +16 -0
- package/lib/node_modules/commander/index.js +24 -0
- package/lib/node_modules/commander/lib/argument.js +150 -0
- package/lib/node_modules/commander/lib/command.js +2777 -0
- package/lib/node_modules/commander/lib/error.js +39 -0
- package/lib/node_modules/commander/lib/help.js +747 -0
- package/lib/node_modules/commander/lib/option.js +380 -0
- package/lib/node_modules/commander/lib/suggestSimilar.js +101 -0
- package/lib/node_modules/commander/package-support.json +19 -0
- package/lib/node_modules/commander/package.json +82 -0
- package/lib/node_modules/commander/typings/esm.d.mts +3 -0
- package/lib/node_modules/commander/typings/index.d.ts +1113 -0
- package/lib/node_modules/fast-string-truncated-width/dist/index.d.ts +4 -0
- package/lib/node_modules/fast-string-truncated-width/dist/index.js +111 -0
- package/lib/node_modules/fast-string-truncated-width/dist/types.d.ts +19 -0
- package/lib/node_modules/fast-string-truncated-width/dist/types.js +2 -0
- package/lib/node_modules/fast-string-truncated-width/dist/utils.d.ts +4 -0
- package/lib/node_modules/fast-string-truncated-width/dist/utils.js +20 -0
- package/lib/node_modules/fast-string-truncated-width/license +21 -0
- package/lib/node_modules/fast-string-truncated-width/package.json +35 -0
- package/lib/node_modules/fast-string-truncated-width/readme.md +59 -0
- package/lib/node_modules/fast-string-width/dist/index.d.ts +4 -0
- package/lib/node_modules/fast-string-width/dist/index.js +14 -0
- package/lib/node_modules/fast-string-width/license +21 -0
- package/lib/node_modules/fast-string-width/package.json +34 -0
- package/lib/node_modules/fast-string-width/readme.md +42 -0
- package/lib/node_modules/fast-wrap-ansi/LICENSE +23 -0
- package/lib/node_modules/fast-wrap-ansi/README.md +26 -0
- package/lib/node_modules/fast-wrap-ansi/lib/main.d.ts +6 -0
- package/lib/node_modules/fast-wrap-ansi/lib/main.js +219 -0
- package/lib/node_modules/fast-wrap-ansi/lib/main.js.map +1 -0
- package/lib/node_modules/fast-wrap-ansi/package.json +51 -0
- package/lib/node_modules/ignore/LICENSE-MIT +21 -0
- package/lib/node_modules/ignore/README.md +452 -0
- package/lib/node_modules/ignore/index.d.ts +81 -0
- package/lib/node_modules/ignore/index.js +784 -0
- package/lib/node_modules/ignore/legacy.js +681 -0
- package/lib/node_modules/ignore/package.json +87 -0
- package/lib/node_modules/jsonc-parser/CHANGELOG.md +76 -0
- package/lib/node_modules/jsonc-parser/LICENSE.md +21 -0
- package/lib/node_modules/jsonc-parser/README.md +364 -0
- package/lib/node_modules/jsonc-parser/SECURITY.md +41 -0
- package/lib/node_modules/jsonc-parser/lib/esm/impl/edit.js +185 -0
- package/lib/node_modules/jsonc-parser/lib/esm/impl/format.js +261 -0
- package/lib/node_modules/jsonc-parser/lib/esm/impl/parser.js +659 -0
- package/lib/node_modules/jsonc-parser/lib/esm/impl/scanner.js +443 -0
- package/lib/node_modules/jsonc-parser/lib/esm/impl/string-intern.js +29 -0
- package/lib/node_modules/jsonc-parser/lib/esm/main.d.ts +351 -0
- package/lib/node_modules/jsonc-parser/lib/esm/main.js +178 -0
- package/lib/node_modules/jsonc-parser/lib/umd/impl/edit.js +201 -0
- package/lib/node_modules/jsonc-parser/lib/umd/impl/format.js +275 -0
- package/lib/node_modules/jsonc-parser/lib/umd/impl/parser.js +682 -0
- package/lib/node_modules/jsonc-parser/lib/umd/impl/scanner.js +456 -0
- package/lib/node_modules/jsonc-parser/lib/umd/impl/string-intern.js +42 -0
- package/lib/node_modules/jsonc-parser/lib/umd/main.d.ts +351 -0
- package/lib/node_modules/jsonc-parser/lib/umd/main.js +194 -0
- package/lib/node_modules/jsonc-parser/package.json +37 -0
- package/lib/node_modules/picomatch/LICENSE +21 -0
- package/lib/node_modules/picomatch/README.md +738 -0
- package/lib/node_modules/picomatch/index.js +17 -0
- package/lib/node_modules/picomatch/lib/constants.js +180 -0
- package/lib/node_modules/picomatch/lib/parse.js +1085 -0
- package/lib/node_modules/picomatch/lib/picomatch.js +341 -0
- package/lib/node_modules/picomatch/lib/scan.js +391 -0
- package/lib/node_modules/picomatch/lib/utils.js +72 -0
- package/lib/node_modules/picomatch/package.json +83 -0
- package/lib/node_modules/picomatch/posix.js +3 -0
- package/lib/node_modules/sisteransi/license +21 -0
- package/lib/node_modules/sisteransi/package.json +34 -0
- package/lib/node_modules/sisteransi/readme.md +113 -0
- package/lib/node_modules/sisteransi/src/index.js +58 -0
- package/lib/node_modules/sisteransi/src/sisteransi.d.ts +35 -0
- package/lib/node_modules/tree-sitter-wasms/LICENSE +24 -0
- package/lib/node_modules/tree-sitter-wasms/README.md +23 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-bash.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-c.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-c_sharp.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-cpp.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-css.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-dart.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-elisp.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-elixir.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-elm.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-embedded_template.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-go.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-html.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-java.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-javascript.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-json.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-kotlin.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-lua.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-objc.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-ocaml.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-php.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-python.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-ql.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-rescript.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-ruby.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-rust.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-scala.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-solidity.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-swift.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-systemrdl.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-tlaplus.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-toml.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-tsx.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-typescript.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-vue.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-yaml.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-zig.wasm +0 -0
- package/lib/node_modules/tree-sitter-wasms/package.json +64 -0
- package/lib/node_modules/web-tree-sitter/LICENSE +21 -0
- package/lib/node_modules/web-tree-sitter/README.md +269 -0
- package/lib/node_modules/web-tree-sitter/debug/tree-sitter.cjs +4558 -0
- package/lib/node_modules/web-tree-sitter/debug/tree-sitter.cjs.map +7 -0
- package/lib/node_modules/web-tree-sitter/debug/tree-sitter.js +4516 -0
- package/lib/node_modules/web-tree-sitter/debug/tree-sitter.js.map +7 -0
- package/lib/node_modules/web-tree-sitter/debug/tree-sitter.wasm +0 -0
- package/lib/node_modules/web-tree-sitter/debug/tree-sitter.wasm.map +31 -0
- package/lib/node_modules/web-tree-sitter/lib/alloc.c +48 -0
- package/lib/node_modules/web-tree-sitter/lib/alloc.h +41 -0
- package/lib/node_modules/web-tree-sitter/lib/array.h +291 -0
- package/lib/node_modules/web-tree-sitter/lib/atomic.h +68 -0
- package/lib/node_modules/web-tree-sitter/lib/clock.h +146 -0
- package/lib/node_modules/web-tree-sitter/lib/error_costs.h +11 -0
- package/lib/node_modules/web-tree-sitter/lib/get_changed_ranges.c +523 -0
- package/lib/node_modules/web-tree-sitter/lib/get_changed_ranges.h +36 -0
- package/lib/node_modules/web-tree-sitter/lib/host.h +21 -0
- package/lib/node_modules/web-tree-sitter/lib/language.c +293 -0
- package/lib/node_modules/web-tree-sitter/lib/language.h +293 -0
- package/lib/node_modules/web-tree-sitter/lib/length.h +52 -0
- package/lib/node_modules/web-tree-sitter/lib/lexer.c +483 -0
- package/lib/node_modules/web-tree-sitter/lib/lexer.h +54 -0
- package/lib/node_modules/web-tree-sitter/lib/lib.c +12 -0
- package/lib/node_modules/web-tree-sitter/lib/node.c +875 -0
- package/lib/node_modules/web-tree-sitter/lib/parser.c +2297 -0
- package/lib/node_modules/web-tree-sitter/lib/parser.h +286 -0
- package/lib/node_modules/web-tree-sitter/lib/point.h +48 -0
- package/lib/node_modules/web-tree-sitter/lib/query.c +4347 -0
- package/lib/node_modules/web-tree-sitter/lib/reduce_action.h +34 -0
- package/lib/node_modules/web-tree-sitter/lib/reusable_node.h +95 -0
- package/lib/node_modules/web-tree-sitter/lib/stack.c +912 -0
- package/lib/node_modules/web-tree-sitter/lib/stack.h +133 -0
- package/lib/node_modules/web-tree-sitter/lib/subtree.c +1034 -0
- package/lib/node_modules/web-tree-sitter/lib/subtree.h +399 -0
- package/lib/node_modules/web-tree-sitter/lib/tree-sitter.c +987 -0
- package/lib/node_modules/web-tree-sitter/lib/tree-sitter.cjs +2988 -0
- package/lib/node_modules/web-tree-sitter/lib/tree-sitter.wasm +0 -0
- package/lib/node_modules/web-tree-sitter/lib/tree-sitter.wasm.map +1 -0
- package/lib/node_modules/web-tree-sitter/lib/tree.c +170 -0
- package/lib/node_modules/web-tree-sitter/lib/tree.h +31 -0
- package/lib/node_modules/web-tree-sitter/lib/tree_cursor.c +716 -0
- package/lib/node_modules/web-tree-sitter/lib/tree_cursor.h +48 -0
- package/lib/node_modules/web-tree-sitter/lib/ts_assert.h +11 -0
- package/lib/node_modules/web-tree-sitter/lib/unicode.h +75 -0
- package/lib/node_modules/web-tree-sitter/lib/wasm_store.c +1937 -0
- package/lib/node_modules/web-tree-sitter/lib/wasm_store.h +31 -0
- package/lib/node_modules/web-tree-sitter/package.json +98 -0
- package/lib/node_modules/web-tree-sitter/src/bindings.ts +26 -0
- package/lib/node_modules/web-tree-sitter/src/constants.ts +133 -0
- package/lib/node_modules/web-tree-sitter/src/index.ts +31 -0
- package/lib/node_modules/web-tree-sitter/src/language.ts +291 -0
- package/lib/node_modules/web-tree-sitter/src/lookahead_iterator.ts +75 -0
- package/lib/node_modules/web-tree-sitter/src/marshal.ts +176 -0
- package/lib/node_modules/web-tree-sitter/src/node.ts +646 -0
- package/lib/node_modules/web-tree-sitter/src/parser.ts +325 -0
- package/lib/node_modules/web-tree-sitter/src/query.ts +973 -0
- package/lib/node_modules/web-tree-sitter/src/tree.ts +145 -0
- package/lib/node_modules/web-tree-sitter/src/tree_cursor.ts +318 -0
- package/lib/node_modules/web-tree-sitter/tree-sitter.cjs +4031 -0
- package/lib/node_modules/web-tree-sitter/tree-sitter.cjs.map +7 -0
- package/lib/node_modules/web-tree-sitter/tree-sitter.js +3980 -0
- package/lib/node_modules/web-tree-sitter/tree-sitter.js.map +7 -0
- package/lib/node_modules/web-tree-sitter/tree-sitter.wasm +0 -0
- package/lib/node_modules/web-tree-sitter/tree-sitter.wasm.map +30 -0
- package/lib/node_modules/web-tree-sitter/web-tree-sitter.d.ts +1030 -0
- package/lib/node_modules/web-tree-sitter/web-tree-sitter.d.ts.map +56 -0
- package/lib/package.json +64 -0
- package/node +0 -0
- package/package.json +17 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Database Migrations
|
|
3
|
+
*
|
|
4
|
+
* Schema versioning and migration support.
|
|
5
|
+
*/
|
|
6
|
+
import { SqliteDatabase } from './sqlite-adapter';
|
|
7
|
+
/**
|
|
8
|
+
* Current schema version
|
|
9
|
+
*/
|
|
10
|
+
export declare const CURRENT_SCHEMA_VERSION = 7;
|
|
11
|
+
/**
|
|
12
|
+
* Migration definition
|
|
13
|
+
*/
|
|
14
|
+
interface Migration {
|
|
15
|
+
version: number;
|
|
16
|
+
description: string;
|
|
17
|
+
up: (db: SqliteDatabase) => void;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get the current schema version from the database
|
|
21
|
+
*/
|
|
22
|
+
export declare function getCurrentVersion(db: SqliteDatabase): number;
|
|
23
|
+
/**
|
|
24
|
+
* Run all pending migrations
|
|
25
|
+
*/
|
|
26
|
+
export declare function runMigrations(db: SqliteDatabase, fromVersion: number): void;
|
|
27
|
+
/**
|
|
28
|
+
* Check if the database needs migration
|
|
29
|
+
*/
|
|
30
|
+
export declare function needsMigration(db: SqliteDatabase): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Get list of pending migrations
|
|
33
|
+
*/
|
|
34
|
+
export declare function getPendingMigrations(db: SqliteDatabase): Migration[];
|
|
35
|
+
/**
|
|
36
|
+
* Get migration history from database
|
|
37
|
+
*/
|
|
38
|
+
export declare function getMigrationHistory(db: SqliteDatabase): Array<{
|
|
39
|
+
version: number;
|
|
40
|
+
appliedAt: number;
|
|
41
|
+
description: string | null;
|
|
42
|
+
}>;
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=migrations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;GAEG;AACH,UAAU,SAAS;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,CAAC,EAAE,EAAE,cAAc,KAAK,IAAI,CAAC;CAClC;AAuGD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM,CAU5D;AAWD;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAiB3E;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAG1D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,cAAc,GAAG,SAAS,EAAE,CAKpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,cAAc,GACjB,KAAK,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAU3E"}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Database Migrations
|
|
4
|
+
*
|
|
5
|
+
* Schema versioning and migration support.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.CURRENT_SCHEMA_VERSION = void 0;
|
|
9
|
+
exports.getCurrentVersion = getCurrentVersion;
|
|
10
|
+
exports.runMigrations = runMigrations;
|
|
11
|
+
exports.needsMigration = needsMigration;
|
|
12
|
+
exports.getPendingMigrations = getPendingMigrations;
|
|
13
|
+
exports.getMigrationHistory = getMigrationHistory;
|
|
14
|
+
/**
|
|
15
|
+
* Current schema version
|
|
16
|
+
*/
|
|
17
|
+
exports.CURRENT_SCHEMA_VERSION = 7;
|
|
18
|
+
/**
|
|
19
|
+
* All migrations in order
|
|
20
|
+
*
|
|
21
|
+
* Note: Version 1 is the initial schema, handled by schema.sql
|
|
22
|
+
* Future migrations go here.
|
|
23
|
+
*/
|
|
24
|
+
const migrations = [
|
|
25
|
+
{
|
|
26
|
+
version: 2,
|
|
27
|
+
description: 'Add project metadata, provenance tracking, and unresolved ref context',
|
|
28
|
+
up: (db) => {
|
|
29
|
+
db.exec(`
|
|
30
|
+
CREATE TABLE IF NOT EXISTS project_metadata (
|
|
31
|
+
key TEXT PRIMARY KEY,
|
|
32
|
+
value TEXT NOT NULL,
|
|
33
|
+
updated_at INTEGER NOT NULL
|
|
34
|
+
);
|
|
35
|
+
ALTER TABLE unresolved_refs ADD COLUMN file_path TEXT NOT NULL DEFAULT '';
|
|
36
|
+
ALTER TABLE unresolved_refs ADD COLUMN language TEXT NOT NULL DEFAULT 'unknown';
|
|
37
|
+
ALTER TABLE edges ADD COLUMN provenance TEXT DEFAULT NULL;
|
|
38
|
+
CREATE INDEX IF NOT EXISTS idx_unresolved_file_path ON unresolved_refs(file_path);
|
|
39
|
+
CREATE INDEX IF NOT EXISTS idx_edges_provenance ON edges(provenance);
|
|
40
|
+
`);
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
version: 3,
|
|
45
|
+
description: 'Add lower(name) expression index for memory-efficient case-insensitive lookups',
|
|
46
|
+
up: (db) => {
|
|
47
|
+
db.exec(`
|
|
48
|
+
CREATE INDEX IF NOT EXISTS idx_nodes_lower_name ON nodes(lower(name));
|
|
49
|
+
`);
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
version: 4,
|
|
54
|
+
description: 'Drop redundant idx_edges_source / idx_edges_target (covered by source_kind / target_kind composites)',
|
|
55
|
+
up: (db) => {
|
|
56
|
+
db.exec(`
|
|
57
|
+
DROP INDEX IF EXISTS idx_edges_source;
|
|
58
|
+
DROP INDEX IF EXISTS idx_edges_target;
|
|
59
|
+
`);
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
version: 5,
|
|
64
|
+
description: 'Add nodes.return_type — normalized return/result type for receiver-type inference (C++ singletons/factories, #645)',
|
|
65
|
+
up: (db) => {
|
|
66
|
+
db.exec(`
|
|
67
|
+
ALTER TABLE nodes ADD COLUMN return_type TEXT;
|
|
68
|
+
`);
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
version: 6,
|
|
73
|
+
description: 'Dedup duplicate edge rows and add a UNIQUE identity index so INSERT OR IGNORE actually dedups (#1034)',
|
|
74
|
+
up: (db) => {
|
|
75
|
+
// `insertEdge` has always used `INSERT OR IGNORE`, but the edges table had
|
|
76
|
+
// no UNIQUE constraint, so nothing conflicted and byte-identical rows
|
|
77
|
+
// accumulated whenever two passes emitted the same edge. Collapse each
|
|
78
|
+
// identity group to its lowest id, then add the constraint that makes
|
|
79
|
+
// `OR IGNORE` keep its promise. IFNULL folds nullable line/col so
|
|
80
|
+
// coordinate-less edges dedup too (SQLite treats each NULL as distinct) —
|
|
81
|
+
// and it MUST match the GROUP BY exactly, or the index creation would
|
|
82
|
+
// fail on a pair the DELETE left behind. Idempotent: the index is
|
|
83
|
+
// `IF NOT EXISTS` and the DELETE is a no-op once the table is unique.
|
|
84
|
+
db.exec(`
|
|
85
|
+
DELETE FROM edges
|
|
86
|
+
WHERE id NOT IN (
|
|
87
|
+
SELECT MIN(id) FROM edges
|
|
88
|
+
GROUP BY source, target, kind, IFNULL(line, -1), IFNULL(col, -1)
|
|
89
|
+
);
|
|
90
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_edges_identity
|
|
91
|
+
ON edges(source, target, kind, IFNULL(line, -1), IFNULL(col, -1));
|
|
92
|
+
`);
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
version: 7,
|
|
97
|
+
description: 'Add name_segment_vocab — prose-word → symbol-name lookup for the prompt hook’s graph-derived gate',
|
|
98
|
+
up: (db) => {
|
|
99
|
+
// DDL only — instant on any size database (the row-churn hazards of #1067
|
|
100
|
+
// don't apply). The table starts EMPTY on migrated databases; `sync`
|
|
101
|
+
// detects that over a populated graph and backfills batched+yielding
|
|
102
|
+
// (BHGraph.rebuildNameSegmentVocab), and any full index rebuilds it
|
|
103
|
+
// from scratch. Keep the definition in lockstep with schema.sql.
|
|
104
|
+
db.exec(`
|
|
105
|
+
CREATE TABLE IF NOT EXISTS name_segment_vocab (
|
|
106
|
+
segment TEXT NOT NULL,
|
|
107
|
+
name TEXT NOT NULL,
|
|
108
|
+
PRIMARY KEY (segment, name)
|
|
109
|
+
) WITHOUT ROWID;
|
|
110
|
+
`);
|
|
111
|
+
},
|
|
112
|
+
},
|
|
113
|
+
];
|
|
114
|
+
/**
|
|
115
|
+
* Get the current schema version from the database
|
|
116
|
+
*/
|
|
117
|
+
function getCurrentVersion(db) {
|
|
118
|
+
try {
|
|
119
|
+
const row = db
|
|
120
|
+
.prepare('SELECT MAX(version) as version FROM schema_versions')
|
|
121
|
+
.get();
|
|
122
|
+
return row?.version ?? 0;
|
|
123
|
+
}
|
|
124
|
+
catch {
|
|
125
|
+
// Table doesn't exist yet
|
|
126
|
+
return 0;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Record a migration as applied
|
|
131
|
+
*/
|
|
132
|
+
function recordMigration(db, version, description) {
|
|
133
|
+
db.prepare('INSERT INTO schema_versions (version, applied_at, description) VALUES (?, ?, ?)').run(version, Date.now(), description);
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Run all pending migrations
|
|
137
|
+
*/
|
|
138
|
+
function runMigrations(db, fromVersion) {
|
|
139
|
+
const pending = migrations.filter((m) => m.version > fromVersion);
|
|
140
|
+
if (pending.length === 0) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
// Sort by version
|
|
144
|
+
pending.sort((a, b) => a.version - b.version);
|
|
145
|
+
// Run each migration in a transaction
|
|
146
|
+
for (const migration of pending) {
|
|
147
|
+
db.transaction(() => {
|
|
148
|
+
migration.up(db);
|
|
149
|
+
recordMigration(db, migration.version, migration.description);
|
|
150
|
+
})();
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Check if the database needs migration
|
|
155
|
+
*/
|
|
156
|
+
function needsMigration(db) {
|
|
157
|
+
const current = getCurrentVersion(db);
|
|
158
|
+
return current < exports.CURRENT_SCHEMA_VERSION;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Get list of pending migrations
|
|
162
|
+
*/
|
|
163
|
+
function getPendingMigrations(db) {
|
|
164
|
+
const current = getCurrentVersion(db);
|
|
165
|
+
return migrations
|
|
166
|
+
.filter((m) => m.version > current)
|
|
167
|
+
.sort((a, b) => a.version - b.version);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Get migration history from database
|
|
171
|
+
*/
|
|
172
|
+
function getMigrationHistory(db) {
|
|
173
|
+
const rows = db
|
|
174
|
+
.prepare('SELECT version, applied_at, description FROM schema_versions ORDER BY version')
|
|
175
|
+
.all();
|
|
176
|
+
return rows.map((row) => ({
|
|
177
|
+
version: row.version,
|
|
178
|
+
appliedAt: row.applied_at,
|
|
179
|
+
description: row.description,
|
|
180
|
+
}));
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=migrations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/db/migrations.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AA0HH,8CAUC;AAcD,sCAiBC;AAKD,wCAGC;AAKD,oDAKC;AAKD,kDAYC;AAlMD;;GAEG;AACU,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAWxC;;;;;GAKG;AACH,MAAM,UAAU,GAAgB;IAC9B;QACE,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,uEAAuE;QACpF,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;YACT,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;OAWP,CAAC,CAAC;QACL,CAAC;KACF;IACD;QACE,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,gFAAgF;QAC7F,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;YACT,EAAE,CAAC,IAAI,CAAC;;OAEP,CAAC,CAAC;QACL,CAAC;KACF;IACD;QACE,OAAO,EAAE,CAAC;QACV,WAAW,EACT,sGAAsG;QACxG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;YACT,EAAE,CAAC,IAAI,CAAC;;;OAGP,CAAC,CAAC;QACL,CAAC;KACF;IACD;QACE,OAAO,EAAE,CAAC;QACV,WAAW,EACT,oHAAoH;QACtH,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;YACT,EAAE,CAAC,IAAI,CAAC;;OAEP,CAAC,CAAC;QACL,CAAC;KACF;IACD;QACE,OAAO,EAAE,CAAC;QACV,WAAW,EACT,uGAAuG;QACzG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;YACT,2EAA2E;YAC3E,sEAAsE;YACtE,uEAAuE;YACvE,sEAAsE;YACtE,kEAAkE;YAClE,0EAA0E;YAC1E,sEAAsE;YACtE,kEAAkE;YAClE,sEAAsE;YACtE,EAAE,CAAC,IAAI,CAAC;;;;;;;;OAQP,CAAC,CAAC;QACL,CAAC;KACF;IACD;QACE,OAAO,EAAE,CAAC;QACV,WAAW,EACT,mGAAmG;QACrG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;YACT,0EAA0E;YAC1E,qEAAqE;YACrE,qEAAqE;YACrE,oEAAoE;YACpE,iEAAiE;YACjE,EAAE,CAAC,IAAI,CAAC;;;;;;OAMP,CAAC,CAAC;QACL,CAAC;KACF;CACF,CAAC;AAEF;;GAEG;AACH,SAAgB,iBAAiB,CAAC,EAAkB;IAClD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE;aACX,OAAO,CAAC,qDAAqD,CAAC;aAC9D,GAAG,EAA4C,CAAC;QACnD,OAAO,GAAG,EAAE,OAAO,IAAI,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,0BAA0B;QAC1B,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,EAAkB,EAAE,OAAe,EAAE,WAAmB;IAC/E,EAAE,CAAC,OAAO,CACR,iFAAiF,CAClF,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,EAAkB,EAAE,WAAmB;IACnE,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,WAAW,CAAC,CAAC;IAElE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IAED,kBAAkB;IAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IAE9C,sCAAsC;IACtC,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE,CAAC;QAChC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;YAClB,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACjB,eAAe,CAAC,EAAE,EAAE,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;QAChE,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,EAAkB;IAC/C,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACtC,OAAO,OAAO,GAAG,8BAAsB,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,EAAkB;IACrD,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACtC,OAAO,UAAU;SACd,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;SAClC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CACjC,EAAkB;IAElB,MAAM,IAAI,GAAG,EAAE;SACZ,OAAO,CAAC,+EAA+E,CAAC;SACxF,GAAG,EAAgF,CAAC;IAEvF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACxB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,WAAW,EAAE,GAAG,CAAC,WAAW;KAC7B,CAAC,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,452 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Database Queries
|
|
3
|
+
*
|
|
4
|
+
* Prepared statements for CRUD operations on the knowledge graph.
|
|
5
|
+
*/
|
|
6
|
+
import { SqliteDatabase } from './sqlite-adapter';
|
|
7
|
+
import { Node, Edge, FileRecord, UnresolvedReference, NodeKind, EdgeKind, GraphStats, SearchOptions, SearchResult } from '../types';
|
|
8
|
+
/**
|
|
9
|
+
* Query builder for the knowledge graph database
|
|
10
|
+
*/
|
|
11
|
+
export declare class QueryBuilder {
|
|
12
|
+
private db;
|
|
13
|
+
private projectNameTokens;
|
|
14
|
+
private nodeCache;
|
|
15
|
+
private readonly maxCacheSize;
|
|
16
|
+
private stmts;
|
|
17
|
+
private segmentedNames;
|
|
18
|
+
private static readonly MAX_SEGMENTED_NAMES;
|
|
19
|
+
constructor(db: SqliteDatabase);
|
|
20
|
+
/** Set the normalized project-name tokens used to down-weight non-discriminative
|
|
21
|
+
* query words in path scoring (#720). Called once when the project opens. */
|
|
22
|
+
setProjectNameTokens(tokens: Set<string>): void;
|
|
23
|
+
/** The normalized project-name tokens (#720); empty if none were derived. */
|
|
24
|
+
getProjectNameTokens(): Set<string>;
|
|
25
|
+
/**
|
|
26
|
+
* Insert a new node
|
|
27
|
+
*/
|
|
28
|
+
insertNode(node: Node): void;
|
|
29
|
+
/** Which node kinds contribute their name to the segment vocabulary — the
|
|
30
|
+
* single gate shared by insertNode, updateNode, and the rebuild page query
|
|
31
|
+
* (getDistinctNodeNames), so the write paths can't drift apart. */
|
|
32
|
+
private isSegmentableKind;
|
|
33
|
+
/** Write `name`'s segments into name_segment_vocab (idempotent). */
|
|
34
|
+
private insertNameSegments;
|
|
35
|
+
/**
|
|
36
|
+
* Insert multiple nodes in a transaction
|
|
37
|
+
*/
|
|
38
|
+
insertNodes(nodes: Node[]): void;
|
|
39
|
+
/**
|
|
40
|
+
* Update an existing node
|
|
41
|
+
*/
|
|
42
|
+
updateNode(node: Node): void;
|
|
43
|
+
/**
|
|
44
|
+
* Delete a node by ID
|
|
45
|
+
*/
|
|
46
|
+
deleteNode(id: string): void;
|
|
47
|
+
/**
|
|
48
|
+
* Delete all nodes for a file
|
|
49
|
+
*/
|
|
50
|
+
deleteNodesByFile(filePath: string): void;
|
|
51
|
+
/** Wipe the segment vocabulary. A full index calls this at its start; the
|
|
52
|
+
* node write path repopulates it as files (re-)index, so the end state is
|
|
53
|
+
* exactly the current names with no orphan rows. */
|
|
54
|
+
clearNameSegmentVocab(): void;
|
|
55
|
+
/** True when the vocab has no rows — an index built before the table existed.
|
|
56
|
+
* `sync` uses this to heal such databases (see rebuildNameSegmentVocabFrom). */
|
|
57
|
+
isNameSegmentVocabEmpty(): boolean;
|
|
58
|
+
/** One page of distinct segmentable node names, for batched vocab rebuilds
|
|
59
|
+
* (file basenames and import specifiers are excluded from the vocab — see
|
|
60
|
+
* insertNode). */
|
|
61
|
+
getDistinctNodeNames(limit: number, offset: number): string[];
|
|
62
|
+
/** Insert segments for a batch of names in one transaction (vocab heal path). */
|
|
63
|
+
insertNameSegmentsBatch(names: string[]): void;
|
|
64
|
+
/**
|
|
65
|
+
* Names whose segments cover at least `minWords` distinct PROMPT WORDS —
|
|
66
|
+
* the co-occurrence probe behind the prompt hook's medium tier: the words
|
|
67
|
+
* "state" and "machine" both being segments of `OrderStateMachine` is strong
|
|
68
|
+
* evidence the prompt names that symbol in prose. Ordered by coverage.
|
|
69
|
+
*
|
|
70
|
+
* Takes (segment variant → original word) pairs and folds variants back to
|
|
71
|
+
* their word INSIDE the SQL: a name matching both `service` and `services`
|
|
72
|
+
* counts ONE word, not two. Counting raw variants let plural-variant pairs
|
|
73
|
+
* of a single word tie with genuine two-word matches and — because ORDER
|
|
74
|
+
* BY/LIMIT run here, before any JS-side re-check — crowd a real match past
|
|
75
|
+
* the LIMIT on vocab-heavy repos (#1146).
|
|
76
|
+
*/
|
|
77
|
+
getSegmentCoOccurrence(variants: Array<{
|
|
78
|
+
segment: string;
|
|
79
|
+
word: string;
|
|
80
|
+
}>, minWords: number, limit: number): Array<{
|
|
81
|
+
name: string;
|
|
82
|
+
matches: number;
|
|
83
|
+
}>;
|
|
84
|
+
/** How many distinct names each segment appears in — the rarity signal that
|
|
85
|
+
* separates a discriminative word ("checkout") from a ubiquitous one ("state"). */
|
|
86
|
+
getSegmentNameCounts(segments: string[]): Map<string, number>;
|
|
87
|
+
/** Names containing the given segment (rare-single-word tier). */
|
|
88
|
+
getNamesForSegment(segment: string, limit: number): string[];
|
|
89
|
+
/**
|
|
90
|
+
* Get a node by ID
|
|
91
|
+
*/
|
|
92
|
+
getNodeById(id: string): Node | null;
|
|
93
|
+
/**
|
|
94
|
+
* Batch lookup: fetch many nodes by ID in a single SQL round-trip.
|
|
95
|
+
*
|
|
96
|
+
* Replaces the N+1 pattern in graph traversal where every edge would
|
|
97
|
+
* trigger its own `getNodeById` call. For a function with 50 callers
|
|
98
|
+
* this collapses 50 point reads into one IN-list query (~10-50x
|
|
99
|
+
* faster end-to-end).
|
|
100
|
+
*
|
|
101
|
+
* Returns a Map keyed by id so callers can preserve their own ordering
|
|
102
|
+
* (typically the order edges were returned from the graph). Missing IDs
|
|
103
|
+
* are simply absent from the map.
|
|
104
|
+
*
|
|
105
|
+
* Cache-aware: ids already in the LRU cache are served from memory and
|
|
106
|
+
* the SQL query only touches the misses.
|
|
107
|
+
*/
|
|
108
|
+
getNodesByIds(ids: readonly string[]): Map<string, Node>;
|
|
109
|
+
private getExistingNodeIds;
|
|
110
|
+
/**
|
|
111
|
+
* Add a node to the cache, evicting oldest if needed
|
|
112
|
+
*/
|
|
113
|
+
private cacheNode;
|
|
114
|
+
/**
|
|
115
|
+
* Clear the node cache
|
|
116
|
+
*/
|
|
117
|
+
clearCache(): void;
|
|
118
|
+
/**
|
|
119
|
+
* Get all nodes in a file
|
|
120
|
+
*/
|
|
121
|
+
getNodesByFile(filePath: string): Node[];
|
|
122
|
+
/**
|
|
123
|
+
* Find the file that holds the densest concentration of the project's
|
|
124
|
+
* internal call graph — the "core" file. Used by context-builder to
|
|
125
|
+
* boost ranking of symbols in that file's directory (so e.g. sinatra
|
|
126
|
+
* queries surface `lib/sinatra/base.rb`'s `route!` instead of
|
|
127
|
+
* `sinatra-contrib/lib/sinatra/multi_route.rb`'s `route` extension).
|
|
128
|
+
*
|
|
129
|
+
* Returns null if no file has a meaningful concentration (e.g. spread
|
|
130
|
+
* evenly across many files, or empty index).
|
|
131
|
+
*
|
|
132
|
+
* "Internal" = source and target are in the same file. Cross-file
|
|
133
|
+
* edges aren't useful here — they don't tell us which file is the
|
|
134
|
+
* functional center.
|
|
135
|
+
*
|
|
136
|
+
* Excludes test/spec files from candidacy via path-pattern. The agent's
|
|
137
|
+
* typical question is "how does X work", not "how is X tested", so
|
|
138
|
+
* boosting a test file's directory would be a misfire.
|
|
139
|
+
*/
|
|
140
|
+
getDominantFile(): {
|
|
141
|
+
filePath: string;
|
|
142
|
+
edgeCount: number;
|
|
143
|
+
nextEdgeCount: number;
|
|
144
|
+
} | null;
|
|
145
|
+
/**
|
|
146
|
+
* Find the file that holds the densest concentration of the project's
|
|
147
|
+
* `route` nodes (framework-emitted: Express/Gin/Flask/Rails/Drupal/etc.).
|
|
148
|
+
* Used by handleContext on small repos to inline the project's routing
|
|
149
|
+
* config when the agent's query is about request flow — eliminating the
|
|
150
|
+
* "Glob + Read routes.rb" pattern that beats bhgraph on tiny realworld
|
|
151
|
+
* template repos.
|
|
152
|
+
*
|
|
153
|
+
* Excludes test/generated files from candidacy. Returns null if there
|
|
154
|
+
* are fewer than 3 non-test routes total, or if no file holds at least
|
|
155
|
+
* 30% of them (diffuse routing → no single answer file).
|
|
156
|
+
*/
|
|
157
|
+
getTopRouteFile(): {
|
|
158
|
+
filePath: string;
|
|
159
|
+
routeCount: number;
|
|
160
|
+
totalRoutes: number;
|
|
161
|
+
} | null;
|
|
162
|
+
/**
|
|
163
|
+
* Build a URL → handler manifest from the index. Each route node's
|
|
164
|
+
* `references` edge points at the function/method that handles the
|
|
165
|
+
* request. We join them in one pass; the agent gets the canonical
|
|
166
|
+
* routing answer ("POST /users/login → AuthController#login") without
|
|
167
|
+
* having to parse the framework's route DSL itself.
|
|
168
|
+
*
|
|
169
|
+
* Also returns the file with the most handler endpoints — used as the
|
|
170
|
+
* "top handler file" to inline source for, so the agent has both the
|
|
171
|
+
* mapping AND the handler implementations.
|
|
172
|
+
*/
|
|
173
|
+
getRoutingManifest(limit?: number): {
|
|
174
|
+
entries: Array<{
|
|
175
|
+
url: string;
|
|
176
|
+
handler: string;
|
|
177
|
+
handlerFile: string;
|
|
178
|
+
handlerLine: number;
|
|
179
|
+
handlerKind: string;
|
|
180
|
+
}>;
|
|
181
|
+
topHandlerFile: string | null;
|
|
182
|
+
topHandlerFileCount: number;
|
|
183
|
+
totalRoutes: number;
|
|
184
|
+
} | null;
|
|
185
|
+
/**
|
|
186
|
+
* Get all nodes of a specific kind
|
|
187
|
+
*/
|
|
188
|
+
getNodesByKind(kind: NodeKind): Node[];
|
|
189
|
+
/**
|
|
190
|
+
* Stream every node of a kind one at a time (lazy) instead of materializing
|
|
191
|
+
* them all like {@link getNodesByKind}. For unbounded kinds (`function`,
|
|
192
|
+
* `method`) on a symbol-dense project the full array is gigabytes; the
|
|
193
|
+
* dynamic-edge synthesizers only scan-and-filter, so they iterate to keep
|
|
194
|
+
* memory O(1) in the node count rather than O(nodes) (#610).
|
|
195
|
+
*/
|
|
196
|
+
iterateNodesByKind(kind: NodeKind): IterableIterator<Node>;
|
|
197
|
+
/**
|
|
198
|
+
* Get all nodes in the database
|
|
199
|
+
*/
|
|
200
|
+
getAllNodes(): Node[];
|
|
201
|
+
/**
|
|
202
|
+
* Get nodes by exact name match (uses idx_nodes_name index)
|
|
203
|
+
*/
|
|
204
|
+
getNodesByName(name: string): Node[];
|
|
205
|
+
/**
|
|
206
|
+
* Nodes whose name starts with `prefix`, by index range scan (a LIKE would
|
|
207
|
+
* skip idx_nodes_name under SQLite's default case-insensitive LIKE).
|
|
208
|
+
*/
|
|
209
|
+
getNodesByNamePrefix(prefix: string, limit?: number): Node[];
|
|
210
|
+
/**
|
|
211
|
+
* Get nodes by exact qualified name match (uses idx_nodes_qualified_name index)
|
|
212
|
+
*/
|
|
213
|
+
getNodesByQualifiedNameExact(qualifiedName: string): Node[];
|
|
214
|
+
/**
|
|
215
|
+
* Get nodes by lowercase name match (uses idx_nodes_lower_name expression index)
|
|
216
|
+
*/
|
|
217
|
+
getNodesByLowerName(lowerName: string): Node[];
|
|
218
|
+
/**
|
|
219
|
+
* Search nodes by name using FTS with fallback to LIKE for better matching
|
|
220
|
+
*
|
|
221
|
+
* Search strategy:
|
|
222
|
+
* 1. Try FTS5 prefix match (query*) for word-start matching
|
|
223
|
+
* 2. If no results, try LIKE for substring matching (e.g., "signIn" finds "signInWithGoogle")
|
|
224
|
+
* 3. Score results based on match quality
|
|
225
|
+
*/
|
|
226
|
+
searchNodes(query: string, options?: SearchOptions): SearchResult[];
|
|
227
|
+
/**
|
|
228
|
+
* Match-everything path used when the user supplied only field
|
|
229
|
+
* filters (`kind:function lang:typescript`) with no text. Returns
|
|
230
|
+
* candidates ordered by name; the caller's filter pass narrows to
|
|
231
|
+
* what was asked for.
|
|
232
|
+
*/
|
|
233
|
+
private searchAllByFilters;
|
|
234
|
+
/**
|
|
235
|
+
* Fuzzy fallback: when zero FTS/LIKE hits, try an edit-distance
|
|
236
|
+
* sweep over the distinct symbol-name set. Caps `maxDist` at 2 so
|
|
237
|
+
* `getUssr` finds `getUser` but `process` doesn't match `prosody`.
|
|
238
|
+
* Bounded edit distance keeps each comparison cheap; the per-query
|
|
239
|
+
* scan is O(distinct-name-count) which is far smaller than total
|
|
240
|
+
* node count on any real codebase.
|
|
241
|
+
*/
|
|
242
|
+
private searchNodesFuzzy;
|
|
243
|
+
/**
|
|
244
|
+
* FTS5 search with prefix matching
|
|
245
|
+
*/
|
|
246
|
+
private searchNodesFTS;
|
|
247
|
+
/**
|
|
248
|
+
* LIKE-based substring search for cases where FTS doesn't match
|
|
249
|
+
* Useful for camelCase matching (e.g., "signIn" finds "signInWithGoogle")
|
|
250
|
+
*/
|
|
251
|
+
private searchNodesLike;
|
|
252
|
+
/**
|
|
253
|
+
* Find nodes by exact name match
|
|
254
|
+
*
|
|
255
|
+
* Used for hybrid search - looks up symbols by exact name or case-insensitive match.
|
|
256
|
+
* Returns high-confidence matches for known symbol names extracted from query.
|
|
257
|
+
*
|
|
258
|
+
* @param names - Array of symbol names to look up
|
|
259
|
+
* @param options - Search options (kinds, languages, limit)
|
|
260
|
+
* @returns SearchResult array with exact matches scored at 1.0
|
|
261
|
+
*/
|
|
262
|
+
findNodesByExactName(names: string[], options?: SearchOptions): SearchResult[];
|
|
263
|
+
/**
|
|
264
|
+
* Find nodes whose name contains a substring (LIKE-based).
|
|
265
|
+
* Useful for CamelCase-part matching where FTS fails because
|
|
266
|
+
* e.g. "TransportSearchAction" is one FTS token, not matchable by "Search"*.
|
|
267
|
+
*
|
|
268
|
+
* Results are ordered by name length (shorter = more likely to be the core type).
|
|
269
|
+
*/
|
|
270
|
+
findNodesByNameSubstring(substring: string, options?: SearchOptions & {
|
|
271
|
+
excludePrefix?: boolean;
|
|
272
|
+
}): SearchResult[];
|
|
273
|
+
/**
|
|
274
|
+
* Insert a new edge
|
|
275
|
+
*/
|
|
276
|
+
insertEdge(edge: Edge): void;
|
|
277
|
+
/**
|
|
278
|
+
* Insert multiple edges in a transaction
|
|
279
|
+
*/
|
|
280
|
+
insertEdges(edges: Edge[]): void;
|
|
281
|
+
/**
|
|
282
|
+
* Delete all edges from a source node
|
|
283
|
+
*/
|
|
284
|
+
deleteEdgesBySource(sourceId: string): void;
|
|
285
|
+
/**
|
|
286
|
+
* Get outgoing edges from a node
|
|
287
|
+
*/
|
|
288
|
+
getOutgoingEdges(sourceId: string, kinds?: EdgeKind[], provenance?: string): Edge[];
|
|
289
|
+
/**
|
|
290
|
+
* Get incoming edges to a node
|
|
291
|
+
*/
|
|
292
|
+
getIncomingEdges(targetId: string, kinds?: EdgeKind[]): Edge[];
|
|
293
|
+
/**
|
|
294
|
+
* Find all edges where both source and target are in the given node set.
|
|
295
|
+
* Useful for recovering inter-node connectivity after BFS.
|
|
296
|
+
*/
|
|
297
|
+
findEdgesBetweenNodes(nodeIds: string[], kinds?: EdgeKind[]): Edge[];
|
|
298
|
+
/**
|
|
299
|
+
* Distinct file paths that DEPEND ON `filePath`: every file containing a
|
|
300
|
+
* symbol with a cross-file edge (any kind except `contains`) into a symbol
|
|
301
|
+
* of this file. This is the file-level projection of the symbol dependency
|
|
302
|
+
* graph and the basis for blast-radius / `affected` test selection.
|
|
303
|
+
*
|
|
304
|
+
* It deliberately does NOT restrict to `imports` edges. In this graph an
|
|
305
|
+
* `imports` edge connects a file to its own local import declarations
|
|
306
|
+
* (it is always same-file), so an imports-only lookup returns zero
|
|
307
|
+
* cross-file dependents for every file. The real cross-file dependency
|
|
308
|
+
* signal is the resolved call/reference graph — calls, references,
|
|
309
|
+
* instantiates, extends, implements, overrides, type_of, returns,
|
|
310
|
+
* decorates — exactly what {@link GraphTraverser.getImpactRadius} traverses.
|
|
311
|
+
* `contains` is excluded: a parent containing a symbol does not *depend* on
|
|
312
|
+
* it. One indexed query (idx_nodes_file_path + idx_edges_target_kind).
|
|
313
|
+
*/
|
|
314
|
+
getDependentFilePaths(filePath: string): string[];
|
|
315
|
+
/**
|
|
316
|
+
* Distinct file paths that `filePath` DEPENDS ON — the inverse of
|
|
317
|
+
* {@link getDependentFilePaths}: every file containing a symbol that a
|
|
318
|
+
* symbol of this file has a cross-file edge into. Same edge-kind rules
|
|
319
|
+
* (all kinds except `contains`); same reason imports-only is insufficient.
|
|
320
|
+
*/
|
|
321
|
+
getDependencyFilePaths(filePath: string): string[];
|
|
322
|
+
/**
|
|
323
|
+
* Cross-file edges whose TARGET is a node in `filePath` and whose SOURCE is a
|
|
324
|
+
* node in a *different* file, paired with the target node's (name, kind) so a
|
|
325
|
+
* caller can re-resolve the edge to the re-indexed target's new ID (node IDs
|
|
326
|
+
* are `sha256(filePath:kind:name:line)`, so any line shift in the callee file
|
|
327
|
+
* changes target IDs and a naive re-insert by old ID silently drops them).
|
|
328
|
+
* Used by `storeExtractionResult` to preserve incoming edges across a file
|
|
329
|
+
* re-index (issue #899). Same edge-kind rules as
|
|
330
|
+
* {@link getDependentFilePaths}: all kinds except `contains`.
|
|
331
|
+
*/
|
|
332
|
+
getCrossFileIncomingEdgesWithTarget(filePath: string): Array<Edge & {
|
|
333
|
+
targetName: string;
|
|
334
|
+
targetKind: NodeKind;
|
|
335
|
+
}>;
|
|
336
|
+
/**
|
|
337
|
+
* Insert or update a file record
|
|
338
|
+
*/
|
|
339
|
+
upsertFile(file: FileRecord): void;
|
|
340
|
+
/**
|
|
341
|
+
* Delete a file record and its nodes
|
|
342
|
+
*/
|
|
343
|
+
deleteFile(filePath: string): void;
|
|
344
|
+
/**
|
|
345
|
+
* Get a file record by path
|
|
346
|
+
*/
|
|
347
|
+
getFileByPath(filePath: string): FileRecord | null;
|
|
348
|
+
/**
|
|
349
|
+
* Get all tracked files
|
|
350
|
+
*/
|
|
351
|
+
getAllFiles(): FileRecord[];
|
|
352
|
+
/**
|
|
353
|
+
* Most recent index timestamp (ms since epoch) across all tracked files, or
|
|
354
|
+
* null when nothing is indexed yet. One indexed aggregate, no per-row scan. (#329)
|
|
355
|
+
*/
|
|
356
|
+
getLastIndexedAt(): number | null;
|
|
357
|
+
/**
|
|
358
|
+
* Get files that need re-indexing (hash changed)
|
|
359
|
+
*/
|
|
360
|
+
getStaleFiles(currentHashes: Map<string, string>): FileRecord[];
|
|
361
|
+
/**
|
|
362
|
+
* Insert an unresolved reference
|
|
363
|
+
*/
|
|
364
|
+
insertUnresolvedRef(ref: UnresolvedReference): void;
|
|
365
|
+
/**
|
|
366
|
+
* Insert multiple unresolved references in a transaction
|
|
367
|
+
*/
|
|
368
|
+
insertUnresolvedRefsBatch(refs: UnresolvedReference[]): void;
|
|
369
|
+
/**
|
|
370
|
+
* Delete unresolved references from a node
|
|
371
|
+
*/
|
|
372
|
+
deleteUnresolvedByNode(nodeId: string): void;
|
|
373
|
+
/**
|
|
374
|
+
* Get unresolved references by name (for resolution)
|
|
375
|
+
*/
|
|
376
|
+
getUnresolvedByName(name: string): UnresolvedReference[];
|
|
377
|
+
/**
|
|
378
|
+
* Get all unresolved references
|
|
379
|
+
*/
|
|
380
|
+
getUnresolvedReferences(): UnresolvedReference[];
|
|
381
|
+
/**
|
|
382
|
+
* Get the count of unresolved references without loading them into memory
|
|
383
|
+
*/
|
|
384
|
+
getUnresolvedReferencesCount(): number;
|
|
385
|
+
/**
|
|
386
|
+
* Get a batch of unresolved references using LIMIT/OFFSET pagination.
|
|
387
|
+
* Used to process references in bounded memory chunks.
|
|
388
|
+
*/
|
|
389
|
+
getUnresolvedReferencesBatch(offset: number, limit: number): UnresolvedReference[];
|
|
390
|
+
/**
|
|
391
|
+
* Get all tracked file paths (lightweight — no full FileRecord objects)
|
|
392
|
+
*/
|
|
393
|
+
getAllFilePaths(): string[];
|
|
394
|
+
/**
|
|
395
|
+
* Get all distinct node names (lightweight — just name strings for pre-filtering)
|
|
396
|
+
*/
|
|
397
|
+
getAllNodeNames(): string[];
|
|
398
|
+
/**
|
|
399
|
+
* Get unresolved references scoped to specific file paths.
|
|
400
|
+
* Uses the idx_unresolved_file_path index for efficient lookup.
|
|
401
|
+
*/
|
|
402
|
+
getUnresolvedReferencesByFiles(filePaths: string[]): UnresolvedReference[];
|
|
403
|
+
/**
|
|
404
|
+
* Delete all unresolved references (after resolution)
|
|
405
|
+
*/
|
|
406
|
+
clearUnresolvedReferences(): void;
|
|
407
|
+
/**
|
|
408
|
+
* Delete resolved references by their IDs
|
|
409
|
+
*/
|
|
410
|
+
deleteResolvedReferences(fromNodeIds: string[]): void;
|
|
411
|
+
/**
|
|
412
|
+
* Delete specific resolved references by (fromNodeId, referenceName, referenceKind) tuples.
|
|
413
|
+
* More precise than deleteResolvedReferences — only removes refs that were actually resolved.
|
|
414
|
+
*/
|
|
415
|
+
deleteSpecificResolvedReferences(refs: Array<{
|
|
416
|
+
fromNodeId: string;
|
|
417
|
+
referenceName: string;
|
|
418
|
+
referenceKind: string;
|
|
419
|
+
}>): void;
|
|
420
|
+
/**
|
|
421
|
+
* Lightweight (nodes, edges) count snapshot. Used around an index/sync
|
|
422
|
+
* run to compute true additions across extraction + resolution +
|
|
423
|
+
* synthesis — the per-phase counter in the orchestrator only sees
|
|
424
|
+
* extraction's contribution, which is why the CLI summary under-reported
|
|
425
|
+
* the edge count (resolution + synthesizer edges were invisible).
|
|
426
|
+
*/
|
|
427
|
+
getNodeAndEdgeCount(): {
|
|
428
|
+
nodes: number;
|
|
429
|
+
edges: number;
|
|
430
|
+
};
|
|
431
|
+
/**
|
|
432
|
+
* Get graph statistics
|
|
433
|
+
*/
|
|
434
|
+
getStats(): GraphStats;
|
|
435
|
+
/**
|
|
436
|
+
* Get a metadata value by key
|
|
437
|
+
*/
|
|
438
|
+
getMetadata(key: string): string | null;
|
|
439
|
+
/**
|
|
440
|
+
* Set a metadata key-value pair (upsert)
|
|
441
|
+
*/
|
|
442
|
+
setMetadata(key: string, value: string): void;
|
|
443
|
+
/**
|
|
444
|
+
* Get all metadata as a key-value record
|
|
445
|
+
*/
|
|
446
|
+
getAllMetadata(): Record<string, string>;
|
|
447
|
+
/**
|
|
448
|
+
* Clear all data from the database
|
|
449
|
+
*/
|
|
450
|
+
clear(): void;
|
|
451
|
+
}
|
|
452
|
+
//# sourceMappingURL=queries.d.ts.map
|