@kage-core/kage-graph-mcp 1.1.33 → 1.1.34
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 +4 -2
- package/package.json +1 -1
- package/viewer/app.js +52 -0
package/README.md
CHANGED
|
@@ -165,8 +165,10 @@ kage viewer --project .
|
|
|
165
165
|
|
|
166
166
|
The local viewer loads graph artifacts plus `.agent_memory/reports/*.json` and
|
|
167
167
|
shows a repo-intelligence cockpit for memory-code links, decision memory, risk,
|
|
168
|
-
contributors, module health, graph insights, workspace coverage,
|
|
169
|
-
benchmark proof.
|
|
168
|
+
contributors, module health, graph insights, workspace coverage, workspace
|
|
169
|
+
link maps, quality, and benchmark proof. Workspace Map rows expose package
|
|
170
|
+
dependencies, route contracts, topic/event links, and cross-repo co-change
|
|
171
|
+
pairs from local workspace reports.
|
|
170
172
|
|
|
171
173
|
Hosted demo:
|
|
172
174
|
|
package/package.json
CHANGED
package/viewer/app.js
CHANGED
|
@@ -2321,6 +2321,7 @@
|
|
|
2321
2321
|
var decisions = reports.decisions;
|
|
2322
2322
|
var health = reports.moduleHealth;
|
|
2323
2323
|
var insights = reports.graphInsights;
|
|
2324
|
+
var workspace = reports.workspace;
|
|
2324
2325
|
|
|
2325
2326
|
if (contributors || risk) {
|
|
2326
2327
|
var profiles = contributors && Array.isArray(contributors.contributors) ? contributors.contributors : [];
|
|
@@ -2449,6 +2450,57 @@
|
|
|
2449
2450
|
});
|
|
2450
2451
|
}
|
|
2451
2452
|
|
|
2453
|
+
if (workspace) {
|
|
2454
|
+
var deps = Array.isArray(workspace.package_dependencies) ? workspace.package_dependencies : [];
|
|
2455
|
+
var routeContracts = Array.isArray(workspace.route_contracts) ? workspace.route_contracts : [];
|
|
2456
|
+
var topicContracts = Array.isArray(workspace.topic_contracts) ? workspace.topic_contracts : [];
|
|
2457
|
+
var coChanges = Array.isArray(workspace.co_changes) ? workspace.co_changes : [];
|
|
2458
|
+
var workspaceRows = deps.slice(0, 6).map(function (dep) {
|
|
2459
|
+
return {
|
|
2460
|
+
label: dep.from + " -> " + dep.to,
|
|
2461
|
+
value: dep.package_name || "package",
|
|
2462
|
+
meta: "workspace package dependency",
|
|
2463
|
+
score: 72,
|
|
2464
|
+
status: "ok",
|
|
2465
|
+
};
|
|
2466
|
+
}).concat(routeContracts.slice(0, 6).map(function (contract) {
|
|
2467
|
+
return {
|
|
2468
|
+
label: contract.provider_repo + " -> " + contract.consumer_repo,
|
|
2469
|
+
value: [contract.method, contract.path].filter(Boolean).join(" "),
|
|
2470
|
+
meta: [contract.provider_file, contract.consumer_file].filter(Boolean).join(" -> "),
|
|
2471
|
+
score: contract.confidence === "high" ? 92 : 76,
|
|
2472
|
+
status: "ok",
|
|
2473
|
+
};
|
|
2474
|
+
})).concat(topicContracts.slice(0, 6).map(function (contract) {
|
|
2475
|
+
return {
|
|
2476
|
+
label: contract.producer_repo + " -> " + contract.consumer_repo,
|
|
2477
|
+
value: contract.topic,
|
|
2478
|
+
meta: [contract.producer_file, contract.consumer_file].filter(Boolean).join(" -> "),
|
|
2479
|
+
score: contract.confidence === "high" ? 88 : 72,
|
|
2480
|
+
status: "ok",
|
|
2481
|
+
};
|
|
2482
|
+
})).concat(coChanges.slice(0, 8).map(function (link) {
|
|
2483
|
+
var score = Math.min(100, Number(link.strength || 0) * 22 + Number(link.frequency || 0) * 12);
|
|
2484
|
+
return {
|
|
2485
|
+
label: link.source_repo + " <-> " + link.target_repo,
|
|
2486
|
+
value: (link.frequency || 0) + "x co-change",
|
|
2487
|
+
meta: [link.source_file, link.target_file].filter(Boolean).join(" <-> "),
|
|
2488
|
+
score: Math.max(20, score),
|
|
2489
|
+
status: "warn",
|
|
2490
|
+
};
|
|
2491
|
+
}));
|
|
2492
|
+
if (workspaceRows.length) {
|
|
2493
|
+
sections.push({
|
|
2494
|
+
title: "Workspace Map",
|
|
2495
|
+
kicker: "deps / contracts / co-changes",
|
|
2496
|
+
stat: workspaceRows.length + " links",
|
|
2497
|
+
summary: "Workspace links show how sibling repos relate through package dependencies, source-evidence contracts, topic/event links, and local git co-change history.",
|
|
2498
|
+
rows: workspaceRows,
|
|
2499
|
+
limit: 14,
|
|
2500
|
+
});
|
|
2501
|
+
}
|
|
2502
|
+
}
|
|
2503
|
+
|
|
2452
2504
|
if (risk) {
|
|
2453
2505
|
var targets = Array.isArray(risk.targets) ? risk.targets : Object.keys(risk.targets || {}).map(function (key) { return risk.targets[key]; });
|
|
2454
2506
|
var hotspots = Array.isArray(risk.global_hotspots) ? risk.global_hotspots : [];
|