@harness-engineering/cli 1.25.6 → 1.26.0
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/agents/skills/claude-code/harness-knowledge-pipeline/SKILL.md +277 -0
- package/dist/agents/skills/claude-code/harness-knowledge-pipeline/skill.yaml +60 -0
- package/dist/agents/skills/codex/harness-knowledge-pipeline/SKILL.md +277 -0
- package/dist/agents/skills/codex/harness-knowledge-pipeline/skill.yaml +60 -0
- package/dist/agents/skills/cursor/harness-knowledge-pipeline/SKILL.md +277 -0
- package/dist/agents/skills/cursor/harness-knowledge-pipeline/skill.yaml +60 -0
- package/dist/agents/skills/gemini-cli/harness-knowledge-pipeline/SKILL.md +277 -0
- package/dist/agents/skills/gemini-cli/harness-knowledge-pipeline/skill.yaml +60 -0
- package/dist/agents/skills/package.json +2 -2
- package/dist/{agents-md-2PYJM2MK.js → agents-md-OPOZA5L7.js} +3 -3
- package/dist/{architecture-VCLB7A23.js → architecture-PMVMO6SF.js} +4 -4
- package/dist/{assess-project-64C6LIKN.js → assess-project-ZW7EKNIT.js} +1 -1
- package/dist/bin/harness-mcp.js +15 -15
- package/dist/bin/harness.js +25 -25
- package/dist/{check-phase-gate-RT6PGEHY.js → check-phase-gate-NTLAU3LO.js} +4 -4
- package/dist/{chunk-JUXFYB2K.js → chunk-4KSKV5MK.js} +1 -1
- package/dist/{chunk-7BAGSY5Q.js → chunk-6SCA4NEZ.js} +1 -1
- package/dist/{chunk-42ZZLMYD.js → chunk-77EZGPSR.js} +1 -1
- package/dist/{chunk-CBZECDCW.js → chunk-7JNZXJKY.js} +5 -5
- package/dist/{chunk-43VBX44J.js → chunk-CAS3TS4Y.js} +110 -92
- package/dist/{chunk-FL6A72LV.js → chunk-EXTWTJRF.js} +1 -1
- package/dist/{chunk-XLO4AXXM.js → chunk-FI3D6D7U.js} +9 -9
- package/dist/{chunk-ZAKUCM7O.js → chunk-G6SYTGOH.js} +2 -2
- package/dist/{chunk-RKZW3FDF.js → chunk-HAOBHL3W.js} +1 -1
- package/dist/{chunk-4YEBV2FT.js → chunk-IFHAUFJX.js} +2 -2
- package/dist/{chunk-XMEEYMGE.js → chunk-J3O64D2A.js} +1 -1
- package/dist/{chunk-WEOGCL7B.js → chunk-JBJ4AVE4.js} +3 -3
- package/dist/{chunk-VELT5VAG.js → chunk-JWSVLC4I.js} +1 -1
- package/dist/{chunk-BUJOMC3O.js → chunk-JZ6GORAK.js} +38 -2
- package/dist/{chunk-JQCS75DY.js → chunk-KFE2X7LG.js} +4 -4
- package/dist/{chunk-U2OMWI7Z.js → chunk-KSFUJT5B.js} +1 -1
- package/dist/{chunk-Y5JA4J2M.js → chunk-KXIAHHHP.js} +2 -2
- package/dist/{chunk-R2BI5UPK.js → chunk-NIOB6FTG.js} +1 -1
- package/dist/{chunk-X2JJ3CPG.js → chunk-NVGQO4VM.js} +8 -8
- package/dist/{chunk-EY6F2QXW.js → chunk-QYSWNPXZ.js} +1 -1
- package/dist/{chunk-SZZ5UQL7.js → chunk-RNAGPTKF.js} +6 -6
- package/dist/{chunk-KJC4SE7C.js → chunk-UBRD5FH4.js} +9 -9
- package/dist/{chunk-RDQGCHKD.js → chunk-VV2PJT4K.js} +3358 -227
- package/dist/{chunk-SMY35HJM.js → chunk-Z2JORLRT.js} +1 -1
- package/dist/{chunk-R7P2FMJT.js → chunk-ZBQ3ZY75.js} +436 -284
- package/dist/{ci-workflow-SZL3KVUK.js → ci-workflow-H52EMCL6.js} +3 -3
- package/dist/{dist-GRW3X2ZQ.js → dist-PGQ32ZI7.js} +41 -1
- package/dist/{dist-T3DGV5UN.js → dist-TG63OKA5.js} +2 -2
- package/dist/{docs-WDLJORLK.js → docs-GP4VUSIB.js} +4 -4
- package/dist/{engine-2YWYRCKK.js → engine-KQG5RVXX.js} +3 -3
- package/dist/{entropy-PJGTOORX.js → entropy-RXESIYKC.js} +3 -3
- package/dist/{feedback-M5KCJKL2.js → feedback-HS7ZYXOU.js} +1 -1
- package/dist/{generate-agent-definitions-MFDW6LZT.js → generate-agent-definitions-I4B7CVOB.js} +4 -4
- package/dist/{graph-loader-QMKXT454.js → graph-loader-TIVI6NQ7.js} +1 -1
- package/dist/index.d.ts +6 -0
- package/dist/index.js +25 -25
- package/dist/{loader-6O52FYHE.js → loader-CWAH6B4H.js} +3 -3
- package/dist/{mcp-GGNFWKVC.js → mcp-KHK5KYER.js} +15 -15
- package/dist/{performance-337U5URQ.js → performance-WDW5WS3J.js} +4 -4
- package/dist/{review-pipeline-DB5RD4SN.js → review-pipeline-QOZGWCTY.js} +3 -3
- package/dist/{runtime-B74EN2WD.js → runtime-SFEFRPLX.js} +3 -3
- package/dist/{scan-DXQUHGTT.js → scan-IJ7EYTF7.js} +1 -1
- package/dist/{security-3AYN6FVU.js → security-2K7UUK6T.js} +1 -1
- package/dist/{validate-35CD7VWN.js → validate-HXM6DXRZ.js} +4 -4
- package/dist/{validate-cross-check-LJKXBQYH.js → validate-cross-check-ULQLEOME.js} +3 -3
- package/package.json +9 -9
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
import {
|
|
8
8
|
findConfigFile,
|
|
9
9
|
loadConfig
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-4KSKV5MK.js";
|
|
11
11
|
import {
|
|
12
12
|
init_dist
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-77EZGPSR.js";
|
|
14
14
|
import {
|
|
15
15
|
Ok
|
|
16
16
|
} from "./chunk-RL4VMEXL.js";
|
|
@@ -50,18 +50,18 @@ async function handleCheckDocs(input) {
|
|
|
50
50
|
const projectPath = sanitizePath(input.path);
|
|
51
51
|
const scope = input.scope ?? "coverage";
|
|
52
52
|
if (scope === "integrity") {
|
|
53
|
-
const { validateKnowledgeMap } = await import("./dist-
|
|
53
|
+
const { validateKnowledgeMap } = await import("./dist-TG63OKA5.js");
|
|
54
54
|
const result2 = await validateKnowledgeMap(projectPath);
|
|
55
55
|
return resultToMcpResponse(result2);
|
|
56
56
|
}
|
|
57
57
|
if (scope === "all") {
|
|
58
|
-
const { checkDocCoverage: checkDocCoverage2, validateKnowledgeMap } = await import("./dist-
|
|
58
|
+
const { checkDocCoverage: checkDocCoverage2, validateKnowledgeMap } = await import("./dist-TG63OKA5.js");
|
|
59
59
|
const domain2 = input.domain ?? "src";
|
|
60
|
-
const { loadGraphStore: loadGraphStore2 } = await import("./graph-loader-
|
|
60
|
+
const { loadGraphStore: loadGraphStore2 } = await import("./graph-loader-TIVI6NQ7.js");
|
|
61
61
|
const store2 = await loadGraphStore2(projectPath);
|
|
62
62
|
let graphCoverage2;
|
|
63
63
|
if (store2) {
|
|
64
|
-
const { Assembler } = await import("./dist-
|
|
64
|
+
const { Assembler } = await import("./dist-PGQ32ZI7.js");
|
|
65
65
|
const assembler = new Assembler(store2);
|
|
66
66
|
const report = assembler.checkCoverage();
|
|
67
67
|
graphCoverage2 = {
|
|
@@ -94,13 +94,13 @@ async function handleCheckDocs(input) {
|
|
|
94
94
|
}
|
|
95
95
|
return resultToMcpResponse(Ok({ coverage, integrity }));
|
|
96
96
|
}
|
|
97
|
-
const { checkDocCoverage } = await import("./dist-
|
|
97
|
+
const { checkDocCoverage } = await import("./dist-TG63OKA5.js");
|
|
98
98
|
const domain = input.domain ?? "src";
|
|
99
|
-
const { loadGraphStore } = await import("./graph-loader-
|
|
99
|
+
const { loadGraphStore } = await import("./graph-loader-TIVI6NQ7.js");
|
|
100
100
|
const store = await loadGraphStore(projectPath);
|
|
101
101
|
let graphCoverage;
|
|
102
102
|
if (store) {
|
|
103
|
-
const { Assembler } = await import("./dist-
|
|
103
|
+
const { Assembler } = await import("./dist-PGQ32ZI7.js");
|
|
104
104
|
const assembler = new Assembler(store);
|
|
105
105
|
const report = assembler.checkCoverage();
|
|
106
106
|
graphCoverage = {
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
init_dist,
|
|
6
6
|
paginate
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-77EZGPSR.js";
|
|
8
8
|
|
|
9
9
|
// src/mcp/tools/review-pipeline.ts
|
|
10
10
|
init_dist();
|
|
@@ -79,7 +79,7 @@ var runCodeReviewDefinition = {
|
|
|
79
79
|
};
|
|
80
80
|
async function handleRunCodeReview(input) {
|
|
81
81
|
try {
|
|
82
|
-
const { parseDiff, runReviewPipeline } = await import("./dist-
|
|
82
|
+
const { parseDiff, runReviewPipeline } = await import("./dist-TG63OKA5.js");
|
|
83
83
|
const parseResult = parseDiff(input.diff);
|
|
84
84
|
if (!parseResult.ok) {
|
|
85
85
|
return {
|
|
@@ -27,7 +27,7 @@ var runSecurityScanDefinition = {
|
|
|
27
27
|
};
|
|
28
28
|
async function handleRunSecurityScan(input) {
|
|
29
29
|
try {
|
|
30
|
-
const core = await import("./dist-
|
|
30
|
+
const core = await import("./dist-TG63OKA5.js");
|
|
31
31
|
const projectRoot = sanitizePath(input.path);
|
|
32
32
|
let configData = {};
|
|
33
33
|
try {
|
|
@@ -114,7 +114,7 @@ var getSecurityTrendsDefinition = {
|
|
|
114
114
|
};
|
|
115
115
|
async function handleGetSecurityTrends(input) {
|
|
116
116
|
try {
|
|
117
|
-
const core = await import("./dist-
|
|
117
|
+
const core = await import("./dist-TG63OKA5.js");
|
|
118
118
|
const projectRoot = sanitizePath(input.path);
|
|
119
119
|
const manager = new core.SecurityTimelineManager(projectRoot);
|
|
120
120
|
const trendOptions = {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveProjectConfig
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-J3O64D2A.js";
|
|
4
4
|
import {
|
|
5
5
|
sanitizePath
|
|
6
6
|
} from "./chunk-W6Y7ZW3Y.js";
|
|
@@ -49,7 +49,7 @@ async function handleValidateProject(input) {
|
|
|
49
49
|
checks.config = "pass";
|
|
50
50
|
const config = configResult.value;
|
|
51
51
|
try {
|
|
52
|
-
const core = await import("./dist-
|
|
52
|
+
const core = await import("./dist-TG63OKA5.js");
|
|
53
53
|
if (typeof core.validateFileStructure === "function" && Array.isArray(config.conventions)) {
|
|
54
54
|
const conventions = config.conventions;
|
|
55
55
|
const structureResult = await core.validateFileStructure(projectPath, conventions);
|
|
@@ -68,7 +68,7 @@ async function handleValidateProject(input) {
|
|
|
68
68
|
} catch {
|
|
69
69
|
}
|
|
70
70
|
try {
|
|
71
|
-
const core = await import("./dist-
|
|
71
|
+
const core = await import("./dist-TG63OKA5.js");
|
|
72
72
|
if (typeof core.validateAgentsMap === "function") {
|
|
73
73
|
const agentsMapPath = path.join(projectPath, "AGENTS.md");
|
|
74
74
|
const agentsResult = await core.validateAgentsMap(agentsMapPath);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
init_dist
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-77EZGPSR.js";
|
|
4
4
|
import {
|
|
5
5
|
Err,
|
|
6
6
|
Ok
|
|
@@ -84,7 +84,33 @@ function mergePackageJson(base, overlay) {
|
|
|
84
84
|
}
|
|
85
85
|
|
|
86
86
|
// src/templates/engine.ts
|
|
87
|
-
var NON_JSON_PACKAGE_CONFIGS = /* @__PURE__ */ new Set([
|
|
87
|
+
var NON_JSON_PACKAGE_CONFIGS = /* @__PURE__ */ new Set([
|
|
88
|
+
"pyproject.toml",
|
|
89
|
+
"go.mod",
|
|
90
|
+
"Cargo.toml",
|
|
91
|
+
"pom.xml",
|
|
92
|
+
"build.gradle",
|
|
93
|
+
"build.gradle.kts"
|
|
94
|
+
]);
|
|
95
|
+
var HARNESS_CONFIG_FILES = /* @__PURE__ */ new Set(["harness.config.json", "AGENTS.md", ".harness/.gitignore"]);
|
|
96
|
+
function isHarnessConfigFile(relativePath) {
|
|
97
|
+
return HARNESS_CONFIG_FILES.has(relativePath);
|
|
98
|
+
}
|
|
99
|
+
var PROJECT_MARKERS = [
|
|
100
|
+
"package.json",
|
|
101
|
+
"pom.xml",
|
|
102
|
+
"build.gradle",
|
|
103
|
+
"build.gradle.kts",
|
|
104
|
+
"pyproject.toml",
|
|
105
|
+
"setup.py",
|
|
106
|
+
"requirements.txt",
|
|
107
|
+
"Pipfile",
|
|
108
|
+
"go.mod",
|
|
109
|
+
"Cargo.toml",
|
|
110
|
+
"Makefile",
|
|
111
|
+
"CMakeLists.txt",
|
|
112
|
+
"meson.build"
|
|
113
|
+
];
|
|
88
114
|
function scoreDetectPatterns(targetDir, patterns) {
|
|
89
115
|
let score = 0;
|
|
90
116
|
for (const pattern of patterns) {
|
|
@@ -244,6 +270,9 @@ var TemplateEngine = class {
|
|
|
244
270
|
for (const file of files.files) {
|
|
245
271
|
const targetPath = path.join(targetDir, file.relativePath);
|
|
246
272
|
const dir = path.dirname(targetPath);
|
|
273
|
+
if (!options.overwrite && options.existingProject && !isHarnessConfigFile(file.relativePath)) {
|
|
274
|
+
continue;
|
|
275
|
+
}
|
|
247
276
|
if (!options.overwrite && isNonJsLanguage && NON_JSON_PACKAGE_CONFIGS.has(file.relativePath) && fs.existsSync(targetPath)) {
|
|
248
277
|
skippedConfigs.push(file.relativePath);
|
|
249
278
|
continue;
|
|
@@ -262,6 +291,13 @@ var TemplateEngine = class {
|
|
|
262
291
|
);
|
|
263
292
|
}
|
|
264
293
|
}
|
|
294
|
+
/**
|
|
295
|
+
* Check whether the target directory already contains a project by looking for
|
|
296
|
+
* common build/package configuration files. Returns true if any marker is found.
|
|
297
|
+
*/
|
|
298
|
+
isExistingProject(targetDir) {
|
|
299
|
+
return PROJECT_MARKERS.some((marker) => fs.existsSync(path.join(targetDir, marker)));
|
|
300
|
+
}
|
|
265
301
|
detectFramework(targetDir) {
|
|
266
302
|
try {
|
|
267
303
|
const templatesResult = this.listTemplates();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveProjectConfig
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-J3O64D2A.js";
|
|
4
4
|
import {
|
|
5
5
|
resultToMcpResponse
|
|
6
6
|
} from "./chunk-EPUKTTJZ.js";
|
|
@@ -38,7 +38,7 @@ async function handleCheckDependencies(input) {
|
|
|
38
38
|
const configResult = resolveProjectConfig(projectPath);
|
|
39
39
|
if (!configResult.ok) return resultToMcpResponse(configResult);
|
|
40
40
|
try {
|
|
41
|
-
const { validateDependencies, TypeScriptParser } = await import("./dist-
|
|
41
|
+
const { validateDependencies, TypeScriptParser } = await import("./dist-TG63OKA5.js");
|
|
42
42
|
const config = configResult.value;
|
|
43
43
|
const rawLayers = Array.isArray(config.layers) ? config.layers : [];
|
|
44
44
|
const layers = rawLayers.map((l) => ({
|
|
@@ -47,11 +47,11 @@ async function handleCheckDependencies(input) {
|
|
|
47
47
|
allowedDependencies: l.allowedDependencies
|
|
48
48
|
}));
|
|
49
49
|
const parser = new TypeScriptParser();
|
|
50
|
-
const { loadGraphStore } = await import("./graph-loader-
|
|
50
|
+
const { loadGraphStore } = await import("./graph-loader-TIVI6NQ7.js");
|
|
51
51
|
const store = await loadGraphStore(projectPath);
|
|
52
52
|
let graphDependencyData;
|
|
53
53
|
if (store) {
|
|
54
|
-
const { GraphConstraintAdapter } = await import("./dist-
|
|
54
|
+
const { GraphConstraintAdapter } = await import("./dist-PGQ32ZI7.js");
|
|
55
55
|
const adapter = new GraphConstraintAdapter(store);
|
|
56
56
|
const graphData = adapter.computeDependencyGraph();
|
|
57
57
|
graphDependencyData = {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { Command } from "commander";
|
|
3
3
|
import * as path from "path";
|
|
4
4
|
async function runScan(projectPath) {
|
|
5
|
-
const { GraphStore, CodeIngestor, TopologicalLinker, KnowledgeIngestor, GitIngestor } = await import("./dist-
|
|
5
|
+
const { GraphStore, CodeIngestor, TopologicalLinker, KnowledgeIngestor, GitIngestor } = await import("./dist-PGQ32ZI7.js");
|
|
6
6
|
const store = new GraphStore();
|
|
7
7
|
const start = Date.now();
|
|
8
8
|
await new CodeIngestor(store).ingest(projectPath);
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
import {
|
|
8
8
|
findConfigFile,
|
|
9
9
|
loadConfig
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-4KSKV5MK.js";
|
|
11
11
|
import {
|
|
12
12
|
init_dist
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-77EZGPSR.js";
|
|
14
14
|
import {
|
|
15
15
|
Ok
|
|
16
16
|
} from "./chunk-RL4VMEXL.js";
|
|
@@ -35,7 +35,7 @@ var checkPerformanceDefinition = {
|
|
|
35
35
|
};
|
|
36
36
|
async function handleCheckPerformance(input) {
|
|
37
37
|
try {
|
|
38
|
-
const { EntropyAnalyzer } = await import("./dist-
|
|
38
|
+
const { EntropyAnalyzer } = await import("./dist-TG63OKA5.js");
|
|
39
39
|
const typeFilter = input.type ?? "all";
|
|
40
40
|
const projectPath = sanitizePath(input.path);
|
|
41
41
|
let entryPoints;
|
|
@@ -58,10 +58,10 @@ async function handleCheckPerformance(input) {
|
|
|
58
58
|
});
|
|
59
59
|
let graphOptions;
|
|
60
60
|
try {
|
|
61
|
-
const { loadGraphStore } = await import("./graph-loader-
|
|
61
|
+
const { loadGraphStore } = await import("./graph-loader-TIVI6NQ7.js");
|
|
62
62
|
const store = await loadGraphStore(projectPath);
|
|
63
63
|
if (store) {
|
|
64
|
-
const { GraphComplexityAdapter, GraphCouplingAdapter } = await import("./dist-
|
|
64
|
+
const { GraphComplexityAdapter, GraphCouplingAdapter } = await import("./dist-PGQ32ZI7.js");
|
|
65
65
|
const complexityAdapter = new GraphComplexityAdapter(store);
|
|
66
66
|
const couplingAdapter = new GraphCouplingAdapter(store);
|
|
67
67
|
graphOptions = {
|
|
@@ -98,7 +98,7 @@ var getPerfBaselinesDefinition = {
|
|
|
98
98
|
};
|
|
99
99
|
async function handleGetPerfBaselines(input) {
|
|
100
100
|
try {
|
|
101
|
-
const { BaselineManager } = await import("./dist-
|
|
101
|
+
const { BaselineManager } = await import("./dist-TG63OKA5.js");
|
|
102
102
|
const manager = new BaselineManager(sanitizePath(input.path));
|
|
103
103
|
const baselines = manager.load();
|
|
104
104
|
return resultToMcpResponse(
|
|
@@ -146,7 +146,7 @@ var updatePerfBaselinesDefinition = {
|
|
|
146
146
|
};
|
|
147
147
|
async function handleUpdatePerfBaselines(input) {
|
|
148
148
|
try {
|
|
149
|
-
const { BaselineManager } = await import("./dist-
|
|
149
|
+
const { BaselineManager } = await import("./dist-TG63OKA5.js");
|
|
150
150
|
const manager = new BaselineManager(sanitizePath(input.path));
|
|
151
151
|
manager.save(input.results, input.commitHash);
|
|
152
152
|
const updated = manager.load();
|
|
@@ -176,7 +176,7 @@ var getCriticalPathsDefinition = {
|
|
|
176
176
|
};
|
|
177
177
|
async function handleGetCriticalPaths(input) {
|
|
178
178
|
try {
|
|
179
|
-
const { CriticalPathResolver } = await import("./dist-
|
|
179
|
+
const { CriticalPathResolver } = await import("./dist-TG63OKA5.js");
|
|
180
180
|
const resolver = new CriticalPathResolver(sanitizePath(input.path));
|
|
181
181
|
const result = await resolver.resolve();
|
|
182
182
|
return resultToMcpResponse(Ok(result));
|
|
@@ -50,7 +50,7 @@ async function handleAssessProject(input) {
|
|
|
50
50
|
let validateResult = null;
|
|
51
51
|
if (checksToRun.has("validate")) {
|
|
52
52
|
try {
|
|
53
|
-
const { handleValidateProject } = await import("./validate-
|
|
53
|
+
const { handleValidateProject } = await import("./validate-HXM6DXRZ.js");
|
|
54
54
|
const result = await handleValidateProject({ path: projectPath });
|
|
55
55
|
const first = result.content[0];
|
|
56
56
|
const parsed = first ? JSON.parse(first.text) : {};
|
|
@@ -75,7 +75,7 @@ async function handleAssessProject(input) {
|
|
|
75
75
|
parallelChecks.push(
|
|
76
76
|
(async () => {
|
|
77
77
|
try {
|
|
78
|
-
const { handleCheckDependencies } = await import("./architecture-
|
|
78
|
+
const { handleCheckDependencies } = await import("./architecture-PMVMO6SF.js");
|
|
79
79
|
const result = await handleCheckDependencies({ path: projectPath });
|
|
80
80
|
const first = result.content[0];
|
|
81
81
|
const parsed = first ? JSON.parse(first.text) : {};
|
|
@@ -102,7 +102,7 @@ async function handleAssessProject(input) {
|
|
|
102
102
|
parallelChecks.push(
|
|
103
103
|
(async () => {
|
|
104
104
|
try {
|
|
105
|
-
const { handleCheckDocs } = await import("./docs-
|
|
105
|
+
const { handleCheckDocs } = await import("./docs-GP4VUSIB.js");
|
|
106
106
|
const result = await handleCheckDocs({ path: projectPath, scope: "coverage" });
|
|
107
107
|
const first = result.content[0];
|
|
108
108
|
const parsed = first ? JSON.parse(first.text) : {};
|
|
@@ -129,7 +129,7 @@ async function handleAssessProject(input) {
|
|
|
129
129
|
parallelChecks.push(
|
|
130
130
|
(async () => {
|
|
131
131
|
try {
|
|
132
|
-
const { handleDetectEntropy } = await import("./entropy-
|
|
132
|
+
const { handleDetectEntropy } = await import("./entropy-RXESIYKC.js");
|
|
133
133
|
const result = await handleDetectEntropy({ path: projectPath, type: "all" });
|
|
134
134
|
const first = result.content[0];
|
|
135
135
|
const parsed = first ? JSON.parse(first.text) : {};
|
|
@@ -156,7 +156,7 @@ async function handleAssessProject(input) {
|
|
|
156
156
|
parallelChecks.push(
|
|
157
157
|
(async () => {
|
|
158
158
|
try {
|
|
159
|
-
const { handleRunSecurityScan } = await import("./security-
|
|
159
|
+
const { handleRunSecurityScan } = await import("./security-2K7UUK6T.js");
|
|
160
160
|
const result = await handleRunSecurityScan({ path: projectPath });
|
|
161
161
|
const first = result.content[0];
|
|
162
162
|
const parsed = first ? JSON.parse(first.text) : {};
|
|
@@ -188,7 +188,7 @@ async function handleAssessProject(input) {
|
|
|
188
188
|
parallelChecks.push(
|
|
189
189
|
(async () => {
|
|
190
190
|
try {
|
|
191
|
-
const { handleCheckPerformance } = await import("./performance-
|
|
191
|
+
const { handleCheckPerformance } = await import("./performance-WDW5WS3J.js");
|
|
192
192
|
const result = await handleCheckPerformance({ path: projectPath });
|
|
193
193
|
if ("isError" in result && result.isError) {
|
|
194
194
|
const msg = result.content[0]?.text ?? "Performance check failed";
|
|
@@ -33,7 +33,7 @@ var createSelfReviewDefinition = {
|
|
|
33
33
|
};
|
|
34
34
|
async function handleCreateSelfReview(input) {
|
|
35
35
|
try {
|
|
36
|
-
const { parseDiff, createSelfReview } = await import("./dist-
|
|
36
|
+
const { parseDiff, createSelfReview } = await import("./dist-TG63OKA5.js");
|
|
37
37
|
const parseResult = parseDiff(input.diff);
|
|
38
38
|
if (!parseResult.ok) {
|
|
39
39
|
return resultToMcpResponse(parseResult);
|
|
@@ -53,11 +53,11 @@ async function handleCreateSelfReview(input) {
|
|
|
53
53
|
...input.maxFileCount !== void 0 ? { maxChangedFiles: input.maxFileCount } : {}
|
|
54
54
|
}
|
|
55
55
|
};
|
|
56
|
-
const { loadGraphStore } = await import("./graph-loader-
|
|
56
|
+
const { loadGraphStore } = await import("./graph-loader-TIVI6NQ7.js");
|
|
57
57
|
const store = await loadGraphStore(projectPath);
|
|
58
58
|
let graphData;
|
|
59
59
|
if (store) {
|
|
60
|
-
const { GraphFeedbackAdapter } = await import("./dist-
|
|
60
|
+
const { GraphFeedbackAdapter } = await import("./dist-PGQ32ZI7.js");
|
|
61
61
|
const adapter = new GraphFeedbackAdapter(store);
|
|
62
62
|
const changedFiles = parseResult.value.files.map((f) => f.path);
|
|
63
63
|
const impact = adapter.computeImpactData(changedFiles);
|
|
@@ -119,7 +119,7 @@ var analyzeDiffDefinition = {
|
|
|
119
119
|
};
|
|
120
120
|
async function handleAnalyzeDiff(input) {
|
|
121
121
|
try {
|
|
122
|
-
const { parseDiff, analyzeDiff } = await import("./dist-
|
|
122
|
+
const { parseDiff, analyzeDiff } = await import("./dist-TG63OKA5.js");
|
|
123
123
|
const parseResult = parseDiff(input.diff);
|
|
124
124
|
if (!parseResult.ok) {
|
|
125
125
|
return resultToMcpResponse(parseResult);
|
|
@@ -139,10 +139,10 @@ async function handleAnalyzeDiff(input) {
|
|
|
139
139
|
let graphImpactData;
|
|
140
140
|
if (input.path) {
|
|
141
141
|
try {
|
|
142
|
-
const { loadGraphStore } = await import("./graph-loader-
|
|
142
|
+
const { loadGraphStore } = await import("./graph-loader-TIVI6NQ7.js");
|
|
143
143
|
const store = await loadGraphStore(sanitizePath(input.path));
|
|
144
144
|
if (store) {
|
|
145
|
-
const { GraphFeedbackAdapter } = await import("./dist-
|
|
145
|
+
const { GraphFeedbackAdapter } = await import("./dist-PGQ32ZI7.js");
|
|
146
146
|
const adapter = new GraphFeedbackAdapter(store);
|
|
147
147
|
const changedFiles = parseResult.value.files.map((f) => f.path);
|
|
148
148
|
const impact = adapter.computeImpactData(changedFiles);
|
|
@@ -195,7 +195,7 @@ var requestPeerReviewDefinition = {
|
|
|
195
195
|
};
|
|
196
196
|
async function handleRequestPeerReview(input) {
|
|
197
197
|
try {
|
|
198
|
-
const { parseDiff, requestPeerReview } = await import("./dist-
|
|
198
|
+
const { parseDiff, requestPeerReview } = await import("./dist-TG63OKA5.js");
|
|
199
199
|
const parseResult = parseDiff(input.diff);
|
|
200
200
|
if (!parseResult.ok) {
|
|
201
201
|
return resultToMcpResponse(parseResult);
|
|
@@ -206,10 +206,10 @@ async function handleRequestPeerReview(input) {
|
|
|
206
206
|
...input.context ? { metadata: { context: input.context } } : {}
|
|
207
207
|
};
|
|
208
208
|
try {
|
|
209
|
-
const { loadGraphStore } = await import("./graph-loader-
|
|
209
|
+
const { loadGraphStore } = await import("./graph-loader-TIVI6NQ7.js");
|
|
210
210
|
const store = await loadGraphStore(sanitizePath(input.path));
|
|
211
211
|
if (store) {
|
|
212
|
-
const { GraphFeedbackAdapter } = await import("./dist-
|
|
212
|
+
const { GraphFeedbackAdapter } = await import("./dist-PGQ32ZI7.js");
|
|
213
213
|
const adapter = new GraphFeedbackAdapter(store);
|
|
214
214
|
const changedFiles = parseResult.value.files.map((f) => f.path);
|
|
215
215
|
const impactData = adapter.computeImpactData(changedFiles);
|