@harness-engineering/cli 1.22.0 → 1.23.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-autopilot/SKILL.md +2 -2
- package/dist/agents/skills/claude-code/harness-brainstorming/SKILL.md +1 -1
- package/dist/agents/skills/claude-code/harness-execution/SKILL.md +1 -1
- package/dist/agents/skills/claude-code/harness-roadmap/SKILL.md +5 -5
- package/dist/agents/skills/claude-code/harness-roadmap-pilot/SKILL.md +18 -14
- package/dist/agents/skills/codex/harness-autopilot/SKILL.md +2 -2
- package/dist/agents/skills/codex/harness-brainstorming/SKILL.md +1 -1
- package/dist/agents/skills/codex/harness-execution/SKILL.md +1 -1
- package/dist/agents/skills/codex/harness-roadmap/SKILL.md +5 -5
- package/dist/agents/skills/codex/harness-roadmap-pilot/SKILL.md +18 -14
- package/dist/agents/skills/cursor/harness-autopilot/SKILL.md +2 -2
- package/dist/agents/skills/cursor/harness-brainstorming/SKILL.md +1 -1
- package/dist/agents/skills/cursor/harness-execution/SKILL.md +1 -1
- package/dist/agents/skills/cursor/harness-roadmap/SKILL.md +5 -5
- package/dist/agents/skills/cursor/harness-roadmap-pilot/SKILL.md +18 -14
- package/dist/agents/skills/gemini-cli/harness-autopilot/SKILL.md +2 -2
- package/dist/agents/skills/gemini-cli/harness-brainstorming/SKILL.md +1 -1
- package/dist/agents/skills/gemini-cli/harness-execution/SKILL.md +1 -1
- package/dist/agents/skills/gemini-cli/harness-roadmap/SKILL.md +5 -5
- package/dist/agents/skills/gemini-cli/harness-roadmap-pilot/SKILL.md +18 -14
- package/dist/{agents-md-PM7LO74M.js → agents-md-GLKJSGKT.js} +2 -2
- package/dist/{architecture-OVOCDTI6.js → architecture-EDSBAGR4.js} +3 -3
- package/dist/{assess-project-R2OZIDDS.js → assess-project-CEDY4JU3.js} +1 -1
- package/dist/bin/harness-mcp.js +14 -14
- package/dist/bin/harness.js +16 -16
- package/dist/{check-phase-gate-7JQ6EW5R.js → check-phase-gate-N3DTKFCZ.js} +4 -4
- package/dist/{chunk-SOTTK27D.js → chunk-26AUZBV4.js} +19 -19
- package/dist/{chunk-5FBWWMY2.js → chunk-2LAEDVOC.js} +6 -6
- package/dist/{chunk-TEZI27SA.js → chunk-5SWE24IG.js} +1 -1
- package/dist/{chunk-PUOMFNRO.js → chunk-A4AI3H3R.js} +1 -1
- package/dist/{chunk-W6MPLFXU.js → chunk-AIBAYANF.js} +3 -3
- package/dist/{chunk-ZEIEUCZL.js → chunk-AKVG4MMZ.js} +9 -9
- package/dist/{chunk-J7W4LTRK.js → chunk-ENA4O4WD.js} +2 -2
- package/dist/{chunk-GRJ7A4WT.js → chunk-GJRUIXUK.js} +1 -1
- package/dist/{chunk-5QTWFO24.js → chunk-HT4VPPB4.js} +8 -8
- package/dist/{chunk-B4WHXHF7.js → chunk-LIWGCYON.js} +1 -1
- package/dist/{chunk-FSLFBLYW.js → chunk-QUKH6QCJ.js} +7 -7
- package/dist/{chunk-DJEBBENF.js → chunk-SM22U22L.js} +95 -81
- package/dist/{chunk-DXYOAQQC.js → chunk-TD6MQUV2.js} +1 -1
- package/dist/{chunk-IK5GSLW6.js → chunk-TJ6NLLAY.js} +4 -4
- package/dist/{chunk-ASS5TD2Y.js → chunk-TLDCCPUZ.js} +1 -1
- package/dist/{chunk-U44JNY3Y.js → chunk-XDAIFVGC.js} +1 -1
- package/dist/{ci-workflow-OTTEERPF.js → ci-workflow-LE3QF4FP.js} +2 -2
- package/dist/{dist-IA6XYKNO.js → dist-OEXTQQZC.js} +1 -1
- package/dist/{dist-LCR2IO7U.js → dist-YIKUBJLQ.js} +2 -2
- package/dist/{docs-CHAYSGOP.js → docs-F5G7NAFF.js} +4 -4
- package/dist/{engine-4MY2U5RZ.js → engine-LX5RVGXN.js} +2 -2
- package/dist/{entropy-AKSZG7G5.js → entropy-A5Q2USYX.js} +3 -3
- package/dist/{feedback-QGCSW7SB.js → feedback-2EU25RIW.js} +1 -1
- package/dist/{generate-agent-definitions-KU6X2UQN.js → generate-agent-definitions-HNJHO5YQ.js} +2 -2
- package/dist/{graph-loader-FJN4H7Y4.js → graph-loader-XULF5QF7.js} +1 -1
- package/dist/index.d.ts +8 -8
- package/dist/index.js +16 -16
- package/dist/{loader-AV5XEMER.js → loader-GWIEW4HM.js} +2 -2
- package/dist/{mcp-LWHVQRG7.js → mcp-ID3LR6JB.js} +14 -14
- package/dist/{performance-ETZVXXGQ.js → performance-YAY2A6A6.js} +4 -4
- package/dist/{review-pipeline-3ZS3GJSP.js → review-pipeline-YD4WI3JM.js} +1 -1
- package/dist/{runtime-KQTJRK3H.js → runtime-UJ4YO4CA.js} +2 -2
- package/dist/{security-LJCLZES6.js → security-IBSUKMVD.js} +1 -1
- package/dist/{validate-4IA5RPEX.js → validate-NHXWKMCR.js} +3 -3
- package/dist/{validate-cross-check-VX2BAHQI.js → validate-cross-check-R3GV2MLM.js} +2 -2
- package/package.json +2 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
detectEntropyDefinition,
|
|
3
3
|
handleDetectEntropy
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-TJ6NLLAY.js";
|
|
5
5
|
import {
|
|
6
6
|
checkPerformanceDefinition,
|
|
7
7
|
getCriticalPathsDefinition,
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
handleGetPerfBaselines,
|
|
12
12
|
handleUpdatePerfBaselines,
|
|
13
13
|
updatePerfBaselinesDefinition
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-QUKH6QCJ.js";
|
|
15
15
|
import {
|
|
16
16
|
analyzeDiffDefinition,
|
|
17
17
|
createSelfReviewDefinition,
|
|
@@ -19,19 +19,19 @@ import {
|
|
|
19
19
|
handleCreateSelfReview,
|
|
20
20
|
handleRequestPeerReview,
|
|
21
21
|
requestPeerReviewDefinition
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-AKVG4MMZ.js";
|
|
23
23
|
import {
|
|
24
24
|
handleRunSecurityScan,
|
|
25
25
|
runSecurityScanDefinition
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-TD6MQUV2.js";
|
|
27
27
|
import {
|
|
28
28
|
handleRunCodeReview,
|
|
29
29
|
runCodeReviewDefinition
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-LIWGCYON.js";
|
|
31
31
|
import {
|
|
32
32
|
assessProjectDefinition,
|
|
33
33
|
handleAssessProject
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-2LAEDVOC.js";
|
|
35
35
|
import {
|
|
36
36
|
GENERATED_HEADER_CLAUDE,
|
|
37
37
|
GENERATED_HEADER_CODEX,
|
|
@@ -44,25 +44,25 @@ import {
|
|
|
44
44
|
import {
|
|
45
45
|
handleValidateProject,
|
|
46
46
|
validateToolDefinition
|
|
47
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-ENA4O4WD.js";
|
|
48
48
|
import {
|
|
49
49
|
loadGraphStore
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-TLDCCPUZ.js";
|
|
51
51
|
import {
|
|
52
52
|
checkDependenciesDefinition,
|
|
53
53
|
handleCheckDependencies
|
|
54
|
-
} from "./chunk-
|
|
54
|
+
} from "./chunk-AIBAYANF.js";
|
|
55
55
|
import {
|
|
56
56
|
resolveProjectConfig
|
|
57
57
|
} from "./chunk-H7Y5CKTM.js";
|
|
58
58
|
import {
|
|
59
59
|
checkDocsDefinition,
|
|
60
60
|
handleCheckDocs
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-HT4VPPB4.js";
|
|
62
62
|
import {
|
|
63
63
|
TrackerConfigSchema,
|
|
64
64
|
resolveConfig
|
|
65
|
-
} from "./chunk-
|
|
65
|
+
} from "./chunk-GJRUIXUK.js";
|
|
66
66
|
import {
|
|
67
67
|
resultToMcpResponse
|
|
68
68
|
} from "./chunk-IDZNPTYD.js";
|
|
@@ -91,7 +91,7 @@ import {
|
|
|
91
91
|
checkTaint,
|
|
92
92
|
scanForInjection,
|
|
93
93
|
writeTaint
|
|
94
|
-
} from "./chunk-
|
|
94
|
+
} from "./chunk-XDAIFVGC.js";
|
|
95
95
|
import {
|
|
96
96
|
Err,
|
|
97
97
|
Ok
|
|
@@ -561,7 +561,7 @@ ${skippedMsg}`
|
|
|
561
561
|
async function handleInitProject(input) {
|
|
562
562
|
const i = input;
|
|
563
563
|
try {
|
|
564
|
-
const { TemplateEngine } = await import("./engine-
|
|
564
|
+
const { TemplateEngine } = await import("./engine-LX5RVGXN.js");
|
|
565
565
|
const engine = new TemplateEngine(resolveTemplatesDir());
|
|
566
566
|
const safePath = sanitizePath(i.path);
|
|
567
567
|
const detected = tryDetectFramework(engine, safePath, i);
|
|
@@ -582,7 +582,7 @@ var listPersonasDefinition = {
|
|
|
582
582
|
inputSchema: { type: "object", properties: {} }
|
|
583
583
|
};
|
|
584
584
|
async function handleListPersonas() {
|
|
585
|
-
const { listPersonas } = await import("./loader-
|
|
585
|
+
const { listPersonas } = await import("./loader-GWIEW4HM.js");
|
|
586
586
|
const result = listPersonas(resolvePersonasDir());
|
|
587
587
|
return resultToMcpResponse(result);
|
|
588
588
|
}
|
|
@@ -606,10 +606,10 @@ async function handleGeneratePersonaArtifacts(input) {
|
|
|
606
606
|
if (!/^[a-z0-9][a-z0-9._-]*$/i.test(input.name)) {
|
|
607
607
|
return resultToMcpResponse(Err(new Error(`Invalid persona name: ${input.name}`)));
|
|
608
608
|
}
|
|
609
|
-
const { loadPersona } = await import("./loader-
|
|
610
|
-
const { generateRuntime } = await import("./runtime-
|
|
611
|
-
const { generateAgentsMd } = await import("./agents-md-
|
|
612
|
-
const { generateCIWorkflow } = await import("./ci-workflow-
|
|
609
|
+
const { loadPersona } = await import("./loader-GWIEW4HM.js");
|
|
610
|
+
const { generateRuntime } = await import("./runtime-UJ4YO4CA.js");
|
|
611
|
+
const { generateAgentsMd } = await import("./agents-md-GLKJSGKT.js");
|
|
612
|
+
const { generateCIWorkflow } = await import("./ci-workflow-LE3QF4FP.js");
|
|
613
613
|
const personasDir = resolvePersonasDir();
|
|
614
614
|
const filePath = path3.join(personasDir, `${input.name}.yaml`);
|
|
615
615
|
if (!filePath.startsWith(personasDir)) {
|
|
@@ -664,7 +664,7 @@ async function handleRunPersona(input) {
|
|
|
664
664
|
if (!/^[a-z0-9][a-z0-9._-]*$/i.test(input.persona)) {
|
|
665
665
|
return resultToMcpResponse(Err(new Error(`Invalid persona name: ${input.persona}`)));
|
|
666
666
|
}
|
|
667
|
-
const { loadPersona } = await import("./loader-
|
|
667
|
+
const { loadPersona } = await import("./loader-GWIEW4HM.js");
|
|
668
668
|
const { runPersona } = await import("./runner-VMYLHWOC.js");
|
|
669
669
|
const { executeSkill } = await import("./skill-executor-2BZQLHYN.js");
|
|
670
670
|
const personasDir = resolvePersonasDir();
|
|
@@ -1322,7 +1322,7 @@ async function autoSyncRoadmap(projectPath) {
|
|
|
1322
1322
|
try {
|
|
1323
1323
|
const roadmapFile = path11.join(projectPath, "docs", "roadmap.md");
|
|
1324
1324
|
if (!fs10.existsSync(roadmapFile)) return;
|
|
1325
|
-
const { parseRoadmap, serializeRoadmap, syncRoadmap, applySyncChanges } = await import("./dist-
|
|
1325
|
+
const { parseRoadmap, serializeRoadmap, syncRoadmap, applySyncChanges } = await import("./dist-YIKUBJLQ.js");
|
|
1326
1326
|
const raw = fs10.readFileSync(roadmapFile, "utf-8");
|
|
1327
1327
|
const parseResult = parseRoadmap(raw);
|
|
1328
1328
|
if (!parseResult.ok) return;
|
|
@@ -1349,7 +1349,7 @@ async function triggerExternalSync(projectPath, roadmapFile) {
|
|
|
1349
1349
|
}
|
|
1350
1350
|
const token = process.env.GITHUB_TOKEN;
|
|
1351
1351
|
if (!token) return;
|
|
1352
|
-
const { fullSync, GitHubIssuesSyncAdapter } = await import("./dist-
|
|
1352
|
+
const { fullSync, GitHubIssuesSyncAdapter } = await import("./dist-YIKUBJLQ.js");
|
|
1353
1353
|
const adapter = new GitHubIssuesSyncAdapter({
|
|
1354
1354
|
token,
|
|
1355
1355
|
config: trackerConfig
|
|
@@ -1461,12 +1461,12 @@ var manageStateDefinition = {
|
|
|
1461
1461
|
}
|
|
1462
1462
|
};
|
|
1463
1463
|
async function handleShow(projectPath, input) {
|
|
1464
|
-
const { loadState } = await import("./dist-
|
|
1464
|
+
const { loadState } = await import("./dist-YIKUBJLQ.js");
|
|
1465
1465
|
return resultToMcpResponse(await loadState(projectPath, input.stream, input.session));
|
|
1466
1466
|
}
|
|
1467
1467
|
async function handleLearn(projectPath, input) {
|
|
1468
1468
|
if (!input.learning) return mcpError("Error: learning is required for learn action");
|
|
1469
|
-
const { appendLearning } = await import("./dist-
|
|
1469
|
+
const { appendLearning } = await import("./dist-YIKUBJLQ.js");
|
|
1470
1470
|
const result = await appendLearning(
|
|
1471
1471
|
projectPath,
|
|
1472
1472
|
input.learning,
|
|
@@ -1481,7 +1481,7 @@ async function handleLearn(projectPath, input) {
|
|
|
1481
1481
|
async function handleFailure(projectPath, input) {
|
|
1482
1482
|
if (!input.description) return mcpError("Error: description is required for failure action");
|
|
1483
1483
|
if (!input.failureType) return mcpError("Error: failureType is required for failure action");
|
|
1484
|
-
const { appendFailure } = await import("./dist-
|
|
1484
|
+
const { appendFailure } = await import("./dist-YIKUBJLQ.js");
|
|
1485
1485
|
const result = await appendFailure(
|
|
1486
1486
|
projectPath,
|
|
1487
1487
|
input.description,
|
|
@@ -1494,24 +1494,24 @@ async function handleFailure(projectPath, input) {
|
|
|
1494
1494
|
return resultToMcpResponse(Ok({ recorded: true }));
|
|
1495
1495
|
}
|
|
1496
1496
|
async function handleArchive(projectPath, input) {
|
|
1497
|
-
const { archiveFailures } = await import("./dist-
|
|
1497
|
+
const { archiveFailures } = await import("./dist-YIKUBJLQ.js");
|
|
1498
1498
|
const result = await archiveFailures(projectPath, input.stream, input.session);
|
|
1499
1499
|
if (!result.ok) return resultToMcpResponse(result);
|
|
1500
1500
|
return resultToMcpResponse(Ok({ archived: true }));
|
|
1501
1501
|
}
|
|
1502
1502
|
async function handleReset(projectPath, input) {
|
|
1503
|
-
const { saveState, DEFAULT_STATE } = await import("./dist-
|
|
1503
|
+
const { saveState, DEFAULT_STATE } = await import("./dist-YIKUBJLQ.js");
|
|
1504
1504
|
const result = await saveState(projectPath, { ...DEFAULT_STATE }, input.stream, input.session);
|
|
1505
1505
|
if (!result.ok) return resultToMcpResponse(result);
|
|
1506
1506
|
return resultToMcpResponse(Ok({ reset: true }));
|
|
1507
1507
|
}
|
|
1508
1508
|
async function handleGate(projectPath, _input) {
|
|
1509
|
-
const { runMechanicalGate } = await import("./dist-
|
|
1509
|
+
const { runMechanicalGate } = await import("./dist-YIKUBJLQ.js");
|
|
1510
1510
|
return resultToMcpResponse(await runMechanicalGate(projectPath));
|
|
1511
1511
|
}
|
|
1512
1512
|
async function handleSaveHandoff(projectPath, input) {
|
|
1513
1513
|
if (!input.handoff) return mcpError("Error: handoff is required for save-handoff action");
|
|
1514
|
-
const { saveHandoff } = await import("./dist-
|
|
1514
|
+
const { saveHandoff } = await import("./dist-YIKUBJLQ.js");
|
|
1515
1515
|
const result = await saveHandoff(
|
|
1516
1516
|
projectPath,
|
|
1517
1517
|
input.handoff,
|
|
@@ -1523,7 +1523,7 @@ async function handleSaveHandoff(projectPath, input) {
|
|
|
1523
1523
|
return resultToMcpResponse(Ok({ saved: true }));
|
|
1524
1524
|
}
|
|
1525
1525
|
async function handleLoadHandoff(projectPath, input) {
|
|
1526
|
-
const { loadHandoff } = await import("./dist-
|
|
1526
|
+
const { loadHandoff } = await import("./dist-YIKUBJLQ.js");
|
|
1527
1527
|
return resultToMcpResponse(await loadHandoff(projectPath, input.stream, input.session));
|
|
1528
1528
|
}
|
|
1529
1529
|
async function handleAppendEntry(projectPath, input) {
|
|
@@ -1531,7 +1531,7 @@ async function handleAppendEntry(projectPath, input) {
|
|
|
1531
1531
|
if (!input.section) return mcpError("Error: section is required for append_entry action");
|
|
1532
1532
|
if (!input.authorSkill) return mcpError("Error: authorSkill is required for append_entry action");
|
|
1533
1533
|
if (!input.content) return mcpError("Error: content is required for append_entry action");
|
|
1534
|
-
const { appendSessionEntry } = await import("./dist-
|
|
1534
|
+
const { appendSessionEntry } = await import("./dist-YIKUBJLQ.js");
|
|
1535
1535
|
const result = await appendSessionEntry(
|
|
1536
1536
|
projectPath,
|
|
1537
1537
|
input.session,
|
|
@@ -1547,7 +1547,7 @@ async function handleUpdateEntryStatus(projectPath, input) {
|
|
|
1547
1547
|
if (!input.entryId) return mcpError("Error: entryId is required for update_entry_status action");
|
|
1548
1548
|
if (!input.newStatus)
|
|
1549
1549
|
return mcpError("Error: newStatus is required for update_entry_status action");
|
|
1550
|
-
const { updateSessionEntryStatus } = await import("./dist-
|
|
1550
|
+
const { updateSessionEntryStatus } = await import("./dist-YIKUBJLQ.js");
|
|
1551
1551
|
const result = await updateSessionEntryStatus(
|
|
1552
1552
|
projectPath,
|
|
1553
1553
|
input.session,
|
|
@@ -1560,7 +1560,7 @@ async function handleUpdateEntryStatus(projectPath, input) {
|
|
|
1560
1560
|
async function handleReadSection(projectPath, input) {
|
|
1561
1561
|
if (!input.session) return mcpError("Error: session is required for read_section action");
|
|
1562
1562
|
if (!input.section) return mcpError("Error: section is required for read_section action");
|
|
1563
|
-
const { readSessionSection } = await import("./dist-
|
|
1563
|
+
const { readSessionSection } = await import("./dist-YIKUBJLQ.js");
|
|
1564
1564
|
const result = await readSessionSection(
|
|
1565
1565
|
projectPath,
|
|
1566
1566
|
input.session,
|
|
@@ -1570,13 +1570,13 @@ async function handleReadSection(projectPath, input) {
|
|
|
1570
1570
|
}
|
|
1571
1571
|
async function handleReadSections(projectPath, input) {
|
|
1572
1572
|
if (!input.session) return mcpError("Error: session is required for read_sections action");
|
|
1573
|
-
const { readSessionSections } = await import("./dist-
|
|
1573
|
+
const { readSessionSections } = await import("./dist-YIKUBJLQ.js");
|
|
1574
1574
|
const result = await readSessionSections(projectPath, input.session);
|
|
1575
1575
|
return resultToMcpResponse(result);
|
|
1576
1576
|
}
|
|
1577
1577
|
async function handleArchiveSession(projectPath, input) {
|
|
1578
1578
|
if (!input.session) return mcpError("Error: session is required for archive_session action");
|
|
1579
|
-
const { archiveSession } = await import("./dist-
|
|
1579
|
+
const { archiveSession } = await import("./dist-YIKUBJLQ.js");
|
|
1580
1580
|
const result = await archiveSession(projectPath, input.session);
|
|
1581
1581
|
if (!result.ok) return resultToMcpResponse(result);
|
|
1582
1582
|
await autoSyncRoadmap(projectPath);
|
|
@@ -1640,7 +1640,7 @@ var listStreamsDefinition = {
|
|
|
1640
1640
|
};
|
|
1641
1641
|
async function handleListStreams(input) {
|
|
1642
1642
|
try {
|
|
1643
|
-
const { listStreams, loadStreamIndex } = await import("./dist-
|
|
1643
|
+
const { listStreams, loadStreamIndex } = await import("./dist-YIKUBJLQ.js");
|
|
1644
1644
|
const projectPath = sanitizePath(input.path);
|
|
1645
1645
|
const indexResult = await loadStreamIndex(projectPath);
|
|
1646
1646
|
const streamsResult = await listStreams(projectPath);
|
|
@@ -1678,7 +1678,7 @@ var checkPhaseGateDefinition = {
|
|
|
1678
1678
|
};
|
|
1679
1679
|
async function handleCheckPhaseGate(input) {
|
|
1680
1680
|
try {
|
|
1681
|
-
const { runCheckPhaseGate } = await import("./check-phase-gate-
|
|
1681
|
+
const { runCheckPhaseGate } = await import("./check-phase-gate-N3DTKFCZ.js");
|
|
1682
1682
|
const result = await runCheckPhaseGate({ cwd: sanitizePath(input.path) });
|
|
1683
1683
|
if (result.ok) {
|
|
1684
1684
|
return { content: [{ type: "text", text: JSON.stringify(result.value) }] };
|
|
@@ -1734,7 +1734,7 @@ async function handleValidateCrossCheck(input) {
|
|
|
1734
1734
|
};
|
|
1735
1735
|
}
|
|
1736
1736
|
try {
|
|
1737
|
-
const { runCrossCheck } = await import("./validate-cross-check-
|
|
1737
|
+
const { runCrossCheck } = await import("./validate-cross-check-R3GV2MLM.js");
|
|
1738
1738
|
const specsDir = path12.resolve(projectPath, input.specsDir ?? "docs/specs");
|
|
1739
1739
|
if (!specsDir.startsWith(projectPath)) {
|
|
1740
1740
|
return {
|
|
@@ -2379,7 +2379,7 @@ async function handleGenerateSlashCommands(input) {
|
|
|
2379
2379
|
// src/mcp/resources/state.ts
|
|
2380
2380
|
async function getStateResource(projectRoot) {
|
|
2381
2381
|
try {
|
|
2382
|
-
const { loadState, migrateToStreams } = await import("./dist-
|
|
2382
|
+
const { loadState, migrateToStreams } = await import("./dist-YIKUBJLQ.js");
|
|
2383
2383
|
await migrateToStreams(projectRoot);
|
|
2384
2384
|
const result = await loadState(projectRoot);
|
|
2385
2385
|
if (result.ok) {
|
|
@@ -2467,7 +2467,7 @@ async function handleQueryGraph(input) {
|
|
|
2467
2467
|
const projectPath = sanitizePath(input.path);
|
|
2468
2468
|
const store = await loadGraphStore(projectPath);
|
|
2469
2469
|
if (!store) return graphNotFoundError();
|
|
2470
|
-
const { ContextQL } = await import("./dist-
|
|
2470
|
+
const { ContextQL } = await import("./dist-OEXTQQZC.js");
|
|
2471
2471
|
const cql = new ContextQL(store);
|
|
2472
2472
|
const result = cql.execute({
|
|
2473
2473
|
rootNodeIds: input.rootNodeIds,
|
|
@@ -2558,7 +2558,7 @@ async function handleSearchSimilar(input) {
|
|
|
2558
2558
|
const projectPath = sanitizePath(input.path);
|
|
2559
2559
|
const store = await loadGraphStore(projectPath);
|
|
2560
2560
|
if (!store) return graphNotFoundError();
|
|
2561
|
-
const { FusionLayer } = await import("./dist-
|
|
2561
|
+
const { FusionLayer } = await import("./dist-OEXTQQZC.js");
|
|
2562
2562
|
const fusion = new FusionLayer(store);
|
|
2563
2563
|
const results = fusion.search(input.query, input.topK ?? 10);
|
|
2564
2564
|
if (input.mode === "summary") {
|
|
@@ -2613,7 +2613,7 @@ async function handleFindContextFor(input) {
|
|
|
2613
2613
|
const projectPath = sanitizePath(input.path);
|
|
2614
2614
|
const store = await loadGraphStore(projectPath);
|
|
2615
2615
|
if (!store) return graphNotFoundError();
|
|
2616
|
-
const { FusionLayer, ContextQL } = await import("./dist-
|
|
2616
|
+
const { FusionLayer, ContextQL } = await import("./dist-OEXTQQZC.js");
|
|
2617
2617
|
const fusion = new FusionLayer(store);
|
|
2618
2618
|
const cql = new ContextQL(store);
|
|
2619
2619
|
const tokenBudget = input.tokenBudget ?? 4e3;
|
|
@@ -2709,7 +2709,7 @@ async function handleGetRelationships(input) {
|
|
|
2709
2709
|
const projectPath = sanitizePath(input.path);
|
|
2710
2710
|
const store = await loadGraphStore(projectPath);
|
|
2711
2711
|
if (!store) return graphNotFoundError();
|
|
2712
|
-
const { ContextQL } = await import("./dist-
|
|
2712
|
+
const { ContextQL } = await import("./dist-OEXTQQZC.js");
|
|
2713
2713
|
const cql = new ContextQL(store);
|
|
2714
2714
|
const direction = input.direction ?? "both";
|
|
2715
2715
|
const bidirectional = direction === "both" || direction === "inbound";
|
|
@@ -2815,7 +2815,7 @@ async function handleGetImpact(input) {
|
|
|
2815
2815
|
const projectPath = sanitizePath(input.path);
|
|
2816
2816
|
const store = await loadGraphStore(projectPath);
|
|
2817
2817
|
if (!store) return graphNotFoundError();
|
|
2818
|
-
const { ContextQL } = await import("./dist-
|
|
2818
|
+
const { ContextQL } = await import("./dist-OEXTQQZC.js");
|
|
2819
2819
|
let targetNodeId = input.nodeId;
|
|
2820
2820
|
if (!targetNodeId && input.filePath) {
|
|
2821
2821
|
const fileNodes = store.findNodes({ type: "file" });
|
|
@@ -2947,7 +2947,7 @@ async function handleIngestSource(input) {
|
|
|
2947
2947
|
try {
|
|
2948
2948
|
const projectPath = sanitizePath(input.path);
|
|
2949
2949
|
const graphDir = path16.join(projectPath, ".harness", "graph");
|
|
2950
|
-
const { GraphStore, CodeIngestor, TopologicalLinker, KnowledgeIngestor, GitIngestor } = await import("./dist-
|
|
2950
|
+
const { GraphStore, CodeIngestor, TopologicalLinker, KnowledgeIngestor, GitIngestor } = await import("./dist-OEXTQQZC.js");
|
|
2951
2951
|
const fs17 = await import("fs/promises");
|
|
2952
2952
|
await fs17.mkdir(graphDir, { recursive: true });
|
|
2953
2953
|
const store = new GraphStore();
|
|
@@ -3022,7 +3022,7 @@ async function handleDetectAnomalies(input) {
|
|
|
3022
3022
|
const projectPath = sanitizePath(input.path);
|
|
3023
3023
|
const store = await loadGraphStore(projectPath);
|
|
3024
3024
|
if (!store) return graphNotFoundError();
|
|
3025
|
-
const { GraphAnomalyAdapter } = await import("./dist-
|
|
3025
|
+
const { GraphAnomalyAdapter } = await import("./dist-OEXTQQZC.js");
|
|
3026
3026
|
const adapter = new GraphAnomalyAdapter(store);
|
|
3027
3027
|
const report = adapter.detect({
|
|
3028
3028
|
...input.threshold !== void 0 && { threshold: input.threshold },
|
|
@@ -3062,7 +3062,7 @@ async function handleAskGraph(input) {
|
|
|
3062
3062
|
const projectPath = sanitizePath(input.path);
|
|
3063
3063
|
const store = await loadGraphStore(projectPath);
|
|
3064
3064
|
if (!store) return graphNotFoundError();
|
|
3065
|
-
const { askGraph } = await import("./dist-
|
|
3065
|
+
const { askGraph } = await import("./dist-OEXTQQZC.js");
|
|
3066
3066
|
const result = await askGraph(store, input.question);
|
|
3067
3067
|
return {
|
|
3068
3068
|
content: [{ type: "text", text: JSON.stringify(result) }]
|
|
@@ -3198,7 +3198,7 @@ var generateAgentDefinitionsDefinition = {
|
|
|
3198
3198
|
}
|
|
3199
3199
|
};
|
|
3200
3200
|
async function handleGenerateAgentDefinitions(input) {
|
|
3201
|
-
const { generateAgentDefinitions } = await import("./generate-agent-definitions-
|
|
3201
|
+
const { generateAgentDefinitions } = await import("./generate-agent-definitions-HNJHO5YQ.js");
|
|
3202
3202
|
const platforms = input.platform === "all" || !input.platform ? ["claude-code", "gemini-cli"] : [input.platform];
|
|
3203
3203
|
const results = generateAgentDefinitions({
|
|
3204
3204
|
platforms: [...platforms],
|
|
@@ -3248,6 +3248,10 @@ var manageRoadmapDefinition = {
|
|
|
3248
3248
|
items: { type: "string" },
|
|
3249
3249
|
description: "Blocking feature names (optional for add/update)"
|
|
3250
3250
|
},
|
|
3251
|
+
assignee: {
|
|
3252
|
+
type: "string",
|
|
3253
|
+
description: "Assignee username/email (optional for update). Tracks assignment history."
|
|
3254
|
+
},
|
|
3251
3255
|
filter: {
|
|
3252
3256
|
type: "string",
|
|
3253
3257
|
description: 'Query filter: "blocked", "in-progress", "done", "planned", "backlog", or "milestone:<name>" (required for query)'
|
|
@@ -3397,6 +3401,9 @@ function handleUpdate(projectPath, input, deps) {
|
|
|
3397
3401
|
if (input.spec !== void 0) feature.spec = input.spec || null;
|
|
3398
3402
|
if (input.plans !== void 0) feature.plans = input.plans;
|
|
3399
3403
|
if (input.blocked_by !== void 0) feature.blockedBy = input.blocked_by;
|
|
3404
|
+
if (input.assignee !== void 0) {
|
|
3405
|
+
deps.assignFeature(roadmap, feature, input.assignee, (/* @__PURE__ */ new Date()).toISOString().slice(0, 10));
|
|
3406
|
+
}
|
|
3400
3407
|
found = true;
|
|
3401
3408
|
break;
|
|
3402
3409
|
}
|
|
@@ -3519,10 +3526,17 @@ function shouldTriggerExternalSync(input, response) {
|
|
|
3519
3526
|
}
|
|
3520
3527
|
async function handleManageRoadmap(input) {
|
|
3521
3528
|
try {
|
|
3522
|
-
const { parseRoadmap, serializeRoadmap, syncRoadmap, applySyncChanges } = await import("./dist-
|
|
3529
|
+
const { parseRoadmap, serializeRoadmap, syncRoadmap, applySyncChanges, assignFeature } = await import("./dist-YIKUBJLQ.js");
|
|
3523
3530
|
const { Ok: Ok2 } = await import("./dist-USY2C5JL.js");
|
|
3524
3531
|
const projectPath = sanitizePath(input.path);
|
|
3525
|
-
const deps = {
|
|
3532
|
+
const deps = {
|
|
3533
|
+
parseRoadmap,
|
|
3534
|
+
serializeRoadmap,
|
|
3535
|
+
syncRoadmap,
|
|
3536
|
+
applySyncChanges,
|
|
3537
|
+
assignFeature,
|
|
3538
|
+
Ok: Ok2
|
|
3539
|
+
};
|
|
3526
3540
|
const response = dispatchAction(input.action, projectPath, input, deps);
|
|
3527
3541
|
if (shouldTriggerExternalSync(input, response)) {
|
|
3528
3542
|
await triggerExternalSync(projectPath, roadmapPath(projectPath)).catch(() => {
|
|
@@ -3947,7 +3961,7 @@ async function handleTransition(validInput, projectPath, id) {
|
|
|
3947
3961
|
const transition = transitionResult.data;
|
|
3948
3962
|
const prompt = renderTransition(transition);
|
|
3949
3963
|
try {
|
|
3950
|
-
const { saveHandoff } = await import("./dist-
|
|
3964
|
+
const { saveHandoff } = await import("./dist-YIKUBJLQ.js");
|
|
3951
3965
|
await saveHandoff(
|
|
3952
3966
|
projectPath,
|
|
3953
3967
|
{
|
|
@@ -4015,7 +4029,7 @@ async function handleEmitInteraction(input) {
|
|
|
4015
4029
|
}
|
|
4016
4030
|
async function recordInteraction(projectPath, id, type, decision, stream) {
|
|
4017
4031
|
try {
|
|
4018
|
-
const { loadState, saveState } = await import("./dist-
|
|
4032
|
+
const { loadState, saveState } = await import("./dist-YIKUBJLQ.js");
|
|
4019
4033
|
const stateResult = await loadState(projectPath, stream);
|
|
4020
4034
|
if (stateResult.ok) {
|
|
4021
4035
|
const state = stateResult.value;
|
|
@@ -4104,10 +4118,10 @@ async function handleGatherContext(input) {
|
|
|
4104
4118
|
input.include ?? ["state", "learnings", "handoff", "graph", "validation"]
|
|
4105
4119
|
);
|
|
4106
4120
|
const errors = [];
|
|
4107
|
-
const statePromise = includeSet.has("state") ? import("./dist-
|
|
4121
|
+
const statePromise = includeSet.has("state") ? import("./dist-YIKUBJLQ.js").then(
|
|
4108
4122
|
(core) => core.loadState(projectPath, void 0, input.session)
|
|
4109
4123
|
) : Promise.resolve(null);
|
|
4110
|
-
const learningsPromise = includeSet.has("learnings") ? import("./dist-
|
|
4124
|
+
const learningsPromise = includeSet.has("learnings") ? import("./dist-YIKUBJLQ.js").then(
|
|
4111
4125
|
(core) => core.loadBudgetedLearnings(projectPath, {
|
|
4112
4126
|
intent: input.intent,
|
|
4113
4127
|
tokenBudget: input.learningsBudget ?? 1e3,
|
|
@@ -4116,14 +4130,14 @@ async function handleGatherContext(input) {
|
|
|
4116
4130
|
...input.depth !== void 0 && { depth: input.depth }
|
|
4117
4131
|
})
|
|
4118
4132
|
) : Promise.resolve(null);
|
|
4119
|
-
const handoffPromise = includeSet.has("handoff") ? import("./dist-
|
|
4133
|
+
const handoffPromise = includeSet.has("handoff") ? import("./dist-YIKUBJLQ.js").then(
|
|
4120
4134
|
(core) => core.loadHandoff(projectPath, void 0, input.session)
|
|
4121
4135
|
) : Promise.resolve(null);
|
|
4122
4136
|
const graphPromise = includeSet.has("graph") ? (async () => {
|
|
4123
|
-
const { loadGraphStore: loadGraphStore2 } = await import("./graph-loader-
|
|
4137
|
+
const { loadGraphStore: loadGraphStore2 } = await import("./graph-loader-XULF5QF7.js");
|
|
4124
4138
|
const store = await loadGraphStore2(projectPath);
|
|
4125
4139
|
if (!store) return null;
|
|
4126
|
-
const { FusionLayer, ContextQL } = await import("./dist-
|
|
4140
|
+
const { FusionLayer, ContextQL } = await import("./dist-OEXTQQZC.js");
|
|
4127
4141
|
const fusion = new FusionLayer(store);
|
|
4128
4142
|
const cql = new ContextQL(store);
|
|
4129
4143
|
const tokenBudget = input.tokenBudget ?? 4e3;
|
|
@@ -4160,11 +4174,11 @@ async function handleGatherContext(input) {
|
|
|
4160
4174
|
context: contextBlocks
|
|
4161
4175
|
};
|
|
4162
4176
|
})() : Promise.resolve(null);
|
|
4163
|
-
const sessionsPromise = includeSet.has("sessions") && input.session ? import("./dist-
|
|
4177
|
+
const sessionsPromise = includeSet.has("sessions") && input.session ? import("./dist-YIKUBJLQ.js").then(
|
|
4164
4178
|
(core) => core.readSessionSections(projectPath, input.session)
|
|
4165
4179
|
) : Promise.resolve(null);
|
|
4166
4180
|
const shouldIncludeEvents = input.includeEvents !== void 0 ? input.includeEvents : includeSet.has("events") || !!input.session && !input.include;
|
|
4167
|
-
const eventsPromise = shouldIncludeEvents ? import("./dist-
|
|
4181
|
+
const eventsPromise = shouldIncludeEvents ? import("./dist-YIKUBJLQ.js").then(async (core) => {
|
|
4168
4182
|
const result = await core.loadEvents(projectPath, {
|
|
4169
4183
|
session: input.session
|
|
4170
4184
|
});
|
|
@@ -4172,7 +4186,7 @@ async function handleGatherContext(input) {
|
|
|
4172
4186
|
return core.formatEventTimeline(result.value);
|
|
4173
4187
|
}) : Promise.resolve(null);
|
|
4174
4188
|
const validationPromise = includeSet.has("validation") ? (async () => {
|
|
4175
|
-
const { handleValidateProject: handleValidateProject2 } = await import("./validate-
|
|
4189
|
+
const { handleValidateProject: handleValidateProject2 } = await import("./validate-NHXWKMCR.js");
|
|
4176
4190
|
const result = await handleValidateProject2({ path: projectPath });
|
|
4177
4191
|
const first = result.content[0];
|
|
4178
4192
|
return first ? JSON.parse(first.text) : null;
|
|
@@ -4266,7 +4280,7 @@ async function handleGatherContext(input) {
|
|
|
4266
4280
|
};
|
|
4267
4281
|
if (input.session) {
|
|
4268
4282
|
try {
|
|
4269
|
-
const core = await import("./dist-
|
|
4283
|
+
const core = await import("./dist-YIKUBJLQ.js");
|
|
4270
4284
|
core.updateSessionIndex(
|
|
4271
4285
|
projectPath,
|
|
4272
4286
|
input.session,
|
|
@@ -4392,7 +4406,7 @@ async function handleReviewChanges(input) {
|
|
|
4392
4406
|
}
|
|
4393
4407
|
}
|
|
4394
4408
|
async function runQuickReview(projectPath, diff, diffLines, downgraded) {
|
|
4395
|
-
const { handleAnalyzeDiff: handleAnalyzeDiff2 } = await import("./feedback-
|
|
4409
|
+
const { handleAnalyzeDiff: handleAnalyzeDiff2 } = await import("./feedback-2EU25RIW.js");
|
|
4396
4410
|
const result = await handleAnalyzeDiff2({ diff, path: projectPath });
|
|
4397
4411
|
const firstContent = result.content[0];
|
|
4398
4412
|
if (!firstContent) throw new Error("Empty analyze_diff response");
|
|
@@ -4423,7 +4437,7 @@ function extractFileCount(diffParsed) {
|
|
|
4423
4437
|
return files?.length ?? 0;
|
|
4424
4438
|
}
|
|
4425
4439
|
async function runStandardReview(projectPath, diff, diffLines, downgraded) {
|
|
4426
|
-
const { handleAnalyzeDiff: handleAnalyzeDiff2, handleCreateSelfReview: handleCreateSelfReview2 } = await import("./feedback-
|
|
4440
|
+
const { handleAnalyzeDiff: handleAnalyzeDiff2, handleCreateSelfReview: handleCreateSelfReview2 } = await import("./feedback-2EU25RIW.js");
|
|
4427
4441
|
const [diffResult, reviewResult] = await Promise.all([
|
|
4428
4442
|
handleAnalyzeDiff2({ diff, path: projectPath }),
|
|
4429
4443
|
handleCreateSelfReview2({ path: projectPath, diff })
|
|
@@ -4455,7 +4469,7 @@ async function runStandardReview(projectPath, diff, diffLines, downgraded) {
|
|
|
4455
4469
|
};
|
|
4456
4470
|
}
|
|
4457
4471
|
async function runDeepReview(projectPath, diff, diffLines, _downgraded) {
|
|
4458
|
-
const { handleRunCodeReview: handleRunCodeReview2 } = await import("./review-pipeline-
|
|
4472
|
+
const { handleRunCodeReview: handleRunCodeReview2 } = await import("./review-pipeline-YD4WI3JM.js");
|
|
4459
4473
|
const result = await handleRunCodeReview2({ path: projectPath, diff });
|
|
4460
4474
|
const deepContent = result.content[0];
|
|
4461
4475
|
if (!deepContent) throw new Error("Empty code review response");
|
|
@@ -4526,7 +4540,7 @@ async function handleCheckTaskIndependence(input) {
|
|
|
4526
4540
|
try {
|
|
4527
4541
|
const projectPath = sanitizePath(input.path);
|
|
4528
4542
|
const store = await loadGraphStore(projectPath);
|
|
4529
|
-
const { TaskIndependenceAnalyzer } = await import("./dist-
|
|
4543
|
+
const { TaskIndependenceAnalyzer } = await import("./dist-OEXTQQZC.js");
|
|
4530
4544
|
const analyzer = new TaskIndependenceAnalyzer(store ?? void 0);
|
|
4531
4545
|
const result = analyzer.analyze({
|
|
4532
4546
|
tasks: input.tasks,
|
|
@@ -4614,7 +4628,7 @@ async function handlePredictConflicts(input) {
|
|
|
4614
4628
|
try {
|
|
4615
4629
|
const projectPath = sanitizePath(input.path);
|
|
4616
4630
|
const store = await loadGraphStore(projectPath);
|
|
4617
|
-
const { ConflictPredictor } = await import("./dist-
|
|
4631
|
+
const { ConflictPredictor } = await import("./dist-OEXTQQZC.js");
|
|
4618
4632
|
const predictor = new ConflictPredictor(store ?? void 0);
|
|
4619
4633
|
const result = predictor.predict({
|
|
4620
4634
|
tasks: input.tasks,
|
|
@@ -4720,7 +4734,7 @@ async function handleDetectStaleConstraints(input) {
|
|
|
4720
4734
|
isError: true
|
|
4721
4735
|
};
|
|
4722
4736
|
}
|
|
4723
|
-
const { loadGraphStore: loadGraphStore2 } = await import("./graph-loader-
|
|
4737
|
+
const { loadGraphStore: loadGraphStore2 } = await import("./graph-loader-XULF5QF7.js");
|
|
4724
4738
|
const store = await loadGraphStore2(projectPath);
|
|
4725
4739
|
if (!store) {
|
|
4726
4740
|
return {
|
|
@@ -4741,7 +4755,7 @@ async function handleDetectStaleConstraints(input) {
|
|
|
4741
4755
|
]
|
|
4742
4756
|
};
|
|
4743
4757
|
}
|
|
4744
|
-
const { detectStaleConstraints } = await import("./dist-
|
|
4758
|
+
const { detectStaleConstraints } = await import("./dist-YIKUBJLQ.js");
|
|
4745
4759
|
const result = detectStaleConstraints(
|
|
4746
4760
|
store,
|
|
4747
4761
|
windowDays,
|
|
@@ -4858,10 +4872,10 @@ function countCriticalFindings(securityData) {
|
|
|
4858
4872
|
return findings.filter((f) => f.severity === "error").length;
|
|
4859
4873
|
}
|
|
4860
4874
|
async function runHealthChecks(projectPath) {
|
|
4861
|
-
const { handleAssessProject: handleAssessProject2 } = await import("./assess-project-
|
|
4862
|
-
const { handleCheckDependencies: handleCheckDependencies2 } = await import("./architecture-
|
|
4863
|
-
const { handleDetectEntropy: handleDetectEntropy2 } = await import("./entropy-
|
|
4864
|
-
const { handleRunSecurityScan: handleRunSecurityScan2 } = await import("./security-
|
|
4875
|
+
const { handleAssessProject: handleAssessProject2 } = await import("./assess-project-CEDY4JU3.js");
|
|
4876
|
+
const { handleCheckDependencies: handleCheckDependencies2 } = await import("./architecture-EDSBAGR4.js");
|
|
4877
|
+
const { handleDetectEntropy: handleDetectEntropy2 } = await import("./entropy-A5Q2USYX.js");
|
|
4878
|
+
const { handleRunSecurityScan: handleRunSecurityScan2 } = await import("./security-IBSUKMVD.js");
|
|
4865
4879
|
const [assessResult, depsResult, entropyResult, securityResult] = await Promise.all([
|
|
4866
4880
|
handleAssessProject2({
|
|
4867
4881
|
path: projectPath,
|
|
@@ -4907,10 +4921,10 @@ function avg(values) {
|
|
|
4907
4921
|
}
|
|
4908
4922
|
async function runGraphMetrics(projectPath) {
|
|
4909
4923
|
try {
|
|
4910
|
-
const { loadGraphStore: loadGraphStore2 } = await import("./graph-loader-
|
|
4924
|
+
const { loadGraphStore: loadGraphStore2 } = await import("./graph-loader-XULF5QF7.js");
|
|
4911
4925
|
const store = await loadGraphStore2(projectPath);
|
|
4912
4926
|
if (!store) return ZERO_METRICS;
|
|
4913
|
-
const { GraphCouplingAdapter, GraphComplexityAdapter, GraphAnomalyAdapter } = await import("./dist-
|
|
4927
|
+
const { GraphCouplingAdapter, GraphComplexityAdapter, GraphAnomalyAdapter } = await import("./dist-OEXTQQZC.js");
|
|
4914
4928
|
const couplingAdapter = new GraphCouplingAdapter(store);
|
|
4915
4929
|
const couplingData = couplingAdapter.computeCouplingData();
|
|
4916
4930
|
const files = couplingData.files;
|
|
@@ -5076,7 +5090,7 @@ async function handleGetDecayTrends(input) {
|
|
|
5076
5090
|
};
|
|
5077
5091
|
}
|
|
5078
5092
|
try {
|
|
5079
|
-
const core = await import("./dist-
|
|
5093
|
+
const core = await import("./dist-YIKUBJLQ.js");
|
|
5080
5094
|
const { TimelineManager } = core;
|
|
5081
5095
|
const manager = new TimelineManager(projectPath);
|
|
5082
5096
|
const timeline = manager.load();
|
|
@@ -5181,7 +5195,7 @@ async function handleCodeOutline(input) {
|
|
|
5181
5195
|
};
|
|
5182
5196
|
}
|
|
5183
5197
|
try {
|
|
5184
|
-
const { getOutline, formatOutline, EXTENSION_MAP } = await import("./dist-
|
|
5198
|
+
const { getOutline, formatOutline, EXTENSION_MAP } = await import("./dist-YIKUBJLQ.js");
|
|
5185
5199
|
const { stat } = await import("fs/promises");
|
|
5186
5200
|
const stats = await stat(targetPath).catch(() => null);
|
|
5187
5201
|
if (stats?.isFile()) {
|
|
@@ -5261,7 +5275,7 @@ async function handleCodeSearch(input) {
|
|
|
5261
5275
|
};
|
|
5262
5276
|
}
|
|
5263
5277
|
try {
|
|
5264
|
-
const { searchSymbols } = await import("./dist-
|
|
5278
|
+
const { searchSymbols } = await import("./dist-YIKUBJLQ.js");
|
|
5265
5279
|
const result = await searchSymbols(input.query, directory, input.glob);
|
|
5266
5280
|
const lines = [`Search: "${result.query}" \u2014 ${result.matches.length} matches`];
|
|
5267
5281
|
for (const match of result.matches) {
|
|
@@ -5330,7 +5344,7 @@ async function handleCodeUnfold(input) {
|
|
|
5330
5344
|
}
|
|
5331
5345
|
try {
|
|
5332
5346
|
if (input.symbol) {
|
|
5333
|
-
const { unfoldSymbol } = await import("./dist-
|
|
5347
|
+
const { unfoldSymbol } = await import("./dist-YIKUBJLQ.js");
|
|
5334
5348
|
const result = await unfoldSymbol(filePath, input.symbol);
|
|
5335
5349
|
const header = result.warning ? `${result.file}:${result.startLine}-${result.endLine} ${result.warning}
|
|
5336
5350
|
` : `${result.file}:${result.startLine}-${result.endLine}
|
|
@@ -5338,7 +5352,7 @@ async function handleCodeUnfold(input) {
|
|
|
5338
5352
|
return { content: [{ type: "text", text: header + result.content }] };
|
|
5339
5353
|
}
|
|
5340
5354
|
if (input.startLine != null && input.endLine != null) {
|
|
5341
|
-
const { unfoldRange } = await import("./dist-
|
|
5355
|
+
const { unfoldRange } = await import("./dist-YIKUBJLQ.js");
|
|
5342
5356
|
const result = await unfoldRange(filePath, input.startLine, input.endLine);
|
|
5343
5357
|
const header = `${result.file}:${result.startLine}-${result.endLine}
|
|
5344
5358
|
`;
|
|
@@ -5400,7 +5414,7 @@ async function handleCheckTraceability(input) {
|
|
|
5400
5414
|
isError: true
|
|
5401
5415
|
};
|
|
5402
5416
|
}
|
|
5403
|
-
const { queryTraceability } = await import("./dist-
|
|
5417
|
+
const { queryTraceability } = await import("./dist-OEXTQQZC.js");
|
|
5404
5418
|
const options = {};
|
|
5405
5419
|
if (input.spec) options.specPath = input.spec;
|
|
5406
5420
|
if (input.feature) options.featureName = input.feature;
|
|
@@ -5523,7 +5537,7 @@ async function handlePredictFailures(input) {
|
|
|
5523
5537
|
};
|
|
5524
5538
|
}
|
|
5525
5539
|
try {
|
|
5526
|
-
const core = await import("./dist-
|
|
5540
|
+
const core = await import("./dist-YIKUBJLQ.js");
|
|
5527
5541
|
const { TimelineManager, PredictionEngine, SpecImpactEstimator } = core;
|
|
5528
5542
|
const manager = new TimelineManager(projectPath);
|
|
5529
5543
|
const includeRoadmap = input.includeRoadmap !== false;
|
|
@@ -6056,7 +6070,7 @@ async function appendUpdateNotification(result, resolvedRoot) {
|
|
|
6056
6070
|
shouldRunCheck,
|
|
6057
6071
|
readCheckState,
|
|
6058
6072
|
spawnBackgroundCheck
|
|
6059
|
-
} = await import("./dist-
|
|
6073
|
+
} = await import("./dist-YIKUBJLQ.js");
|
|
6060
6074
|
const { CLI_VERSION } = await import("./version-KFFPOQAX.js");
|
|
6061
6075
|
const configInterval = readConfigInterval(resolvedRoot);
|
|
6062
6076
|
const DEFAULT_INTERVAL = 864e5;
|
|
@@ -26,7 +26,7 @@ var runSecurityScanDefinition = {
|
|
|
26
26
|
};
|
|
27
27
|
async function handleRunSecurityScan(input) {
|
|
28
28
|
try {
|
|
29
|
-
const core = await import("./dist-
|
|
29
|
+
const core = await import("./dist-YIKUBJLQ.js");
|
|
30
30
|
const projectRoot = sanitizePath(input.path);
|
|
31
31
|
let configData = {};
|
|
32
32
|
try {
|