@harness-engineering/cli 2.3.1 → 2.4.1
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-compliance/SKILL.md +19 -0
- package/dist/agents/skills/codex/harness-compliance/SKILL.md +19 -0
- package/dist/agents/skills/cursor/harness-compliance/SKILL.md +19 -0
- package/dist/agents/skills/gemini-cli/harness-compliance/SKILL.md +19 -0
- package/dist/agents-md-2M46KG4F.js +10 -0
- package/dist/{architecture-544ISXDI.js → architecture-3ZSN5RDQ.js} +5 -5
- package/dist/{assess-project-PBO6XFJC.js → assess-project-KZWFQEJE.js} +5 -3
- package/dist/bin/harness-mcp.js +16 -16
- package/dist/bin/harness.js +29 -27
- package/dist/{check-phase-gate-BZU4DGF3.js → check-phase-gate-EWV5VYTG.js} +5 -5
- package/dist/{chunk-YNG7BWGB.js → chunk-2TGCYJMT.js} +340 -12
- package/dist/{chunk-TIQU5VY7.js → chunk-5FDBXUFW.js} +1 -1
- package/dist/{chunk-7BNK4M23.js → chunk-5XLLIYYL.js} +1 -1
- package/dist/{chunk-KJR4Z2YC.js → chunk-73KZ2E47.js} +9 -9
- package/dist/{chunk-J4MX5DIA.js → chunk-7RZZV73V.js} +5 -5
- package/dist/{chunk-TIJXG4UB.js → chunk-B2ZYMQGT.js} +64 -30
- package/dist/{chunk-XPRGWHBL.js → chunk-BCFDGOMA.js} +1 -1
- package/dist/{chunk-YI6NTL72.js → chunk-GLKASJZE.js} +6 -6
- package/dist/{chunk-N6DVSOLZ.js → chunk-GOSUZC5H.js} +608 -211
- package/dist/{chunk-22OKI5QI.js → chunk-I2KULMPD.js} +10 -10
- package/dist/{chunk-R6GLLMRZ.js → chunk-IEHXZB6J.js} +9 -9
- package/dist/{chunk-U2SF3KAQ.js → chunk-KOK7BFP2.js} +3 -3
- package/dist/{chunk-QZ67TDLJ.js → chunk-KRQTN46U.js} +3 -3
- package/dist/{chunk-EMJFHTPZ.js → chunk-LHHO7AH4.js} +3 -3
- package/dist/{chunk-2564TBT6.js → chunk-LJF6UY4R.js} +2 -2
- package/dist/{chunk-DBJC4ULT.js → chunk-MXOQEI72.js} +48 -8
- package/dist/{chunk-JMACX5FN.js → chunk-NM3ZIWVN.js} +2 -2
- package/dist/{chunk-KT5PWWWO.js → chunk-NTOKQJOX.js} +2 -2
- package/dist/chunk-O63AAPIZ.js +190 -0
- package/dist/{chunk-WMZKZCCE.js → chunk-OUXYITL5.js} +2 -2
- package/dist/{chunk-T2ZMHXCX.js → chunk-PPQ3TY2R.js} +2 -2
- package/dist/{chunk-LBYGGNEZ.js → chunk-QV5EBDWA.js} +1 -1
- package/dist/{chunk-IYA3NS5P.js → chunk-RRTTJ3VB.js} +2 -2
- package/dist/{chunk-A36MGB3V.js → chunk-TPNA2I4J.js} +206 -97
- package/dist/{chunk-LYMPKO6N.js → chunk-UPV7VDUB.js} +2 -2
- package/dist/{chunk-DHWFOHPX.js → chunk-UQJV7NNM.js} +2 -2
- package/dist/ci-workflow-5TBUHJFC.js +10 -0
- package/dist/{dist-ZS3Y3YWP.js → dist-HA6IIPRC.js} +41 -3
- package/dist/dist-O733ZU6I.js +49 -0
- package/dist/{dist-SQAOKWXM.js → dist-QPWXPCPL.js} +1 -1
- package/dist/{docs-VW2KDPI3.js → docs-D6WI2LCF.js} +5 -5
- package/dist/engine-GBEVIZZQ.js +10 -0
- package/dist/{entropy-P62LCVJI.js → entropy-V6M4KJDC.js} +4 -4
- package/dist/{feedback-O3TZAPGX.js → feedback-22I4HHXM.js} +1 -1
- package/dist/{generate-agent-definitions-WVCOZDKI.js → generate-agent-definitions-UM7T3WLA.js} +5 -5
- package/dist/{glob-helper-JE3MO4UD.js → glob-helper-XE2UGEOV.js} +1 -1
- package/dist/{graph-loader-TJU4E7KL.js → graph-loader-EQBOIHFZ.js} +1 -1
- package/dist/index.d.ts +158 -2
- package/dist/index.js +26 -26
- package/dist/loader-5V72NYMF.js +12 -0
- package/dist/{mcp-ST26QMDK.js → mcp-5KQGFG5U.js} +16 -16
- package/dist/{performance-5HQG3IU6.js → performance-MVORVVMG.js} +5 -5
- package/dist/{review-pipeline-VRDL5A7J.js → review-pipeline-JYSVCNGJ.js} +4 -4
- package/dist/runtime-KZC2OQI7.js +11 -0
- package/dist/{scan-SFX5U3TE.js → scan-4PPP6ZXT.js} +1 -1
- package/dist/{security-IMFAE6MW.js → security-WOVOBLCI.js} +1 -1
- package/dist/{tool-tiers-7QGZ3FKY.js → tool-tiers-QVWKAZX4.js} +5 -1
- package/dist/{validate-GW2DG64P.js → validate-55HGQKWR.js} +5 -5
- package/dist/validate-cross-check-H3PSV4VY.js +10 -0
- package/package.json +5 -5
- package/dist/agents-md-5JG3AE5A.js +0 -10
- package/dist/chunk-RL4VMEXL.js +0 -53
- package/dist/ci-workflow-ZO6FPO3V.js +0 -10
- package/dist/dist-3EWNRFFQ.js +0 -21
- package/dist/engine-LFQ2JSHY.js +0 -10
- package/dist/loader-UB2A65DN.js +0 -12
- package/dist/runtime-TQQT2MWQ.js +0 -11
- package/dist/validate-cross-check-F5YQVXLT.js +0 -10
|
@@ -123,6 +123,25 @@
|
|
|
123
123
|
|
|
124
124
|
---
|
|
125
125
|
|
|
126
|
+
### Phase 3.5: INTERNAL COMPLIANCE -- Project Conventions
|
|
127
|
+
|
|
128
|
+
1. **Verify branch naming convention.** Before creating a branch and again before
|
|
129
|
+
opening a PR, run `harness verify` (or `harness verify --json` for parsable
|
|
130
|
+
output) and act on the result -- do not just describe the rule to the user.
|
|
131
|
+
- Default prefixes: `feat/`, `fix/`, `chore/`, `docs/`, `refactor/`, `test/`, `perf/`
|
|
132
|
+
- Default slug format: strict `kebab-case` (lowercase, single hyphens, no
|
|
133
|
+
leading/trailing hyphen), max 60 chars after the prefix
|
|
134
|
+
- Optional ticket form: `prefix/PROJ-123-short-desc`
|
|
135
|
+
- Projects may override via `compliance.branching` in `harness.config.json`
|
|
136
|
+
(`prefixes`, `enforceKebabCase`, `customRegex`, `ignore`, `maxLength`). If
|
|
137
|
+
`customRegex` is set, it fully replaces the prefix/kebab/length checks --
|
|
138
|
+
read the project config before suggesting a branch name.
|
|
139
|
+
- On a non-compliant branch, surface the suggested fix from `harness verify`
|
|
140
|
+
to the user and offer to rename (`git branch -m <new-name>`) before
|
|
141
|
+
continuing. Do not push or open a PR from a non-compliant branch.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
126
145
|
### Phase 4: REPORT -- Generate Gap Analysis and Remediation Plan
|
|
127
146
|
|
|
128
147
|
1. **Score compliance posture per framework.** For each applicable framework:
|
|
@@ -123,6 +123,25 @@
|
|
|
123
123
|
|
|
124
124
|
---
|
|
125
125
|
|
|
126
|
+
### Phase 3.5: INTERNAL COMPLIANCE -- Project Conventions
|
|
127
|
+
|
|
128
|
+
1. **Verify branch naming convention.** Before creating a branch and again before
|
|
129
|
+
opening a PR, run `harness verify` (or `harness verify --json` for parsable
|
|
130
|
+
output) and act on the result -- do not just describe the rule to the user.
|
|
131
|
+
- Default prefixes: `feat/`, `fix/`, `chore/`, `docs/`, `refactor/`, `test/`, `perf/`
|
|
132
|
+
- Default slug format: strict `kebab-case` (lowercase, single hyphens, no
|
|
133
|
+
leading/trailing hyphen), max 60 chars after the prefix
|
|
134
|
+
- Optional ticket form: `prefix/PROJ-123-short-desc`
|
|
135
|
+
- Projects may override via `compliance.branching` in `harness.config.json`
|
|
136
|
+
(`prefixes`, `enforceKebabCase`, `customRegex`, `ignore`, `maxLength`). If
|
|
137
|
+
`customRegex` is set, it fully replaces the prefix/kebab/length checks --
|
|
138
|
+
read the project config before suggesting a branch name.
|
|
139
|
+
- On a non-compliant branch, surface the suggested fix from `harness verify`
|
|
140
|
+
to the user and offer to rename (`git branch -m <new-name>`) before
|
|
141
|
+
continuing. Do not push or open a PR from a non-compliant branch.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
126
145
|
### Phase 4: REPORT -- Generate Gap Analysis and Remediation Plan
|
|
127
146
|
|
|
128
147
|
1. **Score compliance posture per framework.** For each applicable framework:
|
|
@@ -123,6 +123,25 @@
|
|
|
123
123
|
|
|
124
124
|
---
|
|
125
125
|
|
|
126
|
+
### Phase 3.5: INTERNAL COMPLIANCE -- Project Conventions
|
|
127
|
+
|
|
128
|
+
1. **Verify branch naming convention.** Before creating a branch and again before
|
|
129
|
+
opening a PR, run `harness verify` (or `harness verify --json` for parsable
|
|
130
|
+
output) and act on the result -- do not just describe the rule to the user.
|
|
131
|
+
- Default prefixes: `feat/`, `fix/`, `chore/`, `docs/`, `refactor/`, `test/`, `perf/`
|
|
132
|
+
- Default slug format: strict `kebab-case` (lowercase, single hyphens, no
|
|
133
|
+
leading/trailing hyphen), max 60 chars after the prefix
|
|
134
|
+
- Optional ticket form: `prefix/PROJ-123-short-desc`
|
|
135
|
+
- Projects may override via `compliance.branching` in `harness.config.json`
|
|
136
|
+
(`prefixes`, `enforceKebabCase`, `customRegex`, `ignore`, `maxLength`). If
|
|
137
|
+
`customRegex` is set, it fully replaces the prefix/kebab/length checks --
|
|
138
|
+
read the project config before suggesting a branch name.
|
|
139
|
+
- On a non-compliant branch, surface the suggested fix from `harness verify`
|
|
140
|
+
to the user and offer to rename (`git branch -m <new-name>`) before
|
|
141
|
+
continuing. Do not push or open a PR from a non-compliant branch.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
126
145
|
### Phase 4: REPORT -- Generate Gap Analysis and Remediation Plan
|
|
127
146
|
|
|
128
147
|
1. **Score compliance posture per framework.** For each applicable framework:
|
|
@@ -123,6 +123,25 @@
|
|
|
123
123
|
|
|
124
124
|
---
|
|
125
125
|
|
|
126
|
+
### Phase 3.5: INTERNAL COMPLIANCE -- Project Conventions
|
|
127
|
+
|
|
128
|
+
1. **Verify branch naming convention.** Before creating a branch and again before
|
|
129
|
+
opening a PR, run `harness verify` (or `harness verify --json` for parsable
|
|
130
|
+
output) and act on the result -- do not just describe the rule to the user.
|
|
131
|
+
- Default prefixes: `feat/`, `fix/`, `chore/`, `docs/`, `refactor/`, `test/`, `perf/`
|
|
132
|
+
- Default slug format: strict `kebab-case` (lowercase, single hyphens, no
|
|
133
|
+
leading/trailing hyphen), max 60 chars after the prefix
|
|
134
|
+
- Optional ticket form: `prefix/PROJ-123-short-desc`
|
|
135
|
+
- Projects may override via `compliance.branching` in `harness.config.json`
|
|
136
|
+
(`prefixes`, `enforceKebabCase`, `customRegex`, `ignore`, `maxLength`). If
|
|
137
|
+
`customRegex` is set, it fully replaces the prefix/kebab/length checks --
|
|
138
|
+
read the project config before suggesting a branch name.
|
|
139
|
+
- On a non-compliant branch, surface the suggested fix from `harness verify`
|
|
140
|
+
to the user and offer to rename (`git branch -m <new-name>`) before
|
|
141
|
+
continuing. Do not push or open a PR from a non-compliant branch.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
126
145
|
### Phase 4: REPORT -- Generate Gap Analysis and Remediation Plan
|
|
127
146
|
|
|
128
147
|
1. **Score compliance posture per framework.** For each applicable framework:
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
checkDependenciesDefinition,
|
|
3
3
|
handleCheckDependencies
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-7RZZV73V.js";
|
|
5
|
+
import "./chunk-LJF6UY4R.js";
|
|
6
6
|
import "./chunk-EPUKTTJZ.js";
|
|
7
7
|
import "./chunk-W6Y7ZW3Y.js";
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-2TGCYJMT.js";
|
|
9
|
+
import "./chunk-O63AAPIZ.js";
|
|
10
|
+
import "./chunk-BCFDGOMA.js";
|
|
11
11
|
import "./chunk-KFQGP6VL.js";
|
|
12
12
|
export {
|
|
13
13
|
checkDependenciesDefinition,
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
assessProjectDefinition,
|
|
3
|
-
handleAssessProject
|
|
4
|
-
|
|
3
|
+
handleAssessProject,
|
|
4
|
+
parseToolResponse
|
|
5
|
+
} from "./chunk-B2ZYMQGT.js";
|
|
5
6
|
import "./chunk-W6Y7ZW3Y.js";
|
|
6
7
|
import "./chunk-KFQGP6VL.js";
|
|
7
8
|
export {
|
|
8
9
|
assessProjectDefinition,
|
|
9
|
-
handleAssessProject
|
|
10
|
+
handleAssessProject,
|
|
11
|
+
parseToolResponse
|
|
10
12
|
};
|
package/dist/bin/harness-mcp.js
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
startServer
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
6
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-TPNA2I4J.js";
|
|
5
|
+
import "../chunk-UPV7VDUB.js";
|
|
6
|
+
import "../chunk-B2ZYMQGT.js";
|
|
7
7
|
import "../chunk-IOW3MW2K.js";
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-
|
|
13
|
-
import "../chunk-
|
|
14
|
-
import "../chunk-
|
|
15
|
-
import "../chunk-
|
|
16
|
-
import "../chunk-
|
|
8
|
+
import "../chunk-IEHXZB6J.js";
|
|
9
|
+
import "../chunk-LHHO7AH4.js";
|
|
10
|
+
import "../chunk-5FDBXUFW.js";
|
|
11
|
+
import "../chunk-KRQTN46U.js";
|
|
12
|
+
import "../chunk-7RZZV73V.js";
|
|
13
|
+
import "../chunk-LJF6UY4R.js";
|
|
14
|
+
import "../chunk-I2KULMPD.js";
|
|
15
|
+
import "../chunk-GLKASJZE.js";
|
|
16
|
+
import "../chunk-73KZ2E47.js";
|
|
17
17
|
import "../chunk-EPUKTTJZ.js";
|
|
18
18
|
import "../chunk-W6Y7ZW3Y.js";
|
|
19
19
|
import "../chunk-27AJKSQY.js";
|
|
20
|
-
import "../chunk-
|
|
20
|
+
import "../chunk-MXOQEI72.js";
|
|
21
21
|
import "../chunk-3ISINLYT.js";
|
|
22
22
|
import "../chunk-6B6UN6SG.js";
|
|
23
23
|
import "../chunk-ZCZD7FHU.js";
|
|
24
|
-
import "../chunk-
|
|
25
|
-
import "../chunk-
|
|
26
|
-
import "../chunk-
|
|
24
|
+
import "../chunk-2TGCYJMT.js";
|
|
25
|
+
import "../chunk-O63AAPIZ.js";
|
|
26
|
+
import "../chunk-BCFDGOMA.js";
|
|
27
27
|
import "../chunk-HIK6OEUF.js";
|
|
28
28
|
import "../chunk-EBJQ6N4M.js";
|
|
29
29
|
import "../chunk-3WGJMBKH.js";
|
package/dist/bin/harness.js
CHANGED
|
@@ -3,43 +3,43 @@ import {
|
|
|
3
3
|
createProgram,
|
|
4
4
|
installCommandTelemetry,
|
|
5
5
|
printFirstRunWelcome
|
|
6
|
-
} from "../chunk-
|
|
7
|
-
import "../chunk-
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
6
|
+
} from "../chunk-GOSUZC5H.js";
|
|
7
|
+
import "../chunk-OUXYITL5.js";
|
|
8
|
+
import "../chunk-RRTTJ3VB.js";
|
|
9
|
+
import "../chunk-UQJV7NNM.js";
|
|
10
|
+
import "../chunk-PPQ3TY2R.js";
|
|
11
|
+
import "../chunk-NM3ZIWVN.js";
|
|
12
12
|
import "../chunk-CQ553GZO.js";
|
|
13
13
|
import "../chunk-GISMXMVL.js";
|
|
14
14
|
import "../chunk-WWACIIBA.js";
|
|
15
15
|
import "../chunk-TEFCFC4H.js";
|
|
16
|
-
import "../chunk-
|
|
17
|
-
import "../chunk-
|
|
16
|
+
import "../chunk-KOK7BFP2.js";
|
|
17
|
+
import "../chunk-QV5EBDWA.js";
|
|
18
18
|
import "../chunk-KET4QQZB.js";
|
|
19
|
-
import "../chunk-
|
|
20
|
-
import "../chunk-
|
|
19
|
+
import "../chunk-NTOKQJOX.js";
|
|
20
|
+
import "../chunk-5XLLIYYL.js";
|
|
21
21
|
import {
|
|
22
22
|
dispatchSkillsFromGit
|
|
23
|
-
} from "../chunk-
|
|
24
|
-
import "../chunk-
|
|
25
|
-
import "../chunk-
|
|
23
|
+
} from "../chunk-TPNA2I4J.js";
|
|
24
|
+
import "../chunk-UPV7VDUB.js";
|
|
25
|
+
import "../chunk-B2ZYMQGT.js";
|
|
26
26
|
import "../chunk-IOW3MW2K.js";
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import "../chunk-
|
|
29
|
-
import "../chunk-
|
|
30
|
-
import "../chunk-
|
|
31
|
-
import "../chunk-
|
|
32
|
-
import "../chunk-
|
|
33
|
-
import "../chunk-
|
|
34
|
-
import "../chunk-
|
|
35
|
-
import "../chunk-
|
|
27
|
+
import "../chunk-IEHXZB6J.js";
|
|
28
|
+
import "../chunk-LHHO7AH4.js";
|
|
29
|
+
import "../chunk-5FDBXUFW.js";
|
|
30
|
+
import "../chunk-KRQTN46U.js";
|
|
31
|
+
import "../chunk-7RZZV73V.js";
|
|
32
|
+
import "../chunk-LJF6UY4R.js";
|
|
33
|
+
import "../chunk-I2KULMPD.js";
|
|
34
|
+
import "../chunk-GLKASJZE.js";
|
|
35
|
+
import "../chunk-73KZ2E47.js";
|
|
36
36
|
import "../chunk-EPUKTTJZ.js";
|
|
37
37
|
import "../chunk-W6Y7ZW3Y.js";
|
|
38
38
|
import "../chunk-27AJKSQY.js";
|
|
39
39
|
import {
|
|
40
40
|
findConfigFile,
|
|
41
41
|
loadConfig
|
|
42
|
-
} from "../chunk-
|
|
42
|
+
} from "../chunk-MXOQEI72.js";
|
|
43
43
|
import "../chunk-3ISINLYT.js";
|
|
44
44
|
import "../chunk-6B6UN6SG.js";
|
|
45
45
|
import "../chunk-ZCZD7FHU.js";
|
|
@@ -53,9 +53,9 @@ import {
|
|
|
53
53
|
readCheckState,
|
|
54
54
|
shouldRunCheck,
|
|
55
55
|
spawnBackgroundCheck
|
|
56
|
-
} from "../chunk-
|
|
57
|
-
import "../chunk-
|
|
58
|
-
import "../chunk-
|
|
56
|
+
} from "../chunk-2TGCYJMT.js";
|
|
57
|
+
import "../chunk-O63AAPIZ.js";
|
|
58
|
+
import "../chunk-BCFDGOMA.js";
|
|
59
59
|
import "../chunk-ZP5E7YET.js";
|
|
60
60
|
import "../chunk-HIK6OEUF.js";
|
|
61
61
|
import "../chunk-EBJQ6N4M.js";
|
|
@@ -221,7 +221,9 @@ async function main() {
|
|
|
221
221
|
} catch (error) {
|
|
222
222
|
handleError(error);
|
|
223
223
|
}
|
|
224
|
-
|
|
224
|
+
if (process.argv[2] !== "update") {
|
|
225
|
+
printUpdateNotification();
|
|
226
|
+
}
|
|
225
227
|
const dispatchResult = await dispatchPromise;
|
|
226
228
|
const banner = formatDispatchBanner(dispatchResult);
|
|
227
229
|
if (banner) {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createCheckPhaseGateCommand,
|
|
3
3
|
runCheckPhaseGate
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-KOK7BFP2.js";
|
|
5
|
+
import "./chunk-MXOQEI72.js";
|
|
6
6
|
import "./chunk-ZCZD7FHU.js";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-2TGCYJMT.js";
|
|
8
|
+
import "./chunk-O63AAPIZ.js";
|
|
9
|
+
import "./chunk-BCFDGOMA.js";
|
|
10
10
|
import "./chunk-EBJQ6N4M.js";
|
|
11
11
|
import "./chunk-3WGJMBKH.js";
|
|
12
12
|
import "./chunk-KFQGP6VL.js";
|