gitnexus 1.6.10-rc.21 → 1.6.10-rc.211
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/README.md +212 -22
- package/dist/_shared/graph/types.d.ts +27 -8
- package/dist/_shared/graph/types.d.ts.map +1 -1
- package/dist/_shared/index.d.ts +4 -3
- package/dist/_shared/index.d.ts.map +1 -1
- package/dist/_shared/index.js +1 -1
- package/dist/_shared/index.js.map +1 -1
- package/dist/_shared/integrations/circuit-breaker.d.ts.map +1 -1
- package/dist/_shared/integrations/circuit-breaker.js.map +1 -1
- package/dist/_shared/integrations/resilient-fetch.d.ts +19 -1
- package/dist/_shared/integrations/resilient-fetch.d.ts.map +1 -1
- package/dist/_shared/integrations/resilient-fetch.js +23 -10
- package/dist/_shared/integrations/resilient-fetch.js.map +1 -1
- package/dist/_shared/language-detection.d.ts.map +1 -1
- package/dist/_shared/lbug/schema-constants.d.ts +2 -2
- package/dist/_shared/lbug/schema-constants.d.ts.map +1 -1
- package/dist/_shared/lbug/schema-constants.js +3 -0
- package/dist/_shared/lbug/schema-constants.js.map +1 -1
- package/dist/_shared/scope-resolution/callable-flow-site.d.ts +110 -0
- package/dist/_shared/scope-resolution/callable-flow-site.d.ts.map +1 -0
- package/dist/_shared/scope-resolution/callable-flow-site.js +11 -0
- package/dist/_shared/scope-resolution/callable-flow-site.js.map +1 -0
- package/dist/_shared/scope-resolution/evidence-weights.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/finalize-algorithm.d.ts +6 -1
- package/dist/_shared/scope-resolution/finalize-algorithm.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/finalize-algorithm.js +316 -37
- package/dist/_shared/scope-resolution/finalize-algorithm.js.map +1 -1
- package/dist/_shared/scope-resolution/parsed-file.d.ts +7 -0
- package/dist/_shared/scope-resolution/parsed-file.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/reference-site.d.ts +124 -1
- package/dist/_shared/scope-resolution/reference-site.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/registries/field-registry.js.map +1 -1
- package/dist/_shared/scope-resolution/registries/lookup-core.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/registries/lookup-core.js +58 -2
- package/dist/_shared/scope-resolution/registries/lookup-core.js.map +1 -1
- package/dist/_shared/scope-resolution/registries/method-registry.js.map +1 -1
- package/dist/_shared/scope-resolution/scope-tree.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/scope-tree.js.map +1 -1
- package/dist/_shared/scope-resolution/symbol-definition.d.ts +47 -0
- package/dist/_shared/scope-resolution/symbol-definition.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/types.d.ts +297 -5
- package/dist/_shared/scope-resolution/types.d.ts.map +1 -1
- package/dist/cli/ai-context.d.ts +10 -2
- package/dist/cli/ai-context.js +128 -61
- package/dist/cli/analyze-config.d.ts +1 -1
- package/dist/cli/analyze-options.d.ts +131 -0
- package/dist/cli/analyze-options.js +1 -0
- package/dist/cli/analyze.d.ts +25 -114
- package/dist/cli/analyze.js +194 -36
- package/dist/cli/cli-message.d.ts +1 -1
- package/dist/cli/detect-changes-format.js +19 -2
- package/dist/cli/doctor.d.ts +23 -0
- package/dist/cli/doctor.js +72 -9
- package/dist/cli/editor-targets.js +6 -0
- package/dist/cli/eval-server.d.ts +23 -1
- package/dist/cli/eval-server.js +128 -9
- package/dist/cli/format-symbol.d.ts +15 -0
- package/dist/cli/format-symbol.js +17 -0
- package/dist/cli/generated-skill.d.ts +17 -0
- package/dist/cli/generated-skill.js +1 -0
- package/dist/cli/group.js +23 -2
- package/dist/cli/help-i18n.js +3 -0
- package/dist/cli/i18n/en.d.ts +17 -8
- package/dist/cli/i18n/en.js +19 -8
- package/dist/cli/i18n/resources.d.ts +26 -8
- package/dist/cli/i18n/zh-CN.d.ts +9 -0
- package/dist/cli/i18n/zh-CN.js +17 -8
- package/dist/cli/index.js +16 -9
- package/dist/cli/lazy-action.d.ts +7 -0
- package/dist/cli/lazy-action.js +27 -0
- package/dist/cli/mcp.js +6 -3
- package/dist/cli/resolve-invocation.d.ts +7 -3
- package/dist/cli/resolve-invocation.js +7 -3
- package/dist/cli/setup.d.ts +8 -0
- package/dist/cli/setup.js +30 -7
- package/dist/cli/skill-gen.d.ts +1 -6
- package/dist/cli/skill-gen.js +88 -18
- package/dist/cli/standard-skills.d.ts +76 -0
- package/dist/cli/standard-skills.js +45 -0
- package/dist/cli/status.d.ts +4 -1
- package/dist/cli/status.js +57 -4
- package/dist/cli/tool.d.ts +1 -0
- package/dist/cli/tool.js +75 -7
- package/dist/cli/uninstall.js +7 -2
- package/dist/cli/wiki.d.ts +1 -0
- package/dist/cli/wiki.js +59 -10
- package/dist/config/ignore-service.d.ts +2 -0
- package/dist/config/ignore-service.js +31 -4
- package/dist/core/analysis-features.d.ts +21 -0
- package/dist/core/analysis-features.js +59 -0
- package/dist/core/analyzer-identity.d.ts +154 -0
- package/dist/core/analyzer-identity.js +2158 -0
- package/dist/core/augmentation/engine.js +95 -76
- package/dist/core/embedding-checkpoint.d.ts +143 -0
- package/dist/core/embedding-checkpoint.js +221 -0
- package/dist/core/embedding-count.d.ts +61 -0
- package/dist/core/embedding-count.js +69 -0
- package/dist/core/embeddings/ast-utils.js +9 -1
- package/dist/core/embeddings/embedder.d.ts +3 -2
- package/dist/core/embeddings/embedder.js +8 -5
- package/dist/core/embeddings/embedding-identity.d.ts +11 -0
- package/dist/core/embeddings/embedding-identity.js +24 -0
- package/dist/core/embeddings/embedding-pipeline.d.ts +24 -1
- package/dist/core/embeddings/embedding-pipeline.js +341 -19
- package/dist/core/embeddings/http-client.d.ts +10 -2
- package/dist/core/embeddings/http-client.js +282 -47
- package/dist/core/embeddings/node-module-compat.d.ts +4 -2
- package/dist/core/embeddings/node-module-compat.js +4 -2
- package/dist/core/embeddings/onnxruntime-common-resolver.js +5 -5
- package/dist/core/embeddings/onnxruntime-node-resolver.js +2 -2
- package/dist/core/embeddings/runtime-install.js +1 -1
- package/dist/core/git-staleness.js +1 -1
- package/dist/core/graph/graph.js +3 -0
- package/dist/core/graph/import-cycles.d.ts +194 -3
- package/dist/core/graph/import-cycles.js +522 -73
- package/dist/core/graph/types.d.ts +18 -0
- package/dist/core/group/bridge-db.js +5 -27
- package/dist/core/group/cross-impact.d.ts +21 -0
- package/dist/core/group/cross-impact.js +128 -15
- package/dist/core/group/cross-trace.js +27 -16
- package/dist/core/group/extractors/http-patterns/java.js +91 -14
- package/dist/core/group/extractors/http-patterns/node.js +19 -0
- package/dist/core/group/extractors/http-patterns/types.d.ts +8 -0
- package/dist/core/group/extractors/http-route-extractor.d.ts +1 -0
- package/dist/core/group/extractors/http-route-extractor.js +122 -48
- package/dist/core/group/extractors/include-extractor.js +20 -2
- package/dist/core/group/extractors/manifest-extractor.d.ts +1 -1
- package/dist/core/group/extractors/manifest-extractor.js +7 -7
- package/dist/core/group/service.js +10 -1
- package/dist/core/group/storage.js +2 -33
- package/dist/core/group/types.d.ts +18 -0
- package/dist/core/incremental/subgraph-extract.d.ts +9 -6
- package/dist/core/incremental/subgraph-extract.js +33 -10
- package/dist/core/index-freshness.d.ts +80 -0
- package/dist/core/index-freshness.js +120 -0
- package/dist/core/ingestion/call-processor.d.ts +13 -1
- package/dist/core/ingestion/call-processor.js +110 -3
- package/dist/core/ingestion/cfg/callee-cell-format.d.ts +42 -0
- package/dist/core/ingestion/cfg/callee-cell-format.js +42 -0
- package/dist/core/ingestion/cfg/emit.d.ts +8 -23
- package/dist/core/ingestion/cfg/emit.js +9 -23
- package/dist/core/ingestion/class-extractors/configs/go.js +10 -5
- package/dist/core/ingestion/class-extractors/configs/jvm.js +29 -0
- package/dist/core/ingestion/cluster-enricher.js +8 -4
- package/dist/core/ingestion/cobol/cobol-preprocessor.js +1 -1
- package/dist/core/ingestion/community-processor.d.ts +21 -3
- package/dist/core/ingestion/community-processor.js +88 -83
- package/dist/core/ingestion/di-extractors/index.d.ts +22 -34
- package/dist/core/ingestion/di-extractors/index.js +17 -18
- package/dist/core/ingestion/di-extractors/spring.d.ts +27 -5
- package/dist/core/ingestion/di-extractors/spring.js +87 -3
- package/dist/core/ingestion/di-extractors/types.d.ts +60 -0
- package/dist/core/ingestion/di-extractors/types.js +15 -0
- package/dist/core/ingestion/emit-references.js +4 -0
- package/dist/core/ingestion/filesystem-walker.js +16 -12
- package/dist/core/ingestion/finalize-orchestrator.js +1 -0
- package/dist/core/ingestion/frameworks/spring/analysis-features.d.ts +9 -0
- package/dist/core/ingestion/frameworks/spring/analysis-features.js +41 -0
- package/dist/core/ingestion/frameworks/spring/annotation-arguments.d.ts +13 -0
- package/dist/core/ingestion/frameworks/spring/annotation-arguments.js +227 -0
- package/dist/core/ingestion/frameworks/spring/aop-candidates.d.ts +15 -0
- package/dist/core/ingestion/frameworks/spring/aop-candidates.js +85 -0
- package/dist/core/ingestion/frameworks/spring/aop.d.ts +118 -0
- package/dist/core/ingestion/frameworks/spring/aop.js +476 -0
- package/dist/core/ingestion/frameworks/spring/auto-configuration.d.ts +8 -0
- package/dist/core/ingestion/frameworks/spring/auto-configuration.js +16 -0
- package/dist/core/ingestion/frameworks/spring/bean-candidates.d.ts +30 -0
- package/dist/core/ingestion/frameworks/spring/bean-candidates.js +182 -0
- package/dist/core/ingestion/frameworks/spring/bean-catalog.d.ts +12 -0
- package/dist/core/ingestion/frameworks/spring/bean-catalog.js +27 -0
- package/dist/core/ingestion/frameworks/spring/bean-factories.d.ts +33 -0
- package/dist/core/ingestion/frameworks/spring/bean-factories.js +65 -0
- package/dist/core/ingestion/frameworks/spring/conditionals.d.ts +25 -0
- package/dist/core/ingestion/frameworks/spring/conditionals.js +319 -0
- package/dist/core/ingestion/frameworks/spring/config-bindings.d.ts +24 -0
- package/dist/core/ingestion/frameworks/spring/config-bindings.js +115 -0
- package/dist/core/ingestion/frameworks/spring/di-metadata.d.ts +48 -0
- package/dist/core/ingestion/frameworks/spring/di-metadata.js +379 -0
- package/dist/core/ingestion/frameworks/spring/non-http-handlers.d.ts +28 -0
- package/dist/core/ingestion/frameworks/spring/non-http-handlers.js +152 -0
- package/dist/core/ingestion/frameworks/spring/resource-injection.d.ts +5 -0
- package/dist/core/ingestion/frameworks/spring/resource-injection.js +91 -0
- package/dist/core/ingestion/import-resolvers/configs/csharp.js +5 -1
- package/dist/core/ingestion/import-resolvers/configs/swift.js +13 -0
- package/dist/core/ingestion/import-resolvers/csharp.d.ts +9 -1
- package/dist/core/ingestion/import-resolvers/csharp.js +234 -27
- package/dist/core/ingestion/import-resolvers/go.d.ts +11 -1
- package/dist/core/ingestion/import-resolvers/go.js +44 -17
- package/dist/core/ingestion/import-resolvers/jvm.d.ts +2 -2
- package/dist/core/ingestion/import-resolvers/node-workspace-packages.d.ts +90 -0
- package/dist/core/ingestion/import-resolvers/node-workspace-packages.js +428 -0
- package/dist/core/ingestion/import-resolvers/package-dir-index.d.ts +124 -0
- package/dist/core/ingestion/import-resolvers/package-dir-index.js +223 -0
- package/dist/core/ingestion/import-resolvers/pass-cache.d.ts +50 -0
- package/dist/core/ingestion/import-resolvers/pass-cache.js +60 -0
- package/dist/core/ingestion/import-resolvers/per-file-set.d.ts +71 -0
- package/dist/core/ingestion/import-resolvers/per-file-set.js +11 -0
- package/dist/core/ingestion/import-resolvers/php.d.ts +1 -1
- package/dist/core/ingestion/import-resolvers/php.js +27 -8
- package/dist/core/ingestion/import-resolvers/python-file-index.d.ts +201 -0
- package/dist/core/ingestion/import-resolvers/python-file-index.js +302 -0
- package/dist/core/ingestion/import-resolvers/python.js +25 -6
- package/dist/core/ingestion/import-resolvers/ruby.d.ts +1 -1
- package/dist/core/ingestion/import-resolvers/rust.d.ts +2 -2
- package/dist/core/ingestion/import-resolvers/standard.d.ts +1 -1
- package/dist/core/ingestion/import-resolvers/types.d.ts +1 -12
- package/dist/core/ingestion/import-resolvers/utils.d.ts +65 -6
- package/dist/core/ingestion/import-resolvers/utils.js +215 -36
- package/dist/core/ingestion/import-resolvers/workspace-file-index.d.ts +72 -0
- package/dist/core/ingestion/import-resolvers/workspace-file-index.js +58 -0
- package/dist/core/ingestion/language-config.d.ts +20 -1
- package/dist/core/ingestion/language-config.js +18 -23
- package/dist/core/ingestion/language-provider.d.ts +133 -7
- package/dist/core/ingestion/languages/c/captures.js +63 -0
- package/dist/core/ingestion/languages/c/import-target.js +12 -16
- package/dist/core/ingestion/languages/c/query.js +17 -0
- package/dist/core/ingestion/languages/c/scope-resolver.js +26 -19
- package/dist/core/ingestion/languages/c/static-linkage.js +12 -16
- package/dist/core/ingestion/languages/c-cpp.js +13 -0
- package/dist/core/ingestion/languages/cobol/captures.js +93 -0
- package/dist/core/ingestion/languages/cobol/scope-resolver.js +34 -20
- package/dist/core/ingestion/languages/cobol.js +13 -0
- package/dist/core/ingestion/languages/cpp/adl.d.ts +2 -2
- package/dist/core/ingestion/languages/cpp/adl.js +67 -44
- package/dist/core/ingestion/languages/cpp/captures.js +222 -3
- package/dist/core/ingestion/languages/cpp/file-local-linkage.js +11 -15
- package/dist/core/ingestion/languages/cpp/inline-namespaces.d.ts +28 -8
- package/dist/core/ingestion/languages/cpp/inline-namespaces.js +242 -68
- package/dist/core/ingestion/languages/cpp/interpret.d.ts +2 -0
- package/dist/core/ingestion/languages/cpp/interpret.js +126 -6
- package/dist/core/ingestion/languages/cpp/query.js +106 -0
- package/dist/core/ingestion/languages/cpp/scope-resolver.js +62 -20
- package/dist/core/ingestion/languages/csharp/accessor-unwrap.d.ts +2 -15
- package/dist/core/ingestion/languages/csharp/accessor-unwrap.js +18 -10
- package/dist/core/ingestion/languages/csharp/captures.js +44 -0
- package/dist/core/ingestion/languages/csharp/import-target.js +46 -72
- package/dist/core/ingestion/languages/csharp/namespace-siblings.js +5 -1
- package/dist/core/ingestion/languages/csharp/query.js +25 -5
- package/dist/core/ingestion/languages/csharp/scope-resolver.js +75 -2
- package/dist/core/ingestion/languages/dart/captures.d.ts +10 -0
- package/dist/core/ingestion/languages/dart/captures.js +686 -16
- package/dist/core/ingestion/languages/dart/extension-type-preprocess.d.ts +7 -0
- package/dist/core/ingestion/languages/dart/extension-type-preprocess.js +30 -0
- package/dist/core/ingestion/languages/dart/import-target.js +32 -9
- package/dist/core/ingestion/languages/dart/index.d.ts +1 -1
- package/dist/core/ingestion/languages/dart/index.js +1 -1
- package/dist/core/ingestion/languages/dart/query.js +98 -1
- package/dist/core/ingestion/languages/dart/scope-resolver.js +14 -3
- package/dist/core/ingestion/languages/dart/simple-hooks.js +9 -0
- package/dist/core/ingestion/languages/dart.js +8 -1
- package/dist/core/ingestion/languages/go/captures.js +142 -3
- package/dist/core/ingestion/languages/go/generic-type-parameters.d.ts +31 -0
- package/dist/core/ingestion/languages/go/generic-type-parameters.js +140 -0
- package/dist/core/ingestion/languages/go/import-target.d.ts +3 -10
- package/dist/core/ingestion/languages/go/import-target.js +34 -30
- package/dist/core/ingestion/languages/go/index.d.ts +1 -1
- package/dist/core/ingestion/languages/go/interface-impls.d.ts +9 -1
- package/dist/core/ingestion/languages/go/interface-impls.js +693 -87
- package/dist/core/ingestion/languages/go/interpret.d.ts +2 -0
- package/dist/core/ingestion/languages/go/interpret.js +22 -8
- package/dist/core/ingestion/languages/go/method-owners.js +31 -12
- package/dist/core/ingestion/languages/go/package-clause.d.ts +46 -0
- package/dist/core/ingestion/languages/go/package-clause.js +75 -0
- package/dist/core/ingestion/languages/go/package-siblings.js +7 -11
- package/dist/core/ingestion/languages/go/query.js +56 -3
- package/dist/core/ingestion/languages/go/scope-resolver.js +39 -0
- package/dist/core/ingestion/languages/go.js +9 -0
- package/dist/core/ingestion/languages/java/analysis-features.d.ts +7 -0
- package/dist/core/ingestion/languages/java/analysis-features.js +25 -0
- package/dist/core/ingestion/languages/java/capture-side-channel.d.ts +38 -0
- package/dist/core/ingestion/languages/java/capture-side-channel.js +124 -0
- package/dist/core/ingestion/languages/java/captures.d.ts +4 -3
- package/dist/core/ingestion/languages/java/captures.js +321 -49
- package/dist/core/ingestion/languages/java/import-target.d.ts +49 -9
- package/dist/core/ingestion/languages/java/import-target.js +68 -88
- package/dist/core/ingestion/languages/java/interpret.js +3 -2
- package/dist/core/ingestion/languages/java/module-resolution.d.ts +62 -0
- package/dist/core/ingestion/languages/java/module-resolution.js +142 -0
- package/dist/core/ingestion/languages/java/package-facts.d.ts +5 -0
- package/dist/core/ingestion/languages/java/package-facts.js +9 -0
- package/dist/core/ingestion/languages/java/package-siblings.d.ts +3 -16
- package/dist/core/ingestion/languages/java/package-siblings.js +8 -147
- package/dist/core/ingestion/languages/java/query.js +39 -3
- package/dist/core/ingestion/languages/java/record-components.d.ts +14 -0
- package/dist/core/ingestion/languages/java/record-components.js +185 -0
- package/dist/core/ingestion/languages/java/scope-resolver.js +35 -2
- package/dist/core/ingestion/languages/java/spring-aop.d.ts +12 -0
- package/dist/core/ingestion/languages/java/spring-aop.js +49 -0
- package/dist/core/ingestion/languages/java/spring-bean-metadata.d.ts +2 -0
- package/dist/core/ingestion/languages/java/spring-bean-metadata.js +8 -0
- package/dist/core/ingestion/languages/java/spring-conditionals.d.ts +11 -0
- package/dist/core/ingestion/languages/java/spring-conditionals.js +48 -0
- package/dist/core/ingestion/languages/java/spring-config-bindings.d.ts +23 -0
- package/dist/core/ingestion/languages/java/spring-config-bindings.js +215 -0
- package/dist/core/ingestion/languages/java/spring-di.d.ts +20 -0
- package/dist/core/ingestion/languages/java/spring-di.js +160 -0
- package/dist/core/ingestion/languages/java/spring-non-http-handlers.d.ts +7 -0
- package/dist/core/ingestion/languages/java/spring-non-http-handlers.js +32 -0
- package/dist/core/ingestion/languages/java.js +76 -3
- package/dist/core/ingestion/languages/javascript/captures.d.ts +6 -1
- package/dist/core/ingestion/languages/javascript/captures.js +278 -4
- package/dist/core/ingestion/languages/javascript/import-target.d.ts +17 -21
- package/dist/core/ingestion/languages/javascript/import-target.js +24 -41
- package/dist/core/ingestion/languages/javascript/index.d.ts +54 -5
- package/dist/core/ingestion/languages/javascript/index.js +54 -5
- package/dist/core/ingestion/languages/javascript/query.d.ts +1 -0
- package/dist/core/ingestion/languages/javascript/query.js +232 -5
- package/dist/core/ingestion/languages/javascript/scope-resolver.js +12 -0
- package/dist/core/ingestion/languages/javascript/simple-hooks.js +2 -1
- package/dist/core/ingestion/languages/jvm/package-facts.d.ts +35 -0
- package/dist/core/ingestion/languages/jvm/package-facts.js +40 -0
- package/dist/core/ingestion/languages/jvm/package-siblings.d.ts +14 -0
- package/dist/core/ingestion/languages/jvm/package-siblings.js +197 -0
- package/dist/core/ingestion/languages/kotlin/capture-side-channel.d.ts +40 -3
- package/dist/core/ingestion/languages/kotlin/capture-side-channel.js +111 -8
- package/dist/core/ingestion/languages/kotlin/captures.js +112 -0
- package/dist/core/ingestion/languages/kotlin/import-target.d.ts +8 -1
- package/dist/core/ingestion/languages/kotlin/import-target.js +20 -123
- package/dist/core/ingestion/languages/kotlin/index.d.ts +1 -0
- package/dist/core/ingestion/languages/kotlin/index.js +1 -0
- package/dist/core/ingestion/languages/kotlin/module-resolution.d.ts +22 -0
- package/dist/core/ingestion/languages/kotlin/module-resolution.js +108 -0
- package/dist/core/ingestion/languages/kotlin/package-facts.d.ts +5 -0
- package/dist/core/ingestion/languages/kotlin/package-facts.js +9 -0
- package/dist/core/ingestion/languages/kotlin/package-siblings.d.ts +4 -0
- package/dist/core/ingestion/languages/kotlin/package-siblings.js +8 -0
- package/dist/core/ingestion/languages/kotlin/query.js +47 -2
- package/dist/core/ingestion/languages/kotlin/scope-resolver.js +36 -3
- package/dist/core/ingestion/languages/kotlin/spring-aop.d.ts +12 -0
- package/dist/core/ingestion/languages/kotlin/spring-aop.js +64 -0
- package/dist/core/ingestion/languages/kotlin/spring-bean-metadata.d.ts +2 -0
- package/dist/core/ingestion/languages/kotlin/spring-bean-metadata.js +8 -0
- package/dist/core/ingestion/languages/kotlin/spring-conditionals.d.ts +12 -0
- package/dist/core/ingestion/languages/kotlin/spring-conditionals.js +49 -0
- package/dist/core/ingestion/languages/kotlin/spring-di.d.ts +20 -0
- package/dist/core/ingestion/languages/kotlin/spring-di.js +299 -0
- package/dist/core/ingestion/languages/kotlin/spring-non-http-handlers.d.ts +10 -0
- package/dist/core/ingestion/languages/kotlin/spring-non-http-handlers.js +41 -0
- package/dist/core/ingestion/languages/kotlin.js +5 -6
- package/dist/core/ingestion/languages/php/captures.d.ts +5 -0
- package/dist/core/ingestion/languages/php/captures.js +359 -51
- package/dist/core/ingestion/languages/php/import-decomposer.js +12 -0
- package/dist/core/ingestion/languages/php/import-target.d.ts +2 -1
- package/dist/core/ingestion/languages/php/import-target.js +229 -7
- package/dist/core/ingestion/languages/php/interpret.js +10 -0
- package/dist/core/ingestion/languages/php/query.js +31 -0
- package/dist/core/ingestion/languages/php/scope-resolver.js +1 -1
- package/dist/core/ingestion/languages/python/arity-metadata.d.ts +1 -0
- package/dist/core/ingestion/languages/python/arity-metadata.js +1 -0
- package/dist/core/ingestion/languages/python/captures.d.ts +3 -4
- package/dist/core/ingestion/languages/python/captures.js +53 -5
- package/dist/core/ingestion/languages/python/import-decomposer.js +22 -1
- package/dist/core/ingestion/languages/python/import-target.d.ts +42 -1
- package/dist/core/ingestion/languages/python/import-target.js +277 -91
- package/dist/core/ingestion/languages/python/index.d.ts +1 -1
- package/dist/core/ingestion/languages/python/index.js +1 -1
- package/dist/core/ingestion/languages/python/interpret.d.ts +52 -0
- package/dist/core/ingestion/languages/python/interpret.js +249 -3
- package/dist/core/ingestion/languages/python/query.js +9 -0
- package/dist/core/ingestion/languages/python/receiver-binding.d.ts +17 -2
- package/dist/core/ingestion/languages/python/receiver-binding.js +192 -2
- package/dist/core/ingestion/languages/python/scope-resolver.js +27 -4
- package/dist/core/ingestion/languages/python/simple-hooks.d.ts +5 -5
- package/dist/core/ingestion/languages/python/simple-hooks.js +9 -5
- package/dist/core/ingestion/languages/ruby/captures.js +200 -0
- package/dist/core/ingestion/languages/ruby/import-target.js +7 -5
- package/dist/core/ingestion/languages/ruby/query.js +93 -0
- package/dist/core/ingestion/languages/ruby/scope-resolver.js +2 -0
- package/dist/core/ingestion/languages/ruby/simple-hooks.d.ts +1 -1
- package/dist/core/ingestion/languages/ruby/simple-hooks.js +22 -1
- package/dist/core/ingestion/languages/rust/captures.js +52 -1
- package/dist/core/ingestion/languages/rust/interpret.js +18 -0
- package/dist/core/ingestion/languages/rust/method-owners.js +11 -1
- package/dist/core/ingestion/languages/rust/module-path.d.ts +126 -0
- package/dist/core/ingestion/languages/rust/module-path.js +214 -0
- package/dist/core/ingestion/languages/rust/qualified-call.d.ts +41 -0
- package/dist/core/ingestion/languages/rust/qualified-call.js +481 -0
- package/dist/core/ingestion/languages/rust/query.js +48 -6
- package/dist/core/ingestion/languages/rust/range-binding.d.ts +1 -11
- package/dist/core/ingestion/languages/rust/range-binding.js +149 -63
- package/dist/core/ingestion/languages/rust/scope-resolver.js +21 -2
- package/dist/core/ingestion/languages/rust.js +17 -0
- package/dist/core/ingestion/languages/swift/captures.js +99 -3
- package/dist/core/ingestion/languages/swift/conditional-directive-preprocess.d.ts +48 -0
- package/dist/core/ingestion/languages/swift/conditional-directive-preprocess.js +253 -0
- package/dist/core/ingestion/languages/swift/import-target.js +4 -9
- package/dist/core/ingestion/languages/swift/query.js +17 -0
- package/dist/core/ingestion/languages/swift/receiver-binding.d.ts +8 -0
- package/dist/core/ingestion/languages/swift/receiver-binding.js +6 -2
- package/dist/core/ingestion/languages/swift.js +2 -0
- package/dist/core/ingestion/languages/typescript/captures.d.ts +90 -1
- package/dist/core/ingestion/languages/typescript/captures.js +288 -5
- package/dist/core/ingestion/languages/typescript/cjs-export-assignment.d.ts +134 -0
- package/dist/core/ingestion/languages/typescript/cjs-export-assignment.js +523 -0
- package/dist/core/ingestion/languages/typescript/cjs-module-exports.d.ts +54 -0
- package/dist/core/ingestion/languages/typescript/cjs-module-exports.js +191 -0
- package/dist/core/ingestion/languages/typescript/file-candidates.d.ts +29 -0
- package/dist/core/ingestion/languages/typescript/file-candidates.js +70 -0
- package/dist/core/ingestion/languages/typescript/import-decomposer.d.ts +28 -1
- package/dist/core/ingestion/languages/typescript/import-decomposer.js +125 -10
- package/dist/core/ingestion/languages/typescript/import-target.d.ts +25 -37
- package/dist/core/ingestion/languages/typescript/import-target.js +24 -26
- package/dist/core/ingestion/languages/typescript/interpret.d.ts +21 -1
- package/dist/core/ingestion/languages/typescript/interpret.js +45 -5
- package/dist/core/ingestion/languages/typescript/module-resolution.d.ts +48 -0
- package/dist/core/ingestion/languages/typescript/module-resolution.js +171 -0
- package/dist/core/ingestion/languages/typescript/nuxt-auto-imports.js +2 -1
- package/dist/core/ingestion/languages/typescript/query.d.ts +1 -0
- package/dist/core/ingestion/languages/typescript/query.js +340 -14
- package/dist/core/ingestion/languages/typescript/receiver-binding.d.ts +17 -0
- package/dist/core/ingestion/languages/typescript/receiver-binding.js +27 -0
- package/dist/core/ingestion/languages/typescript/scope-resolver.js +27 -40
- package/dist/core/ingestion/languages/typescript/simple-hooks.d.ts +0 -10
- package/dist/core/ingestion/languages/typescript/simple-hooks.js +22 -22
- package/dist/core/ingestion/languages/typescript/tsconfig.d.ts +59 -0
- package/dist/core/ingestion/languages/typescript/tsconfig.js +291 -0
- package/dist/core/ingestion/languages/typescript.js +87 -1
- package/dist/core/ingestion/languages/vue/import-target.d.ts +6 -22
- package/dist/core/ingestion/languages/vue/import-target.js +11 -47
- package/dist/core/ingestion/languages/vue/scope-resolver.js +4 -2
- package/dist/core/ingestion/local-symbol-pruner.js +11 -11
- package/dist/core/ingestion/method-extractors/configs/csharp.js +1 -0
- package/dist/core/ingestion/method-extractors/generic.js +1 -0
- package/dist/core/ingestion/method-types.d.ts +16 -0
- package/dist/core/ingestion/parsing-processor.js +32 -1
- package/dist/core/ingestion/pipeline-phases/di.d.ts +8 -33
- package/dist/core/ingestion/pipeline-phases/di.js +275 -157
- package/dist/core/ingestion/pipeline-phases/index.d.ts +3 -0
- package/dist/core/ingestion/pipeline-phases/index.js +3 -0
- package/dist/core/ingestion/pipeline-phases/parse-impl.d.ts +15 -0
- package/dist/core/ingestion/pipeline-phases/parse-impl.js +158 -3
- package/dist/core/ingestion/pipeline-phases/parse.js +5 -0
- package/dist/core/ingestion/pipeline-phases/processes.d.ts +11 -2
- package/dist/core/ingestion/pipeline-phases/processes.js +102 -7
- package/dist/core/ingestion/pipeline-phases/routes.js +56 -10
- package/dist/core/ingestion/pipeline-phases/spring-aop.d.ts +34 -0
- package/dist/core/ingestion/pipeline-phases/spring-aop.js +439 -0
- package/dist/core/ingestion/pipeline-phases/spring-auto-configuration.d.ts +34 -0
- package/dist/core/ingestion/pipeline-phases/spring-auto-configuration.js +255 -0
- package/dist/core/ingestion/pipeline-phases/spring-config.d.ts +37 -0
- package/dist/core/ingestion/pipeline-phases/spring-config.js +433 -0
- package/dist/core/ingestion/pipeline-phases/types.d.ts +7 -0
- package/dist/core/ingestion/pipeline.d.ts +27 -3
- package/dist/core/ingestion/pipeline.js +62 -12
- package/dist/core/ingestion/process-processor.d.ts +109 -2
- package/dist/core/ingestion/process-processor.js +464 -52
- package/dist/core/ingestion/resolve-references.d.ts +6 -1
- package/dist/core/ingestion/resolve-references.js +78 -6
- package/dist/core/ingestion/route-extractors/data-route-table.d.ts +25 -0
- package/dist/core/ingestion/route-extractors/data-route-table.js +864 -0
- package/dist/core/ingestion/route-extractors/dispatch-guard.d.ts +96 -0
- package/dist/core/ingestion/route-extractors/dispatch-guard.js +1184 -0
- package/dist/core/ingestion/route-extractors/spring-shared.d.ts +11 -0
- package/dist/core/ingestion/route-extractors/spring-shared.js +89 -0
- package/dist/core/ingestion/route-extractors/spring.js +109 -24
- package/dist/core/ingestion/scope-extractor-bridge.js +9 -1
- package/dist/core/ingestion/scope-extractor.d.ts +22 -7
- package/dist/core/ingestion/scope-extractor.js +617 -59
- package/dist/core/ingestion/scope-resolution/contract/scope-resolver.d.ts +381 -22
- package/dist/core/ingestion/scope-resolution/contract/scope-resolver.js +16 -5
- package/dist/core/ingestion/scope-resolution/graph-bridge/callee-id-sink.d.ts +7 -7
- package/dist/core/ingestion/scope-resolution/graph-bridge/callee-id-sink.js +8 -7
- package/dist/core/ingestion/scope-resolution/graph-bridge/edges.d.ts +15 -1
- package/dist/core/ingestion/scope-resolution/graph-bridge/edges.js +53 -0
- package/dist/core/ingestion/scope-resolution/graph-bridge/ids.d.ts +20 -15
- package/dist/core/ingestion/scope-resolution/graph-bridge/ids.js +275 -41
- package/dist/core/ingestion/scope-resolution/graph-bridge/imports-to-edges.d.ts +123 -0
- package/dist/core/ingestion/scope-resolution/graph-bridge/imports-to-edges.js +171 -17
- package/dist/core/ingestion/scope-resolution/graph-bridge/node-lookup.d.ts +56 -1
- package/dist/core/ingestion/scope-resolution/graph-bridge/node-lookup.js +130 -32
- package/dist/core/ingestion/scope-resolution/graph-bridge/references-to-edges.d.ts +30 -1
- package/dist/core/ingestion/scope-resolution/graph-bridge/references-to-edges.js +46 -3
- package/dist/core/ingestion/scope-resolution/passes/callable-value-flow.d.ts +64 -0
- package/dist/core/ingestion/scope-resolution/passes/callable-value-flow.js +1233 -0
- package/dist/core/ingestion/scope-resolution/passes/compound-receiver.d.ts +107 -5
- package/dist/core/ingestion/scope-resolution/passes/compound-receiver.js +590 -33
- package/dist/core/ingestion/scope-resolution/passes/free-call-fallback.d.ts +19 -4
- package/dist/core/ingestion/scope-resolution/passes/free-call-fallback.js +160 -4
- package/dist/core/ingestion/scope-resolution/passes/imported-value-refs.d.ts +34 -0
- package/dist/core/ingestion/scope-resolution/passes/imported-value-refs.js +62 -0
- package/dist/core/ingestion/scope-resolution/passes/property-dispatch.d.ts +64 -0
- package/dist/core/ingestion/scope-resolution/passes/property-dispatch.js +118 -0
- package/dist/core/ingestion/scope-resolution/passes/receiver-bound-calls.d.ts +109 -8
- package/dist/core/ingestion/scope-resolution/passes/receiver-bound-calls.js +931 -92
- package/dist/core/ingestion/scope-resolution/passes/return-shape-members.d.ts +58 -0
- package/dist/core/ingestion/scope-resolution/passes/return-shape-members.js +458 -0
- package/dist/core/ingestion/scope-resolution/passes/unique-name-properties.d.ts +180 -0
- package/dist/core/ingestion/scope-resolution/passes/unique-name-properties.js +418 -0
- package/dist/core/ingestion/scope-resolution/pipeline/phase.d.ts +34 -0
- package/dist/core/ingestion/scope-resolution/pipeline/phase.js +82 -38
- package/dist/core/ingestion/scope-resolution/pipeline/run.d.ts +61 -1
- package/dist/core/ingestion/scope-resolution/pipeline/run.js +384 -48
- package/dist/core/ingestion/scope-resolution/resolution-outcome.d.ts +112 -2
- package/dist/core/ingestion/scope-resolution/resolution-outcome.js +38 -1
- package/dist/core/ingestion/scope-resolution/scope/namespace-targets.d.ts +25 -3
- package/dist/core/ingestion/scope-resolution/scope/namespace-targets.js +36 -16
- package/dist/core/ingestion/scope-resolution/scope/walkers.d.ts +210 -9
- package/dist/core/ingestion/scope-resolution/scope/walkers.js +968 -56
- package/dist/core/ingestion/scope-resolution/summary-maps.d.ts +28 -0
- package/dist/core/ingestion/scope-resolution/summary-maps.js +50 -0
- package/dist/core/ingestion/scope-resolution/undecided-satisfaction.d.ts +55 -0
- package/dist/core/ingestion/scope-resolution/undecided-satisfaction.js +37 -0
- package/dist/core/ingestion/scope-resolution/unresolved-receivers.d.ts +109 -0
- package/dist/core/ingestion/scope-resolution/unresolved-receivers.js +204 -0
- package/dist/core/ingestion/scope-resolution/utils/definition-id.d.ts +13 -0
- package/dist/core/ingestion/scope-resolution/utils/definition-id.js +19 -0
- package/dist/core/ingestion/scope-resolution/utils/generic-instantiation.d.ts +171 -0
- package/dist/core/ingestion/scope-resolution/utils/generic-instantiation.js +218 -0
- package/dist/core/ingestion/scope-resolution/workspace-index-types.d.ts +34 -0
- package/dist/core/ingestion/scope-resolution/workspace-index-types.js +15 -0
- package/dist/core/ingestion/scope-resolution/workspace-index.d.ts +7 -20
- package/dist/core/ingestion/taint/typescript-model.js +34 -2
- package/dist/core/ingestion/tree-sitter-queries.d.ts +11 -11
- package/dist/core/ingestion/tree-sitter-queries.js +688 -5
- package/dist/core/ingestion/type-env.js +11 -7
- package/dist/core/ingestion/type-extractors/jvm.js +17 -2
- package/dist/core/ingestion/type-extractors/shared.d.ts +17 -0
- package/dist/core/ingestion/type-extractors/shared.js +16 -0
- package/dist/core/ingestion/type-extractors/types.d.ts +12 -0
- package/dist/core/ingestion/type-extractors/typescript.d.ts +20 -0
- package/dist/core/ingestion/type-extractors/typescript.js +26 -0
- package/dist/core/ingestion/utils/ast-helpers.d.ts +311 -14
- package/dist/core/ingestion/utils/ast-helpers.js +745 -48
- package/dist/core/ingestion/utils/call-analysis.d.ts +27 -22
- package/dist/core/ingestion/utils/call-analysis.js +202 -7
- package/dist/core/ingestion/utils/callable-flow-captures.d.ts +153 -0
- package/dist/core/ingestion/utils/callable-flow-captures.js +928 -0
- package/dist/core/ingestion/utils/callable-labels.d.ts +25 -0
- package/dist/core/ingestion/utils/callable-labels.js +31 -0
- package/dist/core/ingestion/utils/effective-ram.d.ts +40 -0
- package/dist/core/ingestion/utils/effective-ram.js +58 -0
- package/dist/core/ingestion/utils/line-base.d.ts +14 -0
- package/dist/core/ingestion/utils/line-base.js +14 -0
- package/dist/core/ingestion/utils/method-props.d.ts +27 -4
- package/dist/core/ingestion/utils/method-props.js +29 -4
- package/dist/core/ingestion/utils/receiver-chain-captures.d.ts +31 -0
- package/dist/core/ingestion/utils/receiver-chain-captures.js +57 -0
- package/dist/core/ingestion/utils/receiver-chain-codec.d.ts +89 -0
- package/dist/core/ingestion/utils/receiver-chain-codec.js +182 -0
- package/dist/core/ingestion/utils/scope-tree-walk.d.ts +22 -0
- package/dist/core/ingestion/utils/scope-tree-walk.js +33 -0
- package/dist/core/ingestion/utils/template-arguments.d.ts +96 -0
- package/dist/core/ingestion/utils/template-arguments.js +196 -0
- package/dist/core/ingestion/utils/type-parameters.d.ts +49 -0
- package/dist/core/ingestion/utils/type-parameters.js +206 -0
- package/dist/core/ingestion/workers/callable-id.d.ts +72 -0
- package/dist/core/ingestion/workers/callable-id.js +116 -0
- package/dist/core/ingestion/workers/parse-worker.d.ts +14 -1
- package/dist/core/ingestion/workers/parse-worker.js +409 -39
- package/dist/core/ingestion/workers/worker-pool.d.ts +34 -27
- package/dist/core/ingestion/workers/worker-pool.js +133 -25
- package/dist/core/lbug/csv-generator.d.ts +27 -0
- package/dist/core/lbug/csv-generator.js +80 -17
- package/dist/core/lbug/extension-load-error.d.ts +2 -2
- package/dist/core/lbug/extension-load-error.js +44 -27
- package/dist/core/lbug/extension-loader.d.ts +29 -0
- package/dist/core/lbug/extension-loader.js +32 -7
- package/dist/core/lbug/graph-emit-sink.d.ts +264 -0
- package/dist/core/lbug/graph-emit-sink.js +581 -0
- package/dist/core/lbug/lbug-adapter.d.ts +337 -3
- package/dist/core/lbug/lbug-adapter.js +772 -67
- package/dist/core/lbug/lbug-config.d.ts +93 -6
- package/dist/core/lbug/lbug-config.js +269 -9
- package/dist/core/lbug/native-check.d.ts +39 -0
- package/dist/core/lbug/native-check.js +323 -46
- package/dist/core/lbug/pdg-emit-sink.d.ts +13 -4
- package/dist/core/lbug/pdg-emit-sink.js +21 -111
- package/dist/core/lbug/pool-adapter.d.ts +23 -1
- package/dist/core/lbug/pool-adapter.js +115 -7
- package/dist/core/lbug/query-batch.d.ts +75 -0
- package/dist/core/lbug/query-batch.js +102 -0
- package/dist/core/lbug/rel-pair-routing.d.ts +160 -2
- package/dist/core/lbug/rel-pair-routing.js +228 -10
- package/dist/core/lbug/schema.d.ts +162 -3
- package/dist/core/lbug/schema.js +392 -157
- package/dist/core/lbug/sidecar-recovery.d.ts +1 -0
- package/dist/core/lbug/sidecar-recovery.js +1 -1
- package/dist/core/lbug/sync-csv-writer.d.ts +47 -0
- package/dist/core/lbug/sync-csv-writer.js +108 -0
- package/dist/core/lbug/wal-checkpoint-driver.js +3 -0
- package/dist/core/platform/capabilities.d.ts +0 -1
- package/dist/core/platform/capabilities.js +12 -7
- package/dist/core/run-analyze.d.ts +150 -3
- package/dist/core/run-analyze.js +1562 -151
- package/dist/core/search/bm25-index.d.ts +11 -0
- package/dist/core/search/bm25-index.js +60 -26
- package/dist/core/search/fts-indexes.d.ts +167 -2
- package/dist/core/search/fts-indexes.js +264 -10
- package/dist/core/wiki/graph-queries.js +145 -112
- package/dist/core/wiki/llm-client.d.ts +37 -5
- package/dist/core/wiki/llm-client.js +88 -17
- package/dist/core/wiki/prompts.d.ts +19 -0
- package/dist/core/wiki/prompts.js +20 -1
- package/dist/lib/utils.d.ts +113 -0
- package/dist/lib/utils.js +185 -0
- package/dist/mcp/http-transport.d.ts +5 -0
- package/dist/mcp/http-transport.js +19 -5
- package/dist/mcp/local/aop-metadata.d.ts +77 -0
- package/dist/mcp/local/aop-metadata.js +227 -0
- package/dist/mcp/local/bean-metadata.d.ts +3 -0
- package/dist/mcp/local/bean-metadata.js +46 -0
- package/dist/mcp/local/local-backend.d.ts +167 -6
- package/dist/mcp/local/local-backend.js +1756 -405
- package/dist/mcp/local/path-predicate.d.ts +19 -0
- package/dist/mcp/local/path-predicate.js +21 -0
- package/dist/mcp/local/pdg-impact.d.ts +132 -10
- package/dist/mcp/local/pdg-impact.js +391 -98
- package/dist/mcp/output-budget.d.ts +5 -0
- package/dist/mcp/output-budget.js +52 -0
- package/dist/mcp/read-only-policy.d.ts +12 -0
- package/dist/mcp/read-only-policy.js +102 -0
- package/dist/mcp/repository-policy.d.ts +35 -0
- package/dist/mcp/repository-policy.js +333 -0
- package/dist/mcp/resources.js +34 -7
- package/dist/mcp/server.d.ts +5 -2
- package/dist/mcp/server.js +48 -18
- package/dist/mcp/tools.d.ts +8 -8
- package/dist/mcp/tools.js +91 -20
- package/dist/server/analyze-job.d.ts +40 -2
- package/dist/server/analyze-job.js +30 -2
- package/dist/server/analyze-launch.d.ts +1 -1
- package/dist/server/analyze-launch.js +79 -10
- package/dist/server/analyze-worker-core.d.ts +3 -2
- package/dist/server/analyze-worker-core.js +15 -3
- package/dist/server/analyze-worker-ipc.d.ts +1 -1
- package/dist/server/analyze-worker-ipc.js +4 -0
- package/dist/server/analyze-worker-protocol.d.ts +59 -0
- package/dist/server/analyze-worker-protocol.js +1 -0
- package/dist/server/analyze-worker.d.ts +1 -17
- package/dist/server/analyze-worker.js +29 -6
- package/dist/server/api.d.ts +2 -11
- package/dist/server/api.js +200 -155
- package/dist/server/embed-run-outcome.d.ts +89 -0
- package/dist/server/embed-run-outcome.js +88 -0
- package/dist/server/git-clone.js +6 -2
- package/dist/server/mcp-http.d.ts +1 -1
- package/dist/server/mcp-http.js +4 -2
- package/dist/server/middleware.d.ts +116 -9
- package/dist/server/middleware.js +291 -22
- package/dist/server/sse-progress.d.ts +41 -0
- package/dist/server/sse-progress.js +125 -0
- package/dist/server/upload-ingest.js +2 -1
- package/dist/server/validation.js +2 -1
- package/dist/storage/branch-index.d.ts +11 -6
- package/dist/storage/branch-index.js +15 -7
- package/dist/storage/file-hash.js +2 -2
- package/dist/storage/fs-atomic.d.ts +25 -0
- package/dist/storage/fs-atomic.js +42 -0
- package/dist/storage/git.d.ts +165 -0
- package/dist/storage/git.js +352 -3
- package/dist/storage/index-lock.d.ts +83 -0
- package/dist/storage/index-lock.js +654 -0
- package/dist/storage/parse-cache.js +482 -1
- package/dist/storage/parsedfile-store.d.ts +8 -0
- package/dist/storage/parsedfile-store.js +235 -1
- package/dist/storage/repo-manager.d.ts +29 -309
- package/dist/storage/repo-manager.js +187 -165
- package/dist/storage/repo-meta.d.ts +530 -0
- package/dist/storage/repo-meta.js +100 -0
- package/dist/types/pipeline.d.ts +37 -0
- package/hooks/antigravity/gitnexus-antigravity-hook.cjs +1 -1
- package/hooks/claude/gitnexus-hook.cjs +1 -1
- package/hooks/claude/resolve-analyze-cmd.cjs +80 -13
- package/package.json +20 -12
- package/scripts/cross-platform-shard.ts +143 -0
- package/scripts/cross-platform-tests.ts +94 -0
- package/scripts/ensure-fts.ts +14 -3
- package/scripts/run-cross-platform.ts +36 -10
- package/scripts/sync-plugin-manifests.mjs +192 -0
- package/skills/gitnexus-cli.md +3 -3
- package/skills/gitnexus-debugging.md +37 -7
- package/skills/gitnexus-exploring.md +26 -4
- package/skills/gitnexus-impact-analysis.md +71 -10
- package/skills/gitnexus-lfg/README.md +55 -0
- package/skills/gitnexus-lfg/SKILL.md +86 -0
- package/skills/gitnexus-plan/README.md +147 -0
- package/skills/gitnexus-plan/SKILL.md +348 -0
- package/skills/gitnexus-plan/references/context-ledger.md +137 -0
- package/skills/gitnexus-plan/references/context-pack.md +126 -0
- package/skills/gitnexus-plan/references/evidence-provenance.md +309 -0
- package/skills/gitnexus-plan/references/pdg-slice.md +109 -0
- package/skills/gitnexus-plan/references/plan-template.md +201 -0
- package/skills/gitnexus-plan/scripts/evidence-provenance.mjs +2366 -0
- package/skills/gitnexus-refactoring.md +48 -5
- package/skills/gitnexus-review/SKILL.md +279 -0
- package/skills/gitnexus-review/ci-personas/ci-adversarial-lens.md +42 -0
- package/skills/gitnexus-review/ci-personas/ci-blast-radius-lens.md +39 -0
- package/skills/gitnexus-review/ci-personas/ci-correctness-lens.md +37 -0
- package/skills/gitnexus-review/ci-personas/ci-coverage-lens.md +40 -0
- package/skills/gitnexus-review/ci-personas/ci-critic-lens.md +42 -0
- package/skills/gitnexus-review/ci-personas/ci-security-lens.md +39 -0
- package/skills/gitnexus-taint-analysis.md +13 -7
- package/skills/gitnexus-work/README.md +71 -0
- package/skills/gitnexus-work/SKILL.md +272 -0
- package/skills/gitnexus-work/references/evidence-provenance.md +309 -0
- package/skills/gitnexus-work/scripts/evidence-provenance.mjs +2366 -0
- package/vendor/leiden/utils.cjs +28 -1
- package/web/assets/ProcessFlowModal-Badh2Pbg.js +24 -0
- package/web/assets/__vite-browser-external-bMKyYQkO.js +1 -0
- package/web/assets/abnfDiagram-QNN2D4NM-Cq2djWWe.js +1 -0
- package/web/assets/agent-DIzEQ1JJ.js +626 -0
- package/web/assets/architecture-TIHT7OUA-V6N4J3SY-fTePvLoe.js +1 -0
- package/web/assets/architectureDiagram-OT7VKSJ7-mKEXxkeF.js +36 -0
- package/web/assets/blockDiagram-54WLDVWM-Dg_hrRWE.js +132 -0
- package/web/assets/{c4Diagram-Y2BXMSZH-DOXVs7-C.js → c4Diagram-X2LASM7V-CnhoT4aV.js} +6 -6
- package/web/assets/chunk-224SPVON-B8gxtXpy.js +1 -0
- package/web/assets/chunk-2AEHWXPW-CV4r6-1I.js +127 -0
- package/web/assets/chunk-2SREHG4O-Dip42xOq.js +1 -0
- package/web/assets/chunk-4RFN2BYJ-DHHWuC-n.js +1 -0
- package/web/assets/chunk-66DQ2XMT-CM0xjFAN.js +1 -0
- package/web/assets/chunk-6BELYETK-ChsYtfHW.js +1 -0
- package/web/assets/chunk-6L755F7B-CMhLBxi2.js +1 -0
- package/web/assets/chunk-7CWYLC5S-DRgGkkpF.js +2 -0
- package/web/assets/chunk-A7VWPJGB-B4O3oQdQ.js +1 -0
- package/web/assets/chunk-BI6VK774-D0oaWk8V.js +1 -0
- package/web/assets/chunk-D6VWDJW2-BxcBdZ9c.js +2 -0
- package/web/assets/chunk-DMV4VAQV-Bn6WXDSX.js +4 -0
- package/web/assets/chunk-E5QJAATJ-dh-5CtIV.js +2 -0
- package/web/assets/chunk-EQFTRU2I-1ix7TzW9.js +2 -0
- package/web/assets/chunk-FWYVLQTC-BgDItRzJ.js +1 -0
- package/web/assets/chunk-HNC4WDU7-DoU3KnA7.js +1 -0
- package/web/assets/chunk-L5GCOVLC-CE2w8Nm_.js +161 -0
- package/web/assets/chunk-LAHSG3N2-Bz4hcn0N.js +321 -0
- package/web/assets/chunk-LORZLZWG-B57uGw2N.js +88 -0
- package/web/assets/chunk-NLANEA3F-XpH_NPA5.js +62 -0
- package/web/assets/chunk-NV3KIAZN-5yvcpMiu.js +1 -0
- package/web/assets/chunk-OIYT25JQ-CQ6KOZGX.js +1 -0
- package/web/assets/chunk-PE7DX7ZZ-CCvRVj43.js +10 -0
- package/web/assets/chunk-Q67WD55A-BWCH2SVz.js +156 -0
- package/web/assets/chunk-RRFMTAIC-CMN0wcYA.js +1 -0
- package/web/assets/{chunk-RLI5ZMPA-CkXZ0y0U.js → chunk-SATU7PGQ-B1zhgOvc.js} +1 -1
- package/web/assets/chunk-STOV2HOB-GnExfzIX.js +1 -0
- package/web/assets/chunk-SZD42YQK-ijyKKVr1.js +70 -0
- package/web/assets/chunk-TFPGFQPA-Dj6a-0pC.js +231 -0
- package/web/assets/chunk-TGVD4F4B-BMc31Gj2.js +2 -0
- package/web/assets/chunk-TZUXEDM2-B7p9AcTw.js +1 -0
- package/web/assets/chunk-UAT7B5JY-DW-A_fpI.js +1 -0
- package/web/assets/{chunk-6764PJDD-C7xxk063.js → chunk-VE5CLXGZ-C1vB7wpY.js} +1 -1
- package/web/assets/chunk-VJFVEZTB-CX66F2ep.js +206 -0
- package/web/assets/chunk-VY5UBI4V-yxPQAWxw.js +1 -0
- package/web/assets/chunk-WJBAP47W-BckNkuEN.js +1 -0
- package/web/assets/chunk-XNMVGMAZ-Cg_LnPtj.js +1 -0
- package/web/assets/classDiagram-VPOSVPXH-BjOiXA_C.js +1 -0
- package/web/assets/classDiagram-v2-5VFNUXQA-BjOiXA_C.js +1 -0
- package/web/assets/{cose-bilkent-UX7MHV2Q-BmnZ7Mvj.js → cose-bilkent-RZA4XIPR-BHpK4Crp.js} +1 -1
- package/web/assets/cynefin-VYW2F7L2-2VAHYKR6-DAsF6GZv.js +1 -0
- package/web/assets/cynefinDiagram-TR7LZUCG-C3Iar9lZ.js +62 -0
- package/web/assets/dagre-K64A6Z3X-CUwi79mA.js +4 -0
- package/web/assets/diagram-2TLGJV2N-C2F5Nfym.js +30 -0
- package/web/assets/diagram-JCD7PQ7C-DC5-9FRr.js +24 -0
- package/web/assets/diagram-KFBZAVDW-Dfmf_4ti.js +3 -0
- package/web/assets/diagram-L7DVE3PN-GIRyVUtt.js +41 -0
- package/web/assets/diagram-YP3FGXHI-CyNFYtkd.js +24 -0
- package/web/assets/ebnfDiagram-DRHRQJWO-D8_CI4ZF.js +1 -0
- package/web/assets/erDiagram-SZLJLQMB-CohQjznC.js +85 -0
- package/web/assets/eventmodeling-45OFAUF4-AOUJWSLX-BvTc6iQi.js +1 -0
- package/web/assets/flowDiagram-BWE6NHOH-B6RnEvD9.js +1 -0
- package/web/assets/ganttDiagram-2QTCJSNI-Cks_mEcF.js +292 -0
- package/web/assets/gitGraph-TEB2WS4Q-U5VWYIBC-Dy7CCSZ5.js +1 -0
- package/web/assets/gitGraphDiagram-VVZAVV5G-CG41cIVc.js +106 -0
- package/web/assets/{index-B4eB4dNZ.js → index-BBNl0qfX.js} +51 -51
- package/web/assets/index-CJDpyH-n.css +2 -0
- package/web/assets/info-DKCQHKI2-DX6KST54-BLJg1ikX.js +1 -0
- package/web/assets/infoDiagram-FY4PZKRE-BJ3vPVwW.js +2 -0
- package/web/assets/{ishikawaDiagram-BNXS4ZKH-BLjivjXL.js → ishikawaDiagram-4JDSWWDM-DmqWtjkl.js} +6 -6
- package/web/assets/{journeyDiagram-M6C3CM3L-Cetgs3NH.js → journeyDiagram-QUS3FAKT-XAzVzrQW.js} +6 -6
- package/web/assets/{kanban-definition-75IXJCU3-DMlCaIpf.js → kanban-definition-D4L7SQKK-YurRnmYn.js} +27 -27
- package/web/assets/katex-C5OPUE3Q-Bnbavtmu.js +257 -0
- package/web/assets/{mindmap-definition-2TDM6QVE-B4GbXQBc.js → mindmap-definition-66QP5TD6-ChrWWnil.js} +29 -29
- package/web/assets/node-Ct_zna8U.js +8 -0
- package/web/assets/packet-7NZHBO7P-5WG45QPS-KUxcuvaA.js +1 -0
- package/web/assets/pegDiagram-YKIO5C6U-QGeQLEq2.js +1 -0
- package/web/assets/pie-RZYD4A2V-2OCZ2VTD-DPs08kJY.js +1 -0
- package/web/assets/pieDiagram-YPY3TKG5-BuT3MYzm.js +39 -0
- package/web/assets/preload-helper-Czpn1I53.js +1 -0
- package/web/assets/{quadrantDiagram-VICAPDV7-B1TQnlm0.js → quadrantDiagram-VO5QLCXA-B7098wSc.js} +6 -6
- package/web/assets/radar-I7S5WNFK-EPLSA35B-w5F0K3a7.js +1 -0
- package/web/assets/railroad-3IZDKUUU-PWFQV6Y6-Bu668yqY.js +1 -0
- package/web/assets/railroad-abnf-AHOZXSZD-JYYJX3BS-B6ghpETS.js +1 -0
- package/web/assets/railroad-ebnf-EBAXGLYW-RBZ4ONAP-D-XmHh3M.js +1 -0
- package/web/assets/railroad-peg-LSFZ7HO6-KHNPXGPG-mhkrhzEn.js +1 -0
- package/web/assets/railroadDiagram-M77LTMSB-AXu4vxk_.js +1 -0
- package/web/assets/requirementDiagram-RASO5HTO-B-l8InpK.js +84 -0
- package/web/assets/sankeyDiagram-F32LOJ6L-Kd7zjJgX.js +40 -0
- package/web/assets/sdk-CzHHH8tD.js +37 -0
- package/web/assets/sequenceDiagram-URATNSBD-BlcdY9DS.js +162 -0
- package/web/assets/sizeCapture-5GORAGP4-BEqQzsxs.js +1 -0
- package/web/assets/src-C5sx_gMp.js +1 -0
- package/web/assets/stateDiagram-DODFXNG5-DTdHc-fF.js +1 -0
- package/web/assets/stateDiagram-v2-JNMM5JRA-DioNLDDo.js +1 -0
- package/web/assets/swimlanes-OSWOYLSK-CA0ofdwY.js +2 -0
- package/web/assets/swimlanesDiagram-RHGX2RDE-PkwUdckC.js +8 -0
- package/web/assets/timeline-definition-WJXWRH4I-DUfp1R3E.js +120 -0
- package/web/assets/treeView-QDETBFTQ-EHYTSQNO-C5lpBgPm.js +1 -0
- package/web/assets/treemap-6X3UGDF4-CCWCF7EK-BB0ZyO-B.js +1 -0
- package/web/assets/vennDiagram-K3VCMQLI-Bj-FN-XS.js +34 -0
- package/web/assets/wardley-OPB4EBWU-6OWERDVT-CEA3Nq0j.js +1 -0
- package/web/assets/wardleyDiagram-XK6FUAWV-CVV0dHFr.js +78 -0
- package/web/assets/xychartDiagram-5VRUVLCW-CK_rbSWE.js +7 -0
- package/web/index.html +17 -15
- package/dist/core/ingestion/languages/python/index-stats.d.ts +0 -18
- package/dist/core/ingestion/languages/python/index-stats.js +0 -25
- package/skills/gitnexus-pr-review.md +0 -163
- package/web/assets/ProcessFlowModal-Dna7GkwO.js +0 -22
- package/web/assets/agent-DNYDy-KA.js +0 -660
- package/web/assets/architecture-7EHR7CIX-6QZW5X65-BVWFvYz2.js +0 -1
- package/web/assets/architectureDiagram-UL44E2DR-BU5ZRITg.js +0 -36
- package/web/assets/blockDiagram-7IZFK4PR-Dut1BpTV.js +0 -132
- package/web/assets/chunk-2T2R6R2M-pkw2oXHH.js +0 -4
- package/web/assets/chunk-2UTLFMKG-CXlhF3Pt.js +0 -1
- package/web/assets/chunk-3SSMPTDK-rPsRM1x0.js +0 -321
- package/web/assets/chunk-4R4BOZG6-Be_F0JoX.js +0 -159
- package/web/assets/chunk-67TQ5CYL-zxhDWgyF.js +0 -124
- package/web/assets/chunk-7J6CGLKN-AmkN8jJN.js +0 -10
- package/web/assets/chunk-C62D2QBJ-3gdL8EKc.js +0 -1
- package/web/assets/chunk-CEXFNPSA-CjwtMDkc.js +0 -1
- package/web/assets/chunk-INKRHTLW-D9BM9HWZ.js +0 -70
- package/web/assets/chunk-J5EP6P6S-L19oz55R.js +0 -1
- package/web/assets/chunk-KGFNY3KK-tD2F6wxK.js +0 -62
- package/web/assets/chunk-KGYTTC2M-zm6n242I.js +0 -1
- package/web/assets/chunk-KNLZD3CH-BGlP6X9R.js +0 -1
- package/web/assets/chunk-LCXTWHL2-Ba9JK-6F.js +0 -231
- package/web/assets/chunk-LII3EMHJ-EGx-eBIu.js +0 -1
- package/web/assets/chunk-LRIF4GLE-C3_PqUBq.js +0 -1
- package/web/assets/chunk-QA3QBVWF-D4cSJBf6.js +0 -2
- package/web/assets/chunk-RERM46MO-B5dAdWpP.js +0 -1
- package/web/assets/chunk-RG4AUYOV-OqBBMwuQ.js +0 -206
- package/web/assets/chunk-RKZBBQEN-MyIQbGgD.js +0 -1
- package/web/assets/chunk-T2UQINTJ-BJusEiGe.js +0 -1
- package/web/assets/chunk-UP6H54XL-BG-n7qDp.js +0 -1
- package/web/assets/chunk-UXSXWOXI-CW1_r5cS.js +0 -1
- package/web/assets/chunk-UY5QBCOK-BCpUlARQ.js +0 -1
- package/web/assets/chunk-VU6ZFW4Y-BeXVk45_.js +0 -2
- package/web/assets/chunk-ZXARS5L4-BI_qR2Nm.js +0 -1
- package/web/assets/classDiagram-KGZ6W3CR-D9zSIg0x.js +0 -1
- package/web/assets/classDiagram-v2-72OJOZXJ-D9zSIg0x.js +0 -1
- package/web/assets/dagre-ND4H6XIP-CpcV5kbl.js +0 -4
- package/web/assets/diagram-3NCE3AQN-6SMxBRpj.js +0 -43
- package/web/assets/diagram-GF46GFSD-BZEdNcRZ.js +0 -24
- package/web/assets/diagram-HNR7UZ2L-DxKW2a2Y.js +0 -3
- package/web/assets/diagram-QXG6HAR7-HfTHcXX_.js +0 -24
- package/web/assets/diagram-WEQXMOUZ-CyijUS8r.js +0 -10
- package/web/assets/erDiagram-L5TCEMPS-D0fvpWEX.js +0 -85
- package/web/assets/eventmodeling-FCH6USID-MREXMVOE-CgFBM7e-.js +0 -1
- package/web/assets/flowDiagram-H6V6AXG4-Bvr9bbhk.js +0 -162
- package/web/assets/ganttDiagram-JCBTUEKG-TzODrLzv.js +0 -292
- package/web/assets/gitGraph-WXDBUCRP-R675I2BI-DCJv7SII.js +0 -1
- package/web/assets/gitGraphDiagram-S2ZK5IYY-ONQSwJIY.js +0 -106
- package/web/assets/index-CX_fADmQ.css +0 -2
- package/web/assets/info-J43DQDTF-KCYPFFUO-BfNy-9Nd.js +0 -1
- package/web/assets/infoDiagram-3YFTVSEB-DIPVUIQ6.js +0 -2
- package/web/assets/katex-K3KEBU37-qRQBy-EZ.js +0 -261
- package/web/assets/packet-YPE3B663-LP52Z2RK-D4qkeG9k.js +0 -1
- package/web/assets/pie-LRSECV5Y-TCRJHUBD-B_yMKyQa.js +0 -1
- package/web/assets/pieDiagram-CU6KROY3-D3YC_xyg.js +0 -30
- package/web/assets/radar-GUYGQ44K-RDLRG3WG-DeD6yN_0.js +0 -1
- package/web/assets/requirementDiagram-JXO7QTGE-f8wczLQf.js +0 -84
- package/web/assets/sankeyDiagram-URQDO5SZ-BTxzG5j0.js +0 -40
- package/web/assets/sequenceDiagram-VS2MUI6T-DuamM-IR.js +0 -162
- package/web/assets/src-BNCXICdA.js +0 -1
- package/web/assets/stateDiagram-7D4R322I-Ch2pEUcw.js +0 -1
- package/web/assets/stateDiagram-v2-36443NZ5-7ANuoZLL.js +0 -1
- package/web/assets/timeline-definition-O6YCAMPW-07BR8R8G.js +0 -120
- package/web/assets/treeView-BLDUP644-QA4HXRO3-CDuSYnd4.js +0 -1
- package/web/assets/treemap-LRROVOQU-LLAWBHMP-imazucyJ.js +0 -1
- package/web/assets/vennDiagram-MWXL3ELB-BQX2ossk.js +0 -34
- package/web/assets/wardley-L42UT6IY-5TKZOOLJ-DqrT9tB8.js +0 -1
- package/web/assets/wardleyDiagram-CUQ6CDDI-CGIJBBiK.js +0 -78
- package/web/assets/xychartDiagram-N2JHSOCM-B3HNMuWp.js +0 -7
- /package/web/assets/{chunk-7W6UQGC5-pyKGssV3.js → chunk-LIEV3EAG-pyKGssV3.js} +0 -0
|
@@ -34,11 +34,60 @@
|
|
|
34
34
|
* resolved.
|
|
35
35
|
* 3. **Dynamic require** — `require(computedPath)` is skipped (non-literal
|
|
36
36
|
* argument — cannot statically resolve the target).
|
|
37
|
-
* 4.
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
37
|
+
* 4. **CommonJS `require()` in TypeScript** — `require()` decomposition is a
|
|
38
|
+
* JavaScript-emitter concern, so a `.ts` file's `const m = require('./m')`
|
|
39
|
+
* is not decomposed into an import. The EXPORT side of a `.ts` CommonJS
|
|
40
|
+
* module is now declared (shared with the JS emitter), but an importer
|
|
41
|
+
* written in TypeScript still cannot resolve through it.
|
|
42
|
+
* 5. **`.cjs` module-level `this`** — the CommonJS/ESM gate consults the file
|
|
43
|
+
* extension where it can, but `provider.labelOverride` receives no file
|
|
44
|
+
* path, so a `.cjs` file whose only export is a module-level `this.X = fn`
|
|
45
|
+
* is not labelled. It now emits nothing rather than an ownerless `Method`.
|
|
46
|
+
* 6. **Calling a renamed default-export binding** — `module.exports = fn` IS
|
|
47
|
+
* indexed (#2723, named after the file), but resolving a CALL through a
|
|
48
|
+
* renamed local binding (`const renamed = require('./mod'); renamed()`)
|
|
49
|
+
* needs the finalize layer to treat a called namespace binding as the
|
|
50
|
+
* target module's default export. `const mod = require('./mod'); mod()`
|
|
51
|
+
* happens to resolve because the names coincide.
|
|
52
|
+
* 7. **Anonymous ESM default** — `export default function () {}` (no name)
|
|
53
|
+
* is not indexed either. Same class as the CJS default above, different
|
|
54
|
+
* construct; not addressed by #2723.
|
|
55
|
+
*
|
|
56
|
+
* ## CommonJS export forms (#2723)
|
|
57
|
+
*
|
|
58
|
+
* Each of these declares its name in the module scope, so importers resolve to
|
|
59
|
+
* it by name — `const { foo } = require('./m')` matches directly and a
|
|
60
|
+
* namespace `m.foo()` walks the module's defs:
|
|
61
|
+
*
|
|
62
|
+
* - `exports.foo = function () {}` / `module.exports.foo = (a) => a`, in
|
|
63
|
+
* every value form (function, async, arrow, async arrow, generator).
|
|
64
|
+
* - `const e = exports; e.foo = fn` — an alias bound at module scope. The
|
|
65
|
+
* receiver cannot be pinned in a query, so the member-assignment rules
|
|
66
|
+
* match any identifier receiver and the emitters prune anything that is
|
|
67
|
+
* not the exports object.
|
|
68
|
+
* - `this.foo = fn` at MODULE level of a CommonJS file, where `this` is
|
|
69
|
+
* `module.exports`. Gated on the file being CommonJS — in ESM top-level
|
|
70
|
+
* `this` is undefined and the same line exports nothing.
|
|
71
|
+
* - `exports.foo = lib.imported` / `exports.foo = importedName` — forwarded
|
|
72
|
+
* as a re-export (`reexport-alias`), so callers reach the ORIGINAL
|
|
73
|
+
* definition. A plain import binding would not do: it is private to its
|
|
74
|
+
* module, exactly as in ESM.
|
|
75
|
+
* - `module.exports = fn` — the whole module is the callable, so it is named
|
|
76
|
+
* after the file (`index.js` takes its parent directory). A named function
|
|
77
|
+
* expression keeps its own name. `exports = fn` is NOT indexed: rebinding
|
|
78
|
+
* `exports` exports nothing in CommonJS, it only breaks the alias.
|
|
79
|
+
*
|
|
80
|
+
* Two deliberate non-cases. `exports.foo = localFn`, where the value is a
|
|
81
|
+
* locally declared function, needs nothing — the module scope already binds
|
|
82
|
+
* `localFn` and importers already resolve through it. And a CJS export whose
|
|
83
|
+
* name the module ALSO declares lexically is suppressed rather than declared
|
|
84
|
+
* twice: two declarations of one name are ambiguous, and the resolver would
|
|
85
|
+
* drop the intra-module edge entirely.
|
|
86
|
+
*
|
|
87
|
+
* Callable members assigned through a receiver are Methods with an owner edge
|
|
88
|
+
* rather than free functions: `Foo.prototype.bar = fn` and `this.bar = fn`
|
|
89
|
+
* inside a constructor. Ownership resolves to what the file declares, so an
|
|
90
|
+
* owner it cannot see (`External.prototype.x = fn`) claims no edge.
|
|
42
91
|
*/
|
|
43
92
|
export { emitJsScopeCaptures } from './captures.js';
|
|
44
93
|
export { interpretJsImport, interpretJsTypeBinding } from './interpret.js';
|
|
@@ -46,6 +46,7 @@
|
|
|
46
46
|
* tree-sitter init cost per file.
|
|
47
47
|
*/
|
|
48
48
|
import Parser from 'tree-sitter';
|
|
49
|
+
export declare const JAVASCRIPT_SCOPE_QUERY: string;
|
|
49
50
|
export declare function getJsParser(filePath?: string): Parser;
|
|
50
51
|
export declare function getJsScopeQuery(filePath?: string): Parser.Query;
|
|
51
52
|
/** Validate that a cached Tree was produced by the JS grammar. */
|
|
@@ -53,18 +53,40 @@ const JS_GRAMMAR = JS;
|
|
|
53
53
|
function isJsxFile(filePath) {
|
|
54
54
|
return filePath.endsWith('.jsx');
|
|
55
55
|
}
|
|
56
|
-
const JAVASCRIPT_SCOPE_QUERY = `
|
|
56
|
+
export const JAVASCRIPT_SCOPE_QUERY = `
|
|
57
57
|
;; Scopes — module / class-likes / function-likes
|
|
58
58
|
(program) @scope.module
|
|
59
59
|
|
|
60
60
|
(class_declaration) @scope.class
|
|
61
61
|
(class) @scope.class
|
|
62
62
|
|
|
63
|
-
|
|
64
|
-
(
|
|
65
|
-
(
|
|
63
|
+
;; \`@receiver-owner.this\` — see the matching block in typescript/query.ts
|
|
64
|
+
;; (#2701). Every function form except \`arrow_function\` binds its own \`this\`.
|
|
65
|
+
(function_declaration) @scope.function @receiver-owner.this
|
|
66
|
+
(generator_function_declaration) @scope.function @receiver-owner.this
|
|
67
|
+
(function_expression) @scope.function @receiver-owner.this
|
|
68
|
+
;; \`function*(){}\` as an EXPRESSION. Absent from this list before #2701, so it
|
|
69
|
+
;; was not a scope at all and \`this\` inside one read as the enclosing method's.
|
|
70
|
+
(generator_function) @scope.function @receiver-owner.this
|
|
66
71
|
(arrow_function) @scope.function
|
|
67
|
-
(method_definition) @scope.function
|
|
72
|
+
(method_definition) @scope.function @receiver-owner.this
|
|
73
|
+
|
|
74
|
+
;; Object literals get their own scope boundary -- see the matching
|
|
75
|
+
;; comment in typescript/query.ts (#2545/#2551). Prevents a
|
|
76
|
+
;; method_definition/property-arrow's auto-hoist from leaking its name
|
|
77
|
+
;; past the literal into the enclosing scope, and (unlike Block) keeps
|
|
78
|
+
;; sibling properties from seeing each other as bare identifiers.
|
|
79
|
+
(object) @scope.object
|
|
80
|
+
|
|
81
|
+
;; Statement blocks are BINDING scopes (#2699). ECMAScript gives every block its
|
|
82
|
+
;; own environment record, so \`let\`/\`const\`/\`class\`/\`function\` declared in
|
|
83
|
+
;; sibling blocks of one function are DIFFERENT bindings — without this the
|
|
84
|
+
;; resolver sees both as function-level and a call in one branch resolves to
|
|
85
|
+
;; both. \`tsBindingScopeFor\` already implements the other half of the rule:
|
|
86
|
+
;; \`var\` hoists past blocks to the enclosing Function/Module, \`let\`/\`const\`
|
|
87
|
+
;; take the innermost scope, which is now the block.
|
|
88
|
+
(statement_block) @scope.block
|
|
89
|
+
|
|
68
90
|
|
|
69
91
|
;; Declarations — classes
|
|
70
92
|
(class_declaration
|
|
@@ -78,6 +100,15 @@ const JAVASCRIPT_SCOPE_QUERY = `
|
|
|
78
100
|
(field_definition
|
|
79
101
|
property: (property_identifier) @declaration.name) @declaration.property
|
|
80
102
|
|
|
103
|
+
;; Object-literal keys of a NAMED object (A1/A5) — the scope-resolution half of
|
|
104
|
+
;; the same rule in TYPESCRIPT/JAVASCRIPT_QUERIES. The parse query mints the
|
|
105
|
+
;; Property NODE; this mints the DEF the resolver can point a read/write at.
|
|
106
|
+
(variable_declarator
|
|
107
|
+
name: (identifier)
|
|
108
|
+
value: (object
|
|
109
|
+
(pair
|
|
110
|
+
key: (property_identifier) @declaration.name) @declaration.property))
|
|
111
|
+
|
|
81
112
|
;; Declarations — free functions
|
|
82
113
|
(function_declaration
|
|
83
114
|
name: (identifier) @declaration.name) @declaration.function
|
|
@@ -123,6 +154,67 @@ const JAVASCRIPT_SCOPE_QUERY = `
|
|
|
123
154
|
name: (identifier) @declaration.name
|
|
124
155
|
value: (function_expression) @declaration.function))
|
|
125
156
|
|
|
157
|
+
;; CJS property-assignment exports (#2723): \`exports.foo = function () {}\`,
|
|
158
|
+
;; \`module.exports.foo = (a) => a\`. The graph node for these comes from
|
|
159
|
+
;; TYPESCRIPT/JAVASCRIPT_QUERIES; this block is the other half — without a
|
|
160
|
+
;; scope-resolution declaration the node exists but nothing resolves TO it,
|
|
161
|
+
;; so \`impact\` answered "found, zero callers" on a whole CommonJS API.
|
|
162
|
+
;;
|
|
163
|
+
;; The declaration binds the BARE property name into the enclosing (module)
|
|
164
|
+
;; scope, which is what importers see: \`const { foo } = require('./m')\`
|
|
165
|
+
;; matches by name, and a namespace \`m.foo()\` walks the module's defs.
|
|
166
|
+
;;
|
|
167
|
+
;; Same anchor discipline as the blocks above — \`@declaration.function\` sits
|
|
168
|
+
;; on the INNER arrow / function_expression so its range matches the
|
|
169
|
+
;; \`@scope.function\` range.
|
|
170
|
+
;; The three right-hand-side forms share one pattern via an inner LEAF
|
|
171
|
+
;; alternation. tree-sitter 0.21.1 has a known hazard where a top-level
|
|
172
|
+
;; \`[...]\` alternation makes sibling branches share one predicate bucket and
|
|
173
|
+
;; silently drops matches; an inner leaf alternation whose predicates all sit
|
|
174
|
+
;; on captures OUTSIDE it (here \`@_cjs.exports\` / \`@_cjs.module\`, both on the
|
|
175
|
+
;; left-hand side and bound in every branch) is the safe form. Verified by
|
|
176
|
+
;; probing all six receiver × RHS combinations, not by reading.
|
|
177
|
+
;;
|
|
178
|
+
;; \`(generator_function) @scope.function\` is declared near the top of this
|
|
179
|
+
;; query, so the anchor aligns for that branch too.
|
|
180
|
+
(assignment_expression
|
|
181
|
+
left: (member_expression
|
|
182
|
+
object: (identifier) @_cjs.receiver
|
|
183
|
+
property: (property_identifier) @declaration.name)
|
|
184
|
+
right: [
|
|
185
|
+
(arrow_function)
|
|
186
|
+
(function_expression)
|
|
187
|
+
(generator_function)
|
|
188
|
+
] @declaration.function)
|
|
189
|
+
|
|
190
|
+
;; \`this.X = fn\` at MODULE level of a CommonJS file — there \`this\` IS
|
|
191
|
+
;; \`module.exports\`, so this declares an export. Pruned emit-side for ESM
|
|
192
|
+
;; files (where top-level \`this\` is undefined) and for a \`this\` inside a
|
|
193
|
+
;; function, which is an instance member rather than an export.
|
|
194
|
+
(assignment_expression
|
|
195
|
+
left: (member_expression
|
|
196
|
+
object: (this)
|
|
197
|
+
property: (property_identifier) @declaration.name)
|
|
198
|
+
right: [
|
|
199
|
+
(arrow_function)
|
|
200
|
+
(function_expression)
|
|
201
|
+
(generator_function)
|
|
202
|
+
] @declaration.function)
|
|
203
|
+
|
|
204
|
+
(assignment_expression
|
|
205
|
+
left: (member_expression
|
|
206
|
+
object: (member_expression
|
|
207
|
+
object: (identifier) @_cjs.module
|
|
208
|
+
property: (property_identifier) @_cjs.exports)
|
|
209
|
+
property: (property_identifier) @declaration.name)
|
|
210
|
+
right: [
|
|
211
|
+
(arrow_function)
|
|
212
|
+
(function_expression)
|
|
213
|
+
(generator_function)
|
|
214
|
+
] @declaration.function
|
|
215
|
+
(#eq? @_cjs.module "module")
|
|
216
|
+
(#eq? @_cjs.exports "exports"))
|
|
217
|
+
|
|
126
218
|
;; Object-property arrows / function expressions named by their pair key.
|
|
127
219
|
;; Same anchor discipline as the lexical_declaration block above: the
|
|
128
220
|
;; @declaration.function capture must sit on the INNER arrow/fn-expression.
|
|
@@ -340,6 +432,34 @@ const JAVASCRIPT_SCOPE_QUERY = `
|
|
|
340
432
|
value: (new_expression
|
|
341
433
|
constructor: (member_expression) @type-binding.type)) @type-binding.constructor
|
|
342
434
|
|
|
435
|
+
;; Class field initializer: \`class C { p = new Outer(); }\` (#2807).
|
|
436
|
+
;; JavaScript has no field annotations at all, so a class field's type can only
|
|
437
|
+
;; ever come from its initializer — without this pattern \`this.p.inner()\` had
|
|
438
|
+
;; nothing to type the receiver with and the receiver fold declined the whole
|
|
439
|
+
;; chain. \`synthesizeConstructorFieldBindings\` in captures.ts already covers the
|
|
440
|
+
;; sibling shape (\`this.p = new Outer()\`), but only inside a \`constructor\`
|
|
441
|
+
;; body, so a field initialized at its declaration matched nothing.
|
|
442
|
+
;;
|
|
443
|
+
;; Anchored on \`field_definition\` so the binding lands in the class body scope,
|
|
444
|
+
;; where \`typeOfMemberOnClass\` reads it — the same anchoring TypeScript uses for
|
|
445
|
+
;; \`public_field_definition\`. Note the JS grammar names the field \`property:\`,
|
|
446
|
+
;; not \`name:\`.
|
|
447
|
+
(field_definition
|
|
448
|
+
property: (property_identifier) @type-binding.name
|
|
449
|
+
value: (new_expression
|
|
450
|
+
constructor: (identifier) @type-binding.type)) @type-binding.constructor
|
|
451
|
+
|
|
452
|
+
(field_definition
|
|
453
|
+
property: (property_identifier) @type-binding.name
|
|
454
|
+
value: (new_expression
|
|
455
|
+
constructor: (member_expression) @type-binding.type)) @type-binding.constructor
|
|
456
|
+
|
|
457
|
+
;; Private-name field: \`#p = new Outer()\`.
|
|
458
|
+
(field_definition
|
|
459
|
+
property: (private_property_identifier) @type-binding.name
|
|
460
|
+
value: (new_expression
|
|
461
|
+
constructor: (identifier) @type-binding.type)) @type-binding.constructor
|
|
462
|
+
|
|
343
463
|
;; Call-result alias: const u = getUser()
|
|
344
464
|
(variable_declarator
|
|
345
465
|
name: (identifier) @type-binding.name
|
|
@@ -457,6 +577,113 @@ const JAVASCRIPT_SCOPE_QUERY = `
|
|
|
457
577
|
(member_expression
|
|
458
578
|
object: (_) @reference.receiver
|
|
459
579
|
property: (property_identifier) @reference.name) @reference.read.member
|
|
580
|
+
|
|
581
|
+
;; Value position (#2437): function identifier as object-literal property
|
|
582
|
+
;; value ({ emitScopeCaptures: emitHook }) or shorthand ({ emitHook }).
|
|
583
|
+
;; Resolution is callable-gated (MethodRegistry) and emits a USES reference;
|
|
584
|
+
;; @reference.property-key feeds the property-dispatch pass, which
|
|
585
|
+
;; synthesizes CALLS at x.<key>() sites. Two separate patterns (tree-sitter
|
|
586
|
+
;; 0.21 alternation hazard); destructuring shorthand is
|
|
587
|
+
;; shorthand_property_identifier_pattern and cannot match.
|
|
588
|
+
(pair
|
|
589
|
+
key: (property_identifier) @reference.property-key
|
|
590
|
+
value: (identifier) @reference.name @reference.value-ref)
|
|
591
|
+
|
|
592
|
+
(object
|
|
593
|
+
(shorthand_property_identifier) @reference.name @reference.property-key @reference.value-ref)
|
|
594
|
+
|
|
595
|
+
;; Bare-identifier reads (A2). VALUE POSITIONS ONLY — a blanket
|
|
596
|
+
;; \`(identifier)\` rule would mint a site for every token in the file.
|
|
597
|
+
(arguments
|
|
598
|
+
(identifier) @reference.name @reference.read.identifier)
|
|
599
|
+
|
|
600
|
+
(assignment_pattern
|
|
601
|
+
right: (identifier) @reference.name @reference.read.identifier)
|
|
602
|
+
|
|
603
|
+
(return_statement
|
|
604
|
+
(identifier) @reference.name @reference.read.identifier)
|
|
605
|
+
|
|
606
|
+
;; \`const next = LIMIT\` and \`n > LIMIT\` — both plainly value reads, and both
|
|
607
|
+
;; named in review as gaps between what A2 claimed and what it matched.
|
|
608
|
+
(variable_declarator
|
|
609
|
+
value: (identifier) @reference.name @reference.read.identifier)
|
|
610
|
+
|
|
611
|
+
(binary_expression
|
|
612
|
+
left: (identifier) @reference.name @reference.read.identifier)
|
|
613
|
+
|
|
614
|
+
(binary_expression
|
|
615
|
+
right: (identifier) @reference.name @reference.read.identifier)
|
|
616
|
+
|
|
617
|
+
;; Destructured PARAMETER keys (R2-1c). \`function exit({ exitMinAtrMult = 0 })\`
|
|
618
|
+
;; reads that property off whatever the caller passes, exactly as
|
|
619
|
+
;; \`cfg.exitMinAtrMult\` would — the field just never appears in a
|
|
620
|
+
;; member_expression, so the read had no site at all and the function that
|
|
621
|
+
;; implements the behaviour was missing from "who reads this setting?".
|
|
622
|
+
;;
|
|
623
|
+
;; A distinct anchor rather than @reference.read.member: that tag is filtered
|
|
624
|
+
;; emit-side to matches with a member_expression ancestor (calls and writes
|
|
625
|
+
;; share its shape), and a destructuring pattern has none, so it would be
|
|
626
|
+
;; dropped. The \`read.\` head is what maps this to a read kind, so the new tag
|
|
627
|
+
;; needs no mapping change.
|
|
628
|
+
;;
|
|
629
|
+
;; The object_pattern is the receiver. It is anonymous — there is no name to
|
|
630
|
+
;; type — which is precisely the untyped-receiver case the name-narrowing pass
|
|
631
|
+
;; exists to serve.
|
|
632
|
+
;;
|
|
633
|
+
;; Scoped to formal_parameters deliberately. A destructuring binding elsewhere
|
|
634
|
+
;; (\`const { x } = require('m')\`) is often an import rather than a field read,
|
|
635
|
+
;; and minting a property read for it would attribute module bindings to
|
|
636
|
+
;; unrelated same-named keys.
|
|
637
|
+
(formal_parameters
|
|
638
|
+
(object_pattern
|
|
639
|
+
(shorthand_property_identifier_pattern) @reference.name
|
|
640
|
+
@reference.read.destructured) @reference.receiver)
|
|
641
|
+
|
|
642
|
+
(formal_parameters
|
|
643
|
+
(object_pattern
|
|
644
|
+
(object_assignment_pattern
|
|
645
|
+
left: (shorthand_property_identifier_pattern) @reference.name
|
|
646
|
+
@reference.read.destructured)) @reference.receiver)
|
|
647
|
+
|
|
648
|
+
(formal_parameters
|
|
649
|
+
(object_pattern
|
|
650
|
+
(pair_pattern
|
|
651
|
+
key: (property_identifier) @reference.name
|
|
652
|
+
@reference.read.destructured)) @reference.receiver)
|
|
653
|
+
|
|
654
|
+
;; Object-literal keys in RECORD CONSTRUCTION position (R2-1b). Building
|
|
655
|
+
;; \`{ exitContract: { exitMinAtrMult: settings.x } }\` SETS that field, so this
|
|
656
|
+
;; is the write counterpart to the destructured read above — without it
|
|
657
|
+
;; "who reads this setting?" answers well and "who SETS it?" misses the code
|
|
658
|
+
;; that stamps the value.
|
|
659
|
+
;;
|
|
660
|
+
;; A WRITE REFERENCE, deliberately not a definition. The round-1 rule already
|
|
661
|
+
;; mints Property nodes for literals bound to a variable; minting more for
|
|
662
|
+
;; anonymous records would add same-named competitors to the very name-narrowing
|
|
663
|
+
;; that makes these reads resolvable — measured at 26 competing definitions for
|
|
664
|
+
;; one field on the reporting repo. A construction site is a USE of a field, not
|
|
665
|
+
;; another declaration of it.
|
|
666
|
+
;;
|
|
667
|
+
;; Two positions only: nested under a key, and returned. Both are records with a
|
|
668
|
+
;; name attached (the key, or the function). An inline call argument
|
|
669
|
+
;; (\`doThing({ id: 1 })\`) stays excluded for the same reason round 1 excluded
|
|
670
|
+
;; it from definitions — it is call-site data, not a named surface.
|
|
671
|
+
;;
|
|
672
|
+
;; The enclosing literal is the receiver, and it is anonymous, which routes
|
|
673
|
+
;; these through the same narrowing and the same refusal-to-guess as every other
|
|
674
|
+
;; untyped receiver.
|
|
675
|
+
(pair
|
|
676
|
+
value: (object
|
|
677
|
+
(pair
|
|
678
|
+
key: (property_identifier) @reference.name
|
|
679
|
+
@reference.write.property-key) @_r2b.nested) @reference.receiver)
|
|
680
|
+
|
|
681
|
+
(return_statement
|
|
682
|
+
(object
|
|
683
|
+
(pair
|
|
684
|
+
key: (property_identifier) @reference.name
|
|
685
|
+
@reference.write.property-key) @_r2b.returned) @reference.receiver)
|
|
686
|
+
|
|
460
687
|
`;
|
|
461
688
|
/** JSX-only suffix — appended when compiling against the JSX grammar for .jsx files. */
|
|
462
689
|
const JSX_QUERY_SUFFIX = `
|
|
@@ -39,11 +39,23 @@ import { javascriptProvider } from '../typescript.js';
|
|
|
39
39
|
import { jsMergeBindings } from './merge-bindings.js';
|
|
40
40
|
import { jsArityCompatibility } from './arity.js';
|
|
41
41
|
import { makeJsResolveImportTarget } from './import-target.js';
|
|
42
|
+
import { loadTsconfigIndex } from '../typescript/tsconfig.js';
|
|
43
|
+
import { loadNodeWorkspacePackages } from '../../import-resolvers/node-workspace-packages.js';
|
|
42
44
|
const javascriptScopeResolver = {
|
|
45
|
+
// Construction is keyword-prefixed: `new Service(db).doWork()` (#2708).
|
|
46
|
+
constructionSyntax: { keyword: 'new' },
|
|
43
47
|
language: SupportedLanguages.JavaScript,
|
|
44
48
|
languageProvider: javascriptProvider,
|
|
45
49
|
importEdgeReason: 'javascript-scope: import',
|
|
46
50
|
resolveImportTarget: makeJsResolveImportTarget(),
|
|
51
|
+
// JavaScript resolution reads the same declared inputs TypeScript does —
|
|
52
|
+
// `jsconfig.json` is a tsconfig by another name, and `package.json` is shared
|
|
53
|
+
// outright. Without them a bare specifier used to fall through to suffix
|
|
54
|
+
// matching (#2953); now it simply does not resolve.
|
|
55
|
+
loadResolutionConfig: async (repoPath) => ({
|
|
56
|
+
tsconfigs: await loadTsconfigIndex(repoPath),
|
|
57
|
+
nodeWorkspacePackages: await loadNodeWorkspacePackages(repoPath),
|
|
58
|
+
}),
|
|
47
59
|
// JavaScript LEGB — same tier ordering as TypeScript; no declaration-
|
|
48
60
|
// merging across type/value/namespace spaces.
|
|
49
61
|
mergeBindings: (existing, incoming) => [...jsMergeBindings([...existing, ...incoming])],
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
* prevents language-specific logic from leaking into shared TypeScript
|
|
17
17
|
* infrastructure (DoD.md §2.2).
|
|
18
18
|
*/
|
|
19
|
-
import {
|
|
19
|
+
import { walkToScope } from '../../utils/scope-tree-walk.js';
|
|
20
|
+
import { tsBindingScopeFor } from '../typescript/simple-hooks.js';
|
|
20
21
|
export { tsImportOwningScope as jsImportOwningScope, tsReceiverBinding as jsReceiverBinding, } from '../typescript/simple-hooks.js';
|
|
21
22
|
/**
|
|
22
23
|
* Like `tsBindingScopeFor` but additionally hoists
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** Plain-data JVM package fact captured from the language's existing AST. */
|
|
2
|
+
export type JvmPackageFact = {
|
|
3
|
+
readonly status: 'known';
|
|
4
|
+
readonly packageName: string;
|
|
5
|
+
} | {
|
|
6
|
+
readonly status: 'unknown';
|
|
7
|
+
};
|
|
8
|
+
export declare const UNKNOWN_JVM_PACKAGE_FACT: JvmPackageFact;
|
|
9
|
+
export interface JvmPackageSyntaxNode {
|
|
10
|
+
readonly type: string;
|
|
11
|
+
readonly text: string;
|
|
12
|
+
readonly hasError: boolean;
|
|
13
|
+
readonly namedChildren: readonly JvmPackageSyntaxNode[];
|
|
14
|
+
}
|
|
15
|
+
export interface JvmPackageFactOptions {
|
|
16
|
+
readonly packageNodeType: string;
|
|
17
|
+
readonly packageNameNodeTypes: readonly string[];
|
|
18
|
+
}
|
|
19
|
+
export interface JvmPackageFactStore {
|
|
20
|
+
clear(): void;
|
|
21
|
+
capture(filePath: string, root: JvmPackageSyntaxNode): void;
|
|
22
|
+
set(filePath: string, fact: JvmPackageFact): void;
|
|
23
|
+
get(filePath: string): JvmPackageFact | undefined;
|
|
24
|
+
}
|
|
25
|
+
/** Validate a package fact restored from an opaque worker payload. */
|
|
26
|
+
export declare function isJvmPackageFact(value: unknown): value is JvmPackageFact;
|
|
27
|
+
/**
|
|
28
|
+
* Create one language-local package fact store.
|
|
29
|
+
*
|
|
30
|
+
* Package facts are captured while the language's scope extractor already
|
|
31
|
+
* owns a tree-sitter Tree, then serialized through ParsedFile's side-channel.
|
|
32
|
+
* Resolution hooks consume only this plain data and never parse source again.
|
|
33
|
+
*/
|
|
34
|
+
export declare function createJvmPackageFactStore(options: JvmPackageFactOptions): JvmPackageFactStore;
|
|
35
|
+
export declare function extractJvmPackageFact(root: JvmPackageSyntaxNode, options: JvmPackageFactOptions): JvmPackageFact;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export const UNKNOWN_JVM_PACKAGE_FACT = Object.freeze({ status: 'unknown' });
|
|
2
|
+
/** Validate a package fact restored from an opaque worker payload. */
|
|
3
|
+
export function isJvmPackageFact(value) {
|
|
4
|
+
if (value === null || typeof value !== 'object')
|
|
5
|
+
return false;
|
|
6
|
+
const fact = value;
|
|
7
|
+
return (fact.status === 'unknown' || (fact.status === 'known' && typeof fact.packageName === 'string'));
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Create one language-local package fact store.
|
|
11
|
+
*
|
|
12
|
+
* Package facts are captured while the language's scope extractor already
|
|
13
|
+
* owns a tree-sitter Tree, then serialized through ParsedFile's side-channel.
|
|
14
|
+
* Resolution hooks consume only this plain data and never parse source again.
|
|
15
|
+
*/
|
|
16
|
+
export function createJvmPackageFactStore(options) {
|
|
17
|
+
const factsByFile = new Map();
|
|
18
|
+
return {
|
|
19
|
+
clear: () => factsByFile.clear(),
|
|
20
|
+
capture: (filePath, root) => factsByFile.set(filePath, extractJvmPackageFact(root, options)),
|
|
21
|
+
set: (filePath, fact) => factsByFile.set(filePath, fact),
|
|
22
|
+
get: (filePath) => factsByFile.get(filePath),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
export function extractJvmPackageFact(root, options) {
|
|
26
|
+
const packageNode = root.namedChildren.find((child) => child.type === options.packageNodeType);
|
|
27
|
+
if (packageNode === undefined) {
|
|
28
|
+
// A syntax error elsewhere in a default-package file does not make its
|
|
29
|
+
// package ambiguous. Only a top-level ERROR that contains the reserved
|
|
30
|
+
// package keyword is evidence of a malformed package header.
|
|
31
|
+
const malformedHeader = root.namedChildren.some((child) => child.type === 'ERROR' && /\bpackage\b/.test(child.text));
|
|
32
|
+
return malformedHeader ? UNKNOWN_JVM_PACKAGE_FACT : { status: 'known', packageName: '' };
|
|
33
|
+
}
|
|
34
|
+
const nameNode = packageNode.namedChildren.find((child) => options.packageNameNodeTypes.includes(child.type));
|
|
35
|
+
const packageName = nameNode?.text.trim();
|
|
36
|
+
if (packageNode.hasError || packageName === undefined || packageName.length === 0) {
|
|
37
|
+
return UNKNOWN_JVM_PACKAGE_FACT;
|
|
38
|
+
}
|
|
39
|
+
return { status: 'known', packageName };
|
|
40
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ParsedFile } from '../../../../_shared/index.js';
|
|
2
|
+
import type { ScopeResolutionIndexes } from '../../model/scope-resolution-indexes.js';
|
|
3
|
+
import type { JvmPackageFact } from './package-facts.js';
|
|
4
|
+
export interface JvmPackageSiblingOptions {
|
|
5
|
+
readonly languageLabel: string;
|
|
6
|
+
readonly getPackageFact: (filePath: string) => JvmPackageFact | undefined;
|
|
7
|
+
}
|
|
8
|
+
export interface JvmPackageSiblingVisibility {
|
|
9
|
+
readonly populateNamespaceSiblings: (parsedFiles: readonly ParsedFile[], indexes: ScopeResolutionIndexes, ctx: {
|
|
10
|
+
readonly fileContents: ReadonlyMap<string, string>;
|
|
11
|
+
}) => void;
|
|
12
|
+
readonly isVisibilityIncomplete: (filePath: string) => boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare function createJvmPackageSiblingVisibility(options: JvmPackageSiblingOptions): JvmPackageSiblingVisibility;
|