@harness-engineering/cli 2.3.1 → 2.4.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-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-5JG3AE5A.js → agents-md-ROTDQOXM.js} +2 -2
- package/dist/{architecture-544ISXDI.js → architecture-I2G7PNQB.js} +3 -3
- package/dist/{assess-project-PBO6XFJC.js → assess-project-LO6NCLE7.js} +1 -1
- package/dist/bin/harness-mcp.js +13 -13
- package/dist/bin/harness.js +22 -22
- package/dist/{check-phase-gate-BZU4DGF3.js → check-phase-gate-52SQFNJB.js} +3 -3
- package/dist/{chunk-YI6NTL72.js → chunk-27EHWQPK.js} +3 -3
- package/dist/{chunk-QZ67TDLJ.js → chunk-2L2A6W6I.js} +3 -3
- package/dist/{chunk-R6GLLMRZ.js → chunk-4XB37LST.js} +3 -3
- package/dist/{chunk-JMACX5FN.js → chunk-54JTO4NZ.js} +1 -1
- package/dist/{chunk-U2SF3KAQ.js → chunk-5YOHXTK3.js} +2 -2
- package/dist/{chunk-DHWFOHPX.js → chunk-DJRRTZGD.js} +1 -1
- package/dist/{chunk-IYA3NS5P.js → chunk-FJJYQWUP.js} +1 -1
- package/dist/{chunk-YNG7BWGB.js → chunk-GDJ2MRYH.js} +82 -8
- package/dist/{chunk-EMJFHTPZ.js → chunk-GN2CSZC6.js} +2 -2
- package/dist/{chunk-KT5PWWWO.js → chunk-JGPOQJ73.js} +1 -1
- package/dist/{chunk-DBJC4ULT.js → chunk-KPWUZSHL.js} +24 -1
- package/dist/{chunk-22OKI5QI.js → chunk-MQRKPF46.js} +5 -5
- package/dist/{chunk-T2ZMHXCX.js → chunk-MSBVH6ER.js} +1 -1
- package/dist/{chunk-J4MX5DIA.js → chunk-NGCM4B4V.js} +2 -2
- package/dist/{chunk-2564TBT6.js → chunk-OFMQEUYN.js} +1 -1
- package/dist/{chunk-A36MGB3V.js → chunk-Q43LM7CO.js} +70 -70
- package/dist/{chunk-LBYGGNEZ.js → chunk-RYVL76ZF.js} +1 -1
- package/dist/{chunk-LYMPKO6N.js → chunk-RZASDABE.js} +2 -2
- package/dist/{chunk-N6DVSOLZ.js → chunk-TCR5PKMU.js} +123 -32
- package/dist/{chunk-WMZKZCCE.js → chunk-TVJZX53C.js} +1 -1
- package/dist/{chunk-KJR4Z2YC.js → chunk-U4XK4BB3.js} +6 -6
- package/dist/{chunk-TIJXG4UB.js → chunk-WY2J54IZ.js} +6 -6
- package/dist/{ci-workflow-ZO6FPO3V.js → ci-workflow-MYBH64CR.js} +2 -2
- package/dist/{dist-ZS3Y3YWP.js → dist-ZJGFXGIB.js} +3 -1
- package/dist/{docs-VW2KDPI3.js → docs-7CW7WUFB.js} +3 -3
- package/dist/{engine-LFQ2JSHY.js → engine-Y75QZW6N.js} +2 -2
- package/dist/{entropy-P62LCVJI.js → entropy-P6QELTFA.js} +2 -2
- package/dist/{feedback-O3TZAPGX.js → feedback-PJWCDRRZ.js} +1 -1
- package/dist/{generate-agent-definitions-WVCOZDKI.js → generate-agent-definitions-ONDIJHHK.js} +3 -3
- package/dist/index.d.ts +66 -0
- package/dist/index.js +22 -22
- package/dist/{loader-UB2A65DN.js → loader-DQRNWKOZ.js} +2 -2
- package/dist/{mcp-ST26QMDK.js → mcp-UUNLS3MC.js} +13 -13
- package/dist/{performance-5HQG3IU6.js → performance-7X3EFAOD.js} +3 -3
- package/dist/{review-pipeline-VRDL5A7J.js → review-pipeline-GAJ22PBC.js} +2 -2
- package/dist/{runtime-TQQT2MWQ.js → runtime-6TK6U72R.js} +2 -2
- package/dist/{security-IMFAE6MW.js → security-ZSU643D7.js} +1 -1
- package/dist/{validate-GW2DG64P.js → validate-IDX6RI3U.js} +3 -3
- package/dist/{validate-cross-check-F5YQVXLT.js → validate-cross-check-5YEWZ3EW.js} +2 -2
- package/package.json +5 -5
|
@@ -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,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
checkDependenciesDefinition,
|
|
3
3
|
handleCheckDependencies
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-NGCM4B4V.js";
|
|
5
|
+
import "./chunk-OFMQEUYN.js";
|
|
6
6
|
import "./chunk-EPUKTTJZ.js";
|
|
7
7
|
import "./chunk-W6Y7ZW3Y.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-GDJ2MRYH.js";
|
|
9
9
|
import "./chunk-RL4VMEXL.js";
|
|
10
10
|
import "./chunk-XPRGWHBL.js";
|
|
11
11
|
import "./chunk-KFQGP6VL.js";
|
package/dist/bin/harness-mcp.js
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
startServer
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
6
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-Q43LM7CO.js";
|
|
5
|
+
import "../chunk-RZASDABE.js";
|
|
6
|
+
import "../chunk-WY2J54IZ.js";
|
|
7
7
|
import "../chunk-IOW3MW2K.js";
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
8
|
+
import "../chunk-4XB37LST.js";
|
|
9
|
+
import "../chunk-GN2CSZC6.js";
|
|
10
10
|
import "../chunk-TIQU5VY7.js";
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-
|
|
13
|
-
import "../chunk-
|
|
14
|
-
import "../chunk-
|
|
15
|
-
import "../chunk-
|
|
16
|
-
import "../chunk-
|
|
11
|
+
import "../chunk-2L2A6W6I.js";
|
|
12
|
+
import "../chunk-NGCM4B4V.js";
|
|
13
|
+
import "../chunk-OFMQEUYN.js";
|
|
14
|
+
import "../chunk-MQRKPF46.js";
|
|
15
|
+
import "../chunk-27EHWQPK.js";
|
|
16
|
+
import "../chunk-U4XK4BB3.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-KPWUZSHL.js";
|
|
21
21
|
import "../chunk-3ISINLYT.js";
|
|
22
22
|
import "../chunk-6B6UN6SG.js";
|
|
23
23
|
import "../chunk-ZCZD7FHU.js";
|
|
24
|
-
import "../chunk-
|
|
24
|
+
import "../chunk-GDJ2MRYH.js";
|
|
25
25
|
import "../chunk-RL4VMEXL.js";
|
|
26
26
|
import "../chunk-XPRGWHBL.js";
|
|
27
27
|
import "../chunk-HIK6OEUF.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-TCR5PKMU.js";
|
|
7
|
+
import "../chunk-TVJZX53C.js";
|
|
8
|
+
import "../chunk-FJJYQWUP.js";
|
|
9
|
+
import "../chunk-DJRRTZGD.js";
|
|
10
|
+
import "../chunk-MSBVH6ER.js";
|
|
11
|
+
import "../chunk-54JTO4NZ.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-5YOHXTK3.js";
|
|
17
|
+
import "../chunk-RYVL76ZF.js";
|
|
18
18
|
import "../chunk-KET4QQZB.js";
|
|
19
|
-
import "../chunk-
|
|
19
|
+
import "../chunk-JGPOQJ73.js";
|
|
20
20
|
import "../chunk-7BNK4M23.js";
|
|
21
21
|
import {
|
|
22
22
|
dispatchSkillsFromGit
|
|
23
|
-
} from "../chunk-
|
|
24
|
-
import "../chunk-
|
|
25
|
-
import "../chunk-
|
|
23
|
+
} from "../chunk-Q43LM7CO.js";
|
|
24
|
+
import "../chunk-RZASDABE.js";
|
|
25
|
+
import "../chunk-WY2J54IZ.js";
|
|
26
26
|
import "../chunk-IOW3MW2K.js";
|
|
27
|
-
import "../chunk-
|
|
28
|
-
import "../chunk-
|
|
27
|
+
import "../chunk-4XB37LST.js";
|
|
28
|
+
import "../chunk-GN2CSZC6.js";
|
|
29
29
|
import "../chunk-TIQU5VY7.js";
|
|
30
|
-
import "../chunk-
|
|
31
|
-
import "../chunk-
|
|
32
|
-
import "../chunk-
|
|
33
|
-
import "../chunk-
|
|
34
|
-
import "../chunk-
|
|
35
|
-
import "../chunk-
|
|
30
|
+
import "../chunk-2L2A6W6I.js";
|
|
31
|
+
import "../chunk-NGCM4B4V.js";
|
|
32
|
+
import "../chunk-OFMQEUYN.js";
|
|
33
|
+
import "../chunk-MQRKPF46.js";
|
|
34
|
+
import "../chunk-27EHWQPK.js";
|
|
35
|
+
import "../chunk-U4XK4BB3.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-KPWUZSHL.js";
|
|
43
43
|
import "../chunk-3ISINLYT.js";
|
|
44
44
|
import "../chunk-6B6UN6SG.js";
|
|
45
45
|
import "../chunk-ZCZD7FHU.js";
|
|
@@ -53,7 +53,7 @@ import {
|
|
|
53
53
|
readCheckState,
|
|
54
54
|
shouldRunCheck,
|
|
55
55
|
spawnBackgroundCheck
|
|
56
|
-
} from "../chunk-
|
|
56
|
+
} from "../chunk-GDJ2MRYH.js";
|
|
57
57
|
import "../chunk-RL4VMEXL.js";
|
|
58
58
|
import "../chunk-XPRGWHBL.js";
|
|
59
59
|
import "../chunk-ZP5E7YET.js";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createCheckPhaseGateCommand,
|
|
3
3
|
runCheckPhaseGate
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-5YOHXTK3.js";
|
|
5
|
+
import "./chunk-KPWUZSHL.js";
|
|
6
6
|
import "./chunk-ZCZD7FHU.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-GDJ2MRYH.js";
|
|
8
8
|
import "./chunk-RL4VMEXL.js";
|
|
9
9
|
import "./chunk-XPRGWHBL.js";
|
|
10
10
|
import "./chunk-EBJQ6N4M.js";
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
} from "./chunk-W6Y7ZW3Y.js";
|
|
7
7
|
import {
|
|
8
8
|
init_dist
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-GDJ2MRYH.js";
|
|
10
10
|
import {
|
|
11
11
|
Ok
|
|
12
12
|
} from "./chunk-RL4VMEXL.js";
|
|
@@ -127,7 +127,7 @@ function buildSummaryResponse(report) {
|
|
|
127
127
|
}
|
|
128
128
|
async function handleDetectEntropy(input) {
|
|
129
129
|
try {
|
|
130
|
-
const { EntropyAnalyzer } = await import("./dist-
|
|
130
|
+
const { EntropyAnalyzer } = await import("./dist-ZJGFXGIB.js");
|
|
131
131
|
const typeFilter = input.type ?? "all";
|
|
132
132
|
const analyzer = new EntropyAnalyzer({
|
|
133
133
|
rootDir: sanitizePath(input.path),
|
|
@@ -146,7 +146,7 @@ async function handleDetectEntropy(input) {
|
|
|
146
146
|
return resultToMcpResponse(result);
|
|
147
147
|
}
|
|
148
148
|
if (!result.ok) return resultToMcpResponse(result);
|
|
149
|
-
const { createFixes, applyFixes, generateSuggestions } = await import("./dist-
|
|
149
|
+
const { createFixes, applyFixes, generateSuggestions } = await import("./dist-ZJGFXGIB.js");
|
|
150
150
|
const report = result.value;
|
|
151
151
|
const deadCode = report.deadCode;
|
|
152
152
|
const fixTypesConfig = input.fixTypes ? { fixTypes: input.fixTypes } : void 0;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolveProjectConfig
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-OFMQEUYN.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-ZJGFXGIB.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-ZJGFXGIB.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);
|
|
@@ -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-ZJGFXGIB.js");
|
|
37
37
|
const parseResult = parseDiff(input.diff);
|
|
38
38
|
if (!parseResult.ok) {
|
|
39
39
|
return resultToMcpResponse(parseResult);
|
|
@@ -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-ZJGFXGIB.js");
|
|
123
123
|
const parseResult = parseDiff(input.diff);
|
|
124
124
|
if (!parseResult.ok) {
|
|
125
125
|
return resultToMcpResponse(parseResult);
|
|
@@ -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-ZJGFXGIB.js");
|
|
199
199
|
const parseResult = parseDiff(input.diff);
|
|
200
200
|
if (!parseResult.ok) {
|
|
201
201
|
return resultToMcpResponse(parseResult);
|
|
@@ -3263,6 +3263,7 @@ __export(dist_exports, {
|
|
|
3263
3263
|
validateAgentConfigs: () => validateAgentConfigs,
|
|
3264
3264
|
validateAgentsMap: () => validateAgentsMap,
|
|
3265
3265
|
validateBoundaries: () => validateBoundaries,
|
|
3266
|
+
validateBranchName: () => validateBranchName,
|
|
3266
3267
|
validateCommitMessage: () => validateCommitMessage,
|
|
3267
3268
|
validateConfig: () => validateConfig,
|
|
3268
3269
|
validateDependencies: () => validateDependencies,
|
|
@@ -3320,6 +3321,7 @@ import { join as join12 } from "path";
|
|
|
3320
3321
|
import * as fs3 from "fs";
|
|
3321
3322
|
import * as path3 from "path";
|
|
3322
3323
|
import { minimatch as minimatch2 } from "minimatch";
|
|
3324
|
+
import { minimatch as minimatch22 } from "minimatch";
|
|
3323
3325
|
import { basename as basename2 } from "path";
|
|
3324
3326
|
import { join as join14, basename as basename3 } from "path";
|
|
3325
3327
|
import { basename as basename4, dirname as dirname42 } from "path";
|
|
@@ -3327,11 +3329,11 @@ import { z as z3 } from "zod";
|
|
|
3327
3329
|
import * as fs4 from "fs/promises";
|
|
3328
3330
|
import * as fs5 from "fs/promises";
|
|
3329
3331
|
import { resolve as resolve5 } from "path";
|
|
3330
|
-
import { minimatch as
|
|
3332
|
+
import { minimatch as minimatch3 } from "minimatch";
|
|
3331
3333
|
import { join as join15, resolve as resolve42 } from "path";
|
|
3332
3334
|
import { dirname as dirname5, resolve as resolve6 } from "path";
|
|
3333
3335
|
import { dirname as dirname6, extname as extname2, resolve as resolve7 } from "path";
|
|
3334
|
-
import { minimatch as
|
|
3336
|
+
import { minimatch as minimatch4 } from "minimatch";
|
|
3335
3337
|
import { readdirSync, statSync as statSync2 } from "fs";
|
|
3336
3338
|
import { join as join16 } from "path";
|
|
3337
3339
|
import * as fs6 from "fs";
|
|
@@ -3396,7 +3398,7 @@ import * as fs26 from "fs";
|
|
|
3396
3398
|
import * as path23 from "path";
|
|
3397
3399
|
import { z as z9 } from "zod";
|
|
3398
3400
|
import * as fs28 from "fs/promises";
|
|
3399
|
-
import { minimatch as
|
|
3401
|
+
import { minimatch as minimatch5 } from "minimatch";
|
|
3400
3402
|
import { z as z10 } from "zod";
|
|
3401
3403
|
import * as fs27 from "fs";
|
|
3402
3404
|
import * as path24 from "path";
|
|
@@ -4807,6 +4809,75 @@ function validateRoadmapMode(config, projectRoot) {
|
|
|
4807
4809
|
}
|
|
4808
4810
|
return Ok(void 0);
|
|
4809
4811
|
}
|
|
4812
|
+
function validateBranchName(branchName, config) {
|
|
4813
|
+
for (const pattern of config.ignore) {
|
|
4814
|
+
if (minimatch2(branchName, pattern)) {
|
|
4815
|
+
return { valid: true, branchName };
|
|
4816
|
+
}
|
|
4817
|
+
}
|
|
4818
|
+
if (config.customRegex) {
|
|
4819
|
+
const regex = new RegExp(config.customRegex);
|
|
4820
|
+
if (!regex.test(branchName)) {
|
|
4821
|
+
return {
|
|
4822
|
+
valid: false,
|
|
4823
|
+
branchName,
|
|
4824
|
+
message: `Branch name "${branchName}" does not match the custom regex: ${config.customRegex}`
|
|
4825
|
+
};
|
|
4826
|
+
}
|
|
4827
|
+
return { valid: true, branchName };
|
|
4828
|
+
}
|
|
4829
|
+
const parts = branchName.split("/");
|
|
4830
|
+
if (parts.length < 2) {
|
|
4831
|
+
return {
|
|
4832
|
+
valid: false,
|
|
4833
|
+
branchName,
|
|
4834
|
+
message: `Branch name "${branchName}" must have a prefix followed by a slash (e.g., "feat/my-feature").`,
|
|
4835
|
+
suggestion: `Try renaming to "feat/${branchName}" or "fix/${branchName}".`
|
|
4836
|
+
};
|
|
4837
|
+
}
|
|
4838
|
+
const prefix = parts[0];
|
|
4839
|
+
const slug = parts.slice(1).join("/");
|
|
4840
|
+
if (!config.prefixes.includes(prefix)) {
|
|
4841
|
+
return {
|
|
4842
|
+
valid: false,
|
|
4843
|
+
branchName,
|
|
4844
|
+
message: `Prefix "${prefix}" is not allowed.`,
|
|
4845
|
+
suggestion: `Allowed prefixes: ${config.prefixes.join(", ")}.`
|
|
4846
|
+
};
|
|
4847
|
+
}
|
|
4848
|
+
if (config.enforceKebabCase) {
|
|
4849
|
+
for (const part of slug.split("/")) {
|
|
4850
|
+
const ticketMatch = part.match(TICKET_ID);
|
|
4851
|
+
if (ticketMatch) {
|
|
4852
|
+
const rest = ticketMatch[2];
|
|
4853
|
+
if (rest && !KEBAB_CASE.test(rest)) {
|
|
4854
|
+
return {
|
|
4855
|
+
valid: false,
|
|
4856
|
+
branchName,
|
|
4857
|
+
message: `Branch slug part "${part}" does not follow kebab-case after the ticket ID.`,
|
|
4858
|
+
suggestion: `Ensure the description after "${ticketMatch[1]}" uses kebab-case (lowercase, single hyphens, no leading/trailing hyphen).`
|
|
4859
|
+
};
|
|
4860
|
+
}
|
|
4861
|
+
} else if (!KEBAB_CASE.test(part)) {
|
|
4862
|
+
return {
|
|
4863
|
+
valid: false,
|
|
4864
|
+
branchName,
|
|
4865
|
+
message: `Branch slug part "${part}" must be in kebab-case (lowercase, single hyphens, no leading/trailing hyphen).`,
|
|
4866
|
+
suggestion: `Change "${part}" to match the convention.`
|
|
4867
|
+
};
|
|
4868
|
+
}
|
|
4869
|
+
}
|
|
4870
|
+
}
|
|
4871
|
+
if (typeof config.maxLength === "number" && config.maxLength > 0 && slug.length > config.maxLength) {
|
|
4872
|
+
return {
|
|
4873
|
+
valid: false,
|
|
4874
|
+
branchName,
|
|
4875
|
+
message: `Branch slug is ${slug.length} characters; max allowed is ${config.maxLength}.`,
|
|
4876
|
+
suggestion: `Shorten the description after "${prefix}/" to ${config.maxLength} characters or fewer.`
|
|
4877
|
+
};
|
|
4878
|
+
}
|
|
4879
|
+
return { valid: true, branchName };
|
|
4880
|
+
}
|
|
4810
4881
|
function determineImportance(filePath) {
|
|
4811
4882
|
const name = basename2(filePath).toLowerCase();
|
|
4812
4883
|
if (name === "index.ts" || name === "index.js" || name === "main.ts") {
|
|
@@ -4848,7 +4919,7 @@ async function checkDocCoverage(domain, options = {}) {
|
|
|
4848
4919
|
const filteredSourceFiles = sourceFiles.filter((file) => {
|
|
4849
4920
|
const relativePath = relativePosix(sourceDir, file);
|
|
4850
4921
|
return !excludePatterns.some((pattern) => {
|
|
4851
|
-
return
|
|
4922
|
+
return minimatch22(relativePath, pattern, { dot: true }) || minimatch22(file, pattern, { dot: true });
|
|
4852
4923
|
});
|
|
4853
4924
|
});
|
|
4854
4925
|
const docFiles = await findFiles("**/*.md", docsDir);
|
|
@@ -6293,7 +6364,7 @@ async function buildSnapshot2(config) {
|
|
|
6293
6364
|
}
|
|
6294
6365
|
sourceFilePaths = sourceFilePaths.filter((f) => {
|
|
6295
6366
|
const rel = relativePosix(rootDir, f);
|
|
6296
|
-
return !excludePatterns.some((p) =>
|
|
6367
|
+
return !excludePatterns.some((p) => minimatch3(rel, p));
|
|
6297
6368
|
});
|
|
6298
6369
|
const files = [];
|
|
6299
6370
|
for (const filePath of sourceFilePaths) {
|
|
@@ -6884,7 +6955,7 @@ async function detectDeadCode(snapshot, graphDeadCodeData, protectedRegions) {
|
|
|
6884
6955
|
}
|
|
6885
6956
|
function fileMatchesPattern(filePath, pattern, rootDir) {
|
|
6886
6957
|
const relativePath = relativePosix(rootDir, filePath);
|
|
6887
|
-
return
|
|
6958
|
+
return minimatch4(relativePath, pattern);
|
|
6888
6959
|
}
|
|
6889
6960
|
function checkMustExport(rule, file, message) {
|
|
6890
6961
|
if (rule.type !== "must-export") return [];
|
|
@@ -15596,7 +15667,7 @@ function assembleCandidateReport(input) {
|
|
|
15596
15667
|
}
|
|
15597
15668
|
return lines.join("\n");
|
|
15598
15669
|
}
|
|
15599
|
-
var WHATWG_BAD_PORTS, BAD_PORT_SET, VALID_TYPES, CONVENTIONAL_PATTERN, LOOKBACK_PATTERN, PulseDbSourceSchema, PulseSourcesSchema, PulseConfigSchema, BUG_TRACK_CATEGORIES, KNOWLEDGE_TRACK_CATEGORIES, ALL_SOLUTION_CATEGORIES, ISO_DATE, BugTrackSchema, KnowledgeTrackSchema, BaseFrontmatter, SolutionDocFrontmatterSchema, TRACK_CATEGORIES, DEFAULT_AGNIX_TIMEOUT_MS, HARNESS_AGNIX_DISABLE, HARNESS_AGNIX_BIN, CLAUDE_MD_WARN_BYTES, CLAUDE_MD_ERROR_BYTES, CONTEXT_FILES, MIN_DESCRIPTION_LENGTH, SETTINGS_PATHS, KNOWN_HOOK_EVENTS, MCP_SETTINGS_FILES, REQUIRED_SECTIONS, SETTINGS_FILES, KNOWN_AGNIX_TOOLS, DEFAULT_SECTIONS, DEFAULT_RATIOS, NODE_TYPE_TO_CATEGORY, SECTION_LEVEL_MAP, DEFAULT_LEVEL, DEFAULT_BUDGET, DEFAULT_LOADER_CONFIG, LEVEL_FRACTIONS, PHASE_PRIORITIES, ManifestSchema, BundleConstraintsSchema, BundleSchema, ContributionsSchema, LockfilePackageSchema, LockfileSchema, SharableLayerSchema, SharableForbiddenImportSchema, SharableBoundaryConfigSchema, SharableSecurityRulesSchema, VALID_SCOPES, LINE_PATTERN, START_PATTERN, END_PATTERN, TS_HINTS, TS_CONVENTIONS, PYTHON_HINTS, PYTHON_CONVENTIONS, DEFAULT_INCLUDE_PATTERNS, CODE_BLOCK_LANGUAGES, DEFAULT_DRIFT_CONFIG, JS_EXT_FALLBACKS2, FILE_TYPES, EXPORT_TYPES, CONVENTION_DESCRIPTIONS, RULE_CHECKERS, EntropyAnalyzer, readFile62, writeFile32, unlink22, mkdir22, copyFile2, DEFAULT_FIX_CONFIG, EXPORT_TYPE_KEYWORD, ALWAYS_UNSAFE_TYPES, idCounter, DEAD_CODE_FIX_ACTIONS, MustExportRuleSchema, MustExportDefaultRuleSchema, NoExportRuleSchema, MustImportRuleSchema, NoImportRuleSchema, NamingRuleSchema, MaxExportsRuleSchema, MaxLinesRuleSchema, RequireJSDocRuleSchema, RuleSchema, ConfigPatternSchema, PatternConfigSchema, DriftConfigSchema, DeadCodeConfigSchema, EntropyConfigSchema, BaselineManager, BenchmarkRunner, RegressionDetector, SOURCE_EXTENSIONS, FUNCTION_DECL_RE, CONST_DECL_RE, CriticalPathResolver, NoOpTelemetryAdapter, NoOpExecutor, ConsoleSink, feedbackConfig, ChecklistBuilder, AgentActionEmitter, globalEmitter, FileSink, NoOpSink, CategorySnapshotSchema, TimelineSnapshotSchema, TimelineFileSchema, TrendLineSchema, TrendResultSchema, DEFAULT_STABILITY_THRESHOLDS, ALL_CATEGORIES, TimelineManager, ConfidenceTierSchema, RegressionResultSchema, DirectionSchema, CategoryForecastSchema, SpecImpactSignalsSchema, SpecImpactEstimateSchema, ContributingFeatureSchema, AdjustedForecastSchema, PredictionWarningSchema, StabilityForecastSchema, PredictionResultSchema, PredictionOptionsSchema, VALID_STATUSES, EM_DASH, VALID_PRIORITIES, ALL_CATEGORIES2, DIRECTION_THRESHOLD, PredictionEngine, DEFAULT_COEFFICIENTS, SpecImpactEstimator, EMPTY_HISTORY, ViolationHistoryManager, NORMALIZERS, MAX_SAMPLES, DEFAULT_WINDOW_WEEKS, DEFAULT_MIN_OCCURRENCES, FailureEntrySchema, HandoffSchema, GateCheckSchema, GateResultSchema, GateConfigSchema, HarnessStateSchema, DEFAULT_STATE, StreamInfoSchema, StreamIndexSchema, DEFAULT_STREAM_INDEX, HARNESS_DIR, STATE_FILE, LEARNINGS_FILE, FAILURES_FILE, HANDOFF_FILE, GATE_CONFIG_FILE, INDEX_FILE, SESSIONS_DIR, SESSION_INDEX_FILE, SUMMARY_FILE, SESSION_STATE_FILE, ARCHIVE_DIR, CONTENT_HASHES_FILE, EVENTS_FILE, STREAMS_DIR, STREAM_NAME_REGEX, branchCache, BRANCH_CACHE_TTL_MS, STATE_FILES, MAX_CACHE_ENTRIES, learningsCacheMap, WEIGHTS, LOCK_RETRIES, LOCK_BACKOFFS, PROMOTABLE_OUTCOMES, failuresCacheMap, FAILURE_LINE_REGEX, SAFE_GATE_COMMAND, SkillEventSchema, knownHashesCache, EVENT_FORMATTERS, RuleRegistry, DEFAULT_SECURITY_CONFIG, RuleOverrideSchema, SecurityConfigSchema, secretRules, injectionRules, xssRules, cryptoRules, pathTraversalRules, networkRules, deserializationRules, agentConfigRules, mcpRules, insecureDefaultsRules, sharpEdgesRules, nodeRules, expressRules, reactRules, goRules, SecurityScanner, hiddenUnicodePatterns, reRolingPatterns, permissionEscalationPatterns, encodedPayloadPatterns, indirectInjectionPatterns, contextManipulationPatterns, socialEngineeringPatterns, suspiciousPatterns, ALL_PATTERNS, DESTRUCTIVE_BASH, TAINT_DURATION_MS, DEFAULT_SESSION_ID, SecurityCategorySnapshotSchema, SupplyChainSnapshotSchema, SecurityTimelineSnapshotSchema, FindingLifecycleSchema, SecurityTimelineFileSchema, DirectionSchema2, SecurityTrendLineSchema, TrendAttributionSchema, SecurityTrendResultSchema, TimeToFixStatsSchema, TimeToFixResultSchema, EMPTY_SUPPLY_CHAIN, SecurityTimelineManager, ALL_CHECKS, STATUS_ICONS, CINotifier, ExclusionSet, PREFIX_PATTERNS, TEST_FILE_PATTERN, MD_FILE_PATTERN, ALL_DOMAINS, SECURITY_PATTERNS, JS_EXT_FALLBACKS22, SEVERITY_RANK, SEVERITY_ORDER, SEVERITY_LABELS, VALIDATED_BY_RANK, VALIDATION_SCORES, DOMAIN_BASELINES, FACTOR_WEIGHTS, EVIDENCE_SATURATION, CORROBORATED_AGREEMENT, STANDALONE_AGREEMENT, AGREEMENT_LINE_GAP, COMPLIANCE_DESCRIPTOR, EXPORT_RE, BUG_DETECTION_DESCRIPTOR, SECURITY_DESCRIPTOR, EVAL_PATTERN, SECRET_PATTERNS, SQL_CONCAT_PATTERN, SHELL_EXEC_PATTERN, ARCHITECTURE_DESCRIPTOR, LARGE_FILE_THRESHOLD, VIOLATION_FILE_RE, LEARNINGS_DESCRIPTOR, RELEVANCE_THRESHOLD, AGENT_DESCRIPTORS, AGENT_RUNNERS, DOWNGRADE_MAP, DEFAULT_PROVIDER_TIERS, SMALL_SUGGESTION_LINE_LIMIT, FILE_LINE_RANGE_PATTERN, FILE_LINE_PATTERN, FILE_ONLY_PATTERN, SECURITY_SENSITIVE_PATH, MIGRATION_PATH, TEST_PATH, CONFIG_PATH, STAGE_DOMAINS, EM_DASH2, STATUS_RANK, RETRY_DEFAULTS, GitHubIssuesSyncAdapter, syncMutex, PRIORITY_RANK, PRIORITY_RANK2, POSITION_WEIGHT, DEPENDENTS_WEIGHT, AFFINITY_WEIGHT, ConflictError, DEFAULTS, GitHubHttp, ETagStore, START_MARKER, END_MARKER, SERIALIZER_FIELDS, GitHubIssuesTrackerAdapter, migrate_exports, HASH_RE, InteractionTypeSchema, QuestionSchema, ConfirmationSchema, TransitionSchema, EmitInteractionInputSchema, ProjectScanner, SHELL_TEMPLATE, STYLES, SCRIPTS, MockLLMService, llmService, ContentPipeline, BlueprintGenerator, TOKENS_PER_MILLION, fallback_default, LITELLM_PRICING_URL, CACHE_TTL_MS, STALENESS_WARNING_DAYS, MICRODOLLARS_PER_DOLLAR, TOKENS_PER_MILLION2, StructuralStrategy, DEFAULT_TOKEN_BUDGET, CHARS_PER_TOKEN, TRUNCATION_MARKER, TruncationStrategy, CompactionPipeline, STABILITY_LOOKUP, TIER_ORDER, AnthropicCacheAdapter, TIER_ORDER2, OpenAICacheAdapter, TIER_ORDER3, CACHED_CONTENT_MARKER, GeminiCacheAdapter, VERSION, POSTHOG_BATCH_URL, MAX_ATTEMPTS, TIMEOUT_MS, CompoundLockHeldError, KNOWN_CATEGORIES, ALLOWED_FIELD_KEYS, PII_TOKENS, PII_FIELD_DENYLIST, PII_LINE_RE, ALLOWED_SET, PulseAdapterAlreadyRegisteredError, REGISTRY, MOCK_ADAPTER_NAME, ALLOWED_FIELD_SET, adapter, LOOKBACK_RE, MAX_LINES, INLINE_TEMPLATE, TRUNCATION_MARKER2, execFileAsync, FIX_RE, EMPTY_REPO_RE, execFileAsync2, TRACK_CATEGORIES2, STOPWORDS, KEYWORD_TO_CATEGORY;
|
|
15670
|
+
var WHATWG_BAD_PORTS, BAD_PORT_SET, VALID_TYPES, CONVENTIONAL_PATTERN, LOOKBACK_PATTERN, PulseDbSourceSchema, PulseSourcesSchema, PulseConfigSchema, BUG_TRACK_CATEGORIES, KNOWLEDGE_TRACK_CATEGORIES, ALL_SOLUTION_CATEGORIES, ISO_DATE, BugTrackSchema, KnowledgeTrackSchema, BaseFrontmatter, SolutionDocFrontmatterSchema, TRACK_CATEGORIES, DEFAULT_AGNIX_TIMEOUT_MS, HARNESS_AGNIX_DISABLE, HARNESS_AGNIX_BIN, CLAUDE_MD_WARN_BYTES, CLAUDE_MD_ERROR_BYTES, CONTEXT_FILES, MIN_DESCRIPTION_LENGTH, SETTINGS_PATHS, KNOWN_HOOK_EVENTS, MCP_SETTINGS_FILES, REQUIRED_SECTIONS, SETTINGS_FILES, KNOWN_AGNIX_TOOLS, KEBAB_CASE, TICKET_ID, DEFAULT_SECTIONS, DEFAULT_RATIOS, NODE_TYPE_TO_CATEGORY, SECTION_LEVEL_MAP, DEFAULT_LEVEL, DEFAULT_BUDGET, DEFAULT_LOADER_CONFIG, LEVEL_FRACTIONS, PHASE_PRIORITIES, ManifestSchema, BundleConstraintsSchema, BundleSchema, ContributionsSchema, LockfilePackageSchema, LockfileSchema, SharableLayerSchema, SharableForbiddenImportSchema, SharableBoundaryConfigSchema, SharableSecurityRulesSchema, VALID_SCOPES, LINE_PATTERN, START_PATTERN, END_PATTERN, TS_HINTS, TS_CONVENTIONS, PYTHON_HINTS, PYTHON_CONVENTIONS, DEFAULT_INCLUDE_PATTERNS, CODE_BLOCK_LANGUAGES, DEFAULT_DRIFT_CONFIG, JS_EXT_FALLBACKS2, FILE_TYPES, EXPORT_TYPES, CONVENTION_DESCRIPTIONS, RULE_CHECKERS, EntropyAnalyzer, readFile62, writeFile32, unlink22, mkdir22, copyFile2, DEFAULT_FIX_CONFIG, EXPORT_TYPE_KEYWORD, ALWAYS_UNSAFE_TYPES, idCounter, DEAD_CODE_FIX_ACTIONS, MustExportRuleSchema, MustExportDefaultRuleSchema, NoExportRuleSchema, MustImportRuleSchema, NoImportRuleSchema, NamingRuleSchema, MaxExportsRuleSchema, MaxLinesRuleSchema, RequireJSDocRuleSchema, RuleSchema, ConfigPatternSchema, PatternConfigSchema, DriftConfigSchema, DeadCodeConfigSchema, EntropyConfigSchema, BaselineManager, BenchmarkRunner, RegressionDetector, SOURCE_EXTENSIONS, FUNCTION_DECL_RE, CONST_DECL_RE, CriticalPathResolver, NoOpTelemetryAdapter, NoOpExecutor, ConsoleSink, feedbackConfig, ChecklistBuilder, AgentActionEmitter, globalEmitter, FileSink, NoOpSink, CategorySnapshotSchema, TimelineSnapshotSchema, TimelineFileSchema, TrendLineSchema, TrendResultSchema, DEFAULT_STABILITY_THRESHOLDS, ALL_CATEGORIES, TimelineManager, ConfidenceTierSchema, RegressionResultSchema, DirectionSchema, CategoryForecastSchema, SpecImpactSignalsSchema, SpecImpactEstimateSchema, ContributingFeatureSchema, AdjustedForecastSchema, PredictionWarningSchema, StabilityForecastSchema, PredictionResultSchema, PredictionOptionsSchema, VALID_STATUSES, EM_DASH, VALID_PRIORITIES, ALL_CATEGORIES2, DIRECTION_THRESHOLD, PredictionEngine, DEFAULT_COEFFICIENTS, SpecImpactEstimator, EMPTY_HISTORY, ViolationHistoryManager, NORMALIZERS, MAX_SAMPLES, DEFAULT_WINDOW_WEEKS, DEFAULT_MIN_OCCURRENCES, FailureEntrySchema, HandoffSchema, GateCheckSchema, GateResultSchema, GateConfigSchema, HarnessStateSchema, DEFAULT_STATE, StreamInfoSchema, StreamIndexSchema, DEFAULT_STREAM_INDEX, HARNESS_DIR, STATE_FILE, LEARNINGS_FILE, FAILURES_FILE, HANDOFF_FILE, GATE_CONFIG_FILE, INDEX_FILE, SESSIONS_DIR, SESSION_INDEX_FILE, SUMMARY_FILE, SESSION_STATE_FILE, ARCHIVE_DIR, CONTENT_HASHES_FILE, EVENTS_FILE, STREAMS_DIR, STREAM_NAME_REGEX, branchCache, BRANCH_CACHE_TTL_MS, STATE_FILES, MAX_CACHE_ENTRIES, learningsCacheMap, WEIGHTS, LOCK_RETRIES, LOCK_BACKOFFS, PROMOTABLE_OUTCOMES, failuresCacheMap, FAILURE_LINE_REGEX, SAFE_GATE_COMMAND, SkillEventSchema, knownHashesCache, EVENT_FORMATTERS, RuleRegistry, DEFAULT_SECURITY_CONFIG, RuleOverrideSchema, SecurityConfigSchema, secretRules, injectionRules, xssRules, cryptoRules, pathTraversalRules, networkRules, deserializationRules, agentConfigRules, mcpRules, insecureDefaultsRules, sharpEdgesRules, nodeRules, expressRules, reactRules, goRules, SecurityScanner, hiddenUnicodePatterns, reRolingPatterns, permissionEscalationPatterns, encodedPayloadPatterns, indirectInjectionPatterns, contextManipulationPatterns, socialEngineeringPatterns, suspiciousPatterns, ALL_PATTERNS, DESTRUCTIVE_BASH, TAINT_DURATION_MS, DEFAULT_SESSION_ID, SecurityCategorySnapshotSchema, SupplyChainSnapshotSchema, SecurityTimelineSnapshotSchema, FindingLifecycleSchema, SecurityTimelineFileSchema, DirectionSchema2, SecurityTrendLineSchema, TrendAttributionSchema, SecurityTrendResultSchema, TimeToFixStatsSchema, TimeToFixResultSchema, EMPTY_SUPPLY_CHAIN, SecurityTimelineManager, ALL_CHECKS, STATUS_ICONS, CINotifier, ExclusionSet, PREFIX_PATTERNS, TEST_FILE_PATTERN, MD_FILE_PATTERN, ALL_DOMAINS, SECURITY_PATTERNS, JS_EXT_FALLBACKS22, SEVERITY_RANK, SEVERITY_ORDER, SEVERITY_LABELS, VALIDATED_BY_RANK, VALIDATION_SCORES, DOMAIN_BASELINES, FACTOR_WEIGHTS, EVIDENCE_SATURATION, CORROBORATED_AGREEMENT, STANDALONE_AGREEMENT, AGREEMENT_LINE_GAP, COMPLIANCE_DESCRIPTOR, EXPORT_RE, BUG_DETECTION_DESCRIPTOR, SECURITY_DESCRIPTOR, EVAL_PATTERN, SECRET_PATTERNS, SQL_CONCAT_PATTERN, SHELL_EXEC_PATTERN, ARCHITECTURE_DESCRIPTOR, LARGE_FILE_THRESHOLD, VIOLATION_FILE_RE, LEARNINGS_DESCRIPTOR, RELEVANCE_THRESHOLD, AGENT_DESCRIPTORS, AGENT_RUNNERS, DOWNGRADE_MAP, DEFAULT_PROVIDER_TIERS, SMALL_SUGGESTION_LINE_LIMIT, FILE_LINE_RANGE_PATTERN, FILE_LINE_PATTERN, FILE_ONLY_PATTERN, SECURITY_SENSITIVE_PATH, MIGRATION_PATH, TEST_PATH, CONFIG_PATH, STAGE_DOMAINS, EM_DASH2, STATUS_RANK, RETRY_DEFAULTS, GitHubIssuesSyncAdapter, syncMutex, PRIORITY_RANK, PRIORITY_RANK2, POSITION_WEIGHT, DEPENDENTS_WEIGHT, AFFINITY_WEIGHT, ConflictError, DEFAULTS, GitHubHttp, ETagStore, START_MARKER, END_MARKER, SERIALIZER_FIELDS, GitHubIssuesTrackerAdapter, migrate_exports, HASH_RE, InteractionTypeSchema, QuestionSchema, ConfirmationSchema, TransitionSchema, EmitInteractionInputSchema, ProjectScanner, SHELL_TEMPLATE, STYLES, SCRIPTS, MockLLMService, llmService, ContentPipeline, BlueprintGenerator, TOKENS_PER_MILLION, fallback_default, LITELLM_PRICING_URL, CACHE_TTL_MS, STALENESS_WARNING_DAYS, MICRODOLLARS_PER_DOLLAR, TOKENS_PER_MILLION2, StructuralStrategy, DEFAULT_TOKEN_BUDGET, CHARS_PER_TOKEN, TRUNCATION_MARKER, TruncationStrategy, CompactionPipeline, STABILITY_LOOKUP, TIER_ORDER, AnthropicCacheAdapter, TIER_ORDER2, OpenAICacheAdapter, TIER_ORDER3, CACHED_CONTENT_MARKER, GeminiCacheAdapter, VERSION, POSTHOG_BATCH_URL, MAX_ATTEMPTS, TIMEOUT_MS, CompoundLockHeldError, KNOWN_CATEGORIES, ALLOWED_FIELD_KEYS, PII_TOKENS, PII_FIELD_DENYLIST, PII_LINE_RE, ALLOWED_SET, PulseAdapterAlreadyRegisteredError, REGISTRY, MOCK_ADAPTER_NAME, ALLOWED_FIELD_SET, adapter, LOOKBACK_RE, MAX_LINES, INLINE_TEMPLATE, TRUNCATION_MARKER2, execFileAsync, FIX_RE, EMPTY_REPO_RE, execFileAsync2, TRACK_CATEGORIES2, STOPWORDS, KEYWORD_TO_CATEGORY;
|
|
15600
15671
|
var init_dist3 = __esm({
|
|
15601
15672
|
"../core/dist/index.mjs"() {
|
|
15602
15673
|
init_chunk_4UI65RLE();
|
|
@@ -15826,6 +15897,8 @@ var init_dist3 = __esm({
|
|
|
15826
15897
|
"kiro",
|
|
15827
15898
|
"windsurf"
|
|
15828
15899
|
]);
|
|
15900
|
+
KEBAB_CASE = /^[a-z0-9]+(-[a-z0-9]+)*$/;
|
|
15901
|
+
TICKET_ID = /^([A-Z0-9]+-[0-9]+)-(.*)$/;
|
|
15829
15902
|
DEFAULT_SECTIONS = [
|
|
15830
15903
|
{
|
|
15831
15904
|
name: "Documentation",
|
|
@@ -19005,7 +19078,7 @@ var init_dist3 = __esm({
|
|
|
19005
19078
|
const applicableRules = this.activeRules.filter((rule) => {
|
|
19006
19079
|
if (!rule.fileGlob) return true;
|
|
19007
19080
|
const globs = rule.fileGlob.split(",").map((g) => g.trim());
|
|
19008
|
-
return globs.some((glob5) =>
|
|
19081
|
+
return globs.some((glob5) => minimatch5(filePath, glob5, { dot: true }));
|
|
19009
19082
|
});
|
|
19010
19083
|
return this.scanLinesWithRules(lines, applicableRules, filePath, startLine);
|
|
19011
19084
|
}
|
|
@@ -21637,6 +21710,7 @@ export {
|
|
|
21637
21710
|
validateAgentConfigs,
|
|
21638
21711
|
getRoadmapMode,
|
|
21639
21712
|
validateRoadmapMode,
|
|
21713
|
+
validateBranchName,
|
|
21640
21714
|
checkDocCoverage,
|
|
21641
21715
|
validateKnowledgeMap,
|
|
21642
21716
|
generateAgentsMap,
|
|
@@ -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-ZJGFXGIB.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-ZJGFXGIB.js");
|
|
118
118
|
const projectRoot = sanitizePath(input.path);
|
|
119
119
|
const manager = new core.SecurityTimelineManager(projectRoot);
|
|
120
120
|
const trendOptions = {};
|