@vohongtho.infotech/code-intel 0.1.3 → 0.1.4
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/dist/cli/main.js +3401 -237
- package/dist/cli/main.js.map +1 -1
- package/dist/index.d.ts +386 -31
- package/dist/index.js +3940 -17
- package/dist/index.js.map +1 -1
- package/package.json +15 -12
- package/dist/call-graph/call-builder.d.ts +0 -6
- package/dist/call-graph/call-builder.d.ts.map +0 -1
- package/dist/call-graph/call-builder.js +0 -69
- package/dist/call-graph/call-builder.js.map +0 -1
- package/dist/call-graph/call-classifier.d.ts +0 -12
- package/dist/call-graph/call-classifier.d.ts.map +0 -1
- package/dist/call-graph/call-classifier.js +0 -11
- package/dist/call-graph/call-classifier.js.map +0 -1
- package/dist/call-graph/index.d.ts +0 -4
- package/dist/call-graph/index.d.ts.map +0 -1
- package/dist/call-graph/index.js +0 -3
- package/dist/call-graph/index.js.map +0 -1
- package/dist/cli/context-writer.d.ts +0 -18
- package/dist/cli/context-writer.d.ts.map +0 -1
- package/dist/cli/context-writer.js +0 -104
- package/dist/cli/context-writer.js.map +0 -1
- package/dist/cli/main.d.ts +0 -3
- package/dist/cli/main.d.ts.map +0 -1
- package/dist/cli/skill-writer.d.ts +0 -17
- package/dist/cli/skill-writer.d.ts.map +0 -1
- package/dist/cli/skill-writer.js +0 -249
- package/dist/cli/skill-writer.js.map +0 -1
- package/dist/clustering/community-detector.d.ts +0 -9
- package/dist/clustering/community-detector.d.ts.map +0 -1
- package/dist/clustering/community-detector.js +0 -67
- package/dist/clustering/community-detector.js.map +0 -1
- package/dist/clustering/index.d.ts +0 -3
- package/dist/clustering/index.d.ts.map +0 -1
- package/dist/clustering/index.js +0 -2
- package/dist/clustering/index.js.map +0 -1
- package/dist/flow-detection/entry-point-finder.d.ts +0 -14
- package/dist/flow-detection/entry-point-finder.d.ts.map +0 -1
- package/dist/flow-detection/entry-point-finder.js +0 -86
- package/dist/flow-detection/entry-point-finder.js.map +0 -1
- package/dist/flow-detection/index.d.ts +0 -3
- package/dist/flow-detection/index.d.ts.map +0 -1
- package/dist/flow-detection/index.js +0 -2
- package/dist/flow-detection/index.js.map +0 -1
- package/dist/graph/id-generator.d.ts +0 -4
- package/dist/graph/id-generator.d.ts.map +0 -1
- package/dist/graph/id-generator.js +0 -7
- package/dist/graph/id-generator.js.map +0 -1
- package/dist/graph/index.d.ts +0 -4
- package/dist/graph/index.d.ts.map +0 -1
- package/dist/graph/index.js +0 -3
- package/dist/graph/index.js.map +0 -1
- package/dist/graph/knowledge-graph.d.ts +0 -21
- package/dist/graph/knowledge-graph.d.ts.map +0 -1
- package/dist/graph/knowledge-graph.js +0 -126
- package/dist/graph/knowledge-graph.js.map +0 -1
- package/dist/http/app.d.ts +0 -5
- package/dist/http/app.d.ts.map +0 -1
- package/dist/http/app.js +0 -361
- package/dist/http/app.js.map +0 -1
- package/dist/http/index.d.ts +0 -2
- package/dist/http/index.d.ts.map +0 -1
- package/dist/http/index.js +0 -2
- package/dist/http/index.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/inheritance/heritage-builder.d.ts +0 -9
- package/dist/inheritance/heritage-builder.d.ts.map +0 -1
- package/dist/inheritance/heritage-builder.js +0 -40
- package/dist/inheritance/heritage-builder.js.map +0 -1
- package/dist/inheritance/index.d.ts +0 -6
- package/dist/inheritance/index.d.ts.map +0 -1
- package/dist/inheritance/index.js +0 -4
- package/dist/inheritance/index.js.map +0 -1
- package/dist/inheritance/mro-walker.d.ts +0 -3
- package/dist/inheritance/mro-walker.d.ts.map +0 -1
- package/dist/inheritance/mro-walker.js +0 -80
- package/dist/inheritance/mro-walker.js.map +0 -1
- package/dist/inheritance/override-detector.d.ts +0 -4
- package/dist/inheritance/override-detector.d.ts.map +0 -1
- package/dist/inheritance/override-detector.js +0 -39
- package/dist/inheritance/override-detector.js.map +0 -1
- package/dist/languages/index.d.ts +0 -3
- package/dist/languages/index.d.ts.map +0 -1
- package/dist/languages/index.js +0 -2
- package/dist/languages/index.js.map +0 -1
- package/dist/languages/modules/c.d.ts +0 -3
- package/dist/languages/modules/c.d.ts.map +0 -1
- package/dist/languages/modules/c.js +0 -23
- package/dist/languages/modules/c.js.map +0 -1
- package/dist/languages/modules/cpp.d.ts +0 -3
- package/dist/languages/modules/cpp.d.ts.map +0 -1
- package/dist/languages/modules/cpp.js +0 -23
- package/dist/languages/modules/cpp.js.map +0 -1
- package/dist/languages/modules/csharp.d.ts +0 -3
- package/dist/languages/modules/csharp.d.ts.map +0 -1
- package/dist/languages/modules/csharp.js +0 -21
- package/dist/languages/modules/csharp.js.map +0 -1
- package/dist/languages/modules/dart.d.ts +0 -3
- package/dist/languages/modules/dart.d.ts.map +0 -1
- package/dist/languages/modules/dart.js +0 -30
- package/dist/languages/modules/dart.js.map +0 -1
- package/dist/languages/modules/go.d.ts +0 -3
- package/dist/languages/modules/go.d.ts.map +0 -1
- package/dist/languages/modules/go.js +0 -25
- package/dist/languages/modules/go.js.map +0 -1
- package/dist/languages/modules/java.d.ts +0 -3
- package/dist/languages/modules/java.d.ts.map +0 -1
- package/dist/languages/modules/java.js +0 -23
- package/dist/languages/modules/java.js.map +0 -1
- package/dist/languages/modules/kotlin.d.ts +0 -3
- package/dist/languages/modules/kotlin.d.ts.map +0 -1
- package/dist/languages/modules/kotlin.js +0 -22
- package/dist/languages/modules/kotlin.js.map +0 -1
- package/dist/languages/modules/php.d.ts +0 -3
- package/dist/languages/modules/php.d.ts.map +0 -1
- package/dist/languages/modules/php.js +0 -21
- package/dist/languages/modules/php.js.map +0 -1
- package/dist/languages/modules/python.d.ts +0 -3
- package/dist/languages/modules/python.d.ts.map +0 -1
- package/dist/languages/modules/python.js +0 -36
- package/dist/languages/modules/python.js.map +0 -1
- package/dist/languages/modules/ruby.d.ts +0 -3
- package/dist/languages/modules/ruby.d.ts.map +0 -1
- package/dist/languages/modules/ruby.js +0 -20
- package/dist/languages/modules/ruby.js.map +0 -1
- package/dist/languages/modules/rust.d.ts +0 -3
- package/dist/languages/modules/rust.d.ts.map +0 -1
- package/dist/languages/modules/rust.js +0 -23
- package/dist/languages/modules/rust.js.map +0 -1
- package/dist/languages/modules/swift.d.ts +0 -3
- package/dist/languages/modules/swift.d.ts.map +0 -1
- package/dist/languages/modules/swift.js +0 -21
- package/dist/languages/modules/swift.js.map +0 -1
- package/dist/languages/modules/typescript.d.ts +0 -4
- package/dist/languages/modules/typescript.d.ts.map +0 -1
- package/dist/languages/modules/typescript.js +0 -47
- package/dist/languages/modules/typescript.js.map +0 -1
- package/dist/languages/registry.d.ts +0 -5
- package/dist/languages/registry.d.ts.map +0 -1
- package/dist/languages/registry.js +0 -37
- package/dist/languages/registry.js.map +0 -1
- package/dist/languages/types.d.ts +0 -18
- package/dist/languages/types.d.ts.map +0 -1
- package/dist/languages/types.js +0 -2
- package/dist/languages/types.js.map +0 -1
- package/dist/mcp-server/index.d.ts +0 -2
- package/dist/mcp-server/index.d.ts.map +0 -1
- package/dist/mcp-server/index.js +0 -2
- package/dist/mcp-server/index.js.map +0 -1
- package/dist/mcp-server/server.d.ts +0 -5
- package/dist/mcp-server/server.d.ts.map +0 -1
- package/dist/mcp-server/server.js +0 -224
- package/dist/mcp-server/server.js.map +0 -1
- package/dist/multi-repo/cross-repo-search.d.ts +0 -3
- package/dist/multi-repo/cross-repo-search.d.ts.map +0 -1
- package/dist/multi-repo/cross-repo-search.js +0 -5
- package/dist/multi-repo/cross-repo-search.js.map +0 -1
- package/dist/multi-repo/group-config.d.ts +0 -10
- package/dist/multi-repo/group-config.d.ts.map +0 -1
- package/dist/multi-repo/group-config.js +0 -54
- package/dist/multi-repo/group-config.js.map +0 -1
- package/dist/multi-repo/group-manager.d.ts +0 -6
- package/dist/multi-repo/group-manager.d.ts.map +0 -1
- package/dist/multi-repo/group-manager.js +0 -42
- package/dist/multi-repo/group-manager.js.map +0 -1
- package/dist/multi-repo/index.d.ts +0 -5
- package/dist/multi-repo/index.d.ts.map +0 -1
- package/dist/multi-repo/index.js +0 -4
- package/dist/multi-repo/index.js.map +0 -1
- package/dist/parsing/ast-cache.d.ts +0 -13
- package/dist/parsing/ast-cache.d.ts.map +0 -1
- package/dist/parsing/ast-cache.js +0 -45
- package/dist/parsing/ast-cache.js.map +0 -1
- package/dist/parsing/index.d.ts +0 -5
- package/dist/parsing/index.d.ts.map +0 -1
- package/dist/parsing/index.js +0 -4
- package/dist/parsing/index.js.map +0 -1
- package/dist/parsing/parser-manager.d.ts +0 -7
- package/dist/parsing/parser-manager.d.ts.map +0 -1
- package/dist/parsing/parser-manager.js +0 -48
- package/dist/parsing/parser-manager.js.map +0 -1
- package/dist/parsing/queries/c.d.ts +0 -2
- package/dist/parsing/queries/c.d.ts.map +0 -1
- package/dist/parsing/queries/c.js +0 -32
- package/dist/parsing/queries/c.js.map +0 -1
- package/dist/parsing/queries/cpp.d.ts +0 -2
- package/dist/parsing/queries/cpp.d.ts.map +0 -1
- package/dist/parsing/queries/cpp.js +0 -45
- package/dist/parsing/queries/cpp.js.map +0 -1
- package/dist/parsing/queries/csharp.d.ts +0 -2
- package/dist/parsing/queries/csharp.d.ts.map +0 -1
- package/dist/parsing/queries/csharp.js +0 -55
- package/dist/parsing/queries/csharp.js.map +0 -1
- package/dist/parsing/queries/go.d.ts +0 -2
- package/dist/parsing/queries/go.d.ts.map +0 -1
- package/dist/parsing/queries/go.js +0 -46
- package/dist/parsing/queries/go.js.map +0 -1
- package/dist/parsing/queries/index.d.ts +0 -13
- package/dist/parsing/queries/index.d.ts.map +0 -1
- package/dist/parsing/queries/index.js +0 -13
- package/dist/parsing/queries/index.js.map +0 -1
- package/dist/parsing/queries/java.d.ts +0 -2
- package/dist/parsing/queries/java.d.ts.map +0 -1
- package/dist/parsing/queries/java.js +0 -46
- package/dist/parsing/queries/java.js.map +0 -1
- package/dist/parsing/queries/kotlin.d.ts +0 -2
- package/dist/parsing/queries/kotlin.d.ts.map +0 -1
- package/dist/parsing/queries/kotlin.js +0 -41
- package/dist/parsing/queries/kotlin.js.map +0 -1
- package/dist/parsing/queries/php.d.ts +0 -2
- package/dist/parsing/queries/php.d.ts.map +0 -1
- package/dist/parsing/queries/php.js +0 -60
- package/dist/parsing/queries/php.js.map +0 -1
- package/dist/parsing/queries/python.d.ts +0 -2
- package/dist/parsing/queries/python.d.ts.map +0 -1
- package/dist/parsing/queries/python.js +0 -47
- package/dist/parsing/queries/python.js.map +0 -1
- package/dist/parsing/queries/ruby.d.ts +0 -2
- package/dist/parsing/queries/ruby.d.ts.map +0 -1
- package/dist/parsing/queries/ruby.js +0 -36
- package/dist/parsing/queries/ruby.js.map +0 -1
- package/dist/parsing/queries/rust.d.ts +0 -2
- package/dist/parsing/queries/rust.d.ts.map +0 -1
- package/dist/parsing/queries/rust.js +0 -47
- package/dist/parsing/queries/rust.js.map +0 -1
- package/dist/parsing/queries/swift.d.ts +0 -2
- package/dist/parsing/queries/swift.d.ts.map +0 -1
- package/dist/parsing/queries/swift.js +0 -39
- package/dist/parsing/queries/swift.js.map +0 -1
- package/dist/parsing/queries/typescript.d.ts +0 -2
- package/dist/parsing/queries/typescript.d.ts.map +0 -1
- package/dist/parsing/queries/typescript.js +0 -84
- package/dist/parsing/queries/typescript.js.map +0 -1
- package/dist/parsing/query-runner.d.ts +0 -8
- package/dist/parsing/query-runner.d.ts.map +0 -1
- package/dist/parsing/query-runner.js +0 -16
- package/dist/parsing/query-runner.js.map +0 -1
- package/dist/pipeline/dag-validator.d.ts +0 -8
- package/dist/pipeline/dag-validator.d.ts.map +0 -1
- package/dist/pipeline/dag-validator.js +0 -88
- package/dist/pipeline/dag-validator.js.map +0 -1
- package/dist/pipeline/index.d.ts +0 -6
- package/dist/pipeline/index.d.ts.map +0 -1
- package/dist/pipeline/index.js +0 -4
- package/dist/pipeline/index.js.map +0 -1
- package/dist/pipeline/orchestrator.d.ts +0 -8
- package/dist/pipeline/orchestrator.d.ts.map +0 -1
- package/dist/pipeline/orchestrator.js +0 -47
- package/dist/pipeline/orchestrator.js.map +0 -1
- package/dist/pipeline/phases/cluster-phase.d.ts +0 -3
- package/dist/pipeline/phases/cluster-phase.d.ts.map +0 -1
- package/dist/pipeline/phases/cluster-phase.js +0 -52
- package/dist/pipeline/phases/cluster-phase.js.map +0 -1
- package/dist/pipeline/phases/flow-phase.d.ts +0 -3
- package/dist/pipeline/phases/flow-phase.d.ts.map +0 -1
- package/dist/pipeline/phases/flow-phase.js +0 -92
- package/dist/pipeline/phases/flow-phase.js.map +0 -1
- package/dist/pipeline/phases/index.d.ts +0 -6
- package/dist/pipeline/phases/index.d.ts.map +0 -1
- package/dist/pipeline/phases/index.js +0 -6
- package/dist/pipeline/phases/index.js.map +0 -1
- package/dist/pipeline/phases/parse-phase.d.ts +0 -3
- package/dist/pipeline/phases/parse-phase.d.ts.map +0 -1
- package/dist/pipeline/phases/parse-phase.js +0 -288
- package/dist/pipeline/phases/parse-phase.js.map +0 -1
- package/dist/pipeline/phases/resolve-phase.d.ts +0 -3
- package/dist/pipeline/phases/resolve-phase.d.ts.map +0 -1
- package/dist/pipeline/phases/resolve-phase.js +0 -388
- package/dist/pipeline/phases/resolve-phase.js.map +0 -1
- package/dist/pipeline/phases/scan-phase.d.ts +0 -4
- package/dist/pipeline/phases/scan-phase.d.ts.map +0 -1
- package/dist/pipeline/phases/scan-phase.js +0 -119
- package/dist/pipeline/phases/scan-phase.js.map +0 -1
- package/dist/pipeline/types.d.ts +0 -19
- package/dist/pipeline/types.d.ts.map +0 -1
- package/dist/pipeline/types.js +0 -2
- package/dist/pipeline/types.js.map +0 -1
- package/dist/resolver/binding-tracker.d.ts +0 -15
- package/dist/resolver/binding-tracker.d.ts.map +0 -1
- package/dist/resolver/binding-tracker.js +0 -22
- package/dist/resolver/binding-tracker.js.map +0 -1
- package/dist/resolver/import-resolver.d.ts +0 -16
- package/dist/resolver/import-resolver.d.ts.map +0 -1
- package/dist/resolver/import-resolver.js +0 -43
- package/dist/resolver/import-resolver.js.map +0 -1
- package/dist/resolver/index.d.ts +0 -5
- package/dist/resolver/index.d.ts.map +0 -1
- package/dist/resolver/index.js +0 -3
- package/dist/resolver/index.js.map +0 -1
- package/dist/resolver/strategies/namespace-alias.d.ts +0 -3
- package/dist/resolver/strategies/namespace-alias.d.ts.map +0 -1
- package/dist/resolver/strategies/namespace-alias.js +0 -15
- package/dist/resolver/strategies/namespace-alias.js.map +0 -1
- package/dist/resolver/strategies/package-lookup.d.ts +0 -3
- package/dist/resolver/strategies/package-lookup.d.ts.map +0 -1
- package/dist/resolver/strategies/package-lookup.js +0 -10
- package/dist/resolver/strategies/package-lookup.js.map +0 -1
- package/dist/resolver/strategies/relative-path.d.ts +0 -3
- package/dist/resolver/strategies/relative-path.d.ts.map +0 -1
- package/dist/resolver/strategies/relative-path.js +0 -12
- package/dist/resolver/strategies/relative-path.js.map +0 -1
- package/dist/resolver/strategies/types.d.ts +0 -11
- package/dist/resolver/strategies/types.d.ts.map +0 -1
- package/dist/resolver/strategies/types.js +0 -2
- package/dist/resolver/strategies/types.js.map +0 -1
- package/dist/resolver/strategies/wildcard-expand.d.ts +0 -3
- package/dist/resolver/strategies/wildcard-expand.d.ts.map +0 -1
- package/dist/resolver/strategies/wildcard-expand.js +0 -8
- package/dist/resolver/strategies/wildcard-expand.js.map +0 -1
- package/dist/scope-analysis/index.d.ts +0 -3
- package/dist/scope-analysis/index.d.ts.map +0 -1
- package/dist/scope-analysis/index.js +0 -2
- package/dist/scope-analysis/index.js.map +0 -1
- package/dist/scope-analysis/scope-builder.d.ts +0 -16
- package/dist/scope-analysis/scope-builder.d.ts.map +0 -1
- package/dist/scope-analysis/scope-builder.js +0 -19
- package/dist/scope-analysis/scope-builder.js.map +0 -1
- package/dist/search/embedder.d.ts +0 -14
- package/dist/search/embedder.d.ts.map +0 -1
- package/dist/search/embedder.js +0 -45
- package/dist/search/embedder.js.map +0 -1
- package/dist/search/index.d.ts +0 -7
- package/dist/search/index.d.ts.map +0 -1
- package/dist/search/index.js +0 -4
- package/dist/search/index.js.map +0 -1
- package/dist/search/text-search.d.ts +0 -12
- package/dist/search/text-search.d.ts.map +0 -1
- package/dist/search/text-search.js +0 -72
- package/dist/search/text-search.js.map +0 -1
- package/dist/search/vector-index.d.ts +0 -18
- package/dist/search/vector-index.d.ts.map +0 -1
- package/dist/search/vector-index.js +0 -70
- package/dist/search/vector-index.js.map +0 -1
- package/dist/shared/detection.d.ts +0 -4
- package/dist/shared/detection.d.ts.map +0 -1
- package/dist/shared/detection.js +0 -38
- package/dist/shared/detection.js.map +0 -1
- package/dist/shared/graph-types.d.ts +0 -22
- package/dist/shared/graph-types.d.ts.map +0 -1
- package/dist/shared/graph-types.js +0 -2
- package/dist/shared/graph-types.js.map +0 -1
- package/dist/shared/index.d.ts +0 -5
- package/dist/shared/index.d.ts.map +0 -1
- package/dist/shared/index.js +0 -3
- package/dist/shared/index.js.map +0 -1
- package/dist/shared/languages.d.ts +0 -17
- package/dist/shared/languages.d.ts.map +0 -1
- package/dist/shared/languages.js +0 -18
- package/dist/shared/languages.js.map +0 -1
- package/dist/shared/pipeline-types.d.ts +0 -21
- package/dist/shared/pipeline-types.d.ts.map +0 -1
- package/dist/shared/pipeline-types.js +0 -2
- package/dist/shared/pipeline-types.js.map +0 -1
- package/dist/storage/csv-writer.d.ts +0 -9
- package/dist/storage/csv-writer.d.ts.map +0 -1
- package/dist/storage/csv-writer.js +0 -77
- package/dist/storage/csv-writer.js.map +0 -1
- package/dist/storage/db-manager.d.ts +0 -12
- package/dist/storage/db-manager.d.ts.map +0 -1
- package/dist/storage/db-manager.js +0 -50
- package/dist/storage/db-manager.js.map +0 -1
- package/dist/storage/graph-loader.d.ts +0 -7
- package/dist/storage/graph-loader.d.ts.map +0 -1
- package/dist/storage/graph-loader.js +0 -71
- package/dist/storage/graph-loader.js.map +0 -1
- package/dist/storage/index.d.ts +0 -10
- package/dist/storage/index.d.ts.map +0 -1
- package/dist/storage/index.js +0 -7
- package/dist/storage/index.js.map +0 -1
- package/dist/storage/metadata.d.ts +0 -15
- package/dist/storage/metadata.d.ts.map +0 -1
- package/dist/storage/metadata.js +0 -23
- package/dist/storage/metadata.js.map +0 -1
- package/dist/storage/repo-registry.d.ts +0 -15
- package/dist/storage/repo-registry.d.ts.map +0 -1
- package/dist/storage/repo-registry.js +0 -34
- package/dist/storage/repo-registry.js.map +0 -1
- package/dist/storage/schema.d.ts +0 -6
- package/dist/storage/schema.d.ts.map +0 -1
- package/dist/storage/schema.js +0 -54
- package/dist/storage/schema.js.map +0 -1
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
export const rustQueries = `
|
|
2
|
-
;; Function item
|
|
3
|
-
(function_item
|
|
4
|
-
name: (identifier) @def.func.name) @def.func
|
|
5
|
-
|
|
6
|
-
;; Struct item
|
|
7
|
-
(struct_item
|
|
8
|
-
name: (type_identifier) @def.struct.name) @def.struct
|
|
9
|
-
|
|
10
|
-
;; Enum item
|
|
11
|
-
(enum_item
|
|
12
|
-
name: (type_identifier) @def.enum.name) @def.enum
|
|
13
|
-
|
|
14
|
-
;; Trait item
|
|
15
|
-
(trait_item
|
|
16
|
-
name: (type_identifier) @def.trait.name) @def.trait
|
|
17
|
-
|
|
18
|
-
;; Impl item
|
|
19
|
-
(impl_item
|
|
20
|
-
type: (type_identifier) @def.class.name) @def.impl
|
|
21
|
-
|
|
22
|
-
;; Type alias
|
|
23
|
-
(type_item
|
|
24
|
-
name: (type_identifier) @def.type_alias.name) @def.type_alias
|
|
25
|
-
|
|
26
|
-
;; Use declaration
|
|
27
|
-
(use_declaration
|
|
28
|
-
argument: (_) @imp.source) @imp
|
|
29
|
-
|
|
30
|
-
;; Call
|
|
31
|
-
(call_expression
|
|
32
|
-
function: (identifier) @call.name) @call
|
|
33
|
-
|
|
34
|
-
;; Method call
|
|
35
|
-
(call_expression
|
|
36
|
-
function: (field_expression
|
|
37
|
-
field: (field_identifier) @call.method)) @call.member
|
|
38
|
-
|
|
39
|
-
;; Const item
|
|
40
|
-
(const_item
|
|
41
|
-
name: (identifier) @def.constant.name) @def.constant
|
|
42
|
-
|
|
43
|
-
;; Static item
|
|
44
|
-
(static_item
|
|
45
|
-
name: (identifier) @def.var.name) @def.var
|
|
46
|
-
`;
|
|
47
|
-
//# sourceMappingURL=rust.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rust.js","sourceRoot":"","sources":["../../../src/parsing/queries/rust.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6C1B,CAAC"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export declare const swiftQueries = "\n;; Class declaration\n(class_declaration\n name: (type_identifier) @def.class.name) @def.class\n\n;; Struct declaration\n(struct_declaration\n name: (type_identifier) @def.struct.name) @def.struct\n\n;; Protocol declaration\n(protocol_declaration\n name: (type_identifier) @def.interface.name) @def.interface\n\n;; Enum declaration\n(enum_declaration\n name: (type_identifier) @def.enum.name) @def.enum\n\n;; Function declaration\n(function_declaration\n name: (simple_identifier) @def.func.name) @def.func\n\n;; Property declaration\n(property_declaration\n (pattern\n (simple_identifier) @def.property.name)) @def.property\n\n;; Import\n(import_declaration\n (identifier) @imp.source) @imp\n\n;; Call\n(call_expression\n (simple_identifier) @call.name) @call\n\n;; Inheritance\n(inheritance_specifier\n (type_identifier) @inherit.extends)\n";
|
|
2
|
-
//# sourceMappingURL=swift.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"swift.d.ts","sourceRoot":"","sources":["../../../src/parsing/queries/swift.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,61BAqCxB,CAAC"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
export const swiftQueries = `
|
|
2
|
-
;; Class declaration
|
|
3
|
-
(class_declaration
|
|
4
|
-
name: (type_identifier) @def.class.name) @def.class
|
|
5
|
-
|
|
6
|
-
;; Struct declaration
|
|
7
|
-
(struct_declaration
|
|
8
|
-
name: (type_identifier) @def.struct.name) @def.struct
|
|
9
|
-
|
|
10
|
-
;; Protocol declaration
|
|
11
|
-
(protocol_declaration
|
|
12
|
-
name: (type_identifier) @def.interface.name) @def.interface
|
|
13
|
-
|
|
14
|
-
;; Enum declaration
|
|
15
|
-
(enum_declaration
|
|
16
|
-
name: (type_identifier) @def.enum.name) @def.enum
|
|
17
|
-
|
|
18
|
-
;; Function declaration
|
|
19
|
-
(function_declaration
|
|
20
|
-
name: (simple_identifier) @def.func.name) @def.func
|
|
21
|
-
|
|
22
|
-
;; Property declaration
|
|
23
|
-
(property_declaration
|
|
24
|
-
(pattern
|
|
25
|
-
(simple_identifier) @def.property.name)) @def.property
|
|
26
|
-
|
|
27
|
-
;; Import
|
|
28
|
-
(import_declaration
|
|
29
|
-
(identifier) @imp.source) @imp
|
|
30
|
-
|
|
31
|
-
;; Call
|
|
32
|
-
(call_expression
|
|
33
|
-
(simple_identifier) @call.name) @call
|
|
34
|
-
|
|
35
|
-
;; Inheritance
|
|
36
|
-
(inheritance_specifier
|
|
37
|
-
(type_identifier) @inherit.extends)
|
|
38
|
-
`;
|
|
39
|
-
//# sourceMappingURL=swift.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"swift.js","sourceRoot":"","sources":["../../../src/parsing/queries/swift.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC3B,CAAC"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export declare const typescriptQueries = "\n;; Class declaration\n(class_declaration\n name: (type_identifier) @def.class.name) @def.class\n\n;; Abstract class\n(abstract_class_declaration\n name: (type_identifier) @def.class.name) @def.class\n\n;; Interface declaration\n(interface_declaration\n name: (type_identifier) @def.interface.name) @def.interface\n\n;; Type alias\n(type_alias_declaration\n name: (type_identifier) @def.type_alias.name) @def.type_alias\n\n;; Enum\n(enum_declaration\n name: (identifier) @def.enum.name) @def.enum\n\n;; Function declaration\n(function_declaration\n name: (identifier) @def.func.name) @def.func\n\n;; Arrow function in variable\n(lexical_declaration\n (variable_declarator\n name: (identifier) @def.func.name\n value: (arrow_function))) @def.func\n\n;; Const/let/var variable (non-function)\n(lexical_declaration\n (variable_declarator\n name: (identifier) @def.var.name\n value: (_) @def.var.value)) @def.var\n\n;; Method definition\n(method_definition\n name: (property_identifier) @def.method.name) @def.method\n\n;; Public field definition\n(public_field_definition\n name: (property_identifier) @def.property.name) @def.property\n\n;; Import statement\n(import_statement\n source: (string) @imp.source) @imp\n\n;; Import specifier\n(import_specifier\n name: (identifier) @imp.name)\n\n;; Namespace import\n(namespace_import (identifier) @imp.namespace)\n\n;; Export statement\n(export_statement) @export\n\n;; Call expression \u2014 function call\n(call_expression\n function: (identifier) @call.name) @call\n\n;; Call expression \u2014 member call\n(call_expression\n function: (member_expression\n object: (_) @call.receiver\n property: (property_identifier) @call.method)) @call.member\n\n;; New expression\n(new_expression\n constructor: (identifier) @call.constructor) @call.new\n\n;; Class heritage \u2014 extends\n(class_heritage\n (extends_clause\n value: (identifier) @inherit.extends))\n\n;; Class heritage \u2014 implements\n(class_heritage\n (implements_clause\n (type_reference (type_identifier) @inherit.implements)))\n";
|
|
2
|
-
//# sourceMappingURL=typescript.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../../src/parsing/queries/typescript.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,oiEAkF7B,CAAC"}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
export const typescriptQueries = `
|
|
2
|
-
;; Class declaration
|
|
3
|
-
(class_declaration
|
|
4
|
-
name: (type_identifier) @def.class.name) @def.class
|
|
5
|
-
|
|
6
|
-
;; Abstract class
|
|
7
|
-
(abstract_class_declaration
|
|
8
|
-
name: (type_identifier) @def.class.name) @def.class
|
|
9
|
-
|
|
10
|
-
;; Interface declaration
|
|
11
|
-
(interface_declaration
|
|
12
|
-
name: (type_identifier) @def.interface.name) @def.interface
|
|
13
|
-
|
|
14
|
-
;; Type alias
|
|
15
|
-
(type_alias_declaration
|
|
16
|
-
name: (type_identifier) @def.type_alias.name) @def.type_alias
|
|
17
|
-
|
|
18
|
-
;; Enum
|
|
19
|
-
(enum_declaration
|
|
20
|
-
name: (identifier) @def.enum.name) @def.enum
|
|
21
|
-
|
|
22
|
-
;; Function declaration
|
|
23
|
-
(function_declaration
|
|
24
|
-
name: (identifier) @def.func.name) @def.func
|
|
25
|
-
|
|
26
|
-
;; Arrow function in variable
|
|
27
|
-
(lexical_declaration
|
|
28
|
-
(variable_declarator
|
|
29
|
-
name: (identifier) @def.func.name
|
|
30
|
-
value: (arrow_function))) @def.func
|
|
31
|
-
|
|
32
|
-
;; Const/let/var variable (non-function)
|
|
33
|
-
(lexical_declaration
|
|
34
|
-
(variable_declarator
|
|
35
|
-
name: (identifier) @def.var.name
|
|
36
|
-
value: (_) @def.var.value)) @def.var
|
|
37
|
-
|
|
38
|
-
;; Method definition
|
|
39
|
-
(method_definition
|
|
40
|
-
name: (property_identifier) @def.method.name) @def.method
|
|
41
|
-
|
|
42
|
-
;; Public field definition
|
|
43
|
-
(public_field_definition
|
|
44
|
-
name: (property_identifier) @def.property.name) @def.property
|
|
45
|
-
|
|
46
|
-
;; Import statement
|
|
47
|
-
(import_statement
|
|
48
|
-
source: (string) @imp.source) @imp
|
|
49
|
-
|
|
50
|
-
;; Import specifier
|
|
51
|
-
(import_specifier
|
|
52
|
-
name: (identifier) @imp.name)
|
|
53
|
-
|
|
54
|
-
;; Namespace import
|
|
55
|
-
(namespace_import (identifier) @imp.namespace)
|
|
56
|
-
|
|
57
|
-
;; Export statement
|
|
58
|
-
(export_statement) @export
|
|
59
|
-
|
|
60
|
-
;; Call expression — function call
|
|
61
|
-
(call_expression
|
|
62
|
-
function: (identifier) @call.name) @call
|
|
63
|
-
|
|
64
|
-
;; Call expression — member call
|
|
65
|
-
(call_expression
|
|
66
|
-
function: (member_expression
|
|
67
|
-
object: (_) @call.receiver
|
|
68
|
-
property: (property_identifier) @call.method)) @call.member
|
|
69
|
-
|
|
70
|
-
;; New expression
|
|
71
|
-
(new_expression
|
|
72
|
-
constructor: (identifier) @call.constructor) @call.new
|
|
73
|
-
|
|
74
|
-
;; Class heritage — extends
|
|
75
|
-
(class_heritage
|
|
76
|
-
(extends_clause
|
|
77
|
-
value: (identifier) @inherit.extends))
|
|
78
|
-
|
|
79
|
-
;; Class heritage — implements
|
|
80
|
-
(class_heritage
|
|
81
|
-
(implements_clause
|
|
82
|
-
(type_reference (type_identifier) @inherit.implements)))
|
|
83
|
-
`;
|
|
84
|
-
//# sourceMappingURL=typescript.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/parsing/queries/typescript.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFhC,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import Parser from 'web-tree-sitter';
|
|
2
|
-
export interface QueryCapture {
|
|
3
|
-
name: string;
|
|
4
|
-
node: Parser.SyntaxNode;
|
|
5
|
-
text: string;
|
|
6
|
-
}
|
|
7
|
-
export declare function runQuery(tree: Parser.Tree, language: Parser.Language, querySource: string): QueryCapture[];
|
|
8
|
-
//# sourceMappingURL=query-runner.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query-runner.d.ts","sourceRoot":"","sources":["../../src/parsing/query-runner.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,CAAC,IAAI,EACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,WAAW,EAAE,MAAM,GAClB,YAAY,EAAE,CAgBhB"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export function runQuery(tree, language, querySource) {
|
|
2
|
-
const query = language.query(querySource);
|
|
3
|
-
const matches = query.matches(tree.rootNode);
|
|
4
|
-
const captures = [];
|
|
5
|
-
for (const match of matches) {
|
|
6
|
-
for (const capture of match.captures) {
|
|
7
|
-
captures.push({
|
|
8
|
-
name: capture.name,
|
|
9
|
-
node: capture.node,
|
|
10
|
-
text: capture.node.text,
|
|
11
|
-
});
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
return captures;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=query-runner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query-runner.js","sourceRoot":"","sources":["../../src/parsing/query-runner.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,QAAQ,CACtB,IAAiB,EACjB,QAAyB,EACzB,WAAmB;IAEnB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAmB,EAAE,CAAC;IAEpC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI;aACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { Phase } from './types.js';
|
|
2
|
-
export interface ValidationError {
|
|
3
|
-
type: 'duplicate' | 'missing-dep' | 'cycle';
|
|
4
|
-
message: string;
|
|
5
|
-
}
|
|
6
|
-
export declare function validateDAG(phases: Phase[]): ValidationError[];
|
|
7
|
-
export declare function topologicalSort(phases: Phase[]): Phase[];
|
|
8
|
-
//# sourceMappingURL=dag-validator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dag-validator.d.ts","sourceRoot":"","sources":["../../src/pipeline/dag-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,WAAW,GAAG,aAAa,GAAG,OAAO,CAAC;IAC5C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,eAAe,EAAE,CA6D9D;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAkCxD"}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
export function validateDAG(phases) {
|
|
2
|
-
const errors = [];
|
|
3
|
-
const names = new Set();
|
|
4
|
-
// Check duplicates
|
|
5
|
-
for (const phase of phases) {
|
|
6
|
-
if (names.has(phase.name)) {
|
|
7
|
-
errors.push({ type: 'duplicate', message: `Duplicate phase name: ${phase.name}` });
|
|
8
|
-
}
|
|
9
|
-
names.add(phase.name);
|
|
10
|
-
}
|
|
11
|
-
// Check missing deps
|
|
12
|
-
for (const phase of phases) {
|
|
13
|
-
for (const dep of phase.dependencies) {
|
|
14
|
-
if (!names.has(dep)) {
|
|
15
|
-
errors.push({
|
|
16
|
-
type: 'missing-dep',
|
|
17
|
-
message: `Phase "${phase.name}" depends on missing phase "${dep}"`,
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
// Check cycles using DFS
|
|
23
|
-
const visiting = new Set();
|
|
24
|
-
const visited = new Set();
|
|
25
|
-
const phaseMap = new Map(phases.map((p) => [p.name, p]));
|
|
26
|
-
function dfs(name, path) {
|
|
27
|
-
if (visiting.has(name)) {
|
|
28
|
-
const cycleStart = path.indexOf(name);
|
|
29
|
-
const cycle = path.slice(cycleStart).concat(name);
|
|
30
|
-
errors.push({ type: 'cycle', message: `Cycle detected: ${cycle.join(' → ')}` });
|
|
31
|
-
return true;
|
|
32
|
-
}
|
|
33
|
-
if (visited.has(name))
|
|
34
|
-
return false;
|
|
35
|
-
visiting.add(name);
|
|
36
|
-
path.push(name);
|
|
37
|
-
const phase = phaseMap.get(name);
|
|
38
|
-
if (phase) {
|
|
39
|
-
for (const dep of phase.dependencies) {
|
|
40
|
-
if (dfs(dep, path))
|
|
41
|
-
return true;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
visiting.delete(name);
|
|
45
|
-
visited.add(name);
|
|
46
|
-
path.pop();
|
|
47
|
-
return false;
|
|
48
|
-
}
|
|
49
|
-
for (const phase of phases) {
|
|
50
|
-
if (!visited.has(phase.name)) {
|
|
51
|
-
dfs(phase.name, []);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
return errors;
|
|
55
|
-
}
|
|
56
|
-
export function topologicalSort(phases) {
|
|
57
|
-
const phaseMap = new Map(phases.map((p) => [p.name, p]));
|
|
58
|
-
const inDegree = new Map();
|
|
59
|
-
const adjList = new Map();
|
|
60
|
-
for (const phase of phases) {
|
|
61
|
-
inDegree.set(phase.name, 0);
|
|
62
|
-
adjList.set(phase.name, []);
|
|
63
|
-
}
|
|
64
|
-
for (const phase of phases) {
|
|
65
|
-
for (const dep of phase.dependencies) {
|
|
66
|
-
adjList.get(dep)?.push(phase.name);
|
|
67
|
-
inDegree.set(phase.name, (inDegree.get(phase.name) ?? 0) + 1);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
const queue = [];
|
|
71
|
-
for (const [name, degree] of inDegree) {
|
|
72
|
-
if (degree === 0)
|
|
73
|
-
queue.push(name);
|
|
74
|
-
}
|
|
75
|
-
const sorted = [];
|
|
76
|
-
while (queue.length > 0) {
|
|
77
|
-
const current = queue.shift();
|
|
78
|
-
sorted.push(phaseMap.get(current));
|
|
79
|
-
for (const neighbor of adjList.get(current) ?? []) {
|
|
80
|
-
const newDegree = (inDegree.get(neighbor) ?? 1) - 1;
|
|
81
|
-
inDegree.set(neighbor, newDegree);
|
|
82
|
-
if (newDegree === 0)
|
|
83
|
-
queue.push(neighbor);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
return sorted;
|
|
87
|
-
}
|
|
88
|
-
//# sourceMappingURL=dag-validator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dag-validator.js","sourceRoot":"","sources":["../../src/pipeline/dag-validator.ts"],"names":[],"mappings":"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"}
|
package/dist/pipeline/index.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export { runPipeline } from './orchestrator.js';
|
|
2
|
-
export type { PipelineRunResult } from './orchestrator.js';
|
|
3
|
-
export { validateDAG, topologicalSort } from './dag-validator.js';
|
|
4
|
-
export type { Phase, PhaseResult, PipelineContext } from './types.js';
|
|
5
|
-
export { scanPhase, structurePhase, parsePhase, resolvePhase, clusterPhase, flowPhase, } from './phases/index.js';
|
|
6
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pipeline/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAClE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EACL,SAAS,EACT,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,GACV,MAAM,mBAAmB,CAAC"}
|
package/dist/pipeline/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pipeline/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAElE,OAAO,EACL,SAAS,EACT,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,GACV,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { Phase, PhaseResult, PipelineContext } from './types.js';
|
|
2
|
-
export interface PipelineRunResult {
|
|
3
|
-
success: boolean;
|
|
4
|
-
results: Map<string, PhaseResult>;
|
|
5
|
-
totalDuration: number;
|
|
6
|
-
}
|
|
7
|
-
export declare function runPipeline(phases: Phase[], context: PipelineContext): Promise<PipelineRunResult>;
|
|
8
|
-
//# sourceMappingURL=orchestrator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/pipeline/orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGtE,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAClC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,KAAK,EAAE,EACf,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAgD5B"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { validateDAG, topologicalSort } from './dag-validator.js';
|
|
2
|
-
export async function runPipeline(phases, context) {
|
|
3
|
-
const errors = validateDAG(phases);
|
|
4
|
-
if (errors.length > 0) {
|
|
5
|
-
throw new Error(`Pipeline validation failed:\n${errors.map((e) => e.message).join('\n')}`);
|
|
6
|
-
}
|
|
7
|
-
const sorted = topologicalSort(phases);
|
|
8
|
-
const results = new Map();
|
|
9
|
-
const startTime = Date.now();
|
|
10
|
-
let success = true;
|
|
11
|
-
for (const phase of sorted) {
|
|
12
|
-
context.onProgress?.(phase.name, 'running');
|
|
13
|
-
const phaseStart = Date.now();
|
|
14
|
-
try {
|
|
15
|
-
const depResults = new Map();
|
|
16
|
-
for (const dep of phase.dependencies) {
|
|
17
|
-
const depResult = results.get(dep);
|
|
18
|
-
if (depResult)
|
|
19
|
-
depResults.set(dep, depResult);
|
|
20
|
-
}
|
|
21
|
-
const result = await phase.execute(context, depResults);
|
|
22
|
-
results.set(phase.name, result);
|
|
23
|
-
context.onProgress?.(phase.name, result.status);
|
|
24
|
-
if (result.status === 'failed') {
|
|
25
|
-
success = false;
|
|
26
|
-
break;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
catch (err) {
|
|
30
|
-
const result = {
|
|
31
|
-
status: 'failed',
|
|
32
|
-
duration: Date.now() - phaseStart,
|
|
33
|
-
message: err instanceof Error ? err.message : String(err),
|
|
34
|
-
};
|
|
35
|
-
results.set(phase.name, result);
|
|
36
|
-
context.onProgress?.(phase.name, 'failed');
|
|
37
|
-
success = false;
|
|
38
|
-
break;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return {
|
|
42
|
-
success,
|
|
43
|
-
results,
|
|
44
|
-
totalDuration: Date.now() - startTime,
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=orchestrator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/pipeline/orchestrator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAQlE,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAe,EACf,OAAwB;IAExB,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,gCAAgC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,OAAO,GAAG,IAAI,CAAC;IAEnB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE9B,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,GAAG,EAAuB,CAAC;YAClD,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;gBACrC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACnC,IAAI,SAAS;oBAAE,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAChD,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAChC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAEhD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,GAAG,KAAK,CAAC;gBAChB,MAAM;YACR,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAgB;gBAC1B,MAAM,EAAE,QAAQ;gBAChB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU;gBACjC,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aAC1D,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAChC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC3C,OAAO,GAAG,KAAK,CAAC;YAChB,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO;QACP,OAAO;QACP,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;KACtC,CAAC;AACJ,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cluster-phase.d.ts","sourceRoot":"","sources":["../../../src/pipeline/phases/cluster-phase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAgC,MAAM,aAAa,CAAC;AAGvE,eAAO,MAAM,YAAY,EAAE,KAsD1B,CAAC"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { generateNodeId, generateEdgeId } from '../../graph/id-generator.js';
|
|
2
|
-
export const clusterPhase = {
|
|
3
|
-
name: 'cluster',
|
|
4
|
-
dependencies: ['resolve'],
|
|
5
|
-
async execute(context) {
|
|
6
|
-
const start = Date.now();
|
|
7
|
-
const { graph } = context;
|
|
8
|
-
const relevantKinds = new Set(['function', 'class', 'method', 'interface', 'struct', 'trait', 'enum']);
|
|
9
|
-
const nodesByDir = new Map();
|
|
10
|
-
for (const node of graph.allNodes()) {
|
|
11
|
-
if (!relevantKinds.has(node.kind))
|
|
12
|
-
continue;
|
|
13
|
-
const dir = node.filePath.split('/').slice(0, -1).join('/') || '.';
|
|
14
|
-
let group = nodesByDir.get(dir);
|
|
15
|
-
if (!group) {
|
|
16
|
-
group = [];
|
|
17
|
-
nodesByDir.set(dir, group);
|
|
18
|
-
}
|
|
19
|
-
group.push({ id: node.id, name: node.name });
|
|
20
|
-
}
|
|
21
|
-
let clusterCount = 0;
|
|
22
|
-
for (const [dir, members] of nodesByDir) {
|
|
23
|
-
if (members.length < 2)
|
|
24
|
-
continue;
|
|
25
|
-
const clusterId = generateNodeId('cluster', dir, `cluster-${clusterCount}`);
|
|
26
|
-
const label = dir.split('/').filter(Boolean).pop() ?? `cluster-${clusterCount}`;
|
|
27
|
-
graph.addNode({
|
|
28
|
-
id: clusterId,
|
|
29
|
-
kind: 'cluster',
|
|
30
|
-
name: label,
|
|
31
|
-
filePath: dir,
|
|
32
|
-
metadata: { memberCount: members.length },
|
|
33
|
-
});
|
|
34
|
-
for (const member of members) {
|
|
35
|
-
graph.addEdge({
|
|
36
|
-
id: generateEdgeId(member.id, clusterId, 'belongs_to'),
|
|
37
|
-
source: member.id,
|
|
38
|
-
target: clusterId,
|
|
39
|
-
kind: 'belongs_to',
|
|
40
|
-
weight: 1.0,
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
clusterCount++;
|
|
44
|
-
}
|
|
45
|
-
return {
|
|
46
|
-
status: 'completed',
|
|
47
|
-
duration: Date.now() - start,
|
|
48
|
-
message: `Created ${clusterCount} clusters`,
|
|
49
|
-
};
|
|
50
|
-
},
|
|
51
|
-
};
|
|
52
|
-
//# sourceMappingURL=cluster-phase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cluster-phase.js","sourceRoot":"","sources":["../../../src/pipeline/phases/cluster-phase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7E,MAAM,CAAC,MAAM,YAAY,GAAU;IACjC,IAAI,EAAE,SAAS;IACf,YAAY,EAAE,CAAC,SAAS,CAAC;IACzB,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAE1B,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACvG,MAAM,UAAU,GAAG,IAAI,GAAG,EAA0C,CAAC;QAErE,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;YACnE,IAAI,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG,EAAE,CAAC;gBACX,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC7B,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,UAAU,EAAE,CAAC;YACxC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS;YAEjC,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,WAAW,YAAY,EAAE,CAAC,CAAC;YAC5E,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,WAAW,YAAY,EAAE,CAAC;YAEhF,KAAK,CAAC,OAAO,CAAC;gBACZ,EAAE,EAAE,SAAS;gBACb,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,KAAK;gBACX,QAAQ,EAAE,GAAG;gBACb,QAAQ,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE;aAC1C,CAAC,CAAC;YAEH,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,KAAK,CAAC,OAAO,CAAC;oBACZ,EAAE,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,YAAY,CAAC;oBACtD,MAAM,EAAE,MAAM,CAAC,EAAE;oBACjB,MAAM,EAAE,SAAS;oBACjB,IAAI,EAAE,YAAY;oBAClB,MAAM,EAAE,GAAG;iBACZ,CAAC,CAAC;YACL,CAAC;YACD,YAAY,EAAE,CAAC;QACjB,CAAC;QAED,OAAO;YACL,MAAM,EAAE,WAAW;YACnB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;YAC5B,OAAO,EAAE,WAAW,YAAY,WAAW;SAC5C,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"flow-phase.d.ts","sourceRoot":"","sources":["../../../src/pipeline/phases/flow-phase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAgC,MAAM,aAAa,CAAC;AAGvE,eAAO,MAAM,SAAS,EAAE,KAiGvB,CAAC"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { generateNodeId, generateEdgeId } from '../../graph/id-generator.js';
|
|
2
|
-
export const flowPhase = {
|
|
3
|
-
name: 'flow',
|
|
4
|
-
dependencies: ['resolve'],
|
|
5
|
-
async execute(context) {
|
|
6
|
-
const start = Date.now();
|
|
7
|
-
const { graph } = context;
|
|
8
|
-
// Find entry points: exported functions with no incoming call edges
|
|
9
|
-
const calledNodes = new Set();
|
|
10
|
-
for (const edge of graph.findEdgesByKind('calls')) {
|
|
11
|
-
calledNodes.add(edge.target);
|
|
12
|
-
}
|
|
13
|
-
const entryPoints = [];
|
|
14
|
-
for (const node of graph.allNodes()) {
|
|
15
|
-
if (!['function', 'method'].includes(node.kind))
|
|
16
|
-
continue;
|
|
17
|
-
let score = 0;
|
|
18
|
-
const hasCallers = calledNodes.has(node.id);
|
|
19
|
-
const outCalls = [...graph.findEdgesFrom(node.id)].filter((e) => e.kind === 'calls');
|
|
20
|
-
if (!hasCallers && outCalls.length > 0)
|
|
21
|
-
score += 10;
|
|
22
|
-
if (node.exported)
|
|
23
|
-
score += 5;
|
|
24
|
-
if (/^(main|handle|init|start|run|execute|process|serve|listen|bootstrap)/.test(node.name))
|
|
25
|
-
score += 3;
|
|
26
|
-
if (node.filePath.includes('test') || node.filePath.includes('spec') || node.filePath.includes('__test'))
|
|
27
|
-
score -= 20;
|
|
28
|
-
if (node.filePath.includes('route') || node.filePath.includes('controller') || node.filePath.includes('handler'))
|
|
29
|
-
score += 8;
|
|
30
|
-
if (score >= 5) {
|
|
31
|
-
entryPoints.push({ id: node.id, name: node.name, score, filePath: node.filePath });
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
entryPoints.sort((a, b) => b.score - a.score);
|
|
35
|
-
// Trace flows from top entry points (max 20)
|
|
36
|
-
const maxFlows = 75;
|
|
37
|
-
const maxDepth = 10;
|
|
38
|
-
const maxBranching = 4;
|
|
39
|
-
let flowCount = 0;
|
|
40
|
-
for (const ep of entryPoints.slice(0, 20)) {
|
|
41
|
-
if (flowCount >= maxFlows)
|
|
42
|
-
break;
|
|
43
|
-
// BFS trace
|
|
44
|
-
const queue = [{ nodeId: ep.id, path: [ep.id] }];
|
|
45
|
-
const visited = new Set();
|
|
46
|
-
while (queue.length > 0 && flowCount < maxFlows) {
|
|
47
|
-
const { nodeId, path } = queue.shift();
|
|
48
|
-
if (path.length > maxDepth)
|
|
49
|
-
continue;
|
|
50
|
-
const callEdges = [...graph.findEdgesFrom(nodeId)]
|
|
51
|
-
.filter((e) => e.kind === 'calls')
|
|
52
|
-
.slice(0, maxBranching);
|
|
53
|
-
if (callEdges.length === 0 && path.length >= 3) {
|
|
54
|
-
// Record flow
|
|
55
|
-
const flowId = generateNodeId('flow', ep.filePath, `flow-${flowCount}`);
|
|
56
|
-
graph.addNode({
|
|
57
|
-
id: flowId,
|
|
58
|
-
kind: 'flow',
|
|
59
|
-
name: `${ep.name} flow ${flowCount}`,
|
|
60
|
-
filePath: ep.filePath,
|
|
61
|
-
metadata: { steps: path, entryPoint: ep.name },
|
|
62
|
-
});
|
|
63
|
-
// Add step_of edges
|
|
64
|
-
for (let i = 0; i < path.length; i++) {
|
|
65
|
-
graph.addEdge({
|
|
66
|
-
id: generateEdgeId(path[i], flowId, `step_of_${i}`),
|
|
67
|
-
source: path[i],
|
|
68
|
-
target: flowId,
|
|
69
|
-
kind: 'step_of',
|
|
70
|
-
weight: 1.0,
|
|
71
|
-
label: `step ${i + 1}`,
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
flowCount++;
|
|
75
|
-
continue;
|
|
76
|
-
}
|
|
77
|
-
for (const edge of callEdges) {
|
|
78
|
-
if (visited.has(edge.target))
|
|
79
|
-
continue;
|
|
80
|
-
visited.add(edge.target);
|
|
81
|
-
queue.push({ nodeId: edge.target, path: [...path, edge.target] });
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
return {
|
|
86
|
-
status: 'completed',
|
|
87
|
-
duration: Date.now() - start,
|
|
88
|
-
message: `Found ${entryPoints.length} entry points, traced ${flowCount} flows`,
|
|
89
|
-
};
|
|
90
|
-
},
|
|
91
|
-
};
|
|
92
|
-
//# sourceMappingURL=flow-phase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"flow-phase.js","sourceRoot":"","sources":["../../../src/pipeline/phases/flow-phase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export { scanPhase, structurePhase } from './scan-phase.js';
|
|
2
|
-
export { parsePhase } from './parse-phase.js';
|
|
3
|
-
export { resolvePhase } from './resolve-phase.js';
|
|
4
|
-
export { clusterPhase } from './cluster-phase.js';
|
|
5
|
-
export { flowPhase } from './flow-phase.js';
|
|
6
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pipeline/phases/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export { scanPhase, structurePhase } from './scan-phase.js';
|
|
2
|
-
export { parsePhase } from './parse-phase.js';
|
|
3
|
-
export { resolvePhase } from './resolve-phase.js';
|
|
4
|
-
export { clusterPhase } from './cluster-phase.js';
|
|
5
|
-
export { flowPhase } from './flow-phase.js';
|
|
6
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pipeline/phases/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
|