gitnexus 1.6.12-rc.22 → 1.6.12-rc.24
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/_shared/index.d.ts +1 -1
- package/dist/_shared/index.d.ts.map +1 -1
- package/dist/_shared/index.js.map +1 -1
- package/dist/_shared/scope-resolution/finalize-algorithm.d.ts +59 -9
- package/dist/_shared/scope-resolution/finalize-algorithm.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/finalize-algorithm.js +355 -67
- package/dist/_shared/scope-resolution/finalize-algorithm.js.map +1 -1
- package/dist/_shared/scope-resolution/symbol-definition.d.ts +12 -0
- package/dist/_shared/scope-resolution/symbol-definition.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/types.d.ts +17 -9
- package/dist/_shared/scope-resolution/types.d.ts.map +1 -1
- package/dist/core/graph/edge-reasons.d.ts +26 -0
- package/dist/core/graph/edge-reasons.js +34 -0
- package/dist/core/graph/graph.js +1 -1
- package/dist/core/graph/types.d.ts +8 -2
- package/dist/core/ingestion/finalize-orchestrator.js +3 -0
- package/dist/core/ingestion/import-resolvers/node-workspace-packages.d.ts +1 -7
- package/dist/core/ingestion/import-resolvers/node-workspace-packages.js +429 -18
- package/dist/core/ingestion/languages/dart/name-fallback-visibility.d.ts +38 -0
- package/dist/core/ingestion/languages/dart/name-fallback-visibility.js +70 -0
- package/dist/core/ingestion/languages/dart/scope-resolver.js +2 -0
- package/dist/core/ingestion/languages/go/captures.js +12 -1
- package/dist/core/ingestion/languages/go/name-fallback-visibility.d.ts +33 -0
- package/dist/core/ingestion/languages/go/name-fallback-visibility.js +107 -0
- package/dist/core/ingestion/languages/go/package-siblings.d.ts +10 -4
- package/dist/core/ingestion/languages/go/package-siblings.js +138 -65
- package/dist/core/ingestion/languages/go/scope-resolver.js +2 -0
- package/dist/core/ingestion/languages/java/captures.js +13 -0
- package/dist/core/ingestion/languages/javascript/captures.js +16 -0
- package/dist/core/ingestion/languages/javascript/scope-resolver.js +5 -0
- package/dist/core/ingestion/languages/ruby/name-fallback-visibility.d.ts +59 -0
- package/dist/core/ingestion/languages/ruby/name-fallback-visibility.js +189 -0
- package/dist/core/ingestion/languages/ruby/scope-resolver.js +2 -0
- package/dist/core/ingestion/languages/rust/name-fallback-visibility.d.ts +30 -0
- package/dist/core/ingestion/languages/rust/name-fallback-visibility.js +172 -0
- package/dist/core/ingestion/languages/rust/scope-resolver.js +3 -0
- package/dist/core/ingestion/languages/swift/name-fallback-visibility.d.ts +27 -0
- package/dist/core/ingestion/languages/swift/name-fallback-visibility.js +61 -0
- package/dist/core/ingestion/languages/swift/scope-resolver.js +2 -0
- package/dist/core/ingestion/languages/typescript/captures.js +16 -0
- package/dist/core/ingestion/languages/typescript/scope-resolver.js +8 -0
- package/dist/core/ingestion/languages/typescript/tsconfig.d.ts +15 -0
- package/dist/core/ingestion/languages/typescript/tsconfig.js +29 -6
- package/dist/core/ingestion/languages/vue/scope-resolver.js +3 -0
- package/dist/core/ingestion/pipeline.d.ts +9 -0
- package/dist/core/ingestion/pipeline.js +30 -0
- package/dist/core/ingestion/scope-extractor.js +15 -8
- package/dist/core/ingestion/scope-resolution/contract/scope-resolver.d.ts +95 -19
- package/dist/core/ingestion/scope-resolution/contract/scope-resolver.js +17 -19
- package/dist/core/ingestion/scope-resolution/graph-bridge/ids.js +15 -0
- package/dist/core/ingestion/scope-resolution/name-fallback-summary.d.ts +90 -0
- package/dist/core/ingestion/scope-resolution/name-fallback-summary.js +156 -0
- package/dist/core/ingestion/scope-resolution/passes/free-call-fallback.d.ts +9 -0
- package/dist/core/ingestion/scope-resolution/passes/free-call-fallback.js +140 -29
- package/dist/core/ingestion/scope-resolution/passes/imported-return-types.d.ts +4 -13
- package/dist/core/ingestion/scope-resolution/passes/imported-return-types.js +41 -47
- package/dist/core/ingestion/scope-resolution/pipeline/run.js +20 -0
- package/dist/core/ingestion/scope-resolution/resolution-outcome.d.ts +54 -0
- package/dist/core/ingestion/scope-resolution/scope/walkers.d.ts +32 -2
- package/dist/core/ingestion/scope-resolution/scope/walkers.js +65 -23
- package/dist/core/ingestion/scope-resolution/utils/name-fallback-visibility.d.ts +57 -0
- package/dist/core/ingestion/scope-resolution/utils/name-fallback-visibility.js +90 -0
- package/dist/core/ingestion/ts-js-export-marker.d.ts +55 -0
- package/dist/core/ingestion/ts-js-export-marker.js +317 -0
- package/dist/core/lbug/graph-emit-sink.d.ts +21 -9
- package/dist/core/lbug/graph-emit-sink.js +31 -10
- package/dist/core/lbug/pdg-emit-sink.d.ts +1 -1
- package/dist/core/run-analyze.js +11 -0
- package/dist/storage/parse-cache.js +5 -8
- package/dist/storage/repo-meta.d.ts +10 -0
- package/dist/types/pipeline.d.ts +8 -0
- package/package.json +1 -1
- package/scripts/cross-platform-shard.ts +12 -10
- package/scripts/cross-platform-tests.ts +12 -0
- package/web/assets/{agent-DuBBkGz1.js → agent-DeT_Hy8W.js} +1 -1
- package/web/assets/{index-C2pinrQ1.js → index-CacNO4DK.js} +4 -4
- package/web/assets/{src-jc8Ffy3T.js → src-9AKzpdZh.js} +1 -1
- package/web/index.html +2 -2
package/dist/_shared/index.d.ts
CHANGED
|
@@ -28,7 +28,7 @@ export type { CallableFlowOperand, CallableFlowExpectedSignature, CallableFlowPa
|
|
|
28
28
|
export { buildMethodDispatchIndex } from './scope-resolution/method-dispatch-index.js';
|
|
29
29
|
export type { MethodDispatchIndex, MethodDispatchInput, } from './scope-resolution/method-dispatch-index.js';
|
|
30
30
|
export { finalize } from './scope-resolution/finalize-algorithm.js';
|
|
31
|
-
export type { FinalizeInput, FinalizeFile, FinalizeHooks, FinalizeOutput, FinalizedScc, FinalizeStats, } from './scope-resolution/finalize-algorithm.js';
|
|
31
|
+
export type { FinalizeInput, FinalizeFile, FinalizeHooks, FinalizeOutput, FinalizedScc, FinalizeStats, AmbiguousWildcardExport, } from './scope-resolution/finalize-algorithm.js';
|
|
32
32
|
export { buildClassRegistry } from './scope-resolution/registries/class-registry.js';
|
|
33
33
|
export type { ClassRegistry } from './scope-resolution/registries/class-registry.js';
|
|
34
34
|
export { buildMethodRegistry } from './scope-resolution/registries/method-registry.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,mBAAmB;AACnB,OAAO,EACL,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AAGpC,mBAAmB;AACnB,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAGjC,sBAAsB;AACtB,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AA4C5E,8DAA8D;AAC9D,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,yDAAyD;AACzD,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,+CAA+C,CAAC;AAGvD,sEAAsE;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAGrF,gEAAgE;AAChE,yEAAyE;AACzE,2DAA2D;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AA4BxE,oFAAoF;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAMvF,uEAAuE;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,mBAAmB;AACnB,OAAO,EACL,WAAW,EACX,cAAc,EACd,SAAS,EACT,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AAGpC,mBAAmB;AACnB,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAGjC,sBAAsB;AACtB,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AA4C5E,8DAA8D;AAC9D,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACnG,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAGxE,yDAAyD;AACzD,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,+CAA+C,CAAC;AAGvD,sEAAsE;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAGrF,gEAAgE;AAChE,yEAAyE;AACzE,2DAA2D;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AA4BxE,oFAAoF;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAMvF,uEAAuE;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAWpE,sEAAsE;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AAKvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAKrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAErF,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAC;AAEpF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAEpG,OAAO,EACL,gCAAgC,EAChC,kBAAkB,GACnB,MAAM,6CAA6C,CAAC;AAErD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,WAAW,EACX,WAAW,GACZ,MAAM,0CAA0C,CAAC;AAUlD,2EAA2E;AAC3E,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAErF,OAAO,EACL,cAAc,EACd,cAAc,EACd,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAG1E,8EAA8E;AAC9E,wEAAwE;AACxE,wEAAwE;AACxE,8DAA8D;AAC9D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAEjG,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,kBAAkB,EAClB,eAAe,EACf,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAG3C,mDAAmD;AACnD,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAC5B,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,GACf,MAAM,sCAAsC,CAAC"}
|
|
@@ -5,13 +5,14 @@
|
|
|
5
5
|
* Pure logic that takes per-file parse output (`ParsedImport[]` +
|
|
6
6
|
* `SymbolDefinition[]`) and returns:
|
|
7
7
|
*
|
|
8
|
-
* - Linked `ImportEdge[]`
|
|
9
|
-
* `
|
|
10
|
-
*
|
|
8
|
+
* - Linked `ImportEdge[]` keyed by binding scope (`fromScope`; module
|
|
9
|
+
* scope unless `importsBindAtLexicalScope` is on), with
|
|
10
|
+
* `targetModuleScope` and `targetDefId` filled where resolvable; edges
|
|
11
|
+
* that could not be resolved within the hard fixpoint cap are marked
|
|
11
12
|
* `linkStatus: 'unresolved'`.
|
|
12
|
-
* - Materialized `bindings`
|
|
13
|
-
* imported / wildcard-expanded / re-exported names via the
|
|
14
|
-
* `mergeBindings` precedence.
|
|
13
|
+
* - Materialized `bindings` keyed by the same scopes — local defs merged
|
|
14
|
+
* with imported / wildcard-expanded / re-exported names via the
|
|
15
|
+
* provider's `mergeBindings` precedence.
|
|
15
16
|
* - The SCC condensation of the import graph, exposed so disjoint SCCs
|
|
16
17
|
* can be processed in parallel by callers that want that.
|
|
17
18
|
*
|
|
@@ -35,7 +36,7 @@ import type { BindingRef, ImportEdge, ParsedImport, ScopeId, WorkspaceIndex } fr
|
|
|
35
36
|
/** Per-file input for the finalize pass. */
|
|
36
37
|
export interface FinalizeFile {
|
|
37
38
|
readonly filePath: string;
|
|
38
|
-
/**
|
|
39
|
+
/** Default binding scope for imports without lexical provenance or opt-in. */
|
|
39
40
|
readonly moduleScope: ScopeId;
|
|
40
41
|
readonly parsedImports: readonly ParsedImport[];
|
|
41
42
|
/**
|
|
@@ -78,6 +79,10 @@ export interface FinalizeInput {
|
|
|
78
79
|
* expects pure answers.
|
|
79
80
|
*/
|
|
80
81
|
export interface FinalizeHooks {
|
|
82
|
+
/** Bind imports at their extracted lexical scope. Missing provenance retains
|
|
83
|
+
* the legacy module-scope behavior. Opt-in: lexical position and language
|
|
84
|
+
* import-binding semantics are distinct facts. */
|
|
85
|
+
readonly importsBindAtLexicalScope?: boolean;
|
|
81
86
|
/**
|
|
82
87
|
* Resolve a raw import target to the concrete file path that owns it.
|
|
83
88
|
* Return `null` when no target file is resolvable (e.g., `np.foo` when
|
|
@@ -96,6 +101,32 @@ export interface FinalizeHooks {
|
|
|
96
101
|
* matching export are dropped.
|
|
97
102
|
*/
|
|
98
103
|
expandsWildcardTo(targetModuleScope: ScopeId, workspaceIndex: WorkspaceIndex): readonly string[];
|
|
104
|
+
/**
|
|
105
|
+
* Does this language make two `wildcard` re-exports that both DECLARE the
|
|
106
|
+
* same name AMBIGUOUS (no winner), rather than overloads or redeclarations
|
|
107
|
+
* of one entity?
|
|
108
|
+
*
|
|
109
|
+
* True for ECMAScript modules: `export * from './a'; export * from './b'`
|
|
110
|
+
* with `collide` declared in both excludes the name from the module's
|
|
111
|
+
* exports, so binding either source is a guess. False (the default) for
|
|
112
|
+
* languages whose wildcard import is `#include`, `require`, or a package
|
|
113
|
+
* fan-out, where the same name declared in two files is an overload set
|
|
114
|
+
* (C++ `write_audit(int)` / `write_audit(int, int)` across two headers), a
|
|
115
|
+
* redeclaration of one function, or a per-file `init` — legal, and resolved
|
|
116
|
+
* downstream by arity or by definition. Only a language that opts in has
|
|
117
|
+
* its collisions refused and reported via `ambiguousWildcardExports`.
|
|
118
|
+
*/
|
|
119
|
+
readonly wildcardCollisionIsAmbiguous?: boolean;
|
|
120
|
+
/**
|
|
121
|
+
* A named import / named re-export binds only to MODULE-LEVEL declarations
|
|
122
|
+
* of the target file. Opt-in for languages whose `import { x }` can never
|
|
123
|
+
* reach a class member: without it, a class method sharing a name with a
|
|
124
|
+
* top-level value — or standing alone — wins the callable preference in
|
|
125
|
+
* `findExportByName` and the import binds to a symbol the module cannot
|
|
126
|
+
* export (a confident wrong edge). Languages that bind module-level members
|
|
127
|
+
* by bare name (static members, module functions) leave it off.
|
|
128
|
+
*/
|
|
129
|
+
readonly namedImportsBindTopLevelOnly?: boolean;
|
|
99
130
|
/**
|
|
100
131
|
* Merge `incoming` bindings into `existing` for a given name. Called
|
|
101
132
|
* once per name at each scope. Typical rules:
|
|
@@ -140,11 +171,30 @@ export interface FinalizeStats {
|
|
|
140
171
|
readonly unresolvedEdges: number;
|
|
141
172
|
readonly sccCount: number;
|
|
142
173
|
readonly largestSccSize: number;
|
|
174
|
+
/**
|
|
175
|
+
* Names a file re-exported through two or more `export *` sources that each
|
|
176
|
+
* DECLARE the name, so the language names no winner. The finalize pass
|
|
177
|
+
* refuses to bind them (they are absent from the file's re-export closure
|
|
178
|
+
* AND from its wildcard-expanded module-scope bindings) instead of taking the
|
|
179
|
+
* first-listed source and publishing the guess as `import-resolved`.
|
|
180
|
+
* Reported so the caller can record the refusal — an importer of that name
|
|
181
|
+
* stays unresolved, and the reason must be auditable rather than silent.
|
|
182
|
+
*/
|
|
183
|
+
readonly ambiguousWildcardExports: readonly AmbiguousWildcardExport[];
|
|
184
|
+
}
|
|
185
|
+
/** One refused `export *` collision — see `FinalizeStats.ambiguousWildcardExports`. */
|
|
186
|
+
export interface AmbiguousWildcardExport {
|
|
187
|
+
readonly filePath: string;
|
|
188
|
+
readonly name: string;
|
|
189
|
+
/** `nodeId`s of the colliding declarations, in `export *` declaration order. */
|
|
190
|
+
readonly candidateDefIds: readonly string[];
|
|
143
191
|
}
|
|
144
192
|
export interface FinalizeOutput {
|
|
145
|
-
/** Linked `ImportEdge[]`
|
|
193
|
+
/** Linked `ImportEdge[]` keyed by binding scope (`fromScope`). Module scope
|
|
194
|
+
* for languages that bind file-wide; nested lexical scopes when
|
|
195
|
+
* `importsBindAtLexicalScope` is on. */
|
|
146
196
|
readonly imports: ReadonlyMap<ScopeId, readonly ImportEdge[]>;
|
|
147
|
-
/** Materialized bindings
|
|
197
|
+
/** Materialized bindings keyed by the same scopes as `imports`. */
|
|
148
198
|
readonly bindings: ReadonlyMap<ScopeId, ReadonlyMap<string, readonly BindingRef[]>>;
|
|
149
199
|
/** SCCs in reverse-topological order (leaves first). */
|
|
150
200
|
readonly sccs: readonly FinalizedScc[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finalize-algorithm.d.ts","sourceRoot":"","sources":["../../src/scope-resolution/finalize-algorithm.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"finalize-algorithm.d.ts","sourceRoot":"","sources":["../../src/scope-resolution/finalize-algorithm.ts"],"names":[],"mappings":"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"}
|