cotx-engine 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +94 -0
- package/README.md +103 -0
- package/dist/commands/compile.d.ts +3 -0
- package/dist/commands/compile.js +93 -0
- package/dist/commands/compile.js.map +1 -0
- package/dist/commands/context.d.ts +1 -0
- package/dist/commands/context.js +98 -0
- package/dist/commands/context.js.map +1 -0
- package/dist/commands/diff.d.ts +19 -0
- package/dist/commands/diff.js +127 -0
- package/dist/commands/diff.js.map +1 -0
- package/dist/commands/impact.d.ts +3 -0
- package/dist/commands/impact.js +91 -0
- package/dist/commands/impact.js.map +1 -0
- package/dist/commands/init.d.ts +1 -0
- package/dist/commands/init.js +13 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/lint.d.ts +13 -0
- package/dist/commands/lint.js +290 -0
- package/dist/commands/lint.js.map +1 -0
- package/dist/commands/map.d.ts +6 -0
- package/dist/commands/map.js +409 -0
- package/dist/commands/map.js.map +1 -0
- package/dist/commands/migrate.d.ts +16 -0
- package/dist/commands/migrate.js +150 -0
- package/dist/commands/migrate.js.map +1 -0
- package/dist/commands/query.d.ts +3 -0
- package/dist/commands/query.js +47 -0
- package/dist/commands/query.js.map +1 -0
- package/dist/commands/rename.d.ts +5 -0
- package/dist/commands/rename.js +163 -0
- package/dist/commands/rename.js.map +1 -0
- package/dist/commands/snapshot.d.ts +6 -0
- package/dist/commands/snapshot.js +48 -0
- package/dist/commands/snapshot.js.map +1 -0
- package/dist/commands/status.d.ts +1 -0
- package/dist/commands/status.js +72 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/update.d.ts +8 -0
- package/dist/commands/update.js +163 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/commands/write.d.ts +6 -0
- package/dist/commands/write.js +221 -0
- package/dist/commands/write.js.map +1 -0
- package/dist/compiler/auto-describe.d.ts +13 -0
- package/dist/compiler/auto-describe.js +91 -0
- package/dist/compiler/auto-describe.js.map +1 -0
- package/dist/compiler/concept-compiler.d.ts +21 -0
- package/dist/compiler/concept-compiler.js +125 -0
- package/dist/compiler/concept-compiler.js.map +1 -0
- package/dist/compiler/contract-compiler.d.ts +16 -0
- package/dist/compiler/contract-compiler.js +90 -0
- package/dist/compiler/contract-compiler.js.map +1 -0
- package/dist/compiler/delta-detector.d.ts +8 -0
- package/dist/compiler/delta-detector.js +34 -0
- package/dist/compiler/delta-detector.js.map +1 -0
- package/dist/compiler/flow-compiler.d.ts +18 -0
- package/dist/compiler/flow-compiler.js +69 -0
- package/dist/compiler/flow-compiler.js.map +1 -0
- package/dist/compiler/module-compiler.d.ts +18 -0
- package/dist/compiler/module-compiler.js +420 -0
- package/dist/compiler/module-compiler.js.map +1 -0
- package/dist/compiler/stale-detector.d.ts +22 -0
- package/dist/compiler/stale-detector.js +79 -0
- package/dist/compiler/stale-detector.js.map +1 -0
- package/dist/config/ignore-service.d.ts +26 -0
- package/dist/config/ignore-service.js +366 -0
- package/dist/config/ignore-service.js.map +1 -0
- package/dist/core/analysis/cluster-enricher.d.ts +38 -0
- package/dist/core/analysis/cluster-enricher.js +169 -0
- package/dist/core/analysis/cluster-enricher.js.map +1 -0
- package/dist/core/analysis/community-processor.d.ts +39 -0
- package/dist/core/analysis/community-processor.js +319 -0
- package/dist/core/analysis/community-processor.js.map +1 -0
- package/dist/core/analysis/process-processor.d.ts +51 -0
- package/dist/core/analysis/process-processor.js +318 -0
- package/dist/core/analysis/process-processor.js.map +1 -0
- package/dist/core/bridge.d.ts +15 -0
- package/dist/core/bridge.js +63 -0
- package/dist/core/bridge.js.map +1 -0
- package/dist/core/export/json-exporter.d.ts +43 -0
- package/dist/core/export/json-exporter.js +13 -0
- package/dist/core/export/json-exporter.js.map +1 -0
- package/dist/core/graph/graph.d.ts +2 -0
- package/dist/core/graph/graph.js +79 -0
- package/dist/core/graph/graph.js.map +1 -0
- package/dist/core/graph/types.d.ts +25 -0
- package/dist/core/graph/types.js +2 -0
- package/dist/core/graph/types.js.map +1 -0
- package/dist/core/parser/ast-cache.d.ts +11 -0
- package/dist/core/parser/ast-cache.js +36 -0
- package/dist/core/parser/ast-cache.js.map +1 -0
- package/dist/core/parser/call-processor.d.ts +105 -0
- package/dist/core/parser/call-processor.js +1807 -0
- package/dist/core/parser/call-processor.js.map +1 -0
- package/dist/core/parser/call-routing.d.ts +55 -0
- package/dist/core/parser/call-routing.js +113 -0
- package/dist/core/parser/call-routing.js.map +1 -0
- package/dist/core/parser/call-sites/extract-language-call-site.d.ts +10 -0
- package/dist/core/parser/call-sites/extract-language-call-site.js +23 -0
- package/dist/core/parser/call-sites/extract-language-call-site.js.map +1 -0
- package/dist/core/parser/call-sites/java.d.ts +9 -0
- package/dist/core/parser/call-sites/java.js +31 -0
- package/dist/core/parser/call-sites/java.js.map +1 -0
- package/dist/core/parser/cluster-enricher.d.ts +38 -0
- package/dist/core/parser/cluster-enricher.js +169 -0
- package/dist/core/parser/cluster-enricher.js.map +1 -0
- package/dist/core/parser/community-processor.d.ts +39 -0
- package/dist/core/parser/community-processor.js +321 -0
- package/dist/core/parser/community-processor.js.map +1 -0
- package/dist/core/parser/constants.d.ts +16 -0
- package/dist/core/parser/constants.js +17 -0
- package/dist/core/parser/constants.js.map +1 -0
- package/dist/core/parser/entry-point-scoring.d.ts +57 -0
- package/dist/core/parser/entry-point-scoring.js +377 -0
- package/dist/core/parser/entry-point-scoring.js.map +1 -0
- package/dist/core/parser/export-detection.d.ts +57 -0
- package/dist/core/parser/export-detection.js +234 -0
- package/dist/core/parser/export-detection.js.map +1 -0
- package/dist/core/parser/field-extractor.d.ts +34 -0
- package/dist/core/parser/field-extractor.js +33 -0
- package/dist/core/parser/field-extractor.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/c-cpp.d.ts +16 -0
- package/dist/core/parser/field-extractors/configs/c-cpp.js +129 -0
- package/dist/core/parser/field-extractors/configs/c-cpp.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/csharp.d.ts +15 -0
- package/dist/core/parser/field-extractors/configs/csharp.js +129 -0
- package/dist/core/parser/field-extractors/configs/csharp.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/dart.d.ts +12 -0
- package/dist/core/parser/field-extractors/configs/dart.js +93 -0
- package/dist/core/parser/field-extractors/configs/dart.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/go.d.ts +12 -0
- package/dist/core/parser/field-extractors/configs/go.js +66 -0
- package/dist/core/parser/field-extractors/configs/go.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/helpers.d.ts +40 -0
- package/dist/core/parser/field-extractors/configs/helpers.js +118 -0
- package/dist/core/parser/field-extractors/configs/helpers.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/jvm.d.ts +17 -0
- package/dist/core/parser/field-extractors/configs/jvm.js +139 -0
- package/dist/core/parser/field-extractors/configs/jvm.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/php.d.ts +12 -0
- package/dist/core/parser/field-extractors/configs/php.js +69 -0
- package/dist/core/parser/field-extractors/configs/php.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/python.d.ts +15 -0
- package/dist/core/parser/field-extractors/configs/python.js +92 -0
- package/dist/core/parser/field-extractors/configs/python.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/ruby.d.ts +15 -0
- package/dist/core/parser/field-extractors/configs/ruby.js +68 -0
- package/dist/core/parser/field-extractors/configs/ruby.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/rust.d.ts +12 -0
- package/dist/core/parser/field-extractors/configs/rust.js +58 -0
- package/dist/core/parser/field-extractors/configs/rust.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/swift.d.ts +15 -0
- package/dist/core/parser/field-extractors/configs/swift.js +75 -0
- package/dist/core/parser/field-extractors/configs/swift.js.map +1 -0
- package/dist/core/parser/field-extractors/configs/typescript-javascript.d.ts +14 -0
- package/dist/core/parser/field-extractors/configs/typescript-javascript.js +72 -0
- package/dist/core/parser/field-extractors/configs/typescript-javascript.js.map +1 -0
- package/dist/core/parser/field-extractors/generic.d.ts +61 -0
- package/dist/core/parser/field-extractors/generic.js +170 -0
- package/dist/core/parser/field-extractors/generic.js.map +1 -0
- package/dist/core/parser/field-extractors/typescript.d.ts +16 -0
- package/dist/core/parser/field-extractors/typescript.js +167 -0
- package/dist/core/parser/field-extractors/typescript.js.map +1 -0
- package/dist/core/parser/field-types.d.ts +46 -0
- package/dist/core/parser/field-types.js +2 -0
- package/dist/core/parser/field-types.js.map +1 -0
- package/dist/core/parser/filesystem-walker.d.ts +28 -0
- package/dist/core/parser/filesystem-walker.js +82 -0
- package/dist/core/parser/filesystem-walker.js.map +1 -0
- package/dist/core/parser/framework-detection.d.ts +149 -0
- package/dist/core/parser/framework-detection.js +782 -0
- package/dist/core/parser/framework-detection.js.map +1 -0
- package/dist/core/parser/heritage-processor.d.ts +52 -0
- package/dist/core/parser/heritage-processor.js +339 -0
- package/dist/core/parser/heritage-processor.js.map +1 -0
- package/dist/core/parser/import-processor.d.ts +33 -0
- package/dist/core/parser/import-processor.js +382 -0
- package/dist/core/parser/import-processor.js.map +1 -0
- package/dist/core/parser/import-resolvers/csharp.d.ts +19 -0
- package/dist/core/parser/import-resolvers/csharp.js +132 -0
- package/dist/core/parser/import-resolvers/csharp.js.map +1 -0
- package/dist/core/parser/import-resolvers/dart.d.ts +7 -0
- package/dist/core/parser/import-resolvers/dart.js +45 -0
- package/dist/core/parser/import-resolvers/dart.js.map +1 -0
- package/dist/core/parser/import-resolvers/go.d.ts +18 -0
- package/dist/core/parser/import-resolvers/go.js +62 -0
- package/dist/core/parser/import-resolvers/go.js.map +1 -0
- package/dist/core/parser/import-resolvers/jvm.d.ts +32 -0
- package/dist/core/parser/import-resolvers/jvm.js +160 -0
- package/dist/core/parser/import-resolvers/jvm.js.map +1 -0
- package/dist/core/parser/import-resolvers/php.d.ts +25 -0
- package/dist/core/parser/import-resolvers/php.js +81 -0
- package/dist/core/parser/import-resolvers/php.js.map +1 -0
- package/dist/core/parser/import-resolvers/python.d.ts +25 -0
- package/dist/core/parser/import-resolvers/python.js +85 -0
- package/dist/core/parser/import-resolvers/python.js.map +1 -0
- package/dist/core/parser/import-resolvers/ruby.d.ts +15 -0
- package/dist/core/parser/import-resolvers/ruby.js +21 -0
- package/dist/core/parser/import-resolvers/ruby.js.map +1 -0
- package/dist/core/parser/import-resolvers/rust.d.ts +18 -0
- package/dist/core/parser/import-resolvers/rust.js +119 -0
- package/dist/core/parser/import-resolvers/rust.js.map +1 -0
- package/dist/core/parser/import-resolvers/standard.d.ts +36 -0
- package/dist/core/parser/import-resolvers/standard.js +144 -0
- package/dist/core/parser/import-resolvers/standard.js.map +1 -0
- package/dist/core/parser/import-resolvers/swift.d.ts +7 -0
- package/dist/core/parser/import-resolvers/swift.js +25 -0
- package/dist/core/parser/import-resolvers/swift.js.map +1 -0
- package/dist/core/parser/import-resolvers/types.d.ts +44 -0
- package/dist/core/parser/import-resolvers/types.js +7 -0
- package/dist/core/parser/import-resolvers/types.js.map +1 -0
- package/dist/core/parser/import-resolvers/utils.d.ts +35 -0
- package/dist/core/parser/import-resolvers/utils.js +150 -0
- package/dist/core/parser/import-resolvers/utils.js.map +1 -0
- package/dist/core/parser/import-resolvers/vue.d.ts +8 -0
- package/dist/core/parser/import-resolvers/vue.js +10 -0
- package/dist/core/parser/import-resolvers/vue.js.map +1 -0
- package/dist/core/parser/language-config.d.ts +52 -0
- package/dist/core/parser/language-config.js +182 -0
- package/dist/core/parser/language-config.js.map +1 -0
- package/dist/core/parser/language-provider.d.ts +126 -0
- package/dist/core/parser/language-provider.js +25 -0
- package/dist/core/parser/language-provider.js.map +1 -0
- package/dist/core/parser/languages/c-cpp.d.ts +12 -0
- package/dist/core/parser/languages/c-cpp.js +312 -0
- package/dist/core/parser/languages/c-cpp.js.map +1 -0
- package/dist/core/parser/languages/csharp.d.ts +8 -0
- package/dist/core/parser/languages/csharp.js +127 -0
- package/dist/core/parser/languages/csharp.js.map +1 -0
- package/dist/core/parser/languages/dart.d.ts +12 -0
- package/dist/core/parser/languages/dart.js +91 -0
- package/dist/core/parser/languages/dart.js.map +1 -0
- package/dist/core/parser/languages/go.d.ts +11 -0
- package/dist/core/parser/languages/go.js +32 -0
- package/dist/core/parser/languages/go.js.map +1 -0
- package/dist/core/parser/languages/index.d.ts +38 -0
- package/dist/core/parser/languages/index.js +63 -0
- package/dist/core/parser/languages/index.js.map +1 -0
- package/dist/core/parser/languages/java.d.ts +9 -0
- package/dist/core/parser/languages/java.js +33 -0
- package/dist/core/parser/languages/java.js.map +1 -0
- package/dist/core/parser/languages/kotlin.d.ts +9 -0
- package/dist/core/parser/languages/kotlin.js +112 -0
- package/dist/core/parser/languages/kotlin.js.map +1 -0
- package/dist/core/parser/languages/php.d.ts +8 -0
- package/dist/core/parser/languages/php.js +226 -0
- package/dist/core/parser/languages/php.js.map +1 -0
- package/dist/core/parser/languages/python.d.ts +12 -0
- package/dist/core/parser/languages/python.js +66 -0
- package/dist/core/parser/languages/python.js.map +1 -0
- package/dist/core/parser/languages/ruby.d.ts +9 -0
- package/dist/core/parser/languages/ruby.js +109 -0
- package/dist/core/parser/languages/ruby.js.map +1 -0
- package/dist/core/parser/languages/rust.d.ts +12 -0
- package/dist/core/parser/languages/rust.js +121 -0
- package/dist/core/parser/languages/rust.js.map +1 -0
- package/dist/core/parser/languages/swift.d.ts +12 -0
- package/dist/core/parser/languages/swift.js +233 -0
- package/dist/core/parser/languages/swift.js.map +1 -0
- package/dist/core/parser/languages/typescript.d.ts +11 -0
- package/dist/core/parser/languages/typescript.js +169 -0
- package/dist/core/parser/languages/typescript.js.map +1 -0
- package/dist/core/parser/languages/vue.d.ts +13 -0
- package/dist/core/parser/languages/vue.js +65 -0
- package/dist/core/parser/languages/vue.js.map +1 -0
- package/dist/core/parser/markdown-processor.d.ts +17 -0
- package/dist/core/parser/markdown-processor.js +125 -0
- package/dist/core/parser/markdown-processor.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/c-cpp.d.ts +3 -0
- package/dist/core/parser/method-extractors/configs/c-cpp.js +276 -0
- package/dist/core/parser/method-extractors/configs/c-cpp.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/csharp.d.ts +2 -0
- package/dist/core/parser/method-extractors/configs/csharp.js +243 -0
- package/dist/core/parser/method-extractors/configs/csharp.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/dart.d.ts +2 -0
- package/dist/core/parser/method-extractors/configs/dart.js +263 -0
- package/dist/core/parser/method-extractors/configs/dart.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/go.d.ts +2 -0
- package/dist/core/parser/method-extractors/configs/go.js +120 -0
- package/dist/core/parser/method-extractors/configs/go.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/jvm.d.ts +3 -0
- package/dist/core/parser/method-extractors/configs/jvm.js +309 -0
- package/dist/core/parser/method-extractors/configs/jvm.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/php.d.ts +2 -0
- package/dist/core/parser/method-extractors/configs/php.js +243 -0
- package/dist/core/parser/method-extractors/configs/php.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/python.d.ts +2 -0
- package/dist/core/parser/method-extractors/configs/python.js +219 -0
- package/dist/core/parser/method-extractors/configs/python.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/ruby.d.ts +2 -0
- package/dist/core/parser/method-extractors/configs/ruby.js +201 -0
- package/dist/core/parser/method-extractors/configs/ruby.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/rust.d.ts +2 -0
- package/dist/core/parser/method-extractors/configs/rust.js +120 -0
- package/dist/core/parser/method-extractors/configs/rust.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/swift.d.ts +2 -0
- package/dist/core/parser/method-extractors/configs/swift.js +191 -0
- package/dist/core/parser/method-extractors/configs/swift.js.map +1 -0
- package/dist/core/parser/method-extractors/configs/typescript-javascript.d.ts +3 -0
- package/dist/core/parser/method-extractors/configs/typescript-javascript.js +231 -0
- package/dist/core/parser/method-extractors/configs/typescript-javascript.js.map +1 -0
- package/dist/core/parser/method-extractors/generic.d.ts +11 -0
- package/dist/core/parser/method-extractors/generic.js +162 -0
- package/dist/core/parser/method-extractors/generic.js.map +1 -0
- package/dist/core/parser/method-types.d.ts +110 -0
- package/dist/core/parser/method-types.js +2 -0
- package/dist/core/parser/method-types.js.map +1 -0
- package/dist/core/parser/mro-processor.d.ts +46 -0
- package/dist/core/parser/mro-processor.js +677 -0
- package/dist/core/parser/mro-processor.js.map +1 -0
- package/dist/core/parser/named-binding-processor.d.ts +18 -0
- package/dist/core/parser/named-binding-processor.js +43 -0
- package/dist/core/parser/named-binding-processor.js.map +1 -0
- package/dist/core/parser/named-bindings/csharp.d.ts +3 -0
- package/dist/core/parser/named-bindings/csharp.js +38 -0
- package/dist/core/parser/named-bindings/csharp.js.map +1 -0
- package/dist/core/parser/named-bindings/java.d.ts +3 -0
- package/dist/core/parser/named-bindings/java.js +30 -0
- package/dist/core/parser/named-bindings/java.js.map +1 -0
- package/dist/core/parser/named-bindings/kotlin.d.ts +3 -0
- package/dist/core/parser/named-bindings/kotlin.js +37 -0
- package/dist/core/parser/named-bindings/kotlin.js.map +1 -0
- package/dist/core/parser/named-bindings/php.d.ts +3 -0
- package/dist/core/parser/named-bindings/php.js +62 -0
- package/dist/core/parser/named-bindings/php.js.map +1 -0
- package/dist/core/parser/named-bindings/python.d.ts +3 -0
- package/dist/core/parser/named-bindings/python.js +50 -0
- package/dist/core/parser/named-bindings/python.js.map +1 -0
- package/dist/core/parser/named-bindings/rust.d.ts +3 -0
- package/dist/core/parser/named-bindings/rust.js +67 -0
- package/dist/core/parser/named-bindings/rust.js.map +1 -0
- package/dist/core/parser/named-bindings/types.d.ts +16 -0
- package/dist/core/parser/named-bindings/types.js +7 -0
- package/dist/core/parser/named-bindings/types.js.map +1 -0
- package/dist/core/parser/named-bindings/typescript.d.ts +3 -0
- package/dist/core/parser/named-bindings/typescript.js +59 -0
- package/dist/core/parser/named-bindings/typescript.js.map +1 -0
- package/dist/core/parser/parsing-processor.d.ts +23 -0
- package/dist/core/parser/parsing-processor.js +464 -0
- package/dist/core/parser/parsing-processor.js.map +1 -0
- package/dist/core/parser/pipeline.d.ts +17 -0
- package/dist/core/parser/pipeline.js +1405 -0
- package/dist/core/parser/pipeline.js.map +1 -0
- package/dist/core/parser/process-processor.d.ts +51 -0
- package/dist/core/parser/process-processor.js +318 -0
- package/dist/core/parser/process-processor.js.map +1 -0
- package/dist/core/parser/resolution-context.d.ts +58 -0
- package/dist/core/parser/resolution-context.js +136 -0
- package/dist/core/parser/resolution-context.js.map +1 -0
- package/dist/core/parser/route-extractors/expo.d.ts +1 -0
- package/dist/core/parser/route-extractors/expo.js +37 -0
- package/dist/core/parser/route-extractors/expo.js.map +1 -0
- package/dist/core/parser/route-extractors/middleware.d.ts +47 -0
- package/dist/core/parser/route-extractors/middleware.js +168 -0
- package/dist/core/parser/route-extractors/middleware.js.map +1 -0
- package/dist/core/parser/route-extractors/nextjs.d.ts +3 -0
- package/dist/core/parser/route-extractors/nextjs.js +77 -0
- package/dist/core/parser/route-extractors/nextjs.js.map +1 -0
- package/dist/core/parser/route-extractors/php.d.ts +7 -0
- package/dist/core/parser/route-extractors/php.js +23 -0
- package/dist/core/parser/route-extractors/php.js.map +1 -0
- package/dist/core/parser/route-extractors/response-shapes.d.ts +20 -0
- package/dist/core/parser/route-extractors/response-shapes.js +295 -0
- package/dist/core/parser/route-extractors/response-shapes.js.map +1 -0
- package/dist/core/parser/structure-processor.d.ts +2 -0
- package/dist/core/parser/structure-processor.js +37 -0
- package/dist/core/parser/structure-processor.js.map +1 -0
- package/dist/core/parser/symbol-table.d.ts +79 -0
- package/dist/core/parser/symbol-table.js +116 -0
- package/dist/core/parser/symbol-table.js.map +1 -0
- package/dist/core/parser/tree-sitter-queries.d.ts +16 -0
- package/dist/core/parser/tree-sitter-queries.js +1180 -0
- package/dist/core/parser/tree-sitter-queries.js.map +1 -0
- package/dist/core/parser/type-env.d.ts +81 -0
- package/dist/core/parser/type-env.js +1048 -0
- package/dist/core/parser/type-env.js.map +1 -0
- package/dist/core/parser/type-extractors/c-cpp.d.ts +7 -0
- package/dist/core/parser/type-extractors/c-cpp.js +533 -0
- package/dist/core/parser/type-extractors/c-cpp.js.map +1 -0
- package/dist/core/parser/type-extractors/csharp.d.ts +2 -0
- package/dist/core/parser/type-extractors/csharp.js +584 -0
- package/dist/core/parser/type-extractors/csharp.js.map +1 -0
- package/dist/core/parser/type-extractors/dart.d.ts +15 -0
- package/dist/core/parser/type-extractors/dart.js +370 -0
- package/dist/core/parser/type-extractors/dart.js.map +1 -0
- package/dist/core/parser/type-extractors/go.d.ts +2 -0
- package/dist/core/parser/type-extractors/go.js +514 -0
- package/dist/core/parser/type-extractors/go.js.map +1 -0
- package/dist/core/parser/type-extractors/jvm.d.ts +3 -0
- package/dist/core/parser/type-extractors/jvm.js +857 -0
- package/dist/core/parser/type-extractors/jvm.js.map +1 -0
- package/dist/core/parser/type-extractors/php.d.ts +2 -0
- package/dist/core/parser/type-extractors/php.js +535 -0
- package/dist/core/parser/type-extractors/php.js.map +1 -0
- package/dist/core/parser/type-extractors/python.d.ts +2 -0
- package/dist/core/parser/type-extractors/python.js +475 -0
- package/dist/core/parser/type-extractors/python.js.map +1 -0
- package/dist/core/parser/type-extractors/ruby.d.ts +2 -0
- package/dist/core/parser/type-extractors/ruby.js +378 -0
- package/dist/core/parser/type-extractors/ruby.js.map +1 -0
- package/dist/core/parser/type-extractors/rust.d.ts +2 -0
- package/dist/core/parser/type-extractors/rust.js +516 -0
- package/dist/core/parser/type-extractors/rust.js.map +1 -0
- package/dist/core/parser/type-extractors/shared.d.ts +131 -0
- package/dist/core/parser/type-extractors/shared.js +797 -0
- package/dist/core/parser/type-extractors/shared.js.map +1 -0
- package/dist/core/parser/type-extractors/swift.d.ts +2 -0
- package/dist/core/parser/type-extractors/swift.js +485 -0
- package/dist/core/parser/type-extractors/swift.js.map +1 -0
- package/dist/core/parser/type-extractors/types.d.ts +172 -0
- package/dist/core/parser/type-extractors/types.js +2 -0
- package/dist/core/parser/type-extractors/types.js.map +1 -0
- package/dist/core/parser/type-extractors/typescript.d.ts +2 -0
- package/dist/core/parser/type-extractors/typescript.js +662 -0
- package/dist/core/parser/type-extractors/typescript.js.map +1 -0
- package/dist/core/parser/utils/ast-helpers.d.ts +73 -0
- package/dist/core/parser/utils/ast-helpers.js +415 -0
- package/dist/core/parser/utils/ast-helpers.js.map +1 -0
- package/dist/core/parser/utils/call-analysis.d.ts +75 -0
- package/dist/core/parser/utils/call-analysis.js +575 -0
- package/dist/core/parser/utils/call-analysis.js.map +1 -0
- package/dist/core/parser/utils/event-loop.d.ts +5 -0
- package/dist/core/parser/utils/event-loop.js +6 -0
- package/dist/core/parser/utils/event-loop.js.map +1 -0
- package/dist/core/parser/utils/method-props.d.ts +8 -0
- package/dist/core/parser/utils/method-props.js +39 -0
- package/dist/core/parser/utils/method-props.js.map +1 -0
- package/dist/core/parser/utils/verbose.d.ts +1 -0
- package/dist/core/parser/utils/verbose.js +8 -0
- package/dist/core/parser/utils/verbose.js.map +1 -0
- package/dist/core/parser/vue-sfc-extractor.d.ts +44 -0
- package/dist/core/parser/vue-sfc-extractor.js +95 -0
- package/dist/core/parser/vue-sfc-extractor.js.map +1 -0
- package/dist/core/parser/workers/parse-worker.d.ts +171 -0
- package/dist/core/parser/workers/parse-worker.js +1724 -0
- package/dist/core/parser/workers/parse-worker.js.map +1 -0
- package/dist/core/parser/workers/worker-pool.d.ts +16 -0
- package/dist/core/parser/workers/worker-pool.js +124 -0
- package/dist/core/parser/workers/worker-pool.js.map +1 -0
- package/dist/core/shared/graph-types.d.ts +61 -0
- package/dist/core/shared/graph-types.js +5 -0
- package/dist/core/shared/graph-types.js.map +1 -0
- package/dist/core/shared/index.d.ts +4 -0
- package/dist/core/shared/index.js +4 -0
- package/dist/core/shared/index.js.map +1 -0
- package/dist/core/shared/language-detection.d.ts +22 -0
- package/dist/core/shared/language-detection.js +137 -0
- package/dist/core/shared/language-detection.js.map +1 -0
- package/dist/core/shared/languages.d.ts +23 -0
- package/dist/core/shared/languages.js +25 -0
- package/dist/core/shared/languages.js.map +1 -0
- package/dist/core/shared/pipeline.d.ts +15 -0
- package/dist/core/shared/pipeline.js +5 -0
- package/dist/core/shared/pipeline.js.map +1 -0
- package/dist/core/tree-sitter/parser-loader.d.ts +5 -0
- package/dist/core/tree-sitter/parser-loader.js +71 -0
- package/dist/core/tree-sitter/parser-loader.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +132 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/hash.d.ts +1 -0
- package/dist/lib/hash.js +6 -0
- package/dist/lib/hash.js.map +1 -0
- package/dist/lib/naming.d.ts +12 -0
- package/dist/lib/naming.js +28 -0
- package/dist/lib/naming.js.map +1 -0
- package/dist/lib/utils.d.ts +1 -0
- package/dist/lib/utils.js +4 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/mcp/server.d.ts +26 -0
- package/dist/mcp/server.js +282 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/tools.d.ts +37 -0
- package/dist/mcp/tools.js +650 -0
- package/dist/mcp/tools.js.map +1 -0
- package/dist/query/bm25.d.ts +19 -0
- package/dist/query/bm25.js +60 -0
- package/dist/query/bm25.js.map +1 -0
- package/dist/query/graph-index.d.ts +40 -0
- package/dist/query/graph-index.js +178 -0
- package/dist/query/graph-index.js.map +1 -0
- package/dist/store/derived-index.d.ts +4 -0
- package/dist/store/derived-index.js +68 -0
- package/dist/store/derived-index.js.map +1 -0
- package/dist/store/meta.d.ts +1 -0
- package/dist/store/meta.js +3 -0
- package/dist/store/meta.js.map +1 -0
- package/dist/store/schema.d.ts +135 -0
- package/dist/store/schema.js +2 -0
- package/dist/store/schema.js.map +1 -0
- package/dist/store/store.d.ts +49 -0
- package/dist/store/store.js +254 -0
- package/dist/store/store.js.map +1 -0
- package/dist/types/pipeline.d.ts +12 -0
- package/dist/types/pipeline.js +2 -0
- package/dist/types/pipeline.js.map +1 -0
- package/package.json +69 -0
- package/skills/cotx-enrich/SKILL.md +59 -0
- package/vendor/leiden/index.cjs +355 -0
- package/vendor/leiden/utils.cjs +392 -0
|
@@ -0,0 +1,377 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Entry Point Scoring
|
|
3
|
+
*
|
|
4
|
+
* Calculates entry point scores for process detection based on:
|
|
5
|
+
* 1. Call ratio (existing algorithm - callees / (callers + 1))
|
|
6
|
+
* 2. Export status (exported functions get higher priority)
|
|
7
|
+
* 3. Name patterns (functions matching entry point patterns like handle*, on*, *Controller)
|
|
8
|
+
* 4. Framework detection (path-based detection for Next.js, Express, Django, etc.)
|
|
9
|
+
*
|
|
10
|
+
* This module is language-agnostic - language-specific patterns are defined per language.
|
|
11
|
+
*/
|
|
12
|
+
import { detectFrameworkFromPath } from './framework-detection.js';
|
|
13
|
+
import { SupportedLanguages } from '../shared/index.js';
|
|
14
|
+
// ============================================================================
|
|
15
|
+
// NAME PATTERNS - All 13 supported languages
|
|
16
|
+
// ============================================================================
|
|
17
|
+
/**
|
|
18
|
+
* Common entry point naming patterns by language.
|
|
19
|
+
* These patterns indicate functions that are likely feature entry points.
|
|
20
|
+
*
|
|
21
|
+
* Universal patterns are separated from per-language patterns so the per-language
|
|
22
|
+
* table can use `satisfies Record<SupportedLanguages, RegExp[]>` for compile-time
|
|
23
|
+
* exhaustiveness — the compiler catches any missing language entry.
|
|
24
|
+
*/
|
|
25
|
+
const UNIVERSAL_ENTRY_POINT_PATTERNS = [
|
|
26
|
+
/^(main|init|bootstrap|start|run|setup|configure)$/i,
|
|
27
|
+
/^handle[A-Z]/, // handleLogin, handleSubmit
|
|
28
|
+
/^on[A-Z]/, // onClick, onSubmit
|
|
29
|
+
/Handler$/, // RequestHandler
|
|
30
|
+
/Controller$/, // UserController
|
|
31
|
+
/^process[A-Z]/, // processPayment
|
|
32
|
+
/^execute[A-Z]/, // executeQuery
|
|
33
|
+
/^perform[A-Z]/, // performAction
|
|
34
|
+
/^dispatch[A-Z]/, // dispatchEvent
|
|
35
|
+
/^trigger[A-Z]/, // triggerAction
|
|
36
|
+
/^fire[A-Z]/, // fireEvent
|
|
37
|
+
/^emit[A-Z]/, // emitEvent
|
|
38
|
+
];
|
|
39
|
+
export const ENTRY_POINT_PATTERNS = {
|
|
40
|
+
// JavaScript/TypeScript
|
|
41
|
+
[SupportedLanguages.JavaScript]: [
|
|
42
|
+
/^use[A-Z]/, // React hooks (useEffect, etc.)
|
|
43
|
+
],
|
|
44
|
+
[SupportedLanguages.TypeScript]: [
|
|
45
|
+
/^use[A-Z]/, // React hooks
|
|
46
|
+
],
|
|
47
|
+
// Python
|
|
48
|
+
[SupportedLanguages.Python]: [
|
|
49
|
+
/^app$/, // Flask/FastAPI app
|
|
50
|
+
/^(get|post|put|delete|patch)_/i, // REST conventions
|
|
51
|
+
/^api_/, // API functions
|
|
52
|
+
/^view_/, // Django views
|
|
53
|
+
],
|
|
54
|
+
// Java
|
|
55
|
+
[SupportedLanguages.Java]: [
|
|
56
|
+
/^do[A-Z]/, // doGet, doPost (Servlets)
|
|
57
|
+
/^create[A-Z]/, // Factory patterns
|
|
58
|
+
/^build[A-Z]/, // Builder patterns
|
|
59
|
+
/Service$/, // UserService
|
|
60
|
+
],
|
|
61
|
+
// Kotlin
|
|
62
|
+
[SupportedLanguages.Kotlin]: [
|
|
63
|
+
/^on(Create|Start|Resume|Pause|Stop|Destroy)$/, // Android lifecycle
|
|
64
|
+
/^do[A-Z]/, // doGet, doPost (shared JVM Servlet pattern)
|
|
65
|
+
/^create[A-Z]/, // Factory patterns
|
|
66
|
+
/^build[A-Z]/, // Builder patterns
|
|
67
|
+
/ViewModel$/, // MVVM pattern (Android)
|
|
68
|
+
/^module$/, // Ktor module entry point
|
|
69
|
+
/Service$/, // Service classes
|
|
70
|
+
],
|
|
71
|
+
// C#
|
|
72
|
+
[SupportedLanguages.CSharp]: [
|
|
73
|
+
/^(Get|Post|Put|Delete|Patch)/, // ASP.NET action methods
|
|
74
|
+
/Action$/, // MVC actions
|
|
75
|
+
/^On[A-Z]/, // Event handlers / Blazor lifecycle
|
|
76
|
+
/Async$/, // Async entry points
|
|
77
|
+
/^Configure$/, // Startup.Configure
|
|
78
|
+
/^ConfigureServices$/, // Startup.ConfigureServices
|
|
79
|
+
/^Handle$/, // MediatR / generic handler
|
|
80
|
+
/^Execute$/, // Command pattern
|
|
81
|
+
/^Invoke$/, // Middleware Invoke
|
|
82
|
+
/^Map[A-Z]/, // Minimal API MapGet, MapPost
|
|
83
|
+
/Service$/, // Service classes
|
|
84
|
+
/^Seed/, // Database seeding
|
|
85
|
+
],
|
|
86
|
+
// Go
|
|
87
|
+
[SupportedLanguages.Go]: [
|
|
88
|
+
/Handler$/, // http.Handler pattern
|
|
89
|
+
/^Serve/, // ServeHTTP
|
|
90
|
+
/^New[A-Z]/, // Constructor pattern (returns new instance)
|
|
91
|
+
/^Make[A-Z]/, // Make functions
|
|
92
|
+
],
|
|
93
|
+
// Rust
|
|
94
|
+
[SupportedLanguages.Rust]: [
|
|
95
|
+
/^(get|post|put|delete)_handler$/i,
|
|
96
|
+
/^handle_/, // handle_request
|
|
97
|
+
/^new$/, // Constructor pattern
|
|
98
|
+
/^run$/, // run entry point
|
|
99
|
+
/^spawn/, // Async spawn
|
|
100
|
+
],
|
|
101
|
+
// C - explicit main() boost plus common C entry point conventions
|
|
102
|
+
[SupportedLanguages.C]: [
|
|
103
|
+
/^main$/, // THE entry point
|
|
104
|
+
/^init_/, // init_server, init_client
|
|
105
|
+
/_init$/, // module_init, server_init
|
|
106
|
+
/^start_/, // start_server
|
|
107
|
+
/_start$/, // thread_start
|
|
108
|
+
/^run_/, // run_loop
|
|
109
|
+
/_run$/, // event_run
|
|
110
|
+
/^stop_/, // stop_server
|
|
111
|
+
/_stop$/, // service_stop
|
|
112
|
+
/^open_/, // open_connection
|
|
113
|
+
/_open$/, // file_open
|
|
114
|
+
/^close_/, // close_connection
|
|
115
|
+
/_close$/, // socket_close
|
|
116
|
+
/^create_/, // create_session
|
|
117
|
+
/_create$/, // object_create
|
|
118
|
+
/^destroy_/, // destroy_session
|
|
119
|
+
/_destroy$/, // object_destroy
|
|
120
|
+
/^handle_/, // handle_request
|
|
121
|
+
/_handler$/, // signal_handler
|
|
122
|
+
/_callback$/, // event_callback
|
|
123
|
+
/^cmd_/, // tmux: cmd_new_window, cmd_attach_session
|
|
124
|
+
/^server_/, // server_start, server_loop
|
|
125
|
+
/^client_/, // client_connect
|
|
126
|
+
/^session_/, // session_create
|
|
127
|
+
/^window_/, // window_resize (tmux)
|
|
128
|
+
/^key_/, // key_press
|
|
129
|
+
/^input_/, // input_parse
|
|
130
|
+
/^output_/, // output_write
|
|
131
|
+
/^notify_/, // notify_client
|
|
132
|
+
/^control_/, // control_start
|
|
133
|
+
],
|
|
134
|
+
// C++ - same as C plus OOP/template patterns
|
|
135
|
+
[SupportedLanguages.CPlusPlus]: [
|
|
136
|
+
/^main$/, // THE entry point
|
|
137
|
+
/^init_/,
|
|
138
|
+
/_init$/,
|
|
139
|
+
/^Create[A-Z]/, // Factory patterns
|
|
140
|
+
/^create_/,
|
|
141
|
+
/^Run$/, // Run methods
|
|
142
|
+
/^run$/,
|
|
143
|
+
/^Start$/, // Start methods
|
|
144
|
+
/^start$/,
|
|
145
|
+
/^handle_/,
|
|
146
|
+
/_handler$/,
|
|
147
|
+
/_callback$/,
|
|
148
|
+
/^OnEvent/, // Event callbacks
|
|
149
|
+
/^on_/,
|
|
150
|
+
/::Run$/, // Class::Run
|
|
151
|
+
/::Start$/, // Class::Start
|
|
152
|
+
/::Init$/, // Class::Init
|
|
153
|
+
/::Execute$/, // Class::Execute
|
|
154
|
+
],
|
|
155
|
+
// Swift / iOS
|
|
156
|
+
[SupportedLanguages.Swift]: [
|
|
157
|
+
/^viewDidLoad$/, // UIKit lifecycle
|
|
158
|
+
/^viewWillAppear$/, // UIKit lifecycle
|
|
159
|
+
/^viewDidAppear$/, // UIKit lifecycle
|
|
160
|
+
/^viewWillDisappear$/, // UIKit lifecycle
|
|
161
|
+
/^viewDidDisappear$/, // UIKit lifecycle
|
|
162
|
+
/^application\(/, // AppDelegate methods
|
|
163
|
+
/^scene\(/, // SceneDelegate methods
|
|
164
|
+
/^body$/, // SwiftUI View.body
|
|
165
|
+
/Coordinator$/, // Coordinator pattern
|
|
166
|
+
/^sceneDidBecomeActive$/, // SceneDelegate lifecycle
|
|
167
|
+
/^sceneWillResignActive$/, // SceneDelegate lifecycle
|
|
168
|
+
/^didFinishLaunchingWithOptions$/, // AppDelegate
|
|
169
|
+
/ViewController$/, // ViewController classes
|
|
170
|
+
/^configure[A-Z]/, // Configuration methods
|
|
171
|
+
/^setup[A-Z]/, // Setup methods
|
|
172
|
+
/^makeBody$/, // SwiftUI ViewModifier
|
|
173
|
+
],
|
|
174
|
+
// PHP / Laravel
|
|
175
|
+
[SupportedLanguages.PHP]: [
|
|
176
|
+
/Controller$/, // UserController (class name convention)
|
|
177
|
+
/^handle$/, // Job::handle(), Listener::handle()
|
|
178
|
+
/^execute$/, // Command::execute()
|
|
179
|
+
/^boot$/, // ServiceProvider::boot()
|
|
180
|
+
/^register$/, // ServiceProvider::register()
|
|
181
|
+
/^__invoke$/, // Invokable controllers/actions
|
|
182
|
+
/^(index|show|store|update|destroy|create|edit)$/, // RESTful resource methods
|
|
183
|
+
/^(get|post|put|delete|patch)[A-Z]/, // Explicit HTTP method actions
|
|
184
|
+
/^run$/, // Command/Job run()
|
|
185
|
+
/^fire$/, // Event fire()
|
|
186
|
+
/^dispatch$/, // Dispatchable jobs
|
|
187
|
+
/Service$/, // UserService (Service layer)
|
|
188
|
+
/Repository$/, // UserRepository (Repository pattern)
|
|
189
|
+
/^find$/, // Repository::find()
|
|
190
|
+
/^findAll$/, // Repository::findAll()
|
|
191
|
+
/^save$/, // Repository::save()
|
|
192
|
+
/^delete$/, // Repository::delete()
|
|
193
|
+
],
|
|
194
|
+
// Ruby
|
|
195
|
+
[SupportedLanguages.Ruby]: [
|
|
196
|
+
/^call$/, // Service objects (MyService.call)
|
|
197
|
+
/^perform$/, // Background jobs (Sidekiq, ActiveJob)
|
|
198
|
+
/^execute$/, // Command pattern
|
|
199
|
+
],
|
|
200
|
+
// Dart / Flutter
|
|
201
|
+
[SupportedLanguages.Dart]: [
|
|
202
|
+
/^main$/, // App entry
|
|
203
|
+
/^build$/, // Widget.build — fundamental Flutter render entry point
|
|
204
|
+
/^createState$/, // StatefulWidget.createState
|
|
205
|
+
/^initState$/, // State lifecycle initialization
|
|
206
|
+
/^dispose$/, // State lifecycle teardown
|
|
207
|
+
/^didChangeDependencies$/, // State lifecycle — InheritedWidget changes
|
|
208
|
+
/^didUpdateWidget$/, // State lifecycle — widget rebuild with new config
|
|
209
|
+
/^runApp$/, // App entry point
|
|
210
|
+
/^onEvent$/, // BLoC event handler
|
|
211
|
+
/^mapEventToState$/, // Legacy BLoC pattern
|
|
212
|
+
],
|
|
213
|
+
[SupportedLanguages.Vue]: [], // Vue uses TypeScript queries — entry points handled via TS patterns
|
|
214
|
+
};
|
|
215
|
+
/** Pre-computed merged patterns (universal + language-specific) to avoid per-call array allocation. */
|
|
216
|
+
const MERGED_ENTRY_POINT_PATTERNS = Object.fromEntries(Object.values(SupportedLanguages).map((lang) => [
|
|
217
|
+
lang,
|
|
218
|
+
[...UNIVERSAL_ENTRY_POINT_PATTERNS, ...(ENTRY_POINT_PATTERNS[lang] ?? [])],
|
|
219
|
+
]));
|
|
220
|
+
// ============================================================================
|
|
221
|
+
// UTILITY PATTERNS - Functions that should be penalized
|
|
222
|
+
// ============================================================================
|
|
223
|
+
/**
|
|
224
|
+
* Patterns that indicate utility/helper functions (NOT entry points)
|
|
225
|
+
* These get penalized in scoring
|
|
226
|
+
*/
|
|
227
|
+
const UTILITY_PATTERNS = [
|
|
228
|
+
/^(get|set|is|has|can|should|will|did)[A-Z]/, // Accessors/predicates
|
|
229
|
+
/^_/, // Private by convention
|
|
230
|
+
/^(format|parse|validate|convert|transform)/i, // Transformation utilities
|
|
231
|
+
/^(log|debug|error|warn|info)$/i, // Logging
|
|
232
|
+
/^(to|from)[A-Z]/, // Conversions
|
|
233
|
+
/^(encode|decode)/i, // Encoding utilities
|
|
234
|
+
/^(serialize|deserialize)/i, // Serialization
|
|
235
|
+
/^(clone|copy|deep)/i, // Cloning utilities
|
|
236
|
+
/^(merge|extend|assign)/i, // Object utilities
|
|
237
|
+
/^(filter|map|reduce|sort|find)/i, // Collection utilities (standalone)
|
|
238
|
+
/Helper$/,
|
|
239
|
+
/Util$/,
|
|
240
|
+
/Utils$/,
|
|
241
|
+
/^utils?$/i,
|
|
242
|
+
/^helpers?$/i,
|
|
243
|
+
];
|
|
244
|
+
// ============================================================================
|
|
245
|
+
// MAIN SCORING FUNCTION
|
|
246
|
+
// ============================================================================
|
|
247
|
+
/**
|
|
248
|
+
* Calculate an entry point score for a function/method
|
|
249
|
+
*
|
|
250
|
+
* Higher scores indicate better entry point candidates.
|
|
251
|
+
* Score = baseScore × exportMultiplier × nameMultiplier
|
|
252
|
+
*
|
|
253
|
+
* @param name - Function/method name
|
|
254
|
+
* @param language - Programming language
|
|
255
|
+
* @param isExported - Whether the function is exported/public
|
|
256
|
+
* @param callerCount - Number of functions that call this function
|
|
257
|
+
* @param calleeCount - Number of functions this function calls
|
|
258
|
+
* @returns Score and array of reasons explaining the score
|
|
259
|
+
*/
|
|
260
|
+
export function calculateEntryPointScore(name, language, isExported, callerCount, calleeCount, filePath = '') {
|
|
261
|
+
const reasons = [];
|
|
262
|
+
// Must have outgoing calls to be an entry point (we need to trace forward)
|
|
263
|
+
if (calleeCount === 0) {
|
|
264
|
+
return { score: 0, reasons: ['no-outgoing-calls'] };
|
|
265
|
+
}
|
|
266
|
+
// Base score: call ratio (existing algorithm)
|
|
267
|
+
// High ratio = calls many, called by few = likely entry point
|
|
268
|
+
const baseScore = calleeCount / (callerCount + 1);
|
|
269
|
+
reasons.push(`base:${baseScore.toFixed(2)}`);
|
|
270
|
+
// Export bonus: exported/public functions are more likely entry points
|
|
271
|
+
const exportMultiplier = isExported ? 2.0 : 1.0;
|
|
272
|
+
if (isExported) {
|
|
273
|
+
reasons.push('exported');
|
|
274
|
+
}
|
|
275
|
+
// Name pattern scoring
|
|
276
|
+
let nameMultiplier = 1.0;
|
|
277
|
+
// Check negative patterns first (utilities get penalized)
|
|
278
|
+
if (UTILITY_PATTERNS.some((p) => p.test(name))) {
|
|
279
|
+
nameMultiplier = 0.3; // Significant penalty
|
|
280
|
+
reasons.push('utility-pattern');
|
|
281
|
+
}
|
|
282
|
+
else {
|
|
283
|
+
// Check positive patterns
|
|
284
|
+
const allPatterns = MERGED_ENTRY_POINT_PATTERNS[language];
|
|
285
|
+
if (allPatterns?.some((p) => p.test(name))) {
|
|
286
|
+
nameMultiplier = 1.5; // Bonus for matching entry point pattern
|
|
287
|
+
reasons.push('entry-pattern');
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
// Framework detection bonus (Phase 2)
|
|
291
|
+
let frameworkMultiplier = 1.0;
|
|
292
|
+
if (filePath) {
|
|
293
|
+
const frameworkHint = detectFrameworkFromPath(filePath);
|
|
294
|
+
if (frameworkHint) {
|
|
295
|
+
frameworkMultiplier = frameworkHint.entryPointMultiplier;
|
|
296
|
+
reasons.push(`framework:${frameworkHint.reason}`);
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
// Calculate final score
|
|
300
|
+
const finalScore = baseScore * exportMultiplier * nameMultiplier * frameworkMultiplier;
|
|
301
|
+
return {
|
|
302
|
+
score: finalScore,
|
|
303
|
+
reasons,
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
// ============================================================================
|
|
307
|
+
// HELPER FUNCTIONS
|
|
308
|
+
// ============================================================================
|
|
309
|
+
/**
|
|
310
|
+
* Check if a file path is a test file (should be excluded from entry points)
|
|
311
|
+
* Covers common test file patterns across all supported languages
|
|
312
|
+
*/
|
|
313
|
+
export function isTestFile(filePath) {
|
|
314
|
+
const p = filePath.toLowerCase().replace(/\\/g, '/');
|
|
315
|
+
return (
|
|
316
|
+
// JavaScript/TypeScript test patterns
|
|
317
|
+
p.includes('.test.') ||
|
|
318
|
+
p.includes('.spec.') ||
|
|
319
|
+
p.includes('__tests__/') ||
|
|
320
|
+
p.includes('__mocks__/') ||
|
|
321
|
+
// Generic test folders
|
|
322
|
+
p.includes('/test/') ||
|
|
323
|
+
p.includes('/tests/') ||
|
|
324
|
+
p.includes('/testing/') ||
|
|
325
|
+
// Python test patterns
|
|
326
|
+
p.endsWith('_test.py') ||
|
|
327
|
+
p.includes('/test_') ||
|
|
328
|
+
// Go test patterns
|
|
329
|
+
p.endsWith('_test.go') ||
|
|
330
|
+
// Java test patterns
|
|
331
|
+
p.includes('/src/test/') ||
|
|
332
|
+
// Rust test patterns (inline tests are different, but test files)
|
|
333
|
+
p.includes('/tests/') ||
|
|
334
|
+
// Swift/iOS test patterns
|
|
335
|
+
p.endsWith('tests.swift') ||
|
|
336
|
+
p.endsWith('test.swift') ||
|
|
337
|
+
p.includes('uitests/') ||
|
|
338
|
+
// C# test patterns
|
|
339
|
+
p.endsWith('tests.cs') ||
|
|
340
|
+
p.endsWith('test.cs') ||
|
|
341
|
+
p.includes('.tests/') ||
|
|
342
|
+
p.includes('.test/') ||
|
|
343
|
+
p.includes('.integrationtests/') ||
|
|
344
|
+
p.includes('.unittests/') ||
|
|
345
|
+
p.includes('/testproject/') ||
|
|
346
|
+
// PHP/Laravel test patterns
|
|
347
|
+
p.endsWith('test.php') ||
|
|
348
|
+
p.endsWith('spec.php') ||
|
|
349
|
+
p.includes('/tests/feature/') ||
|
|
350
|
+
p.includes('/tests/unit/') ||
|
|
351
|
+
// Ruby test patterns
|
|
352
|
+
p.endsWith('_spec.rb') ||
|
|
353
|
+
p.endsWith('_test.rb') ||
|
|
354
|
+
p.includes('/spec/') ||
|
|
355
|
+
p.includes('/test/fixtures/'));
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* Check if a file path is likely a utility/helper file
|
|
359
|
+
* These might still have entry points but should be lower priority
|
|
360
|
+
*/
|
|
361
|
+
export function isUtilityFile(filePath) {
|
|
362
|
+
const p = filePath.toLowerCase().replace(/\\/g, '/');
|
|
363
|
+
return (p.includes('/utils/') ||
|
|
364
|
+
p.includes('/util/') ||
|
|
365
|
+
p.includes('/helpers/') ||
|
|
366
|
+
p.includes('/helper/') ||
|
|
367
|
+
p.includes('/common/') ||
|
|
368
|
+
p.includes('/shared/') ||
|
|
369
|
+
p.includes('/lib/') ||
|
|
370
|
+
p.endsWith('/utils.ts') ||
|
|
371
|
+
p.endsWith('/utils.js') ||
|
|
372
|
+
p.endsWith('/helpers.ts') ||
|
|
373
|
+
p.endsWith('/helpers.js') ||
|
|
374
|
+
p.endsWith('_utils.py') ||
|
|
375
|
+
p.endsWith('_helpers.py'));
|
|
376
|
+
}
|
|
377
|
+
//# sourceMappingURL=entry-point-scoring.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entry-point-scoring.js","sourceRoot":"","sources":["../../../src/core/parser/entry-point-scoring.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Export Detection
|
|
3
|
+
*
|
|
4
|
+
* Determines whether a symbol (function, class, etc.) is exported/public
|
|
5
|
+
* in its language. This is a pure function — safe for use in worker threads.
|
|
6
|
+
*
|
|
7
|
+
* Shared between parse-worker.ts (worker pool) and parsing-processor.ts (sequential fallback).
|
|
8
|
+
*/
|
|
9
|
+
import { type SyntaxNode } from './utils/ast-helpers.js';
|
|
10
|
+
/** Handler type: given a node and symbol name, return true if the symbol is exported/public. */
|
|
11
|
+
export type ExportChecker = (node: SyntaxNode, name: string) => boolean;
|
|
12
|
+
/** JS/TS: walk ancestors looking for export_statement or export_specifier. */
|
|
13
|
+
export declare const tsExportChecker: ExportChecker;
|
|
14
|
+
/** Python: public if no leading underscore (convention). */
|
|
15
|
+
export declare const pythonExportChecker: ExportChecker;
|
|
16
|
+
/** Java: check for 'public' modifier — modifiers are siblings of the name node, not parents. */
|
|
17
|
+
export declare const javaExportChecker: ExportChecker;
|
|
18
|
+
/**
|
|
19
|
+
* C#: modifier nodes are SIBLINGS of the name node inside the declaration.
|
|
20
|
+
* Walk up to the declaration node, then scan its direct children.
|
|
21
|
+
*/
|
|
22
|
+
export declare const csharpExportChecker: ExportChecker;
|
|
23
|
+
/** Go: uppercase first letter = exported. */
|
|
24
|
+
export declare const goExportChecker: ExportChecker;
|
|
25
|
+
/**
|
|
26
|
+
* Rust: visibility_modifier is a SIBLING of the name node within the declaration node
|
|
27
|
+
* (function_item, struct_item, etc.), not a parent. Walk up to the declaration node,
|
|
28
|
+
* then scan its direct children.
|
|
29
|
+
*/
|
|
30
|
+
export declare const rustExportChecker: ExportChecker;
|
|
31
|
+
/**
|
|
32
|
+
* Kotlin: default visibility is public (unlike Java).
|
|
33
|
+
* visibility_modifier is inside modifiers, a sibling of the name node within the declaration.
|
|
34
|
+
*/
|
|
35
|
+
export declare const kotlinExportChecker: ExportChecker;
|
|
36
|
+
/**
|
|
37
|
+
* C/C++: functions without 'static' storage class have external linkage by default,
|
|
38
|
+
* making them globally accessible (equivalent to exported). Only functions explicitly
|
|
39
|
+
* marked 'static' are file-scoped (not exported). C++ anonymous namespaces
|
|
40
|
+
* (namespace { ... }) also give internal linkage.
|
|
41
|
+
*/
|
|
42
|
+
export declare const cCppExportChecker: ExportChecker;
|
|
43
|
+
/** PHP: check for visibility modifier or top-level scope. */
|
|
44
|
+
export declare const phpExportChecker: ExportChecker;
|
|
45
|
+
/**
|
|
46
|
+
* Swift: treat symbols as exported unless explicitly marked private/fileprivate.
|
|
47
|
+
*
|
|
48
|
+
* Swift's default access level is `internal`, which means visible to all files
|
|
49
|
+
* in the same module/target. Since cotx-engine indexes at the target level,
|
|
50
|
+
* `internal` symbols should be treated as exported (cross-file visible).
|
|
51
|
+
* Only `private` and `fileprivate` symbols are truly file-scoped.
|
|
52
|
+
*/
|
|
53
|
+
export declare const swiftExportChecker: ExportChecker;
|
|
54
|
+
/** Ruby: all top-level definitions are public (no export syntax). */
|
|
55
|
+
export declare const rubyExportChecker: ExportChecker;
|
|
56
|
+
/** Dart: public if no leading underscore (convention, same as Python). */
|
|
57
|
+
export declare const dartExportChecker: ExportChecker;
|