@harness-engineering/cli 4.3.3 → 5.0.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-brainstorming/SKILL.md +3 -1
- package/dist/agents/skills/claude-code/harness-roadmap-pilot/SKILL.md +5 -0
- package/dist/agents/skills/claude-code/harness-rollback/SKILL.md +124 -0
- package/dist/agents/skills/claude-code/harness-rollback/skill.yaml +52 -0
- package/dist/agents/skills/claude-code/product-requirements/SKILL.md +150 -0
- package/dist/agents/skills/claude-code/product-requirements/skill.yaml +70 -0
- package/dist/agents/skills/codex/harness-brainstorming/SKILL.md +3 -1
- package/dist/agents/skills/codex/harness-roadmap-pilot/SKILL.md +5 -0
- package/dist/agents/skills/codex/harness-rollback/SKILL.md +124 -0
- package/dist/agents/skills/codex/harness-rollback/skill.yaml +52 -0
- package/dist/agents/skills/codex/product-requirements/SKILL.md +150 -0
- package/dist/agents/skills/codex/product-requirements/skill.yaml +70 -0
- package/dist/agents/skills/cursor/harness-brainstorming/SKILL.md +3 -1
- package/dist/agents/skills/cursor/harness-roadmap-pilot/SKILL.md +5 -0
- package/dist/agents/skills/cursor/harness-rollback/SKILL.md +124 -0
- package/dist/agents/skills/cursor/harness-rollback/skill.yaml +52 -0
- package/dist/agents/skills/cursor/product-requirements/SKILL.md +150 -0
- package/dist/agents/skills/cursor/product-requirements/skill.yaml +70 -0
- package/dist/agents/skills/gemini-cli/harness-brainstorming/SKILL.md +3 -1
- package/dist/agents/skills/gemini-cli/harness-roadmap-pilot/SKILL.md +5 -0
- package/dist/agents/skills/gemini-cli/harness-rollback/SKILL.md +124 -0
- package/dist/agents/skills/gemini-cli/harness-rollback/skill.yaml +52 -0
- package/dist/agents/skills/gemini-cli/product-requirements/SKILL.md +150 -0
- package/dist/agents/skills/gemini-cli/product-requirements/skill.yaml +70 -0
- package/dist/{agents-md-N4ULMUAK.js → agents-md-GOFDOUEI.js} +4 -4
- package/dist/{analyzer-XRCV63KC-WGRHW2ZM.js → analyzer-XRCV63KC-CUGBENHK.js} +2 -2
- package/dist/{architecture-OIMIBDJC.js → architecture-UJZTBKJ2.js} +5 -5
- package/dist/{assess-project-ITSB6W4L.js → assess-project-S3UOQUQW.js} +1 -1
- package/dist/bin/harness-mcp.js +15 -15
- package/dist/bin/harness.js +25 -25
- package/dist/{check-phase-gate-GN4X7HT6.js → check-phase-gate-SQ2X2Q7T.js} +5 -5
- package/dist/{chunk-F3GNBRGL.js → chunk-4ITYAEOA.js} +85 -85
- package/dist/{chunk-H5GN7R43.js → chunk-6RXT67Q4.js} +2 -2
- package/dist/{chunk-GTHL3TRZ.js → chunk-7BBQ5C7I.js} +2 -2
- package/dist/{chunk-574JCBYH.js → chunk-AIFPI3UZ.js} +2 -2
- package/dist/{chunk-CRHQYBDA.js → chunk-CFK4RJFP.js} +89 -4
- package/dist/{chunk-TKPAOB2T.js → chunk-DFWM2SNS.js} +2 -2
- package/dist/{chunk-LP764MGR.js → chunk-DPG2WNSN.js} +3 -3
- package/dist/{chunk-T46G6YNI.js → chunk-DSXUS6KG.js} +3 -3
- package/dist/{chunk-CMU4DNLY.js → chunk-DU6AUYTA.js} +1 -1
- package/dist/{chunk-MEDRUIRO.js → chunk-FXO3EODY.js} +3 -3
- package/dist/{chunk-D7A5JR7M.js → chunk-JGW4CHIJ.js} +2 -2
- package/dist/{chunk-JZL2O3RC.js → chunk-KI64IQLS.js} +5 -5
- package/dist/{chunk-5BUHPOCP.js → chunk-OIMJWYWF.js} +7 -7
- package/dist/{chunk-HJYAXAYQ.js → chunk-OWJTMHVP.js} +2 -2
- package/dist/{chunk-YVI7ZV73.js → chunk-PSFJ5YKQ.js} +585 -154
- package/dist/{chunk-VJDSB7CI.js → chunk-R5C7ZFON.js} +14 -0
- package/dist/{chunk-MIZQY35D.js → chunk-RD75T4XK.js} +2 -2
- package/dist/{chunk-7RH2NTLA.js → chunk-RPOBWUKV.js} +1 -1
- package/dist/{chunk-U2NOOATF.js → chunk-SQDQMVNE.js} +6 -6
- package/dist/{chunk-6NEJPS7W.js → chunk-T2PQWRRK.js} +2 -2
- package/dist/{chunk-NEMB36N4.js → chunk-UJW4POA3.js} +2 -2
- package/dist/{chunk-LTYVAKWK.js → chunk-V6QYVM6K.js} +20 -2
- package/dist/{chunk-PT65VY4S.js → chunk-WHPZG5TX.js} +6 -6
- package/dist/{chunk-XKILFNRK.js → chunk-XC7NR63Q.js} +2 -2
- package/dist/{chunk-73QZ43DF.js → chunk-YE7NZ44F.js} +2 -2
- package/dist/{ci-workflow-PA3WL6WK.js → ci-workflow-5WHUEHOF.js} +4 -4
- package/dist/{dist-ISDDHDOR.js → dist-O7MTFDG5.js} +1 -1
- package/dist/{dist-BWFFVKEW.js → dist-SOKOW7BC.js} +5 -3
- package/dist/{docs-HOTWQJQF.js → docs-AEHPPDKX.js} +5 -5
- package/dist/{engine-MVG2SPGD.js → engine-HYM5SLCD.js} +4 -4
- package/dist/{entropy-3B4U2BTF.js → entropy-6KH5G3NR.js} +5 -5
- package/dist/{feedback-WIWWDVUC.js → feedback-AUP2JK43.js} +1 -1
- package/dist/{generate-agent-definitions-KPRHY6X3.js → generate-agent-definitions-OH4RF445.js} +5 -5
- package/dist/index.d.ts +66 -0
- package/dist/index.js +25 -25
- package/dist/{loader-SPJ2ZGYW.js → loader-KWRPA7D5.js} +4 -4
- package/dist/{mcp-VSSIWTII.js → mcp-JTPO5RAK.js} +15 -15
- package/dist/{performance-JYFS27B3.js → performance-HW53ZIAF.js} +5 -5
- package/dist/{review-pipeline-BDT6Y6QV.js → review-pipeline-2R7UBFTG.js} +4 -4
- package/dist/{runtime-ZEPHPPQJ.js → runtime-BB35PFZY.js} +4 -4
- package/dist/{security-FWSDTTEW.js → security-IDJHGBBH.js} +1 -1
- package/dist/{state-events-PBDNQPXT.js → state-events-H3GGBKTB.js} +4 -4
- package/dist/{validate-XIMNCIKR.js → validate-6SDGP7AH.js} +5 -5
- package/dist/{validate-cross-check-H2OUHTID.js → validate-cross-check-OF3FPM32.js} +4 -4
- package/package.json +8 -8
|
@@ -352,6 +352,12 @@ var init_dist = __esm({
|
|
|
352
352
|
"open",
|
|
353
353
|
"gate-running",
|
|
354
354
|
"gate-failed",
|
|
355
|
+
// Durable marker that a background `ollama pull` for this approved add/swap is
|
|
356
|
+
// in flight. Set when the pull starts, cleared to `approved` on success or back
|
|
357
|
+
// to `open` on a (retryable) failure. On orchestrator startup, `installing`
|
|
358
|
+
// proposals are re-driven so an install interrupted by a restart resumes rather
|
|
359
|
+
// than being lost (the pull is idempotent — ollama resumes from cached blobs).
|
|
360
|
+
"installing",
|
|
355
361
|
"approved",
|
|
356
362
|
"rejected",
|
|
357
363
|
"failed_target_missing"
|
|
@@ -361,6 +367,14 @@ var init_dist = __esm({
|
|
|
361
367
|
target: z7.object({ hfRepoId: z7.string().min(1), ollamaName: z7.string().min(1) }),
|
|
362
368
|
replaces: z7.object({ ollamaName: z7.string().min(1) }).optional(),
|
|
363
369
|
scoreDelta: z7.number(),
|
|
370
|
+
/**
|
|
371
|
+
* Consumption Phase 2 (T6): the target's *absolute* ranked score (not the
|
|
372
|
+
* delta). Optional + additive so older persisted proposals round-trip. When
|
|
373
|
+
* present, `onApproveModelProposal` seeds the new pool entry's `currentScore`
|
|
374
|
+
* from it so an explicitly-installed model isn't buried at 0 until the next
|
|
375
|
+
* re-rank. Absent → the entry starts at 0 (legacy behavior).
|
|
376
|
+
*/
|
|
377
|
+
targetScore: z7.number().optional(),
|
|
364
378
|
justification: z7.object({
|
|
365
379
|
summary: z7.string(),
|
|
366
380
|
benchmarkBasis: z7.array(z7.string()),
|
|
@@ -98,7 +98,7 @@ async function handleAssessProject(input) {
|
|
|
98
98
|
let validateResult = null;
|
|
99
99
|
if (checksToRun.has("validate")) {
|
|
100
100
|
try {
|
|
101
|
-
const { handleValidateProject } = await import("./validate-
|
|
101
|
+
const { handleValidateProject } = await import("./validate-6SDGP7AH.js");
|
|
102
102
|
const result = await handleValidateProject({ path: projectPath });
|
|
103
103
|
const out = parseToolResponse(result, "validate");
|
|
104
104
|
if ("error" in out) {
|
|
@@ -127,7 +127,7 @@ async function handleAssessProject(input) {
|
|
|
127
127
|
parallelChecks.push(
|
|
128
128
|
(async () => {
|
|
129
129
|
try {
|
|
130
|
-
const { handleCheckDependencies } = await import("./architecture-
|
|
130
|
+
const { handleCheckDependencies } = await import("./architecture-UJZTBKJ2.js");
|
|
131
131
|
const result = await handleCheckDependencies({ path: projectPath });
|
|
132
132
|
const out = parseToolResponse(result, "deps");
|
|
133
133
|
if ("error" in out) return out.error;
|
|
@@ -155,7 +155,7 @@ async function handleAssessProject(input) {
|
|
|
155
155
|
parallelChecks.push(
|
|
156
156
|
(async () => {
|
|
157
157
|
try {
|
|
158
|
-
const { handleCheckDocs } = await import("./docs-
|
|
158
|
+
const { handleCheckDocs } = await import("./docs-AEHPPDKX.js");
|
|
159
159
|
const result = await handleCheckDocs({ path: projectPath, scope: "coverage" });
|
|
160
160
|
const out = parseToolResponse(result, "docs");
|
|
161
161
|
if ("error" in out) return out.error;
|
|
@@ -183,7 +183,7 @@ async function handleAssessProject(input) {
|
|
|
183
183
|
parallelChecks.push(
|
|
184
184
|
(async () => {
|
|
185
185
|
try {
|
|
186
|
-
const { handleDetectEntropy } = await import("./entropy-
|
|
186
|
+
const { handleDetectEntropy } = await import("./entropy-6KH5G3NR.js");
|
|
187
187
|
const result = await handleDetectEntropy({ path: projectPath, type: "all" });
|
|
188
188
|
const out = parseToolResponse(result, "entropy");
|
|
189
189
|
if ("error" in out) return out.error;
|
|
@@ -214,7 +214,7 @@ async function handleAssessProject(input) {
|
|
|
214
214
|
parallelChecks.push(
|
|
215
215
|
(async () => {
|
|
216
216
|
try {
|
|
217
|
-
const { handleRunSecurityScan } = await import("./security-
|
|
217
|
+
const { handleRunSecurityScan } = await import("./security-IDJHGBBH.js");
|
|
218
218
|
const result = await handleRunSecurityScan({ path: projectPath });
|
|
219
219
|
const out = parseToolResponse(result, "security");
|
|
220
220
|
if ("error" in out) return out.error;
|
|
@@ -247,7 +247,7 @@ async function handleAssessProject(input) {
|
|
|
247
247
|
parallelChecks.push(
|
|
248
248
|
(async () => {
|
|
249
249
|
try {
|
|
250
|
-
const { handleCheckPerformance } = await import("./performance-
|
|
250
|
+
const { handleCheckPerformance } = await import("./performance-HW53ZIAF.js");
|
|
251
251
|
const result = await handleCheckPerformance({ path: projectPath });
|
|
252
252
|
if ("isError" in result && result.isError) {
|
|
253
253
|
const msg = result.content[0]?.text ?? "Performance check failed";
|
|
@@ -7,11 +7,11 @@ import {
|
|
|
7
7
|
} from "./chunk-3WGJMBKH.js";
|
|
8
8
|
import {
|
|
9
9
|
init_dist as init_dist2
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-CFK4RJFP.js";
|
|
11
11
|
import {
|
|
12
12
|
Err,
|
|
13
13
|
Ok
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-R5C7ZFON.js";
|
|
15
15
|
import {
|
|
16
16
|
init_dist,
|
|
17
17
|
skipDirGlobs
|
|
@@ -336,6 +336,22 @@ var RoadmapConfigSchema = z.object({
|
|
|
336
336
|
/** External tracker sync settings */
|
|
337
337
|
tracker: TrackerConfigSchema.optional()
|
|
338
338
|
});
|
|
339
|
+
var RollbackSignalRuleSchema = z.object({
|
|
340
|
+
/** Threshold value the signal must cross to fire. */
|
|
341
|
+
threshold: z.number(),
|
|
342
|
+
/** Which crossing direction fires: value going above or below the threshold. */
|
|
343
|
+
direction: z.enum(["above", "below"]),
|
|
344
|
+
/** Lookback window (e.g. "24h", "7d") mapping the crossing to merged PRs. */
|
|
345
|
+
window: z.string().regex(/^\d+[hdw]$/, 'window must be <number><h|d|w>, e.g. "24h", "7d", "2w"')
|
|
346
|
+
});
|
|
347
|
+
var RollbackConfigSchema = z.object({
|
|
348
|
+
/** Signal-name -> crossing rule. A crossing calls `evaluate --trigger signal`. */
|
|
349
|
+
signals: z.record(z.string(), RollbackSignalRuleSchema).default({}),
|
|
350
|
+
/** Eval-triggered arm. Dark in v1; default disabled until #31 lands. */
|
|
351
|
+
evalTrigger: z.object({
|
|
352
|
+
enabled: z.boolean().default(false)
|
|
353
|
+
}).default({})
|
|
354
|
+
});
|
|
339
355
|
var KnowledgeConfigSchema = z.object({
|
|
340
356
|
/** Caller-supplied domain patterns (e.g. `["agents/<dir>"]`). Extends defaults. */
|
|
341
357
|
domainPatterns: z.array(z.string().regex(/^[\w.-]+\/<dir>$/)).optional().default([]),
|
|
@@ -526,6 +542,8 @@ var HarnessConfigSchema = z.object({
|
|
|
526
542
|
}).optional(),
|
|
527
543
|
/** Roadmap sync and tracker integration settings */
|
|
528
544
|
roadmap: RoadmapConfigSchema.optional(),
|
|
545
|
+
/** Post-ship rollback circuit-breaker settings (signal arm live, eval arm dark). */
|
|
546
|
+
rollback: RollbackConfigSchema.optional(),
|
|
529
547
|
/** Knowledge-pipeline domain-inference settings */
|
|
530
548
|
knowledge: KnowledgeConfigSchema.optional(),
|
|
531
549
|
/** Adoption telemetry settings */
|
|
@@ -7,13 +7,13 @@ import {
|
|
|
7
7
|
import {
|
|
8
8
|
findConfigFile,
|
|
9
9
|
loadConfig
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-V6QYVM6K.js";
|
|
11
11
|
import {
|
|
12
12
|
init_dist
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-CFK4RJFP.js";
|
|
14
14
|
import {
|
|
15
15
|
Ok
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-R5C7ZFON.js";
|
|
17
17
|
|
|
18
18
|
// src/mcp/tools/docs.ts
|
|
19
19
|
init_dist();
|
|
@@ -50,12 +50,12 @@ async function handleCheckDocs(input) {
|
|
|
50
50
|
const projectPath = sanitizePath(input.path);
|
|
51
51
|
const scope = input.scope ?? "coverage";
|
|
52
52
|
if (scope === "integrity") {
|
|
53
|
-
const { validateKnowledgeMap } = await import("./dist-
|
|
53
|
+
const { validateKnowledgeMap } = await import("./dist-SOKOW7BC.js");
|
|
54
54
|
const result2 = await validateKnowledgeMap(projectPath);
|
|
55
55
|
return resultToMcpResponse(result2);
|
|
56
56
|
}
|
|
57
57
|
if (scope === "all") {
|
|
58
|
-
const { checkDocCoverage: checkDocCoverage2, validateKnowledgeMap } = await import("./dist-
|
|
58
|
+
const { checkDocCoverage: checkDocCoverage2, validateKnowledgeMap } = await import("./dist-SOKOW7BC.js");
|
|
59
59
|
const domain2 = input.domain ?? "src";
|
|
60
60
|
const { loadGraphStore: loadGraphStore2 } = await import("./graph-loader-STFGYKZH.js");
|
|
61
61
|
const store2 = await loadGraphStore2(projectPath);
|
|
@@ -94,7 +94,7 @@ async function handleCheckDocs(input) {
|
|
|
94
94
|
}
|
|
95
95
|
return resultToMcpResponse(Ok({ coverage, integrity }));
|
|
96
96
|
}
|
|
97
|
-
const { checkDocCoverage } = await import("./dist-
|
|
97
|
+
const { checkDocCoverage } = await import("./dist-SOKOW7BC.js");
|
|
98
98
|
const domain = input.domain ?? "src";
|
|
99
99
|
const { loadGraphStore } = await import("./graph-loader-STFGYKZH.js");
|
|
100
100
|
const store = await loadGraphStore(projectPath);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
generateCIWorkflow
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-7BBQ5C7I.js";
|
|
4
|
+
import "./chunk-CFK4RJFP.js";
|
|
5
|
+
import "./chunk-RPOBWUKV.js";
|
|
6
|
+
import "./chunk-R5C7ZFON.js";
|
|
7
7
|
import "./chunk-WZJR6SOI.js";
|
|
8
8
|
import "./chunk-QCLOIUMX.js";
|
|
9
9
|
import "./chunk-XARGEOJV.js";
|
|
@@ -219,6 +219,7 @@ import {
|
|
|
219
219
|
claim,
|
|
220
220
|
classifyConfidence,
|
|
221
221
|
classifyFinding,
|
|
222
|
+
classifyRevert,
|
|
222
223
|
clearFailuresCache,
|
|
223
224
|
clearLearningsCache,
|
|
224
225
|
clearPulseAdapters,
|
|
@@ -524,7 +525,7 @@ import {
|
|
|
524
525
|
writeStrategyDoc,
|
|
525
526
|
writeTaint,
|
|
526
527
|
xssRules
|
|
527
|
-
} from "./chunk-
|
|
528
|
+
} from "./chunk-CFK4RJFP.js";
|
|
528
529
|
import {
|
|
529
530
|
EXTENSION_MAP,
|
|
530
531
|
EntropyAnalyzer,
|
|
@@ -550,7 +551,7 @@ import {
|
|
|
550
551
|
resetParserCache,
|
|
551
552
|
resolveFileToLayer,
|
|
552
553
|
validateDependencies
|
|
553
|
-
} from "./chunk-
|
|
554
|
+
} from "./chunk-RPOBWUKV.js";
|
|
554
555
|
import {
|
|
555
556
|
AuthAuditEntrySchema,
|
|
556
557
|
AuthTokenPublicSchema,
|
|
@@ -605,7 +606,7 @@ import {
|
|
|
605
606
|
isErr,
|
|
606
607
|
isOk,
|
|
607
608
|
migrateProposalRecord
|
|
608
|
-
} from "./chunk-
|
|
609
|
+
} from "./chunk-R5C7ZFON.js";
|
|
609
610
|
import "./chunk-WZJR6SOI.js";
|
|
610
611
|
import {
|
|
611
612
|
ArchBaselineSchema,
|
|
@@ -932,6 +933,7 @@ export {
|
|
|
932
933
|
claim,
|
|
933
934
|
classifyConfidence,
|
|
934
935
|
classifyFinding,
|
|
936
|
+
classifyRevert,
|
|
935
937
|
clearFailuresCache,
|
|
936
938
|
clearLearningsCache,
|
|
937
939
|
clearPulseAdapters,
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
checkDocsDefinition,
|
|
3
3
|
handleCheckDocs
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-WHPZG5TX.js";
|
|
5
5
|
import "./chunk-RC3OI5NK.js";
|
|
6
6
|
import "./chunk-W6Y7ZW3Y.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-V6QYVM6K.js";
|
|
8
8
|
import "./chunk-ZCZD7FHU.js";
|
|
9
9
|
import "./chunk-3WGJMBKH.js";
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-CFK4RJFP.js";
|
|
11
|
+
import "./chunk-RPOBWUKV.js";
|
|
12
|
+
import "./chunk-R5C7ZFON.js";
|
|
13
13
|
import "./chunk-WZJR6SOI.js";
|
|
14
14
|
import "./chunk-QCLOIUMX.js";
|
|
15
15
|
import "./chunk-XARGEOJV.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
TemplateEngine
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-T2PQWRRK.js";
|
|
4
|
+
import "./chunk-CFK4RJFP.js";
|
|
5
|
+
import "./chunk-RPOBWUKV.js";
|
|
6
|
+
import "./chunk-R5C7ZFON.js";
|
|
7
7
|
import "./chunk-WZJR6SOI.js";
|
|
8
8
|
import "./chunk-QCLOIUMX.js";
|
|
9
9
|
import "./chunk-XARGEOJV.js";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
detectEntropyDefinition,
|
|
3
3
|
handleDetectEntropy
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-KI64IQLS.js";
|
|
5
5
|
import "./chunk-RC3OI5NK.js";
|
|
6
6
|
import "./chunk-W6Y7ZW3Y.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-V6QYVM6K.js";
|
|
8
8
|
import "./chunk-ZCZD7FHU.js";
|
|
9
9
|
import "./chunk-3WGJMBKH.js";
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-CFK4RJFP.js";
|
|
11
|
+
import "./chunk-RPOBWUKV.js";
|
|
12
|
+
import "./chunk-R5C7ZFON.js";
|
|
13
13
|
import "./chunk-WZJR6SOI.js";
|
|
14
14
|
import "./chunk-QCLOIUMX.js";
|
|
15
15
|
import "./chunk-XARGEOJV.js";
|
package/dist/{generate-agent-definitions-KPRHY6X3.js → generate-agent-definitions-OH4RF445.js}
RENAMED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createGenerateAgentDefinitionsCommand,
|
|
3
3
|
generateAgentDefinitions
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-DU6AUYTA.js";
|
|
5
5
|
import "./chunk-KET4QQZB.js";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-YE7NZ44F.js";
|
|
7
7
|
import "./chunk-3ISINLYT.js";
|
|
8
8
|
import "./chunk-UTJJJDNN.js";
|
|
9
9
|
import "./chunk-3WGJMBKH.js";
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-CFK4RJFP.js";
|
|
11
|
+
import "./chunk-RPOBWUKV.js";
|
|
12
|
+
import "./chunk-R5C7ZFON.js";
|
|
13
13
|
import "./chunk-WZJR6SOI.js";
|
|
14
14
|
import "./chunk-QCLOIUMX.js";
|
|
15
15
|
import "./chunk-XARGEOJV.js";
|
package/dist/index.d.ts
CHANGED
|
@@ -1720,6 +1720,52 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
1720
1720
|
reverseStatusMap?: Record<string, string> | undefined;
|
|
1721
1721
|
} | undefined;
|
|
1722
1722
|
}>>;
|
|
1723
|
+
/** Post-ship rollback circuit-breaker settings (signal arm live, eval arm dark). */
|
|
1724
|
+
rollback: z.ZodOptional<z.ZodObject<{
|
|
1725
|
+
/** Signal-name -> crossing rule. A crossing calls `evaluate --trigger signal`. */
|
|
1726
|
+
signals: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
1727
|
+
/** Threshold value the signal must cross to fire. */
|
|
1728
|
+
threshold: z.ZodNumber;
|
|
1729
|
+
/** Which crossing direction fires: value going above or below the threshold. */
|
|
1730
|
+
direction: z.ZodEnum<["above", "below"]>;
|
|
1731
|
+
/** Lookback window (e.g. "24h", "7d") mapping the crossing to merged PRs. */
|
|
1732
|
+
window: z.ZodString;
|
|
1733
|
+
}, "strip", z.ZodTypeAny, {
|
|
1734
|
+
threshold: number;
|
|
1735
|
+
direction: "above" | "below";
|
|
1736
|
+
window: string;
|
|
1737
|
+
}, {
|
|
1738
|
+
threshold: number;
|
|
1739
|
+
direction: "above" | "below";
|
|
1740
|
+
window: string;
|
|
1741
|
+
}>>>;
|
|
1742
|
+
/** Eval-triggered arm. Dark in v1; default disabled until #31 lands. */
|
|
1743
|
+
evalTrigger: z.ZodDefault<z.ZodObject<{
|
|
1744
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
1745
|
+
}, "strip", z.ZodTypeAny, {
|
|
1746
|
+
enabled: boolean;
|
|
1747
|
+
}, {
|
|
1748
|
+
enabled?: boolean | undefined;
|
|
1749
|
+
}>>;
|
|
1750
|
+
}, "strip", z.ZodTypeAny, {
|
|
1751
|
+
signals: Record<string, {
|
|
1752
|
+
threshold: number;
|
|
1753
|
+
direction: "above" | "below";
|
|
1754
|
+
window: string;
|
|
1755
|
+
}>;
|
|
1756
|
+
evalTrigger: {
|
|
1757
|
+
enabled: boolean;
|
|
1758
|
+
};
|
|
1759
|
+
}, {
|
|
1760
|
+
signals?: Record<string, {
|
|
1761
|
+
threshold: number;
|
|
1762
|
+
direction: "above" | "below";
|
|
1763
|
+
window: string;
|
|
1764
|
+
}> | undefined;
|
|
1765
|
+
evalTrigger?: {
|
|
1766
|
+
enabled?: boolean | undefined;
|
|
1767
|
+
} | undefined;
|
|
1768
|
+
}>>;
|
|
1723
1769
|
/** Knowledge-pipeline domain-inference settings */
|
|
1724
1770
|
knowledge: z.ZodOptional<z.ZodObject<{
|
|
1725
1771
|
/** Caller-supplied domain patterns (e.g. `["agents/<dir>"]`). Extends defaults. */
|
|
@@ -2309,6 +2355,16 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
2309
2355
|
reverseStatusMap?: Record<string, string> | undefined;
|
|
2310
2356
|
} | undefined;
|
|
2311
2357
|
} | undefined;
|
|
2358
|
+
rollback?: {
|
|
2359
|
+
signals: Record<string, {
|
|
2360
|
+
threshold: number;
|
|
2361
|
+
direction: "above" | "below";
|
|
2362
|
+
window: string;
|
|
2363
|
+
}>;
|
|
2364
|
+
evalTrigger: {
|
|
2365
|
+
enabled: boolean;
|
|
2366
|
+
};
|
|
2367
|
+
} | undefined;
|
|
2312
2368
|
knowledge?: {
|
|
2313
2369
|
domainPatterns: string[];
|
|
2314
2370
|
domainBlocklist: string[];
|
|
@@ -2635,6 +2691,16 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
2635
2691
|
reverseStatusMap?: Record<string, string> | undefined;
|
|
2636
2692
|
} | undefined;
|
|
2637
2693
|
} | undefined;
|
|
2694
|
+
rollback?: {
|
|
2695
|
+
signals?: Record<string, {
|
|
2696
|
+
threshold: number;
|
|
2697
|
+
direction: "above" | "below";
|
|
2698
|
+
window: string;
|
|
2699
|
+
}> | undefined;
|
|
2700
|
+
evalTrigger?: {
|
|
2701
|
+
enabled?: boolean | undefined;
|
|
2702
|
+
} | undefined;
|
|
2703
|
+
} | undefined;
|
|
2638
2704
|
knowledge?: {
|
|
2639
2705
|
domainPatterns?: string[] | undefined;
|
|
2640
2706
|
domainBlocklist?: string[] | undefined;
|
package/dist/index.js
CHANGED
|
@@ -12,20 +12,20 @@ import {
|
|
|
12
12
|
runSnapshotCapture,
|
|
13
13
|
runUninstall,
|
|
14
14
|
runUninstallConstraints
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-PSFJ5YKQ.js";
|
|
16
16
|
import {
|
|
17
17
|
generateRuntime
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-AIFPI3UZ.js";
|
|
19
19
|
import {
|
|
20
20
|
generateAgentsMd
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-DFWM2SNS.js";
|
|
22
22
|
import {
|
|
23
23
|
generateCIWorkflow
|
|
24
|
-
} from "./chunk-
|
|
25
|
-
import "./chunk-
|
|
24
|
+
} from "./chunk-7BBQ5C7I.js";
|
|
25
|
+
import "./chunk-UJW4POA3.js";
|
|
26
26
|
import {
|
|
27
27
|
runCrossCheck
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-RD75T4XK.js";
|
|
29
29
|
import {
|
|
30
30
|
AGENT_DESCRIPTIONS,
|
|
31
31
|
DEFAULT_TOOLS,
|
|
@@ -34,14 +34,14 @@ import {
|
|
|
34
34
|
generateAgentDefinitions,
|
|
35
35
|
renderClaudeCodeAgent,
|
|
36
36
|
renderGeminiAgent
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-DU6AUYTA.js";
|
|
38
38
|
import "./chunk-KET4QQZB.js";
|
|
39
39
|
import {
|
|
40
40
|
runScan
|
|
41
41
|
} from "./chunk-YYFSFSB3.js";
|
|
42
42
|
import {
|
|
43
43
|
TemplateEngine
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-T2PQWRRK.js";
|
|
45
45
|
import "./chunk-CQ553GZO.js";
|
|
46
46
|
import {
|
|
47
47
|
generateSkillFiles
|
|
@@ -49,7 +49,7 @@ import {
|
|
|
49
49
|
import {
|
|
50
50
|
listPersonas,
|
|
51
51
|
loadPersona
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-YE7NZ44F.js";
|
|
53
53
|
import {
|
|
54
54
|
detectTrigger,
|
|
55
55
|
runPersona
|
|
@@ -64,27 +64,27 @@ import {
|
|
|
64
64
|
OutputFormatter,
|
|
65
65
|
OutputMode,
|
|
66
66
|
runCheckPhaseGate
|
|
67
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-DPG2WNSN.js";
|
|
68
68
|
import {
|
|
69
69
|
createHarnessServer,
|
|
70
70
|
generateSlashCommands,
|
|
71
71
|
getToolDefinitions,
|
|
72
72
|
startServer
|
|
73
|
-
} from "./chunk-
|
|
74
|
-
import "./chunk-
|
|
75
|
-
import "./chunk-
|
|
76
|
-
import "./chunk-
|
|
77
|
-
import "./chunk-
|
|
78
|
-
import "./chunk-
|
|
79
|
-
import "./chunk-
|
|
80
|
-
import "./chunk-
|
|
73
|
+
} from "./chunk-4ITYAEOA.js";
|
|
74
|
+
import "./chunk-FXO3EODY.js";
|
|
75
|
+
import "./chunk-OWJTMHVP.js";
|
|
76
|
+
import "./chunk-6RXT67Q4.js";
|
|
77
|
+
import "./chunk-SQDQMVNE.js";
|
|
78
|
+
import "./chunk-WHPZG5TX.js";
|
|
79
|
+
import "./chunk-KI64IQLS.js";
|
|
80
|
+
import "./chunk-OIMJWYWF.js";
|
|
81
81
|
import "./chunk-IOW3MW2K.js";
|
|
82
82
|
import "./chunk-3ISINLYT.js";
|
|
83
83
|
import "./chunk-4U5LDFCY.js";
|
|
84
|
-
import "./chunk-
|
|
85
|
-
import "./chunk-
|
|
84
|
+
import "./chunk-DSXUS6KG.js";
|
|
85
|
+
import "./chunk-JGW4CHIJ.js";
|
|
86
86
|
import "./chunk-RC3OI5NK.js";
|
|
87
|
-
import "./chunk-
|
|
87
|
+
import "./chunk-XC7NR63Q.js";
|
|
88
88
|
import "./chunk-W6Y7ZW3Y.js";
|
|
89
89
|
import "./chunk-WBVCN35T.js";
|
|
90
90
|
import "./chunk-UTJJJDNN.js";
|
|
@@ -94,7 +94,7 @@ import {
|
|
|
94
94
|
findConfigFile,
|
|
95
95
|
loadConfig,
|
|
96
96
|
resolveConfig
|
|
97
|
-
} from "./chunk-
|
|
97
|
+
} from "./chunk-V6QYVM6K.js";
|
|
98
98
|
import "./chunk-ZCZD7FHU.js";
|
|
99
99
|
import {
|
|
100
100
|
logger
|
|
@@ -104,10 +104,10 @@ import {
|
|
|
104
104
|
ExitCode,
|
|
105
105
|
handleError
|
|
106
106
|
} from "./chunk-3WGJMBKH.js";
|
|
107
|
-
import "./chunk-
|
|
107
|
+
import "./chunk-CFK4RJFP.js";
|
|
108
108
|
import "./chunk-BM3PWGXQ.js";
|
|
109
|
-
import "./chunk-
|
|
110
|
-
import "./chunk-
|
|
109
|
+
import "./chunk-RPOBWUKV.js";
|
|
110
|
+
import "./chunk-R5C7ZFON.js";
|
|
111
111
|
import "./chunk-WZJR6SOI.js";
|
|
112
112
|
import "./chunk-QCLOIUMX.js";
|
|
113
113
|
import "./chunk-XARGEOJV.js";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
listPersonas,
|
|
3
3
|
loadPersona
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-YE7NZ44F.js";
|
|
5
|
+
import "./chunk-CFK4RJFP.js";
|
|
6
|
+
import "./chunk-RPOBWUKV.js";
|
|
7
|
+
import "./chunk-R5C7ZFON.js";
|
|
8
8
|
import "./chunk-WZJR6SOI.js";
|
|
9
9
|
import "./chunk-QCLOIUMX.js";
|
|
10
10
|
import "./chunk-XARGEOJV.js";
|