@roarpeng/graphflow 0.6.15 → 1.0.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/AGENTS.md +1 -1
- package/CHANGELOG.md +54 -1
- package/README.md +149 -44
- package/dist/agents/insight.d.ts +83 -0
- package/dist/agents/insight.d.ts.map +1 -0
- package/dist/agents/insight.js +381 -0
- package/dist/agents/insight.js.map +1 -0
- package/dist/agents/validator.d.ts.map +1 -1
- package/dist/agents/validator.js +19 -8
- package/dist/agents/validator.js.map +1 -1
- package/dist/agents/worker.d.ts.map +1 -1
- package/dist/agents/worker.js +3 -2
- package/dist/agents/worker.js.map +1 -1
- package/dist/config/defaults.js +1 -1
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/discover-workspace.d.ts +16 -0
- package/dist/config/discover-workspace.d.ts.map +1 -0
- package/dist/config/discover-workspace.js +112 -0
- package/dist/config/discover-workspace.js.map +1 -0
- package/dist/config/resolve.d.ts.map +1 -1
- package/dist/config/resolve.js +22 -8
- package/dist/config/resolve.js.map +1 -1
- package/dist/config/scaffold.d.ts.map +1 -1
- package/dist/config/scaffold.js +2 -1
- package/dist/config/scaffold.js.map +1 -1
- package/dist/config/schema.d.ts +31 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/workspace-root.d.ts +24 -0
- package/dist/config/workspace-root.d.ts.map +1 -0
- package/dist/config/workspace-root.js +59 -0
- package/dist/config/workspace-root.js.map +1 -0
- package/dist/core/orchestrator.d.ts +7 -0
- package/dist/core/orchestrator.d.ts.map +1 -1
- package/dist/core/orchestrator.js +54 -3
- package/dist/core/orchestrator.js.map +1 -1
- package/dist/core/state-machine.d.ts +1 -0
- package/dist/core/state-machine.d.ts.map +1 -1
- package/dist/core/state-machine.js +20 -0
- package/dist/core/state-machine.js.map +1 -1
- package/dist/core/types.d.ts +9 -3
- package/dist/core/types.d.ts.map +1 -1
- package/dist/graph/adaptive-budget.d.ts +18 -0
- package/dist/graph/adaptive-budget.d.ts.map +1 -0
- package/dist/graph/adaptive-budget.js +50 -0
- package/dist/graph/adaptive-budget.js.map +1 -0
- package/dist/graph/artifact-manager.d.ts +72 -0
- package/dist/graph/artifact-manager.d.ts.map +1 -0
- package/dist/graph/artifact-manager.js +215 -0
- package/dist/graph/artifact-manager.js.map +1 -0
- package/dist/graph/compression-model.d.ts +52 -0
- package/dist/graph/compression-model.d.ts.map +1 -0
- package/dist/graph/compression-model.js +125 -0
- package/dist/graph/compression-model.js.map +1 -0
- package/dist/graph/context-slicer.d.ts +32 -0
- package/dist/graph/context-slicer.d.ts.map +1 -1
- package/dist/graph/context-slicer.js +159 -1
- package/dist/graph/context-slicer.js.map +1 -1
- package/dist/graph/file-indexer.d.ts +31 -0
- package/dist/graph/file-indexer.d.ts.map +1 -1
- package/dist/graph/file-indexer.js +332 -3
- package/dist/graph/file-indexer.js.map +1 -1
- package/dist/graph/graph-compression.d.ts +44 -0
- package/dist/graph/graph-compression.d.ts.map +1 -0
- package/dist/graph/graph-compression.js +155 -0
- package/dist/graph/graph-compression.js.map +1 -0
- package/dist/graph/graph-utils.d.ts +4 -1
- package/dist/graph/graph-utils.d.ts.map +1 -1
- package/dist/graph/graph-utils.js +62 -0
- package/dist/graph/graph-utils.js.map +1 -1
- package/dist/graph/graphify-file-client.d.ts.map +1 -1
- package/dist/graph/graphify-file-client.js +30 -8
- package/dist/graph/graphify-file-client.js.map +1 -1
- package/dist/graph/language-indexers/c-cpp.d.ts +9 -1
- package/dist/graph/language-indexers/c-cpp.d.ts.map +1 -1
- package/dist/graph/language-indexers/c-cpp.js +328 -103
- package/dist/graph/language-indexers/c-cpp.js.map +1 -1
- package/dist/graph/language-indexers/index.d.ts +20 -0
- package/dist/graph/language-indexers/index.d.ts.map +1 -1
- package/dist/graph/language-indexers/index.js +4 -0
- package/dist/graph/language-indexers/index.js.map +1 -1
- package/dist/graph/language-indexers/java.d.ts +12 -0
- package/dist/graph/language-indexers/java.d.ts.map +1 -0
- package/dist/graph/language-indexers/java.js +273 -0
- package/dist/graph/language-indexers/java.js.map +1 -0
- package/dist/graph/language-indexers/python.d.ts.map +1 -1
- package/dist/graph/language-indexers/python.js +47 -4
- package/dist/graph/language-indexers/python.js.map +1 -1
- package/dist/graph/language-indexers/ruby.d.ts +14 -0
- package/dist/graph/language-indexers/ruby.d.ts.map +1 -0
- package/dist/graph/language-indexers/ruby.js +245 -0
- package/dist/graph/language-indexers/ruby.js.map +1 -0
- package/dist/graph/language-indexers/rust.d.ts +10 -1
- package/dist/graph/language-indexers/rust.d.ts.map +1 -1
- package/dist/graph/language-indexers/rust.js +254 -80
- package/dist/graph/language-indexers/rust.js.map +1 -1
- package/dist/graph/language-indexers/tree-sitter-loader.d.ts +8 -1
- package/dist/graph/language-indexers/tree-sitter-loader.d.ts.map +1 -1
- package/dist/graph/language-indexers/tree-sitter-loader.js +64 -13
- package/dist/graph/language-indexers/tree-sitter-loader.js.map +1 -1
- package/dist/graph/language-indexers/typescript.d.ts.map +1 -1
- package/dist/graph/language-indexers/typescript.js +72 -8
- package/dist/graph/language-indexers/typescript.js.map +1 -1
- package/dist/graph/metrics.d.ts +33 -0
- package/dist/graph/metrics.d.ts.map +1 -0
- package/dist/graph/metrics.js +117 -0
- package/dist/graph/metrics.js.map +1 -0
- package/dist/graph/repo-map.d.ts +25 -0
- package/dist/graph/repo-map.d.ts.map +1 -0
- package/dist/graph/repo-map.js +80 -0
- package/dist/graph/repo-map.js.map +1 -0
- package/dist/graph/semantic-compression.d.ts +65 -0
- package/dist/graph/semantic-compression.d.ts.map +1 -0
- package/dist/graph/semantic-compression.js +173 -0
- package/dist/graph/semantic-compression.js.map +1 -0
- package/dist/graph/token-savings.d.ts +52 -0
- package/dist/graph/token-savings.d.ts.map +1 -0
- package/dist/graph/token-savings.js +113 -0
- package/dist/graph/token-savings.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/dist/integrations/agent-mcp-installer.d.ts +13 -0
- package/dist/integrations/agent-mcp-installer.d.ts.map +1 -1
- package/dist/integrations/agent-mcp-installer.js +287 -29
- package/dist/integrations/agent-mcp-installer.js.map +1 -1
- package/dist/learning/episodic-memory.d.ts +8 -1
- package/dist/learning/episodic-memory.d.ts.map +1 -1
- package/dist/learning/episodic-memory.js +33 -0
- package/dist/learning/episodic-memory.js.map +1 -1
- package/dist/learning/hnsw-index.d.ts +46 -0
- package/dist/learning/hnsw-index.d.ts.map +1 -0
- package/dist/learning/hnsw-index.js +138 -0
- package/dist/learning/hnsw-index.js.map +1 -0
- package/dist/routing/model-router.d.ts +7 -0
- package/dist/routing/model-router.d.ts.map +1 -1
- package/dist/routing/model-router.js +36 -0
- package/dist/routing/model-router.js.map +1 -1
- package/dist/skills/index.d.ts +157 -0
- package/dist/skills/index.d.ts.map +1 -0
- package/dist/skills/index.js +157 -0
- package/dist/skills/index.js.map +1 -0
- package/dist/surfaces/cli/index.js +119 -0
- package/dist/surfaces/cli/index.js.map +1 -1
- package/dist/surfaces/cli/output.d.ts.map +1 -1
- package/dist/surfaces/cli/output.js +7 -0
- package/dist/surfaces/cli/output.js.map +1 -1
- package/dist/surfaces/cli/runtime/graph.d.ts +77 -3
- package/dist/surfaces/cli/runtime/graph.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/graph.js +170 -10
- package/dist/surfaces/cli/runtime/graph.js.map +1 -1
- package/dist/surfaces/cli/runtime/panel.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/panel.js +2 -0
- package/dist/surfaces/cli/runtime/panel.js.map +1 -1
- package/dist/surfaces/cli/runtime/routing.d.ts +24 -1
- package/dist/surfaces/cli/runtime/routing.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/routing.js +72 -0
- package/dist/surfaces/cli/runtime/routing.js.map +1 -1
- package/dist/surfaces/cli/runtime/settings.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime/settings.js +4 -1
- package/dist/surfaces/cli/runtime/settings.js.map +1 -1
- package/dist/surfaces/cli/runtime/types.d.ts +36 -0
- package/dist/surfaces/cli/runtime/types.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime.d.ts +2 -2
- package/dist/surfaces/cli/runtime.d.ts.map +1 -1
- package/dist/surfaces/cli/runtime.js +11 -1
- package/dist/surfaces/cli/runtime.js.map +1 -1
- package/dist/surfaces/mcp/server.d.ts.map +1 -1
- package/dist/surfaces/mcp/server.js +145 -4
- package/dist/surfaces/mcp/server.js.map +1 -1
- package/dist/utils/logger.js +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/package.json +6 -2
- package/scripts/safe-postinstall.cjs +167 -12
- package/src/surfaces/trae-skill/graphflow/SKILL.md +535 -0
- package/wasm/tree-sitter-c.wasm +0 -0
- package/wasm/tree-sitter-go.wasm +0 -0
- package/wasm/tree-sitter-java.wasm +0 -0
- package/wasm/tree-sitter-python.wasm +0 -0
- package/wasm/tree-sitter-ruby.wasm +0 -0
- package/wasm/tree-sitter-rust.wasm +0 -0
|
@@ -31,6 +31,8 @@ function extractFromAst(relPath, content, ts) {
|
|
|
31
31
|
const sourceFile = ts.createSourceFile(relPath, content, ts.ScriptTarget.Latest, true, scriptKind);
|
|
32
32
|
const symbols = [];
|
|
33
33
|
const imports = [];
|
|
34
|
+
const calls = [];
|
|
35
|
+
const inherits = [];
|
|
34
36
|
const estimateComplexity = (text) => {
|
|
35
37
|
const hits = text.match(/\b(if|else if|for|while|case|catch|\&\&|\|\|)\b/g);
|
|
36
38
|
return 1 + (hits?.length ?? 0);
|
|
@@ -94,12 +96,38 @@ function extractFromAst(relPath, content, ts) {
|
|
|
94
96
|
const flags = ts.getCombinedModifierFlags(node);
|
|
95
97
|
return (flags & ts.ModifierFlags.Export) !== 0;
|
|
96
98
|
};
|
|
99
|
+
const extractHeritage = (node, childName, childLine) => {
|
|
100
|
+
if (!node.heritageClauses)
|
|
101
|
+
return;
|
|
102
|
+
for (const clause of node.heritageClauses) {
|
|
103
|
+
const isImplements = clause.token === ts.SyntaxKind.ImplementsKeyword;
|
|
104
|
+
const isExtends = clause.token === ts.SyntaxKind.ExtendsKeyword;
|
|
105
|
+
if (!isImplements && !isExtends)
|
|
106
|
+
continue;
|
|
107
|
+
for (const type of clause.types) {
|
|
108
|
+
const parentText = type.expression.getText(sourceFile);
|
|
109
|
+
if (parentText) {
|
|
110
|
+
inherits.push({
|
|
111
|
+
child: childName,
|
|
112
|
+
parent: parentText,
|
|
113
|
+
kind: isImplements ? "implements" : "extends",
|
|
114
|
+
line: childLine,
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
};
|
|
97
120
|
for (const stmt of sourceFile.statements) {
|
|
98
121
|
if (ts.isFunctionDeclaration(stmt)) {
|
|
99
122
|
addDecl(stmt.name, "function", hasExport(stmt), stmt, declarationType(stmt));
|
|
100
123
|
}
|
|
101
124
|
else if (ts.isClassDeclaration(stmt)) {
|
|
102
125
|
addDecl(stmt.name, "class", hasExport(stmt), stmt);
|
|
126
|
+
if (stmt.name && ts.isIdentifier(stmt.name)) {
|
|
127
|
+
const start = stmt.name.getStart(sourceFile);
|
|
128
|
+
const { line } = sourceFile.getLineAndCharacterOfPosition(start);
|
|
129
|
+
extractHeritage(stmt, stmt.name.text, line + 1);
|
|
130
|
+
}
|
|
103
131
|
for (const member of stmt.members) {
|
|
104
132
|
if (ts.isMethodDeclaration(member) && member.name && ts.isIdentifier(member.name)) {
|
|
105
133
|
addDecl(member.name, "method", false, member, declarationType(member));
|
|
@@ -108,6 +136,11 @@ function extractFromAst(relPath, content, ts) {
|
|
|
108
136
|
}
|
|
109
137
|
else if (ts.isInterfaceDeclaration(stmt)) {
|
|
110
138
|
addDecl(stmt.name, "interface", hasExport(stmt), stmt);
|
|
139
|
+
if (stmt.name && ts.isIdentifier(stmt.name)) {
|
|
140
|
+
const start = stmt.name.getStart(sourceFile);
|
|
141
|
+
const { line } = sourceFile.getLineAndCharacterOfPosition(start);
|
|
142
|
+
extractHeritage(stmt, stmt.name.text, line + 1);
|
|
143
|
+
}
|
|
111
144
|
}
|
|
112
145
|
else if (ts.isTypeAliasDeclaration(stmt)) {
|
|
113
146
|
addDecl(stmt.name, "type", hasExport(stmt), stmt);
|
|
@@ -134,19 +167,50 @@ function extractFromAst(relPath, content, ts) {
|
|
|
134
167
|
imports.push({ module: spec.text, raw: spec.text });
|
|
135
168
|
}
|
|
136
169
|
}
|
|
137
|
-
const
|
|
170
|
+
const extractCalleeName = (expr) => {
|
|
171
|
+
if (ts.isIdentifier(expr))
|
|
172
|
+
return expr.text;
|
|
173
|
+
if (ts.isPropertyAccessExpression(expr)) {
|
|
174
|
+
// e.g. obj.method() → "method"
|
|
175
|
+
return expr.name.text;
|
|
176
|
+
}
|
|
177
|
+
if (ts.isElementAccessExpression(expr)) {
|
|
178
|
+
return undefined;
|
|
179
|
+
}
|
|
180
|
+
return undefined;
|
|
181
|
+
};
|
|
182
|
+
const visit = (node, caller) => {
|
|
138
183
|
if (ts.isCallExpression(node)) {
|
|
139
184
|
const callee = node.expression;
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
185
|
+
// require() calls are already captured as imports
|
|
186
|
+
if (!(ts.isIdentifier(callee) && callee.text === "require")) {
|
|
187
|
+
const calleeName = extractCalleeName(callee);
|
|
188
|
+
if (calleeName) {
|
|
189
|
+
const start = callee.getStart(sourceFile);
|
|
190
|
+
const { line } = sourceFile.getLineAndCharacterOfPosition(start);
|
|
191
|
+
calls.push({
|
|
192
|
+
callee: calleeName,
|
|
193
|
+
...(caller ? { caller } : {}),
|
|
194
|
+
line: line + 1,
|
|
195
|
+
});
|
|
196
|
+
}
|
|
144
197
|
}
|
|
145
198
|
}
|
|
146
|
-
|
|
199
|
+
// Track enclosing function/method for call attribution
|
|
200
|
+
let nextCaller = caller;
|
|
201
|
+
if (ts.isFunctionDeclaration(node) && node.name && ts.isIdentifier(node.name)) {
|
|
202
|
+
nextCaller = node.name.text;
|
|
203
|
+
}
|
|
204
|
+
else if (ts.isMethodDeclaration(node) && node.name && ts.isIdentifier(node.name)) {
|
|
205
|
+
nextCaller = node.name.text;
|
|
206
|
+
}
|
|
207
|
+
else if (ts.isArrowFunction(node) || ts.isFunctionExpression(node)) {
|
|
208
|
+
// Anonymous — keep parent caller context
|
|
209
|
+
}
|
|
210
|
+
ts.forEachChild(node, (child) => visit(child, nextCaller));
|
|
147
211
|
};
|
|
148
|
-
ts.forEachChild(sourceFile, visit);
|
|
149
|
-
return { symbols, imports };
|
|
212
|
+
ts.forEachChild(sourceFile, (child) => visit(child));
|
|
213
|
+
return { symbols, imports, calls, inherits };
|
|
150
214
|
}
|
|
151
215
|
function fallbackExtract(relPath, content) {
|
|
152
216
|
const lines = content.split(/\r?\n/);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/graph/language-indexers/typescript.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/graph/language-indexers/typescript.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { GraphFlowConfig } from "../config/schema";
|
|
2
|
+
/**
|
|
3
|
+
* Prometheus-compatible metrics exporter.
|
|
4
|
+
*
|
|
5
|
+
* Exposes cumulative GraphFlow observability metrics in Prometheus text format.
|
|
6
|
+
* Borrowed from codebase-memory-mcp's observability pattern — enables teams to
|
|
7
|
+
* scrape GraphFlow ROI (token savings, graph size, compression ratio) from a
|
|
8
|
+
* standard /metrics endpoint or CLI dump.
|
|
9
|
+
*
|
|
10
|
+
* Metrics exposed:
|
|
11
|
+
* - graphflow_token_savings_total (counter) cumulative tokens saved
|
|
12
|
+
* - graphflow_token_raw_total (counter) cumulative raw tokens
|
|
13
|
+
* - graphflow_token_compressed_total (counter) cumulative compressed tokens
|
|
14
|
+
* - graphflow_token_savings_percent (gauge) average savings ratio
|
|
15
|
+
* - graphflow_runs_total (counter) cumulative preview/run count
|
|
16
|
+
* - graphflow_graph_nodes (gauge) current graph node count
|
|
17
|
+
* - graphflow_graph_edges (gauge) current graph edge count
|
|
18
|
+
* - graphflow_compression_ratio (gauge) compressed/raw ratio
|
|
19
|
+
* - graphflow_index_store_bytes (gauge) graph store file size in bytes
|
|
20
|
+
* - graphflow_index_cache_entries (gauge) index cache file count
|
|
21
|
+
*/
|
|
22
|
+
export interface MetricsSnapshot {
|
|
23
|
+
metrics: Record<string, number>;
|
|
24
|
+
labels: Record<string, string>;
|
|
25
|
+
text: string;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Collect current metrics snapshot.
|
|
29
|
+
*
|
|
30
|
+
* @param config GraphFlow config
|
|
31
|
+
*/
|
|
32
|
+
export declare function collectMetrics(config: GraphFlowConfig): MetricsSnapshot;
|
|
33
|
+
//# sourceMappingURL=metrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/graph/metrics.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAKxD;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAqBD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,CAgEvE"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.collectMetrics = collectMetrics;
|
|
4
|
+
const node_fs_1 = require("node:fs");
|
|
5
|
+
const node_path_1 = require("node:path");
|
|
6
|
+
const paths_1 = require("../config/paths");
|
|
7
|
+
const token_savings_1 = require("./token-savings");
|
|
8
|
+
const helpers_1 = require("../surfaces/cli/runtime/helpers");
|
|
9
|
+
const METRIC_DEFS = [
|
|
10
|
+
{ name: "graphflow_token_savings_total", type: "counter", help: "Cumulative tokens saved by context compression" },
|
|
11
|
+
{ name: "graphflow_token_raw_total", type: "counter", help: "Cumulative raw (uncompressed) tokens" },
|
|
12
|
+
{ name: "graphflow_token_compressed_total", type: "counter", help: "Cumulative compressed tokens" },
|
|
13
|
+
{ name: "graphflow_token_savings_percent", type: "gauge", help: "Average token savings percentage" },
|
|
14
|
+
{ name: "graphflow_runs_total", type: "counter", help: "Cumulative preview/run invocations" },
|
|
15
|
+
{ name: "graphflow_graph_nodes", type: "gauge", help: "Current graph node count" },
|
|
16
|
+
{ name: "graphflow_graph_edges", type: "gauge", help: "Current graph edge count" },
|
|
17
|
+
{ name: "graphflow_compression_ratio", type: "gauge", help: "Compressed/raw token ratio (0-1)" },
|
|
18
|
+
{ name: "graphflow_index_store_bytes", type: "gauge", help: "Graph store file size in bytes" },
|
|
19
|
+
{ name: "graphflow_index_cache_entries", type: "gauge", help: "Index cache entry count" },
|
|
20
|
+
];
|
|
21
|
+
/**
|
|
22
|
+
* Collect current metrics snapshot.
|
|
23
|
+
*
|
|
24
|
+
* @param config GraphFlow config
|
|
25
|
+
*/
|
|
26
|
+
function collectMetrics(config) {
|
|
27
|
+
const root = config.graphPolicy.workspaceRoot ?? process.cwd();
|
|
28
|
+
const stats = (0, token_savings_1.getSavingsStats)(config);
|
|
29
|
+
// Graph size from store
|
|
30
|
+
let nodeCount = 0;
|
|
31
|
+
let edgeCount = 0;
|
|
32
|
+
let storeBytes = 0;
|
|
33
|
+
try {
|
|
34
|
+
const store = (0, helpers_1.loadGraphStore)(config);
|
|
35
|
+
nodeCount = store.nodes.length;
|
|
36
|
+
edgeCount = store.edges.length;
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
// store may not exist yet
|
|
40
|
+
}
|
|
41
|
+
try {
|
|
42
|
+
const storePath = (0, paths_1.resolveGraphStorePath)(config);
|
|
43
|
+
if ((0, node_fs_1.existsSync)(storePath)) {
|
|
44
|
+
storeBytes = (0, node_fs_1.statSync)(storePath).size;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
// ignore
|
|
49
|
+
}
|
|
50
|
+
// Index cache entries
|
|
51
|
+
let cacheEntries = 0;
|
|
52
|
+
try {
|
|
53
|
+
const cachePath = (0, node_path_1.join)(root, ".graphflow-cache", "index-state.json");
|
|
54
|
+
if ((0, node_fs_1.existsSync)(cachePath)) {
|
|
55
|
+
const raw = (0, node_fs_1.readFileSync)(cachePath, "utf8");
|
|
56
|
+
const parsed = JSON.parse(raw);
|
|
57
|
+
if (parsed.state && typeof parsed.state === "object") {
|
|
58
|
+
cacheEntries = Object.keys(parsed.state).length;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
// ignore
|
|
64
|
+
}
|
|
65
|
+
const compressionRatio = stats.totalRawTokens > 0
|
|
66
|
+
? stats.totalCompressedTokens / stats.totalRawTokens
|
|
67
|
+
: 0;
|
|
68
|
+
const metrics = {
|
|
69
|
+
graphflow_token_savings_total: stats.totalSavedTokens,
|
|
70
|
+
graphflow_token_raw_total: stats.totalRawTokens,
|
|
71
|
+
graphflow_token_compressed_total: stats.totalCompressedTokens,
|
|
72
|
+
graphflow_token_savings_percent: stats.averageSavingsPercent,
|
|
73
|
+
graphflow_runs_total: stats.totalRuns,
|
|
74
|
+
graphflow_graph_nodes: nodeCount,
|
|
75
|
+
graphflow_graph_edges: edgeCount,
|
|
76
|
+
graphflow_compression_ratio: compressionRatio,
|
|
77
|
+
graphflow_index_store_bytes: storeBytes,
|
|
78
|
+
graphflow_index_cache_entries: cacheEntries,
|
|
79
|
+
};
|
|
80
|
+
const labels = {
|
|
81
|
+
workspace: root.replace(/\\/g, "/"),
|
|
82
|
+
};
|
|
83
|
+
const text = renderPrometheusText(metrics, labels);
|
|
84
|
+
return { metrics, labels, text };
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Render metrics in Prometheus text exposition format.
|
|
88
|
+
*
|
|
89
|
+
* Example output:
|
|
90
|
+
* # HELP graphflow_token_savings_total Cumulative tokens saved by context compression
|
|
91
|
+
* # TYPE graphflow_token_savings_total counter
|
|
92
|
+
* graphflow_token_savings_total{workspace="/repo"} 12345
|
|
93
|
+
*/
|
|
94
|
+
function renderPrometheusText(metrics, labels) {
|
|
95
|
+
const labelStr = Object.entries(labels)
|
|
96
|
+
.map(([k, v]) => `${k}="${escapeLabelValue(v)}"`)
|
|
97
|
+
.join(",");
|
|
98
|
+
const lines = [];
|
|
99
|
+
for (const def of METRIC_DEFS) {
|
|
100
|
+
const value = metrics[def.name] ?? 0;
|
|
101
|
+
lines.push(`# HELP ${def.name} ${def.help}`);
|
|
102
|
+
lines.push(`# TYPE ${def.name} ${def.type}`);
|
|
103
|
+
lines.push(`${def.name}{${labelStr}} ${formatNumber(value)}`);
|
|
104
|
+
}
|
|
105
|
+
return lines.join("\n") + "\n";
|
|
106
|
+
}
|
|
107
|
+
function escapeLabelValue(value) {
|
|
108
|
+
return value.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\n/g, "\\n");
|
|
109
|
+
}
|
|
110
|
+
function formatNumber(value) {
|
|
111
|
+
if (Number.isInteger(value)) {
|
|
112
|
+
return value.toString();
|
|
113
|
+
}
|
|
114
|
+
// Prometheus accepts floating point; trim trailing zeros for readability
|
|
115
|
+
return parseFloat(value.toFixed(4)).toString();
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/graph/metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { GraphClient } from "./client-factory";
|
|
2
|
+
/**
|
|
3
|
+
* Repo-Map: module-level overview compression inspired by Aider's repo-map.
|
|
4
|
+
*
|
|
5
|
+
* Instead of sending full symbol definitions, we generate a high-level "map"
|
|
6
|
+
* where each module gets one line: `path/to/module: exports symbol1, symbol2, ...`
|
|
7
|
+
*
|
|
8
|
+
* This is extremely token-efficient (~100-300 tokens for entire repos) and
|
|
9
|
+
* lets LLMs understand the project structure before diving into specific code.
|
|
10
|
+
*/
|
|
11
|
+
export interface RepoMapEntry {
|
|
12
|
+
moduleId: string;
|
|
13
|
+
path: string;
|
|
14
|
+
exports: string[];
|
|
15
|
+
tokenEstimate: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Builds a repo map from Module nodes. Each entry summarizes one module's exports.
|
|
19
|
+
*/
|
|
20
|
+
export declare function buildRepoMap(client: GraphClient): Promise<RepoMapEntry[]>;
|
|
21
|
+
/**
|
|
22
|
+
* Formats the repo map into a single string for injection into LLM context.
|
|
23
|
+
*/
|
|
24
|
+
export declare function formatRepoMapString(entries: RepoMapEntry[]): string;
|
|
25
|
+
//# sourceMappingURL=repo-map.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo-map.d.ts","sourceRoot":"","sources":["../../src/graph/repo-map.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;;;;;;GAQG;AAEH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAwB/E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,CAUnE"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildRepoMap = buildRepoMap;
|
|
4
|
+
exports.formatRepoMapString = formatRepoMapString;
|
|
5
|
+
/**
|
|
6
|
+
* Builds a repo map from Module nodes. Each entry summarizes one module's exports.
|
|
7
|
+
*/
|
|
8
|
+
async function buildRepoMap(client) {
|
|
9
|
+
if (typeof client.readSnapshot !== "function") {
|
|
10
|
+
return [];
|
|
11
|
+
}
|
|
12
|
+
const snapshot = client.readSnapshot();
|
|
13
|
+
const modules = snapshot.nodes.filter((n) => n.type === "Module");
|
|
14
|
+
const entries = [];
|
|
15
|
+
for (const mod of modules) {
|
|
16
|
+
const path = extractModulePath(mod);
|
|
17
|
+
const exports = extractExportedSymbols(mod, snapshot.nodes);
|
|
18
|
+
const line = formatRepoMapLine(path, exports);
|
|
19
|
+
entries.push({
|
|
20
|
+
moduleId: mod.id,
|
|
21
|
+
path,
|
|
22
|
+
exports,
|
|
23
|
+
tokenEstimate: Math.ceil(line.length / 4),
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
// Sort by path for readability.
|
|
27
|
+
entries.sort((a, b) => a.path.localeCompare(b.path));
|
|
28
|
+
return entries;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Formats the repo map into a single string for injection into LLM context.
|
|
32
|
+
*/
|
|
33
|
+
function formatRepoMapString(entries) {
|
|
34
|
+
if (entries.length === 0) {
|
|
35
|
+
return "# Repository Map\n(No modules indexed)\n";
|
|
36
|
+
}
|
|
37
|
+
const lines = ["# Repository Map", ""];
|
|
38
|
+
for (const entry of entries) {
|
|
39
|
+
lines.push(formatRepoMapLine(entry.path, entry.exports));
|
|
40
|
+
}
|
|
41
|
+
return lines.join("\n");
|
|
42
|
+
}
|
|
43
|
+
function formatRepoMapLine(path, exports) {
|
|
44
|
+
if (exports.length === 0) {
|
|
45
|
+
return `${path}`;
|
|
46
|
+
}
|
|
47
|
+
return `${path}: exports ${exports.slice(0, 10).join(", ")}${exports.length > 10 ? ", ..." : ""}`;
|
|
48
|
+
}
|
|
49
|
+
function extractModulePath(moduleNode) {
|
|
50
|
+
// Module node content often contains the file path or module name.
|
|
51
|
+
const content = moduleNode.content.trim();
|
|
52
|
+
const pathMatch = content.match(/^(?:module|file):\s*(.+)$/i);
|
|
53
|
+
if (pathMatch && pathMatch[1]) {
|
|
54
|
+
return pathMatch[1].trim();
|
|
55
|
+
}
|
|
56
|
+
// Fallback: use id if it looks like a path.
|
|
57
|
+
if (moduleNode.id.includes("/") || moduleNode.id.includes("\\")) {
|
|
58
|
+
return moduleNode.id;
|
|
59
|
+
}
|
|
60
|
+
return content || moduleNode.id;
|
|
61
|
+
}
|
|
62
|
+
function extractExportedSymbols(moduleNode, _allNodes) {
|
|
63
|
+
// Heuristic: look for Symbol nodes that reference this module via "defines" edges.
|
|
64
|
+
// In practice, you'd traverse edges from the module to its defined symbols.
|
|
65
|
+
// For now, we do a simple name-based heuristic from the module's metadata.
|
|
66
|
+
const meta = moduleNode.metadata;
|
|
67
|
+
if (meta && Array.isArray(meta.exports)) {
|
|
68
|
+
return meta.exports.slice(0, 20).map(String);
|
|
69
|
+
}
|
|
70
|
+
// Fallback: scan content for "exports" keyword.
|
|
71
|
+
const content = moduleNode.content;
|
|
72
|
+
const exportMatches = content.match(/exports?[:\s]+([^\n]+)/gi);
|
|
73
|
+
if (exportMatches) {
|
|
74
|
+
return exportMatches
|
|
75
|
+
.map((m) => m.replace(/^exports?[:\s]+/i, "").trim())
|
|
76
|
+
.slice(0, 10);
|
|
77
|
+
}
|
|
78
|
+
return [];
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=repo-map.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo-map.js","sourceRoot":"","sources":["../../src/graph/repo-map.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import type { GraphNode } from "../core/types";
|
|
2
|
+
import { type EmbeddingProvider } from "../learning/embeddings";
|
|
3
|
+
import { type OpenBmbRuntimeOptions } from "../routing/provider-adapters/openbmb";
|
|
4
|
+
import type { CompressionModelHandle } from "./compression-model";
|
|
5
|
+
/**
|
|
6
|
+
* Semantic compression via minicpm-1b: cluster similar nodes and generate
|
|
7
|
+
* unified summaries, or condense verbose content into dense descriptions.
|
|
8
|
+
*
|
|
9
|
+
* This is the "Layer 1" compression that leverages the local LLM after graph-
|
|
10
|
+
* structure pruning has already reduced the candidate set.
|
|
11
|
+
*/
|
|
12
|
+
export interface ClusteringOptions {
|
|
13
|
+
embeddingProvider?: EmbeddingProvider;
|
|
14
|
+
similarityThreshold?: number;
|
|
15
|
+
maxClusterSize?: number;
|
|
16
|
+
}
|
|
17
|
+
export interface NodeCluster {
|
|
18
|
+
representative: GraphNode;
|
|
19
|
+
members: GraphNode[];
|
|
20
|
+
avgSimilarity: number;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Clusters nodes by embedding similarity. Nodes within a cluster can be
|
|
24
|
+
* merged into a single summary line to save tokens.
|
|
25
|
+
*/
|
|
26
|
+
export declare function clusterSimilarNodes(nodes: GraphNode[], options?: ClusteringOptions): Promise<NodeCluster[]>;
|
|
27
|
+
export interface SummarizerOptions extends OpenBmbRuntimeOptions {
|
|
28
|
+
maxSummaryTokens?: number;
|
|
29
|
+
/** Preferred: unified compression model handle (auto-selects external/embedded). */
|
|
30
|
+
modelHandle?: CompressionModelHandle;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Generates a unified summary for a cluster of similar nodes.
|
|
34
|
+
* Uses the provided compression model handle (external or embedded) if given,
|
|
35
|
+
* otherwise falls back to direct embedded openbmb invocation.
|
|
36
|
+
* Example: 3 overloaded `login()` variants → "login function with 3 signatures".
|
|
37
|
+
*/
|
|
38
|
+
export declare function summarizeCluster(cluster: NodeCluster, options?: SummarizerOptions): Promise<string>;
|
|
39
|
+
export interface DensifierOptions extends OpenBmbRuntimeOptions {
|
|
40
|
+
maxOutputTokens?: number;
|
|
41
|
+
minInputTokens?: number;
|
|
42
|
+
/** Preferred: unified compression model handle (auto-selects external/embedded). */
|
|
43
|
+
modelHandle?: CompressionModelHandle;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Rewrites verbose node content into dense summaries.
|
|
47
|
+
* Uses the provided compression model handle if given, otherwise falls back to
|
|
48
|
+
* direct embedded openbmb invocation. Only applies to nodes exceeding minInputTokens.
|
|
49
|
+
*/
|
|
50
|
+
export declare function densifyNodeContent(node: GraphNode, options?: DensifierOptions): Promise<string>;
|
|
51
|
+
/**
|
|
52
|
+
* High-level pipeline: cluster similar nodes, summarize each cluster, and
|
|
53
|
+
* densify remaining verbose nodes. Returns compressed node set.
|
|
54
|
+
*
|
|
55
|
+
* When a compression model handle is provided, summarization/densification
|
|
56
|
+
* route through it (external economy tier or embedded minicpm); otherwise they
|
|
57
|
+
* fall back to direct embedded openbmb invocation.
|
|
58
|
+
*/
|
|
59
|
+
export declare function applySemanticCompression(nodes: GraphNode[], options?: {
|
|
60
|
+
clusteringOptions?: ClusteringOptions;
|
|
61
|
+
summarizerOptions?: SummarizerOptions;
|
|
62
|
+
densifierOptions?: DensifierOptions;
|
|
63
|
+
modelHandle?: CompressionModelHandle;
|
|
64
|
+
}): Promise<GraphNode[]>;
|
|
65
|
+
//# sourceMappingURL=semantic-compression.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semantic-compression.d.ts","sourceRoot":"","sources":["../../src/graph/semantic-compression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAsC,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACpG,OAAO,EAAuB,KAAK,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AACvG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE;;;;;;GAMG;AAEH,MAAM,WAAW,iBAAiB;IAChC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,EAAE,SAAS,CAAC;IAC1B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,SAAS,EAAE,EAClB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,WAAW,EAAE,CAAC,CA6CxB;AAED,MAAM,WAAW,iBAAkB,SAAQ,qBAAqB;IAC9D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oFAAoF;IACpF,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,MAAM,CAAC,CA8BjB;AAED,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oFAAoF;IACpF,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,SAAS,EACf,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,CAAC,CAqCjB;AAED;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,SAAS,EAAE,EAClB,OAAO,CAAC,EAAE;IACR,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC,GACA,OAAO,CAAC,SAAS,EAAE,CAAC,CA6CtB"}
|