@harness-engineering/cli 1.24.3 → 1.25.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-architecture-advisor/SKILL.md +10 -6
- package/dist/agents/skills/claude-code/harness-code-review/SKILL.md +40 -5
- package/dist/agents/skills/claude-code/harness-git-workflow/SKILL.md +32 -11
- package/dist/agents/skills/claude-code/harness-planning/SKILL.md +19 -0
- package/dist/agents/skills/claude-code/harness-skill-authoring/SKILL.md +42 -7
- package/dist/agents/skills/claude-code/harness-verification/SKILL.md +25 -0
- package/dist/agents/skills/codex/harness-architecture-advisor/SKILL.md +10 -6
- package/dist/agents/skills/codex/harness-code-review/SKILL.md +40 -5
- package/dist/agents/skills/codex/harness-git-workflow/SKILL.md +32 -11
- package/dist/agents/skills/codex/harness-planning/SKILL.md +19 -0
- package/dist/agents/skills/codex/harness-skill-authoring/SKILL.md +42 -7
- package/dist/agents/skills/codex/harness-verification/SKILL.md +25 -0
- package/dist/agents/skills/cursor/harness-architecture-advisor/SKILL.md +10 -6
- package/dist/agents/skills/cursor/harness-code-review/SKILL.md +40 -5
- package/dist/agents/skills/cursor/harness-git-workflow/SKILL.md +32 -11
- package/dist/agents/skills/cursor/harness-planning/SKILL.md +19 -0
- package/dist/agents/skills/cursor/harness-skill-authoring/SKILL.md +42 -7
- package/dist/agents/skills/cursor/harness-verification/SKILL.md +25 -0
- package/dist/agents/skills/gemini-cli/harness-architecture-advisor/SKILL.md +10 -6
- package/dist/agents/skills/gemini-cli/harness-code-review/SKILL.md +40 -5
- package/dist/agents/skills/gemini-cli/harness-git-workflow/SKILL.md +32 -11
- package/dist/agents/skills/gemini-cli/harness-planning/SKILL.md +19 -0
- package/dist/agents/skills/gemini-cli/harness-skill-authoring/SKILL.md +42 -7
- package/dist/agents/skills/gemini-cli/harness-verification/SKILL.md +25 -0
- package/dist/agents-md-MCUM4SIZ.js +10 -0
- package/dist/{architecture-FBSLURIB.js → architecture-HNIO6AUX.js} +6 -5
- package/dist/{assess-project-74UVWPMB.js → assess-project-6MV5TNY3.js} +2 -1
- package/dist/bin/harness-mcp.js +18 -17
- package/dist/bin/harness.js +47 -31
- package/dist/{check-phase-gate-WY6UICCL.js → check-phase-gate-VCBQHQAC.js} +6 -5
- package/dist/{chunk-Q3XYV5UC.js → chunk-47N6R2F4.js} +5 -1
- package/dist/{chunk-3XAPHB2Z.js → chunk-4NK7Z3BP.js} +1 -1
- package/dist/{chunk-I4QR3HNH.js → chunk-5BQ5BOJL.js} +5 -1
- package/dist/{chunk-LM5Z2WCA.js → chunk-6VZQJ5CX.js} +5 -1
- package/dist/{chunk-NV4FPO7J.js → chunk-AT74HEQM.js} +1 -1
- package/dist/{chunk-ZAMT24QN.js → chunk-AZT567I6.js} +1525 -735
- package/dist/{chunk-TDLOFNNQ.js → chunk-BOQRTARD.js} +1 -1
- package/dist/{chunk-A737JDL4.js → chunk-CXJTVICF.js} +4 -4
- package/dist/{chunk-LOUH2LIC.js → chunk-EHRZMOQ2.js} +5 -1
- package/dist/{chunk-L5UONZ53.js → chunk-F23H3U5U.js} +6 -2
- package/dist/{chunk-YPKKEP3O.js → chunk-FES2YEQU.js} +9 -9
- package/dist/{chunk-SPTKLCKC.js → chunk-FIQL2HND.js} +6 -2
- package/dist/{chunk-FP53DDB5.js → chunk-FSNPBT74.js} +5 -1
- package/dist/{chunk-TB427QOK.js → chunk-GEEYCQDS.js} +13 -9
- package/dist/{chunk-ZOVATVQC.js → chunk-HIK6OEUF.js} +6 -1
- package/dist/chunk-K2SON7TI.js +5382 -0
- package/dist/chunk-KFQGP6VL.js +33 -0
- package/dist/{chunk-V2FGX2KD.js → chunk-M55DGGF3.js} +9 -5
- package/dist/{chunk-H4U2QNY2.js → chunk-MI6MA6OP.js} +16888 -13143
- package/dist/{chunk-YDRB55Q4.js → chunk-P7PANON5.js} +5 -1
- package/dist/chunk-RL4VMEXL.js +53 -0
- package/dist/{chunk-XNEMDKV5.js → chunk-RRHUCDRD.js} +1 -1
- package/dist/{chunk-O6UF33QH.js → chunk-RX7TUMBR.js} +320 -136
- package/dist/{chunk-3VYWO6QN.js → chunk-TYV4EUAD.js} +12 -8
- package/dist/{chunk-FJYP32IV.js → chunk-UQZBZINS.js} +6 -6
- package/dist/{chunk-UFQQBGC3.js → chunk-UV3BZMGT.js} +64 -3
- package/dist/{chunk-5PMRARB5.js → chunk-WIQA4BSH.js} +12 -5
- package/dist/{chunk-UQEUYRBP.js → chunk-WWACIIBA.js} +1 -1
- package/dist/{chunk-LVYPPKZI.js → chunk-XTITAVUR.js} +5 -1
- package/dist/{chunk-WEN5Z7CL.js → chunk-YTP2UDPV.js} +3 -3
- package/dist/ci-workflow-RTM7VVTD.js +10 -0
- package/dist/{constants-5JGUXPEK.js → constants-P4M3C2T3.js} +1 -0
- package/dist/{create-skill-QCXINA5Q.js → create-skill-6QWJHQYS.js} +3 -2
- package/dist/{dist-666AAZQ6.js → dist-3EWNRFFQ.js} +6 -1
- package/dist/{dist-RRMRZRV7.js → dist-ABTKRYZH.js} +1 -0
- package/dist/{dist-QW5G3GX3.js → dist-RADHOOXG.js} +4 -1
- package/dist/{dist-7EBSGAHX.js → dist-WCSJHQPK.js} +106 -3
- package/dist/{docs-H34GBVRS.js → docs-UBOGGHTY.js} +6 -5
- package/dist/engine-MJJAP5CH.js +10 -0
- package/dist/{entropy-ZAY73R6A.js → entropy-EMSXF2PX.js} +5 -4
- package/dist/{feedback-TMEGYMWU.js → feedback-ZLUX72HD.js} +2 -1
- package/dist/{generate-agent-definitions-PQPG6SX5.js → generate-agent-definitions-AWLPJ27C.js} +6 -5
- package/dist/{glob-helper-SRXMZPKM.js → glob-helper-VCQXK5XY.js} +2 -0
- package/dist/{graph-loader-M6FXJAKK.js → graph-loader-JHQVQRUS.js} +2 -1
- package/dist/index.d.ts +13 -7
- package/dist/index.js +30 -29
- package/dist/loader-JVSJZSWZ.js +12 -0
- package/dist/mcp-2553PNUC.js +38 -0
- package/dist/{performance-N67YJJDG.js → performance-7AGWJUY4.js} +6 -5
- package/dist/review-pipeline-ZWVQJTJX.js +13 -0
- package/dist/{runner-TY7DJGQV.js → runner-AAEF2TXY.js} +1 -0
- package/dist/runtime-D6YUQPP2.js +11 -0
- package/dist/{scan-U67OKDRS.js → scan-MPJ6JHUY.js} +2 -1
- package/dist/security-JLZUAQYT.js +14 -0
- package/dist/skill-executor-MOCUIAYS.js +9 -0
- package/dist/templates/base/.agnix.toml +16 -0
- package/dist/templates/orchestrator/WORKFLOW.md +55 -7
- package/dist/templates/orchestrator/template.json +1 -0
- package/dist/tool-tiers-7QGZ3FKY.js +98 -0
- package/dist/validate-TIIHRPMA.js +14 -0
- package/dist/validate-cross-check-ZOWFA3DB.js +10 -0
- package/dist/{version-KFFPOQAX.js → version-CUI434OP.js} +1 -0
- package/package.json +4 -4
- package/dist/agents-md-PBKKTSQY.js +0 -9
- package/dist/chunk-5LMZA5LZ.js +0 -38
- package/dist/chunk-OZIHPMA7.js +0 -5171
- package/dist/ci-workflow-QZRHAIO2.js +0 -9
- package/dist/engine-VUQEAJFZ.js +0 -9
- package/dist/loader-Y6A42WBD.js +0 -11
- package/dist/mcp-LCHC4NZ5.js +0 -37
- package/dist/review-pipeline-YXF5ITL2.js +0 -12
- package/dist/runtime-XNJUJCSG.js +0 -10
- package/dist/security-L2YN3CTI.js +0 -9
- package/dist/skill-executor-GA7BDX3F.js +0 -8
- package/dist/validate-MNE25KLZ.js +0 -13
- package/dist/validate-cross-check-Y4PDR63C.js +0 -9
|
@@ -7,12 +7,16 @@ import {
|
|
|
7
7
|
import {
|
|
8
8
|
findConfigFile,
|
|
9
9
|
loadConfig
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-WIQA4BSH.js";
|
|
11
|
+
import {
|
|
12
|
+
init_dist
|
|
13
|
+
} from "./chunk-MI6MA6OP.js";
|
|
11
14
|
import {
|
|
12
15
|
Ok
|
|
13
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-RL4VMEXL.js";
|
|
14
17
|
|
|
15
18
|
// src/mcp/tools/performance.ts
|
|
19
|
+
init_dist();
|
|
16
20
|
var checkPerformanceDefinition = {
|
|
17
21
|
name: "check_performance",
|
|
18
22
|
description: "Run performance checks: structural complexity, coupling metrics, and size budgets",
|
|
@@ -31,7 +35,7 @@ var checkPerformanceDefinition = {
|
|
|
31
35
|
};
|
|
32
36
|
async function handleCheckPerformance(input) {
|
|
33
37
|
try {
|
|
34
|
-
const { EntropyAnalyzer } = await import("./dist-
|
|
38
|
+
const { EntropyAnalyzer } = await import("./dist-WCSJHQPK.js");
|
|
35
39
|
const typeFilter = input.type ?? "all";
|
|
36
40
|
const projectPath = sanitizePath(input.path);
|
|
37
41
|
let entryPoints;
|
|
@@ -54,10 +58,10 @@ async function handleCheckPerformance(input) {
|
|
|
54
58
|
});
|
|
55
59
|
let graphOptions;
|
|
56
60
|
try {
|
|
57
|
-
const { loadGraphStore } = await import("./graph-loader-
|
|
61
|
+
const { loadGraphStore } = await import("./graph-loader-JHQVQRUS.js");
|
|
58
62
|
const store = await loadGraphStore(projectPath);
|
|
59
63
|
if (store) {
|
|
60
|
-
const { GraphComplexityAdapter, GraphCouplingAdapter } = await import("./dist-
|
|
64
|
+
const { GraphComplexityAdapter, GraphCouplingAdapter } = await import("./dist-RADHOOXG.js");
|
|
61
65
|
const complexityAdapter = new GraphComplexityAdapter(store);
|
|
62
66
|
const couplingAdapter = new GraphCouplingAdapter(store);
|
|
63
67
|
graphOptions = {
|
|
@@ -94,7 +98,7 @@ var getPerfBaselinesDefinition = {
|
|
|
94
98
|
};
|
|
95
99
|
async function handleGetPerfBaselines(input) {
|
|
96
100
|
try {
|
|
97
|
-
const { BaselineManager } = await import("./dist-
|
|
101
|
+
const { BaselineManager } = await import("./dist-WCSJHQPK.js");
|
|
98
102
|
const manager = new BaselineManager(sanitizePath(input.path));
|
|
99
103
|
const baselines = manager.load();
|
|
100
104
|
return resultToMcpResponse(
|
|
@@ -142,7 +146,7 @@ var updatePerfBaselinesDefinition = {
|
|
|
142
146
|
};
|
|
143
147
|
async function handleUpdatePerfBaselines(input) {
|
|
144
148
|
try {
|
|
145
|
-
const { BaselineManager } = await import("./dist-
|
|
149
|
+
const { BaselineManager } = await import("./dist-WCSJHQPK.js");
|
|
146
150
|
const manager = new BaselineManager(sanitizePath(input.path));
|
|
147
151
|
manager.save(input.results, input.commitHash);
|
|
148
152
|
const updated = manager.load();
|
|
@@ -172,7 +176,7 @@ var getCriticalPathsDefinition = {
|
|
|
172
176
|
};
|
|
173
177
|
async function handleGetCriticalPaths(input) {
|
|
174
178
|
try {
|
|
175
|
-
const { CriticalPathResolver } = await import("./dist-
|
|
179
|
+
const { CriticalPathResolver } = await import("./dist-WCSJHQPK.js");
|
|
176
180
|
const resolver = new CriticalPathResolver(sanitizePath(input.path));
|
|
177
181
|
const result = await resolver.resolve();
|
|
178
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-TIIHRPMA.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-HNIO6AUX.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-UBOGGHTY.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-EMSXF2PX.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-JLZUAQYT.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-7AGWJUY4.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";
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
|
|
5
5
|
// src/mcp/tools/security.ts
|
|
6
6
|
import * as path from "path";
|
|
7
|
+
import { execSync } from "child_process";
|
|
7
8
|
var runSecurityScanDefinition = {
|
|
8
9
|
name: "run_security_scan",
|
|
9
10
|
description: "Run the built-in security scanner on a project or specific files. Detects secrets, injection, XSS, weak crypto, and other vulnerabilities.",
|
|
@@ -26,7 +27,7 @@ var runSecurityScanDefinition = {
|
|
|
26
27
|
};
|
|
27
28
|
async function handleRunSecurityScan(input) {
|
|
28
29
|
try {
|
|
29
|
-
const core = await import("./dist-
|
|
30
|
+
const core = await import("./dist-WCSJHQPK.js");
|
|
30
31
|
const projectRoot = sanitizePath(input.path);
|
|
31
32
|
let configData = {};
|
|
32
33
|
try {
|
|
@@ -49,10 +50,20 @@ async function handleRunSecurityScan(input) {
|
|
|
49
50
|
if (input.files && input.files.length > 0) {
|
|
50
51
|
filesToScan = input.files.map((f) => path.resolve(projectRoot, f));
|
|
51
52
|
} else {
|
|
52
|
-
const { globFiles } = await import("./glob-helper-
|
|
53
|
+
const { globFiles } = await import("./glob-helper-VCQXK5XY.js");
|
|
53
54
|
filesToScan = await globFiles(projectRoot, securityConfig.exclude);
|
|
54
55
|
}
|
|
55
56
|
const result = await scanner.scanFiles(filesToScan);
|
|
57
|
+
try {
|
|
58
|
+
const commitHash = execSync("git rev-parse HEAD", {
|
|
59
|
+
cwd: projectRoot,
|
|
60
|
+
encoding: "utf-8"
|
|
61
|
+
}).trim();
|
|
62
|
+
const timelineManager = new core.SecurityTimelineManager(projectRoot);
|
|
63
|
+
timelineManager.capture(result, commitHash);
|
|
64
|
+
timelineManager.updateLifecycles(result.findings, commitHash);
|
|
65
|
+
} catch {
|
|
66
|
+
}
|
|
56
67
|
return {
|
|
57
68
|
content: [
|
|
58
69
|
{
|
|
@@ -82,8 +93,58 @@ async function handleRunSecurityScan(input) {
|
|
|
82
93
|
};
|
|
83
94
|
}
|
|
84
95
|
}
|
|
96
|
+
var getSecurityTrendsDefinition = {
|
|
97
|
+
name: "get_security_trends",
|
|
98
|
+
description: "Get security posture trends showing how security score, findings, and supply chain metrics are changing over time.",
|
|
99
|
+
inputSchema: {
|
|
100
|
+
type: "object",
|
|
101
|
+
properties: {
|
|
102
|
+
path: { type: "string", description: "Path to project root" },
|
|
103
|
+
last: {
|
|
104
|
+
type: "number",
|
|
105
|
+
description: "Return trends from the last N snapshots"
|
|
106
|
+
},
|
|
107
|
+
since: {
|
|
108
|
+
type: "string",
|
|
109
|
+
description: "Return trends since this ISO date (e.g. 2025-01-01)"
|
|
110
|
+
}
|
|
111
|
+
},
|
|
112
|
+
required: ["path"]
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
async function handleGetSecurityTrends(input) {
|
|
116
|
+
try {
|
|
117
|
+
const core = await import("./dist-WCSJHQPK.js");
|
|
118
|
+
const projectRoot = sanitizePath(input.path);
|
|
119
|
+
const manager = new core.SecurityTimelineManager(projectRoot);
|
|
120
|
+
const trendOptions = {};
|
|
121
|
+
if (input.last !== void 0) trendOptions.last = input.last;
|
|
122
|
+
if (input.since !== void 0) trendOptions.since = input.since;
|
|
123
|
+
const trends = manager.trends(trendOptions);
|
|
124
|
+
return {
|
|
125
|
+
content: [
|
|
126
|
+
{
|
|
127
|
+
type: "text",
|
|
128
|
+
text: JSON.stringify(trends)
|
|
129
|
+
}
|
|
130
|
+
]
|
|
131
|
+
};
|
|
132
|
+
} catch (error) {
|
|
133
|
+
return {
|
|
134
|
+
content: [
|
|
135
|
+
{
|
|
136
|
+
type: "text",
|
|
137
|
+
text: `Error: ${error instanceof Error ? error.message : String(error)}`
|
|
138
|
+
}
|
|
139
|
+
],
|
|
140
|
+
isError: true
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
}
|
|
85
144
|
|
|
86
145
|
export {
|
|
87
146
|
runSecurityScanDefinition,
|
|
88
|
-
handleRunSecurityScan
|
|
147
|
+
handleRunSecurityScan,
|
|
148
|
+
getSecurityTrendsDefinition,
|
|
149
|
+
handleGetSecurityTrends
|
|
89
150
|
};
|
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
import {
|
|
2
|
-
ArchConfigSchema
|
|
3
|
-
|
|
2
|
+
ArchConfigSchema,
|
|
3
|
+
init_dist
|
|
4
|
+
} from "./chunk-MI6MA6OP.js";
|
|
4
5
|
import {
|
|
5
6
|
Err,
|
|
6
7
|
Ok
|
|
7
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-RL4VMEXL.js";
|
|
8
9
|
import {
|
|
9
10
|
CLIError,
|
|
10
11
|
ExitCode
|
|
11
12
|
} from "./chunk-3WGJMBKH.js";
|
|
12
13
|
|
|
13
14
|
// src/config/loader.ts
|
|
15
|
+
init_dist();
|
|
14
16
|
import * as fs from "fs";
|
|
15
17
|
import * as path from "path";
|
|
16
18
|
|
|
17
19
|
// src/config/schema.ts
|
|
20
|
+
init_dist();
|
|
18
21
|
import { z } from "zod";
|
|
19
22
|
var LayerSchema = z.object({
|
|
20
23
|
/** Human-readable name of the layer */
|
|
@@ -45,6 +48,8 @@ var AgentConfigSchema = z.object({
|
|
|
45
48
|
skills: z.array(z.string()).optional()
|
|
46
49
|
});
|
|
47
50
|
var EntropyConfigSchema = z.object({
|
|
51
|
+
/** Explicit entry points for reachability analysis (overrides auto-detection) */
|
|
52
|
+
entryPoints: z.array(z.string()).optional(),
|
|
48
53
|
/** Patterns to exclude from entropy analysis */
|
|
49
54
|
excludePatterns: z.array(z.string()).default(["**/node_modules/**", "**/*.test.ts"]),
|
|
50
55
|
/** Whether to automatically attempt to fix simple entropy issues */
|
|
@@ -173,7 +178,10 @@ var TrackerConfigSchema = z.object({
|
|
|
173
178
|
/** Labels auto-applied to synced issues for filtering */
|
|
174
179
|
labels: z.array(z.string()).optional(),
|
|
175
180
|
/** Maps roadmap status -> external status */
|
|
176
|
-
statusMap: z.record(
|
|
181
|
+
statusMap: z.record(
|
|
182
|
+
z.enum(["backlog", "planned", "in-progress", "done", "blocked", "needs-human"]),
|
|
183
|
+
z.string()
|
|
184
|
+
),
|
|
177
185
|
/** Maps external status (optionally with label) -> roadmap status */
|
|
178
186
|
reverseStatusMap: z.record(z.string(), z.string()).optional()
|
|
179
187
|
});
|
|
@@ -330,7 +338,6 @@ function resolveConfig(configPath) {
|
|
|
330
338
|
}
|
|
331
339
|
|
|
332
340
|
export {
|
|
333
|
-
TrackerConfigSchema,
|
|
334
341
|
findConfigFile,
|
|
335
342
|
loadConfig,
|
|
336
343
|
resolveConfig
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
import {
|
|
2
|
+
init_dist
|
|
3
|
+
} from "./chunk-MI6MA6OP.js";
|
|
1
4
|
import {
|
|
2
5
|
Ok
|
|
3
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-RL4VMEXL.js";
|
|
4
7
|
|
|
5
8
|
// src/commands/validate-cross-check.ts
|
|
9
|
+
init_dist();
|
|
6
10
|
import * as fs from "fs";
|
|
7
11
|
import * as path from "path";
|
|
8
12
|
import { execFileSync } from "child_process";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveProjectConfig
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-47N6R2F4.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-WCSJHQPK.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-WCSJHQPK.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,10 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createCreateSkillCommand,
|
|
3
3
|
generateSkillFiles
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-RRHUCDRD.js";
|
|
5
5
|
import "./chunk-EBJQ6N4M.js";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-HIK6OEUF.js";
|
|
7
7
|
import "./chunk-3WGJMBKH.js";
|
|
8
|
+
import "./chunk-KFQGP6VL.js";
|
|
8
9
|
export {
|
|
9
10
|
createCreateSkillCommand,
|
|
10
11
|
generateSkillFiles
|
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
import {
|
|
2
|
+
DEFAULT_SKILL_CONTEXT_BUDGET,
|
|
2
3
|
Err,
|
|
3
4
|
Ok,
|
|
4
5
|
SESSION_SECTION_NAMES,
|
|
5
6
|
STANDARD_COGNITIVE_MODES,
|
|
7
|
+
init_dist,
|
|
6
8
|
isErr,
|
|
7
9
|
isOk
|
|
8
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-RL4VMEXL.js";
|
|
11
|
+
import "./chunk-KFQGP6VL.js";
|
|
12
|
+
init_dist();
|
|
9
13
|
export {
|
|
14
|
+
DEFAULT_SKILL_CONTEXT_BUDGET,
|
|
10
15
|
Err,
|
|
11
16
|
Ok,
|
|
12
17
|
SESSION_SECTION_NAMES,
|
|
@@ -43,13 +43,16 @@ import {
|
|
|
43
43
|
askGraph,
|
|
44
44
|
classifyNodeCategory,
|
|
45
45
|
groupNodesByImpact,
|
|
46
|
+
init_dist,
|
|
46
47
|
linkToCode,
|
|
47
48
|
loadGraph,
|
|
48
49
|
normalizeIntent,
|
|
49
50
|
project,
|
|
50
51
|
queryTraceability,
|
|
51
52
|
saveGraph
|
|
52
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-K2SON7TI.js";
|
|
54
|
+
import "./chunk-KFQGP6VL.js";
|
|
55
|
+
init_dist();
|
|
53
56
|
export {
|
|
54
57
|
Assembler,
|
|
55
58
|
CIConnector,
|