@optave/codegraph 2.6.0 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +111 -54
- package/package.json +5 -5
- package/src/ast.js +418 -0
- package/src/batch.js +93 -3
- package/src/builder.js +371 -103
- package/src/cfg.js +1452 -0
- package/src/change-journal.js +130 -0
- package/src/cli.js +415 -139
- package/src/complexity.js +8 -8
- package/src/dataflow.js +1190 -0
- package/src/db.js +96 -0
- package/src/embedder.js +16 -16
- package/src/export.js +305 -0
- package/src/extractors/csharp.js +64 -1
- package/src/extractors/go.js +66 -1
- package/src/extractors/hcl.js +22 -0
- package/src/extractors/java.js +61 -1
- package/src/extractors/javascript.js +193 -0
- package/src/extractors/php.js +79 -0
- package/src/extractors/python.js +134 -0
- package/src/extractors/ruby.js +89 -0
- package/src/extractors/rust.js +71 -1
- package/src/flow.js +5 -2
- package/src/index.js +52 -4
- package/src/mcp.js +403 -222
- package/src/paginate.js +3 -3
- package/src/parser.js +24 -0
- package/src/queries.js +362 -36
- package/src/structure.js +64 -8
- package/src/viewer.js +948 -0
- package/src/watcher.js +36 -1
package/src/index.js
CHANGED
|
@@ -5,16 +5,35 @@
|
|
|
5
5
|
* import { buildGraph, queryNameData, findCycles, exportDOT } from 'codegraph';
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
+
// AST node queries
|
|
9
|
+
export { AST_NODE_KINDS, astQuery, astQueryData } from './ast.js';
|
|
8
10
|
// Audit (composite report)
|
|
9
11
|
export { audit, auditData } from './audit.js';
|
|
10
12
|
// Batch querying
|
|
11
|
-
export {
|
|
13
|
+
export {
|
|
14
|
+
BATCH_COMMANDS,
|
|
15
|
+
batch,
|
|
16
|
+
batchData,
|
|
17
|
+
batchQuery,
|
|
18
|
+
multiBatchData,
|
|
19
|
+
splitTargets,
|
|
20
|
+
} from './batch.js';
|
|
12
21
|
// Architecture boundary rules
|
|
13
22
|
export { evaluateBoundaries, PRESETS, validateBoundaryConfig } from './boundaries.js';
|
|
14
23
|
// Branch comparison
|
|
15
24
|
export { branchCompareData, branchCompareMermaid } from './branch-compare.js';
|
|
16
25
|
// Graph building
|
|
17
26
|
export { buildGraph, collectFiles, loadPathAliases, resolveImportPath } from './builder.js';
|
|
27
|
+
// Control flow graph (intraprocedural)
|
|
28
|
+
export {
|
|
29
|
+
buildCFGData,
|
|
30
|
+
buildFunctionCFG,
|
|
31
|
+
CFG_RULES,
|
|
32
|
+
cfg,
|
|
33
|
+
cfgData,
|
|
34
|
+
cfgToDOT,
|
|
35
|
+
cfgToMermaid,
|
|
36
|
+
} from './cfg.js';
|
|
18
37
|
// Check (CI validation predicates)
|
|
19
38
|
export { check, checkData } from './check.js';
|
|
20
39
|
// Co-change analysis
|
|
@@ -37,6 +56,7 @@ export {
|
|
|
37
56
|
computeHalsteadMetrics,
|
|
38
57
|
computeLOCMetrics,
|
|
39
58
|
computeMaintainabilityIndex,
|
|
59
|
+
findFunctionNode,
|
|
40
60
|
HALSTEAD_RULES,
|
|
41
61
|
iterComplexity,
|
|
42
62
|
} from './complexity.js';
|
|
@@ -46,6 +66,15 @@ export { loadConfig } from './config.js';
|
|
|
46
66
|
export { EXTENSIONS, IGNORE_DIRS, normalizePath } from './constants.js';
|
|
47
67
|
// Circular dependency detection
|
|
48
68
|
export { findCycles, formatCycles } from './cycles.js';
|
|
69
|
+
// Dataflow analysis
|
|
70
|
+
export {
|
|
71
|
+
buildDataflowEdges,
|
|
72
|
+
dataflow,
|
|
73
|
+
dataflowData,
|
|
74
|
+
dataflowImpactData,
|
|
75
|
+
dataflowPathData,
|
|
76
|
+
extractDataflow,
|
|
77
|
+
} from './dataflow.js';
|
|
49
78
|
// Database utilities
|
|
50
79
|
export {
|
|
51
80
|
findDbPath,
|
|
@@ -71,8 +100,15 @@ export {
|
|
|
71
100
|
search,
|
|
72
101
|
searchData,
|
|
73
102
|
} from './embedder.js';
|
|
74
|
-
// Export (DOT/Mermaid/JSON)
|
|
75
|
-
export {
|
|
103
|
+
// Export (DOT/Mermaid/JSON/GraphML/GraphSON/Neo4j CSV)
|
|
104
|
+
export {
|
|
105
|
+
exportDOT,
|
|
106
|
+
exportGraphML,
|
|
107
|
+
exportGraphSON,
|
|
108
|
+
exportJSON,
|
|
109
|
+
exportMermaid,
|
|
110
|
+
exportNeo4jCSV,
|
|
111
|
+
} from './export.js';
|
|
76
112
|
// Execution flow tracing
|
|
77
113
|
export { entryPointType, flowData, listEntryPointsData } from './flow.js';
|
|
78
114
|
// Logger
|
|
@@ -87,17 +123,25 @@ export { matchOwners, owners, ownersData, ownersForFiles, parseCodeowners } from
|
|
|
87
123
|
export { MCP_DEFAULTS, MCP_MAX_LIMIT, paginate, paginateResult, printNdjson } from './paginate.js';
|
|
88
124
|
|
|
89
125
|
// Unified parser API
|
|
90
|
-
export { getActiveEngine, parseFileAuto, parseFilesAuto } from './parser.js';
|
|
126
|
+
export { getActiveEngine, isWasmAvailable, parseFileAuto, parseFilesAuto } from './parser.js';
|
|
91
127
|
// Query functions (data-returning)
|
|
92
128
|
export {
|
|
93
129
|
ALL_SYMBOL_KINDS,
|
|
130
|
+
CORE_EDGE_KINDS,
|
|
131
|
+
CORE_SYMBOL_KINDS,
|
|
132
|
+
childrenData,
|
|
94
133
|
contextData,
|
|
95
134
|
diffImpactData,
|
|
96
135
|
diffImpactMermaid,
|
|
136
|
+
EVERY_EDGE_KIND,
|
|
137
|
+
EVERY_SYMBOL_KIND,
|
|
138
|
+
EXTENDED_SYMBOL_KINDS,
|
|
97
139
|
explainData,
|
|
140
|
+
exportsData,
|
|
98
141
|
FALSE_POSITIVE_CALLER_THRESHOLD,
|
|
99
142
|
FALSE_POSITIVE_NAMES,
|
|
100
143
|
fileDepsData,
|
|
144
|
+
fileExports,
|
|
101
145
|
fnDepsData,
|
|
102
146
|
fnImpactData,
|
|
103
147
|
impactAnalysisData,
|
|
@@ -106,9 +150,11 @@ export {
|
|
|
106
150
|
iterWhere,
|
|
107
151
|
kindIcon,
|
|
108
152
|
moduleMapData,
|
|
153
|
+
normalizeSymbol,
|
|
109
154
|
pathData,
|
|
110
155
|
queryNameData,
|
|
111
156
|
rolesData,
|
|
157
|
+
STRUCTURAL_EDGE_KINDS,
|
|
112
158
|
statsData,
|
|
113
159
|
VALID_ROLES,
|
|
114
160
|
whereData,
|
|
@@ -147,5 +193,7 @@ export {
|
|
|
147
193
|
} from './structure.js';
|
|
148
194
|
// Triage — composite risk audit
|
|
149
195
|
export { triage, triageData } from './triage.js';
|
|
196
|
+
// Interactive HTML viewer
|
|
197
|
+
export { generatePlotHTML, loadPlotConfig } from './viewer.js';
|
|
150
198
|
// Watch mode
|
|
151
199
|
export { watchProject } from './watcher.js';
|