@grafema/util 0.3.16 → 0.3.17
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/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/manifest/generator.d.ts +67 -0
- package/dist/manifest/generator.d.ts.map +1 -0
- package/dist/manifest/generator.js +390 -0
- package/dist/manifest/generator.js.map +1 -0
- package/dist/manifest/index.d.ts +5 -0
- package/dist/manifest/index.d.ts.map +1 -0
- package/dist/manifest/index.js +3 -0
- package/dist/manifest/index.js.map +1 -0
- package/dist/manifest/resolver.d.ts +111 -0
- package/dist/manifest/resolver.d.ts.map +1 -0
- package/dist/manifest/resolver.js +210 -0
- package/dist/manifest/resolver.js.map +1 -0
- package/dist/manifest/types.d.ts +66 -0
- package/dist/manifest/types.d.ts.map +1 -0
- package/dist/manifest/types.js +12 -0
- package/dist/manifest/types.js.map +1 -0
- package/dist/notation/archetypes.d.ts.map +1 -1
- package/dist/notation/archetypes.js +1 -0
- package/dist/notation/archetypes.js.map +1 -1
- package/package.json +3 -3
- package/src/index.ts +14 -0
- package/src/manifest/generator.ts +479 -0
- package/src/manifest/index.ts +16 -0
- package/src/manifest/resolver.ts +248 -0
- package/src/manifest/types.ts +101 -0
- package/src/notation/archetypes.ts +1 -0
package/dist/index.d.ts
CHANGED
|
@@ -71,5 +71,7 @@ export { buildNodeContext, getNodeDisplayName, formatEdgeMetadata, STRUCTURAL_ED
|
|
|
71
71
|
export type { CallInfo, CallerInfo, FindCallsOptions, TracedValue, ValueSource, UnknownReason, TraceValuesOptions, ValueSetResult, TraceValuesGraphBackend, NondeterministicPattern, EdgeWithNode, EdgeGroup, SourcePreview, NodeContext, BuildNodeContextOptions, DataflowNode, DataflowEdge, DataflowBackend, TraceDataflowOptions, TraceDataflowResult, } from './queries/index.js';
|
|
72
72
|
export { EDGE_ARCHETYPE_MAP, lookupEdge, generateLegend, PERSPECTIVES, renderNotation, extractSubgraph, shortenName, renderTraceNarrative } from './notation/index.js';
|
|
73
73
|
export type { Archetype, EdgeMapping, DescribeOptions, SubgraphData, NotationBlock, NotationLine, TraceDetail, TraceNarrativeOptions, } from './notation/index.js';
|
|
74
|
+
export { ManifestGenerator, ManifestResolver } from './manifest/index.js';
|
|
75
|
+
export type { Manifest, ManifestExport, ManifestImport, ManifestParam, EffectType, FlowType, ExportKind, ResolveResult, ManifestSummary, } from './manifest/index.js';
|
|
74
76
|
export type * from '@grafema/types';
|
|
75
77
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,YAAY,EACZ,WAAW,EACX,eAAe,EACf,aAAa,EACb,aAAa,EACb,WAAW,EACX,aAAa,EACb,eAAe,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC3F,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAG5D,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACnG,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACvG,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC1H,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1G,OAAO,EACL,UAAU,EACV,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAGnE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACpF,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGvG,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAG5E,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAGtG,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,cAAc,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACrL,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG/E,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3H,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAGzE,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAG3E,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D,OAAO,EACL,WAAW,EACX,0BAA0B,EAC1B,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGxF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1E,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGxJ,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAG/G,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,YAAY,EACV,kBAAkB,EAClB,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAGnE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAG1E,OAAO,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGhH,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,YAAY,EACV,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EACf,aAAa,GACd,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACnF,YAAY,EACV,eAAe,EACf,cAAc,EACd,cAAc,EACd,WAAW,EACX,cAAc,EACd,cAAc,EACd,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,UAAU,EAAE,kBAAkB,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACpS,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,YAAY,EACV,UAAU,EACV,WAAW,EACX,OAAO,EACP,UAAU,EACV,UAAU,EACV,MAAM,EACN,SAAS,EACT,MAAM,EACN,MAAM,EACN,OAAO,EACP,aAAa,EACb,qBAAqB,EACrB,eAAe,EACf,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAChH,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGxG,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,WAAW,EAAE,eAAe,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AACpK,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACrH,YAAY,EACV,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,uBAAuB,EACvB,YAAY,EACZ,SAAS,EACT,aAAa,EACb,WAAW,EACX,uBAAuB,EACvB,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACvK,YAAY,EACV,SAAS,EACT,WAAW,EACX,eAAe,EACf,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAG7B,mBAAmB,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -73,4 +73,6 @@ export { traceDataflow, traceForwardBFS, traceBackwardBFS } from './queries/inde
|
|
|
73
73
|
export { buildNodeContext, getNodeDisplayName, formatEdgeMetadata, STRUCTURAL_EDGE_TYPES } from './queries/index.js';
|
|
74
74
|
// Notation — DSL rendering engine
|
|
75
75
|
export { EDGE_ARCHETYPE_MAP, lookupEdge, generateLegend, PERSPECTIVES, renderNotation, extractSubgraph, shortenName, renderTraceNarrative } from './notation/index.js';
|
|
76
|
+
// Manifest generation & resolution (federation)
|
|
77
|
+
export { ManifestGenerator, ManifestResolver } from './manifest/index.js';
|
|
76
78
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ManifestGenerator — generates manifest.yaml from a Grafema graph.
|
|
3
|
+
*
|
|
4
|
+
* Reads MODULE, EXPORT, EXTERNAL_MODULE, FUNCTION, CLASS nodes from the graph
|
|
5
|
+
* and assembles a Manifest object describing the package's export surface.
|
|
6
|
+
*
|
|
7
|
+
* Effects are looked up from the effects-db (builtins + packages) and
|
|
8
|
+
* propagated transitively via the call graph.
|
|
9
|
+
*/
|
|
10
|
+
import type { GraphBackend } from '@grafema/types';
|
|
11
|
+
import type { Manifest } from './types.js';
|
|
12
|
+
interface GeneratorOptions {
|
|
13
|
+
/** Package purl (e.g., "pkg:npm/@grafema/util@0.2.0") */
|
|
14
|
+
purl: string;
|
|
15
|
+
/** Path to effects-db directory */
|
|
16
|
+
effectsDbPath?: string;
|
|
17
|
+
/** Path to the .grafema directory */
|
|
18
|
+
grafemaDir: string;
|
|
19
|
+
/** Source type of analyzed code */
|
|
20
|
+
sourceType?: 'source' | 'compiled_js' | 'minified' | 'dts_only';
|
|
21
|
+
/** Files that belong to this package (prefix filter) */
|
|
22
|
+
packagePrefix?: string;
|
|
23
|
+
/** Graph-relative path to the entry file (e.g., "packages/util/src/index.ts").
|
|
24
|
+
* When set, collects exports via EXPORT → EXPORT_BINDING graph traversal,
|
|
25
|
+
* ensuring only the public API surface is included. */
|
|
26
|
+
entryFile?: string;
|
|
27
|
+
}
|
|
28
|
+
export declare class ManifestGenerator {
|
|
29
|
+
private backend;
|
|
30
|
+
private options;
|
|
31
|
+
private effectsDb;
|
|
32
|
+
private effectsCache;
|
|
33
|
+
constructor(backend: GraphBackend, options: GeneratorOptions);
|
|
34
|
+
generate(): Promise<Manifest>;
|
|
35
|
+
/** Serialize manifest to YAML string */
|
|
36
|
+
static toYaml(manifest: Manifest): string;
|
|
37
|
+
private loadEffectsDB;
|
|
38
|
+
/** Look up effects for a builtin or external function */
|
|
39
|
+
private lookupEffects;
|
|
40
|
+
/** Definition node types we look up for exported symbols */
|
|
41
|
+
private static readonly DEF_TYPES;
|
|
42
|
+
private collectExports;
|
|
43
|
+
/** Collect exports by traversing EXPORT → EXPORT_BINDING graph edges from entry file */
|
|
44
|
+
private collectExportsViaBindings;
|
|
45
|
+
/** Find a definition node by name, resolving source path relative to the importing file.
|
|
46
|
+
* Follows barrel re-export chains: if the source file is a barrel (index.ts),
|
|
47
|
+
* looks for EXPORT_BINDING nodes there and follows their source recursively. */
|
|
48
|
+
private findDefinition;
|
|
49
|
+
/** Resolve a relative source path to a graph-relative file path */
|
|
50
|
+
private resolveSourcePath;
|
|
51
|
+
/** Find a FUNCTION/CLASS/CONSTANT/INTERFACE node by name in a specific file */
|
|
52
|
+
private findDefinitionInFile;
|
|
53
|
+
/** Build a ManifestExport entry from a definition node */
|
|
54
|
+
private addExportFromDefinition;
|
|
55
|
+
/** Map node type → ExportKind */
|
|
56
|
+
private nodeTypeToExportKind;
|
|
57
|
+
/** Enrich all exports with computed effects (transitive call graph analysis) */
|
|
58
|
+
private enrichEffects;
|
|
59
|
+
private collectEffectsTransitively;
|
|
60
|
+
private parseCallTarget;
|
|
61
|
+
private collectImports;
|
|
62
|
+
private sourceToPurl;
|
|
63
|
+
private countInternalSymbols;
|
|
64
|
+
private computeConfidence;
|
|
65
|
+
}
|
|
66
|
+
export {};
|
|
67
|
+
//# sourceMappingURL=generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/manifest/generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,gBAAgB,CAAC;AAE/D,OAAO,KAAK,EACV,QAAQ,EAMT,MAAM,YAAY,CAAC;AAYpB,UAAU,gBAAgB;IACxB,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,UAAU,CAAC,EAAE,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,UAAU,CAAC;IAChE,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;4DAEwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,YAAY,CAAwC;gBAEhD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,gBAAgB;IAMtD,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IA0CnC,wCAAwC;IACxC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM;IAUzC,OAAO,CAAC,aAAa;IA0BrB,yDAAyD;IACzD,OAAO,CAAC,aAAa;IAqBrB,4DAA4D;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAA2D;YAE9E,cAAc;IA4B5B,wFAAwF;YAC1E,yBAAyB;IAkDvC;;qFAEiF;YACnE,cAAc;IAwB5B,mEAAmE;IACnE,OAAO,CAAC,iBAAiB;IAUzB,+EAA+E;YACjE,oBAAoB;IASlC,0DAA0D;YAC5C,uBAAuB;IAoBrC,iCAAiC;IACjC,OAAO,CAAC,oBAAoB;IAa5B,gFAAgF;YAClE,aAAa;YAeb,0BAA0B;IA+CxC,OAAO,CAAC,eAAe;YAYT,cAAc;IA8B5B,OAAO,CAAC,YAAY;YAqBN,oBAAoB;IAYlC,OAAO,CAAC,iBAAiB;CAW1B"}
|
|
@@ -0,0 +1,390 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ManifestGenerator — generates manifest.yaml from a Grafema graph.
|
|
3
|
+
*
|
|
4
|
+
* Reads MODULE, EXPORT, EXTERNAL_MODULE, FUNCTION, CLASS nodes from the graph
|
|
5
|
+
* and assembles a Manifest object describing the package's export surface.
|
|
6
|
+
*
|
|
7
|
+
* Effects are looked up from the effects-db (builtins + packages) and
|
|
8
|
+
* propagated transitively via the call graph.
|
|
9
|
+
*/
|
|
10
|
+
import { readFileSync, existsSync, readdirSync } from 'fs';
|
|
11
|
+
import { join } from 'path';
|
|
12
|
+
import { parse as parseYaml, stringify as stringifyYaml } from 'yaml';
|
|
13
|
+
import { GRAFEMA_VERSION } from '../version.js';
|
|
14
|
+
const SCHEMA_VERSION = 1;
|
|
15
|
+
const VALID_EFFECTS = new Set([
|
|
16
|
+
'PURE', 'MUTATION', 'IO', 'THROW', 'ASYNC', 'NONDETERMINISTIC', 'UNKNOWN',
|
|
17
|
+
]);
|
|
18
|
+
export class ManifestGenerator {
|
|
19
|
+
backend;
|
|
20
|
+
options;
|
|
21
|
+
effectsDb;
|
|
22
|
+
effectsCache = new Map();
|
|
23
|
+
constructor(backend, options) {
|
|
24
|
+
this.backend = backend;
|
|
25
|
+
this.options = options;
|
|
26
|
+
this.effectsDb = { runtimes: {}, packages: {} };
|
|
27
|
+
}
|
|
28
|
+
async generate() {
|
|
29
|
+
this.loadEffectsDB();
|
|
30
|
+
const exports = await this.collectExports();
|
|
31
|
+
await this.enrichEffects(exports);
|
|
32
|
+
const imports = await this.collectImports();
|
|
33
|
+
const totalInternal = await this.countInternalSymbols();
|
|
34
|
+
const manifest = {
|
|
35
|
+
schema_version: SCHEMA_VERSION,
|
|
36
|
+
analyzer_version: GRAFEMA_VERSION,
|
|
37
|
+
authored: false,
|
|
38
|
+
confidence: this.computeConfidence(exports),
|
|
39
|
+
generated: new Date().toISOString(),
|
|
40
|
+
package: {
|
|
41
|
+
purl: this.options.purl,
|
|
42
|
+
source_type: this.options.sourceType ?? 'source',
|
|
43
|
+
},
|
|
44
|
+
exports,
|
|
45
|
+
imports,
|
|
46
|
+
capabilities: {
|
|
47
|
+
total_exports: exports.length,
|
|
48
|
+
total_internal_symbols: totalInternal,
|
|
49
|
+
has_graph: existsSync(join(this.options.grafemaDir, 'graph.rfdb')),
|
|
50
|
+
},
|
|
51
|
+
access: {
|
|
52
|
+
local: './graph.rfdb',
|
|
53
|
+
},
|
|
54
|
+
language: 'typescript',
|
|
55
|
+
language_specific: {
|
|
56
|
+
module_system: 'esm',
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
return manifest;
|
|
60
|
+
}
|
|
61
|
+
/** Serialize manifest to YAML string */
|
|
62
|
+
static toYaml(manifest) {
|
|
63
|
+
return stringifyYaml(manifest, {
|
|
64
|
+
lineWidth: 120,
|
|
65
|
+
defaultKeyType: 'PLAIN',
|
|
66
|
+
defaultStringType: 'PLAIN',
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
// ── Effects DB loading ─────────────────────────────────────
|
|
70
|
+
loadEffectsDB() {
|
|
71
|
+
const dbPath = this.options.effectsDbPath;
|
|
72
|
+
if (!dbPath)
|
|
73
|
+
return;
|
|
74
|
+
// Load runtime builtins
|
|
75
|
+
const nodeYaml = join(dbPath, 'runtimes', 'node.yaml');
|
|
76
|
+
if (existsSync(nodeYaml)) {
|
|
77
|
+
const raw = parseYaml(readFileSync(nodeYaml, 'utf-8'));
|
|
78
|
+
this.effectsDb.runtimes = raw;
|
|
79
|
+
}
|
|
80
|
+
// Load package effects
|
|
81
|
+
const pkgDir = join(dbPath, 'packages');
|
|
82
|
+
if (existsSync(pkgDir)) {
|
|
83
|
+
for (const file of readdirSync(pkgDir)) {
|
|
84
|
+
if (!file.endsWith('.yaml'))
|
|
85
|
+
continue;
|
|
86
|
+
const raw = parseYaml(readFileSync(join(pkgDir, file), 'utf-8'));
|
|
87
|
+
if (raw && typeof raw === 'object') {
|
|
88
|
+
for (const [pkg, fns] of Object.entries(raw)) {
|
|
89
|
+
this.effectsDb.packages[pkg] = fns;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
/** Look up effects for a builtin or external function */
|
|
96
|
+
lookupEffects(module, fn) {
|
|
97
|
+
// Check runtime builtins (node:fs → readFileSync)
|
|
98
|
+
const nodeModule = `node:${module}`;
|
|
99
|
+
if (this.effectsDb.runtimes[nodeModule]?.[fn]) {
|
|
100
|
+
return this.effectsDb.runtimes[nodeModule][fn];
|
|
101
|
+
}
|
|
102
|
+
// Also check without node: prefix
|
|
103
|
+
if (this.effectsDb.runtimes[module]?.[fn]) {
|
|
104
|
+
return this.effectsDb.runtimes[module][fn];
|
|
105
|
+
}
|
|
106
|
+
// Check package effects
|
|
107
|
+
if (this.effectsDb.packages[module]?.[fn]) {
|
|
108
|
+
return this.effectsDb.packages[module][fn];
|
|
109
|
+
}
|
|
110
|
+
return null;
|
|
111
|
+
}
|
|
112
|
+
// ── Export collection ──────────────────────────────────────
|
|
113
|
+
/** Definition node types we look up for exported symbols */
|
|
114
|
+
static DEF_TYPES = ['FUNCTION', 'CLASS', 'CONSTANT', 'INTERFACE'];
|
|
115
|
+
async collectExports() {
|
|
116
|
+
const seen = new Set();
|
|
117
|
+
const exports = [];
|
|
118
|
+
const entryFile = this.options.entryFile;
|
|
119
|
+
if (entryFile) {
|
|
120
|
+
// Graph-based approach:
|
|
121
|
+
// EXPORT(named) --EXPORTS--> EXPORT_BINDING(name, source) --> definition in source file
|
|
122
|
+
await this.collectExportsViaBindings(entryFile, exports, seen, new Set());
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
// Fallback: all exported definitions from the package
|
|
126
|
+
const prefix = this.options.packagePrefix ?? '';
|
|
127
|
+
for (const type of ManifestGenerator.DEF_TYPES) {
|
|
128
|
+
for await (const node of this.backend.queryNodes({ type: type })) {
|
|
129
|
+
if (prefix && !node.file?.startsWith(prefix))
|
|
130
|
+
continue;
|
|
131
|
+
if (!node.exported)
|
|
132
|
+
continue;
|
|
133
|
+
if (!node.name || node.name.startsWith('<'))
|
|
134
|
+
continue;
|
|
135
|
+
if (seen.has(node.name))
|
|
136
|
+
continue;
|
|
137
|
+
seen.add(node.name);
|
|
138
|
+
await this.addExportFromDefinition(node, exports);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
exports.sort((a, b) => a.name.localeCompare(b.name));
|
|
143
|
+
return exports;
|
|
144
|
+
}
|
|
145
|
+
/** Collect exports by traversing EXPORT → EXPORT_BINDING graph edges from entry file */
|
|
146
|
+
async collectExportsViaBindings(file, exports, seen, visitedFiles) {
|
|
147
|
+
if (visitedFiles.has(file))
|
|
148
|
+
return;
|
|
149
|
+
visitedFiles.add(file);
|
|
150
|
+
for await (const exportNode of this.backend.queryNodes({ type: 'EXPORT', file })) {
|
|
151
|
+
// Star re-exports: follow RE_EXPORTS edge to source module
|
|
152
|
+
if (exportNode.name?.startsWith('*:') || exportNode.name === '*') {
|
|
153
|
+
const reExportEdges = await this.backend.getOutgoingEdges(exportNode.id, ['RE_EXPORTS']);
|
|
154
|
+
for (const edge of reExportEdges) {
|
|
155
|
+
const targetModule = await this.backend.getNode(edge.dst);
|
|
156
|
+
if (targetModule?.file) {
|
|
157
|
+
await this.collectExportsViaBindings(targetModule.file, exports, seen, visitedFiles);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
continue;
|
|
161
|
+
}
|
|
162
|
+
// Named exports: follow EXPORTS edges to EXPORT_BINDING nodes
|
|
163
|
+
const bindingEdges = await this.backend.getOutgoingEdges(exportNode.id, ['EXPORTS']);
|
|
164
|
+
for (const edge of bindingEdges) {
|
|
165
|
+
const binding = await this.backend.getNode(edge.dst);
|
|
166
|
+
if (!binding?.name || seen.has(binding.name))
|
|
167
|
+
continue;
|
|
168
|
+
seen.add(binding.name);
|
|
169
|
+
// Resolve the definition node from the source file
|
|
170
|
+
const source = binding.source;
|
|
171
|
+
const defNode = source
|
|
172
|
+
? await this.findDefinition(binding.name, source, file)
|
|
173
|
+
: await this.findDefinitionInFile(binding.name, file);
|
|
174
|
+
if (defNode) {
|
|
175
|
+
await this.addExportFromDefinition(defNode, exports);
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
// Type-only export or unresolvable — add as TYPE/VARIABLE
|
|
179
|
+
exports.push({
|
|
180
|
+
name: binding.name,
|
|
181
|
+
kind: 'TYPE',
|
|
182
|
+
semanticId: binding.id,
|
|
183
|
+
effects: ['PURE'],
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
/** Find a definition node by name, resolving source path relative to the importing file.
|
|
190
|
+
* Follows barrel re-export chains: if the source file is a barrel (index.ts),
|
|
191
|
+
* looks for EXPORT_BINDING nodes there and follows their source recursively. */
|
|
192
|
+
async findDefinition(name, source, fromFile, depth = 0) {
|
|
193
|
+
if (depth > 5)
|
|
194
|
+
return null;
|
|
195
|
+
const resolved = this.resolveSourcePath(source, fromFile);
|
|
196
|
+
// Direct definition in resolved file
|
|
197
|
+
const def = await this.findDefinitionInFile(name, resolved);
|
|
198
|
+
if (def)
|
|
199
|
+
return def;
|
|
200
|
+
// Follow barrel re-export chain via EXPORT_BINDING
|
|
201
|
+
for await (const binding of this.backend.queryNodes({
|
|
202
|
+
type: 'EXPORT_BINDING', name, file: resolved,
|
|
203
|
+
})) {
|
|
204
|
+
const nextSource = binding.source;
|
|
205
|
+
if (nextSource) {
|
|
206
|
+
return this.findDefinition(name, nextSource, resolved, depth + 1);
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
return null;
|
|
210
|
+
}
|
|
211
|
+
/** Resolve a relative source path to a graph-relative file path */
|
|
212
|
+
resolveSourcePath(source, fromFile) {
|
|
213
|
+
const dir = fromFile.substring(0, fromFile.lastIndexOf('/'));
|
|
214
|
+
let resolved = source.startsWith('.') ? `${dir}/${source}` : source;
|
|
215
|
+
resolved = resolved.replace(/\/\.\//g, '/');
|
|
216
|
+
if (resolved.endsWith('.js')) {
|
|
217
|
+
resolved = resolved.replace(/\.js$/, '.ts');
|
|
218
|
+
}
|
|
219
|
+
return resolved;
|
|
220
|
+
}
|
|
221
|
+
/** Find a FUNCTION/CLASS/CONSTANT/INTERFACE node by name in a specific file */
|
|
222
|
+
async findDefinitionInFile(name, file) {
|
|
223
|
+
for (const type of ManifestGenerator.DEF_TYPES) {
|
|
224
|
+
for await (const node of this.backend.queryNodes({ type: type, name, file })) {
|
|
225
|
+
return node;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
return null;
|
|
229
|
+
}
|
|
230
|
+
/** Build a ManifestExport entry from a definition node */
|
|
231
|
+
async addExportFromDefinition(node, exports) {
|
|
232
|
+
const kind = this.nodeTypeToExportKind(node.type);
|
|
233
|
+
const entry = {
|
|
234
|
+
name: node.name ?? '<unknown>',
|
|
235
|
+
kind,
|
|
236
|
+
semanticId: node.id,
|
|
237
|
+
effects: ['PURE'],
|
|
238
|
+
};
|
|
239
|
+
if (kind === 'FUNCTION' || kind === 'CLASS') {
|
|
240
|
+
const params = node.params;
|
|
241
|
+
if (params && params.length > 0) {
|
|
242
|
+
entry.params = params.map(p => ({ name: p, flow: 'IN' }));
|
|
243
|
+
}
|
|
244
|
+
entry.returns = { flow: 'OUT' };
|
|
245
|
+
}
|
|
246
|
+
exports.push(entry);
|
|
247
|
+
}
|
|
248
|
+
/** Map node type → ExportKind */
|
|
249
|
+
nodeTypeToExportKind(type) {
|
|
250
|
+
switch (type) {
|
|
251
|
+
case 'FUNCTION': return 'FUNCTION';
|
|
252
|
+
case 'CLASS': return 'CLASS';
|
|
253
|
+
case 'CONSTANT': return 'CONSTANT';
|
|
254
|
+
case 'INTERFACE': return 'INTERFACE';
|
|
255
|
+
default: return 'VARIABLE';
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
// ── Effect computation ─────────────────────────────────────
|
|
259
|
+
/** Enrich all exports with computed effects (transitive call graph analysis) */
|
|
260
|
+
async enrichEffects(exports) {
|
|
261
|
+
for (const entry of exports) {
|
|
262
|
+
if (entry.kind !== 'FUNCTION' && entry.kind !== 'CLASS')
|
|
263
|
+
continue;
|
|
264
|
+
const effects = new Set();
|
|
265
|
+
const visited = new Set();
|
|
266
|
+
await this.collectEffectsTransitively(entry.semanticId, effects, visited);
|
|
267
|
+
const computed = [...effects].filter(e => e !== 'PURE');
|
|
268
|
+
if (computed.length > 0) {
|
|
269
|
+
entry.effects = computed;
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
async collectEffectsTransitively(nodeId, effects, visited, depth = 0) {
|
|
274
|
+
if (visited.has(nodeId) || depth > 20)
|
|
275
|
+
return;
|
|
276
|
+
visited.add(nodeId);
|
|
277
|
+
// Get outgoing CALLS edges
|
|
278
|
+
const callEdges = await this.backend.getOutgoingEdges(nodeId, ['CALLS']);
|
|
279
|
+
for (const edge of callEdges) {
|
|
280
|
+
const targetNode = await this.backend.getNode(edge.dst);
|
|
281
|
+
if (!targetNode)
|
|
282
|
+
continue;
|
|
283
|
+
// Check if target is an external call → look up in effects-db
|
|
284
|
+
if (targetNode.type === 'EXTERNAL_MODULE' || targetNode.type === 'GLOBAL_DEFINITION') {
|
|
285
|
+
const [module, fn] = this.parseCallTarget(targetNode);
|
|
286
|
+
if (module && fn) {
|
|
287
|
+
const knownEffects = this.lookupEffects(module, fn);
|
|
288
|
+
if (knownEffects) {
|
|
289
|
+
for (const e of knownEffects) {
|
|
290
|
+
if (VALID_EFFECTS.has(e) && e !== 'PURE')
|
|
291
|
+
effects.add(e);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
else {
|
|
295
|
+
effects.add('UNKNOWN');
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
continue;
|
|
299
|
+
}
|
|
300
|
+
// Recurse into internal calls
|
|
301
|
+
await this.collectEffectsTransitively(edge.dst, effects, visited, depth + 1);
|
|
302
|
+
}
|
|
303
|
+
// Check node's own properties for async/throw
|
|
304
|
+
const node = await this.backend.getNode(nodeId);
|
|
305
|
+
if (node) {
|
|
306
|
+
const meta = node;
|
|
307
|
+
if (meta.async === true)
|
|
308
|
+
effects.add('ASYNC');
|
|
309
|
+
const cf = meta.controlFlow;
|
|
310
|
+
if (cf?.hasThrow)
|
|
311
|
+
effects.add('THROW');
|
|
312
|
+
if (cf?.canReject)
|
|
313
|
+
effects.add('THROW');
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
parseCallTarget(node) {
|
|
317
|
+
// Parse semantic ID like "EXTERNAL_MODULE:fs" or call name like "fs.readFileSync"
|
|
318
|
+
const name = node.name ?? '';
|
|
319
|
+
if (name.includes('.')) {
|
|
320
|
+
const parts = name.split('.');
|
|
321
|
+
return [parts[0], parts.slice(1).join('.')];
|
|
322
|
+
}
|
|
323
|
+
return [name, null];
|
|
324
|
+
}
|
|
325
|
+
// ── Import collection ──────────────────────────────────────
|
|
326
|
+
async collectImports() {
|
|
327
|
+
const importMap = new Map();
|
|
328
|
+
const prefix = this.options.packagePrefix ?? '';
|
|
329
|
+
for await (const node of this.backend.queryNodes({ type: 'IMPORT' })) {
|
|
330
|
+
if (prefix && !node.file?.startsWith(prefix))
|
|
331
|
+
continue;
|
|
332
|
+
const source = node.source;
|
|
333
|
+
if (!source)
|
|
334
|
+
continue;
|
|
335
|
+
// Skip relative imports (internal modules)
|
|
336
|
+
if (source.startsWith('.') || source.startsWith('/'))
|
|
337
|
+
continue;
|
|
338
|
+
const purl = this.sourceToPurl(source);
|
|
339
|
+
if (!importMap.has(purl)) {
|
|
340
|
+
importMap.set(purl, new Set());
|
|
341
|
+
}
|
|
342
|
+
const importName = node.name ?? '*';
|
|
343
|
+
importMap.get(purl).add(importName);
|
|
344
|
+
}
|
|
345
|
+
return [...importMap.entries()]
|
|
346
|
+
.map(([purl, symbols]) => ({
|
|
347
|
+
purl,
|
|
348
|
+
symbols: [...symbols].sort(),
|
|
349
|
+
}))
|
|
350
|
+
.sort((a, b) => a.purl.localeCompare(b.purl));
|
|
351
|
+
}
|
|
352
|
+
sourceToPurl(source) {
|
|
353
|
+
// Node builtins: node:fs, node:path, etc.
|
|
354
|
+
if (source.startsWith('node:')) {
|
|
355
|
+
const mod = source.replace('node:', '');
|
|
356
|
+
return `pkg:npm/node@*#${mod}`;
|
|
357
|
+
}
|
|
358
|
+
// Scoped packages: @scope/name or @scope/name/path → pkg:npm/@scope/name
|
|
359
|
+
if (source.startsWith('@')) {
|
|
360
|
+
const parts = source.split('/');
|
|
361
|
+
const pkg = `${parts[0]}/${parts[1]}`;
|
|
362
|
+
return `pkg:npm/${pkg}`;
|
|
363
|
+
}
|
|
364
|
+
// Regular packages: name or name/path → pkg:npm/name
|
|
365
|
+
const pkg = source.split('/')[0];
|
|
366
|
+
return `pkg:npm/${pkg}`;
|
|
367
|
+
}
|
|
368
|
+
// ── Helpers ────────────────────────────────────────────────
|
|
369
|
+
async countInternalSymbols() {
|
|
370
|
+
const prefix = this.options.packagePrefix ?? '';
|
|
371
|
+
let count = 0;
|
|
372
|
+
for (const type of ['FUNCTION', 'CLASS', 'VARIABLE', 'CONSTANT', 'INTERFACE']) {
|
|
373
|
+
for await (const node of this.backend.queryNodes({ type: type })) {
|
|
374
|
+
if (prefix && !node.file?.startsWith(prefix))
|
|
375
|
+
continue;
|
|
376
|
+
count++;
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
return count;
|
|
380
|
+
}
|
|
381
|
+
computeConfidence(exports) {
|
|
382
|
+
if (exports.length === 0)
|
|
383
|
+
return 0;
|
|
384
|
+
const unknownCount = exports.filter(e => e.effects.includes('UNKNOWN')).length;
|
|
385
|
+
// confidence = 1.0 - (unknown_ratio * 0.5)
|
|
386
|
+
const unknownRatio = unknownCount / exports.length;
|
|
387
|
+
return Math.round((1.0 - unknownRatio * 0.5) * 100) / 100;
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/manifest/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { ManifestGenerator } from './generator.js';
|
|
2
|
+
export { ManifestResolver } from './resolver.js';
|
|
3
|
+
export type { ResolveResult, ManifestSummary } from './resolver.js';
|
|
4
|
+
export type { Manifest, ManifestExport, ManifestImport, ManifestParam, ManifestCapabilities, ManifestPackage, ManifestAccess, ManifestLanguageSpecific, EffectType, FlowType, ExportKind, } from './types.js';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/manifest/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACpE,YAAY,EACV,QAAQ,EACR,cAAc,EACd,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,UAAU,EACV,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/manifest/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
|