opencode-swarm 7.118.1 → 7.120.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/cli/{config-doctor-p73yfdz0.js → config-doctor-404c8mf8.js} +3 -3
- package/dist/cli/config-fingerprint-v22xh5a2.js +10 -0
- package/dist/cli/{core-gf1t2jmn.js → core-xnwasfpc.js} +1 -1
- package/dist/cli/curation-policy-re2kaysb.js +25 -0
- package/dist/cli/{curator-8hfdh6cr.js → curator-852s9p0s.js} +30 -23
- package/dist/cli/{curator-drift-nn71xfz6.js → curator-drift-6b2fjsgr.js} +3 -2
- package/dist/cli/curator-llm-factory-5gnvggd7.js +50 -0
- package/dist/cli/{evidence-summary-service-cy3k37je.js → evidence-summary-service-jtx5q3r6.js} +9 -7
- package/dist/cli/{gate-evidence-j2m4cd85.js → gate-evidence-tbpezk28.js} +5 -5
- package/dist/cli/guardrail-explain-wadbhh06.js +51 -0
- package/dist/cli/{guardrail-log-qjqgg7pz.js → guardrail-log-dhpp0kmn.js} +4 -4
- package/dist/cli/{hive-promoter-56zm6jfy.js → hive-promoter-7fn55bgw.js} +30 -23
- package/dist/cli/index-0e1v02hq.js +343 -0
- package/dist/cli/{index-jbdgpqpj.js → index-0k4r8111.js} +28 -10
- package/dist/cli/index-0mbmfmt0.js +349 -0
- package/dist/cli/{index-ez0763de.js → index-1smvzr78.js} +2 -2
- package/dist/cli/{index-5bcrp3bc.js → index-22e127jw.js} +3 -3
- package/dist/cli/{index-pjhfe7c3.js → index-3366gs26.js} +43 -7
- package/dist/cli/{index-wpgv6hht.js → index-3jvqw5hy.js} +13 -26
- package/dist/cli/{index-bfwt3abw.js → index-4rhcth7a.js} +1 -1
- package/dist/cli/{index-n6fa2hhk.js → index-51gg9947.js} +1 -1
- package/dist/cli/index-69ms9ny1.js +261 -0
- package/dist/cli/{index-42cx6g2h.js → index-76kvm9z5.js} +1 -1
- package/dist/cli/{index-r2ysfdet.js → index-78b192v7.js} +7 -7
- package/dist/cli/{index-vwvkpg0d.js → index-816rkp4y.js} +3 -92
- package/dist/cli/index-89s4mhmw.js +6 -0
- package/dist/cli/index-9xpgytj9.js +386 -0
- package/dist/cli/index-ae75rja9.js +26 -0
- package/dist/cli/{index-ms18nybj.js → index-bndd885n.js} +1926 -2005
- package/dist/cli/index-fndvr7fr.js +135 -0
- package/dist/cli/index-gnp9x6se.js +93 -0
- package/dist/cli/{index-0pfqcjp6.js → index-h07wn84h.js} +1 -1
- package/dist/cli/{index-p45sshb5.js → index-j5xv8zbp.js} +17 -352
- package/dist/cli/{index-g2wrs7jy.js → index-kyvg2cmp.js} +1 -1
- package/dist/cli/{index-5hze8ztj.js → index-nhgw7de8.js} +7 -5
- package/dist/cli/{index-abjjn4yh.js → index-qg11yf8q.js} +4 -4
- package/dist/cli/index-rtry5xyf.js +27 -0
- package/dist/cli/{index-qx5z58a7.js → index-rywkdacj.js} +93 -11
- package/dist/cli/{index-pdk1n8yh.js → index-tftv9xh9.js} +44 -2
- package/dist/cli/{index-11q1t6g0.js → index-vqcgmy4y.js} +1 -1
- package/dist/cli/{index-m90weyvs.js → index-w64n2y0f.js} +32 -25
- package/dist/cli/{index-q4kgsvdd.js → index-wtn8wf7h.js} +1 -1
- package/dist/cli/{index-bcg89pt8.js → index-zvae4m8g.js} +1 -1
- package/dist/cli/index.js +30 -23
- package/dist/cli/{knowledge-escalator-gt1q632m.js → knowledge-escalator-0ejqs8c9.js} +9 -8
- package/dist/cli/{knowledge-events-0bjdtdsb.js → knowledge-events-wx9e37ba.js} +6 -5
- package/dist/cli/knowledge-link-sy85fw3w.js +37 -0
- package/dist/cli/{knowledge-store-fm2300xf.js → knowledge-store-rnajx33a.js} +17 -6
- package/dist/cli/{knowledge-validator-91kx3eqv.js → knowledge-validator-1f4mkzmc.js} +11 -7
- package/dist/cli/{pending-delegations-9cn17983.js → pending-delegations-0z3znsec.js} +5 -5
- package/dist/cli/{pr-subscriptions-8a6jwek2.js → pr-subscriptions-x653151h.js} +4 -4
- package/dist/cli/scan-cursor-qapm0sxj.js +25 -0
- package/dist/cli/{schema-7c484wjz.js → schema-vwxpsk6j.js} +2 -2
- package/dist/cli/{scope-persistence-fm0gzhnk.js → scope-persistence-mfr36yc9.js} +2 -2
- package/dist/cli/{skill-generator-3f8dqjj2.js → skill-generator-tkv7s12g.js} +12 -9
- package/dist/config/schema.d.ts +8 -8
- package/dist/hooks/curator-postmortem.d.ts +6 -4
- package/dist/hooks/curator.d.ts +5 -1
- package/dist/hooks/hive-promoter.d.ts +3 -1
- package/dist/hooks/knowledge-store.d.ts +54 -1
- package/dist/hooks/knowledge-types.d.ts +107 -2
- package/dist/hooks/knowledge-validator.d.ts +25 -4
- package/dist/index.js +387 -384
- package/dist/knowledge/curation-policy.d.ts +125 -0
- package/dist/knowledge/family-manifest.d.ts +30 -2
- package/dist/knowledge/family-migration.d.ts +16 -4
- package/dist/knowledge/scan-cursor.d.ts +107 -0
- package/dist/knowledge/worktree-identity.d.ts +39 -0
- package/dist/memory/schema.d.ts +1 -1
- package/dist/services/knowledge-diagnostics.d.ts +29 -0
- package/package.json +1 -1
- package/dist/cli/curator-llm-factory-exrqs5ax.js +0 -43
- package/dist/cli/guardrail-explain-0rzn7wy4.js +0 -44
- /package/dist/cli/{index-vvk2g744.js → index-7g4c7s5r.js} +0 -0
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import {
|
|
3
|
+
_internals,
|
|
4
|
+
loadAgentPrompt,
|
|
5
|
+
loadPluginConfig,
|
|
6
|
+
loadPluginConfigWithMeta,
|
|
7
|
+
loadPluginConfigWithMetaAsync,
|
|
8
|
+
resolveWorktreeIsolationConfig
|
|
9
|
+
} from "./index-9xpgytj9.js";
|
|
10
|
+
import {
|
|
11
|
+
ApprovalEvidenceSchema,
|
|
12
|
+
BaseEvidenceSchema,
|
|
13
|
+
DiffEvidenceSchema,
|
|
14
|
+
EVIDENCE_MAX_JSON_BYTES,
|
|
15
|
+
EVIDENCE_MAX_PATCH_BYTES,
|
|
16
|
+
EVIDENCE_MAX_TASK_BYTES,
|
|
17
|
+
EvidenceBundleSchema,
|
|
18
|
+
EvidenceSchema,
|
|
19
|
+
EvidenceTypeSchema,
|
|
20
|
+
EvidenceVerdictSchema,
|
|
21
|
+
MigrationStatusSchema,
|
|
22
|
+
NoteEvidenceSchema,
|
|
23
|
+
PhaseSchema,
|
|
24
|
+
PhaseStatusSchema,
|
|
25
|
+
PlanSchema,
|
|
26
|
+
ReviewEvidenceSchema,
|
|
27
|
+
TaskSchema,
|
|
28
|
+
TaskSizeSchema,
|
|
29
|
+
TaskStatusSchema,
|
|
30
|
+
TestEvidenceSchema
|
|
31
|
+
} from "./index-0mbmfmt0.js";
|
|
32
|
+
import {
|
|
33
|
+
DeltaSpecSchema,
|
|
34
|
+
ObligationSchema,
|
|
35
|
+
SpecDeltaSchema,
|
|
36
|
+
SpecRequirementSchema,
|
|
37
|
+
SpecScenarioSchema,
|
|
38
|
+
SpecSectionSchema,
|
|
39
|
+
SwarmSpecSchema,
|
|
40
|
+
validateSpecContent
|
|
41
|
+
} from "./index-gnp9x6se.js";
|
|
42
|
+
import {
|
|
43
|
+
ALL_AGENT_NAMES,
|
|
44
|
+
ALL_SUBAGENT_NAMES,
|
|
45
|
+
AgentOverrideConfigSchema,
|
|
46
|
+
ApplyPatchConfigSchema,
|
|
47
|
+
AutomationCapabilitiesSchema,
|
|
48
|
+
AutomationConfigSchema,
|
|
49
|
+
AutomationModeSchema,
|
|
50
|
+
DEFAULT_MODELS,
|
|
51
|
+
LeanTurboConfigSchema,
|
|
52
|
+
MemoryConfigSchema,
|
|
53
|
+
ModelPricingConfigSchema,
|
|
54
|
+
ORCHESTRATOR_NAME,
|
|
55
|
+
PIPELINE_AGENTS,
|
|
56
|
+
PhaseCompleteConfigSchema,
|
|
57
|
+
PipelineConfigSchema,
|
|
58
|
+
PluginConfigSchema,
|
|
59
|
+
PricingConfigSchema,
|
|
60
|
+
QA_AGENTS,
|
|
61
|
+
RepoGraphConfigSchema,
|
|
62
|
+
SkillPropagationConfigSchema,
|
|
63
|
+
SwarmConfigSchema,
|
|
64
|
+
TurboConfigSchema,
|
|
65
|
+
WorktreeIsolationConfigSchema,
|
|
66
|
+
isQAAgent,
|
|
67
|
+
isSubagent
|
|
68
|
+
} from "./index-tftv9xh9.js";
|
|
69
|
+
import"./index-4rhcth7a.js";
|
|
70
|
+
import"./index-ye3fndsw.js";
|
|
71
|
+
import"./index-p0arc26j.js";
|
|
72
|
+
import"./index-zgwm4ryv.js";
|
|
73
|
+
import"./index-293f68mj.js";
|
|
74
|
+
import"./index-a76rekgs.js";
|
|
75
|
+
export {
|
|
76
|
+
validateSpecContent,
|
|
77
|
+
resolveWorktreeIsolationConfig,
|
|
78
|
+
loadPluginConfigWithMetaAsync,
|
|
79
|
+
loadPluginConfigWithMeta,
|
|
80
|
+
loadPluginConfig,
|
|
81
|
+
loadAgentPrompt,
|
|
82
|
+
isSubagent,
|
|
83
|
+
isQAAgent,
|
|
84
|
+
_internals,
|
|
85
|
+
WorktreeIsolationConfigSchema,
|
|
86
|
+
TurboConfigSchema,
|
|
87
|
+
TestEvidenceSchema,
|
|
88
|
+
TaskStatusSchema,
|
|
89
|
+
TaskSizeSchema,
|
|
90
|
+
TaskSchema,
|
|
91
|
+
SwarmSpecSchema,
|
|
92
|
+
SwarmConfigSchema,
|
|
93
|
+
SpecSectionSchema,
|
|
94
|
+
SpecScenarioSchema,
|
|
95
|
+
SpecRequirementSchema,
|
|
96
|
+
SpecDeltaSchema,
|
|
97
|
+
SkillPropagationConfigSchema,
|
|
98
|
+
ReviewEvidenceSchema,
|
|
99
|
+
RepoGraphConfigSchema,
|
|
100
|
+
QA_AGENTS,
|
|
101
|
+
PricingConfigSchema,
|
|
102
|
+
PluginConfigSchema,
|
|
103
|
+
PlanSchema,
|
|
104
|
+
PipelineConfigSchema,
|
|
105
|
+
PhaseStatusSchema,
|
|
106
|
+
PhaseSchema,
|
|
107
|
+
PhaseCompleteConfigSchema,
|
|
108
|
+
PIPELINE_AGENTS,
|
|
109
|
+
ObligationSchema,
|
|
110
|
+
ORCHESTRATOR_NAME,
|
|
111
|
+
NoteEvidenceSchema,
|
|
112
|
+
ModelPricingConfigSchema,
|
|
113
|
+
MigrationStatusSchema,
|
|
114
|
+
MemoryConfigSchema,
|
|
115
|
+
LeanTurboConfigSchema,
|
|
116
|
+
EvidenceVerdictSchema,
|
|
117
|
+
EvidenceTypeSchema,
|
|
118
|
+
EvidenceSchema,
|
|
119
|
+
EvidenceBundleSchema,
|
|
120
|
+
EVIDENCE_MAX_TASK_BYTES,
|
|
121
|
+
EVIDENCE_MAX_PATCH_BYTES,
|
|
122
|
+
EVIDENCE_MAX_JSON_BYTES,
|
|
123
|
+
DiffEvidenceSchema,
|
|
124
|
+
DeltaSpecSchema,
|
|
125
|
+
DEFAULT_MODELS,
|
|
126
|
+
BaseEvidenceSchema,
|
|
127
|
+
AutomationModeSchema,
|
|
128
|
+
AutomationConfigSchema,
|
|
129
|
+
AutomationCapabilitiesSchema,
|
|
130
|
+
ApprovalEvidenceSchema,
|
|
131
|
+
ApplyPatchConfigSchema,
|
|
132
|
+
AgentOverrideConfigSchema,
|
|
133
|
+
ALL_SUBAGENT_NAMES,
|
|
134
|
+
ALL_AGENT_NAMES
|
|
135
|
+
};
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import {
|
|
3
|
+
exports_external
|
|
4
|
+
} from "./index-293f68mj.js";
|
|
5
|
+
|
|
6
|
+
// src/config/spec-schema.ts
|
|
7
|
+
var ObligationSchema = exports_external.enum(["MUST", "SHALL", "SHOULD", "MAY"]);
|
|
8
|
+
var SpecRequirementSchema = exports_external.object({
|
|
9
|
+
id: exports_external.string().regex(/^FR-(?!000)\d{3}$/, "Requirement ID must match FR-### pattern (e.g., FR-001)"),
|
|
10
|
+
obligation: ObligationSchema,
|
|
11
|
+
text: exports_external.string().min(1)
|
|
12
|
+
});
|
|
13
|
+
var SpecScenarioSchema = exports_external.object({
|
|
14
|
+
name: exports_external.string().min(1),
|
|
15
|
+
given: exports_external.array(exports_external.string()).optional().default([]),
|
|
16
|
+
when: exports_external.array(exports_external.string()).min(1, 'Scenario must have at least one "when" clause'),
|
|
17
|
+
thenClauses: exports_external.array(exports_external.string()).min(1, 'Scenario must have at least one "then" clause')
|
|
18
|
+
});
|
|
19
|
+
var SpecSectionSchema = exports_external.object({
|
|
20
|
+
name: exports_external.string().min(1),
|
|
21
|
+
requirements: exports_external.array(SpecRequirementSchema).default([])
|
|
22
|
+
});
|
|
23
|
+
var SwarmSpecSchema = exports_external.object({
|
|
24
|
+
title: exports_external.string().min(1),
|
|
25
|
+
purpose: exports_external.string().min(1),
|
|
26
|
+
sections: exports_external.array(SpecSectionSchema).min(1, "Spec must have at least one section")
|
|
27
|
+
});
|
|
28
|
+
var SpecDeltaSchema = exports_external.object({
|
|
29
|
+
added: exports_external.array(SpecRequirementSchema).default([]),
|
|
30
|
+
modified: exports_external.array(SpecRequirementSchema).default([]),
|
|
31
|
+
removed: exports_external.array(SpecRequirementSchema).default([])
|
|
32
|
+
});
|
|
33
|
+
var DeltaSpecSchema = exports_external.union([
|
|
34
|
+
SwarmSpecSchema,
|
|
35
|
+
SpecDeltaSchema
|
|
36
|
+
]);
|
|
37
|
+
var FENCED_BLOCK_PATTERN = /```[\s\S]*?```/g;
|
|
38
|
+
var INLINE_CODE_PATTERN = /`[^`]*`/g;
|
|
39
|
+
var FR_ID_PATTERN = /\bFR-\d{3}\b/g;
|
|
40
|
+
var OBLIGATION_PATTERN = /\b(MUST|SHALL|SHOULD|MAY)\b/g;
|
|
41
|
+
var SECTION_HEADER_PATTERN = /^##\s+.+$/gm;
|
|
42
|
+
function stripCodeBlocks(content) {
|
|
43
|
+
return content.replace(FENCED_BLOCK_PATTERN, "").replace(INLINE_CODE_PATTERN, "");
|
|
44
|
+
}
|
|
45
|
+
function getLineNumber(content, position) {
|
|
46
|
+
const prefix = content.substring(0, position);
|
|
47
|
+
return (prefix.match(/\n/g) || []).length + 1;
|
|
48
|
+
}
|
|
49
|
+
function validateSpecContent(content) {
|
|
50
|
+
const issues = [];
|
|
51
|
+
if (!content || content.trim().length === 0) {
|
|
52
|
+
return { valid: false, issues: [{ line: 1, message: "Content is empty" }] };
|
|
53
|
+
}
|
|
54
|
+
const strippedContent = stripCodeBlocks(content);
|
|
55
|
+
const frMatches = strippedContent.match(FR_ID_PATTERN);
|
|
56
|
+
if (!frMatches || frMatches.length === 0) {
|
|
57
|
+
issues.push({
|
|
58
|
+
line: 1,
|
|
59
|
+
message: "No FR-### requirement IDs found in spec content"
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
const obligationMatches = strippedContent.match(OBLIGATION_PATTERN);
|
|
63
|
+
if (!obligationMatches || obligationMatches.length === 0) {
|
|
64
|
+
issues.push({
|
|
65
|
+
line: 1,
|
|
66
|
+
message: "No obligation keywords (MUST, SHALL, SHOULD, MAY) found in spec content"
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
const sectionMatches = strippedContent.match(SECTION_HEADER_PATTERN);
|
|
70
|
+
if (!sectionMatches || sectionMatches.length === 0) {
|
|
71
|
+
issues.push({
|
|
72
|
+
line: 1,
|
|
73
|
+
message: "No section headers (## Section Name) found in spec content"
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
const idMatches = strippedContent.matchAll(/\bFR-(\d{3})\b/g);
|
|
77
|
+
for (const idMatch of idMatches) {
|
|
78
|
+
const num = parseInt(idMatch[1], 10);
|
|
79
|
+
if (num === 0) {
|
|
80
|
+
const pos = idMatch.index;
|
|
81
|
+
issues.push({
|
|
82
|
+
line: getLineNumber(strippedContent, pos),
|
|
83
|
+
message: `Invalid FR-ID "${idMatch[0]}" \u2014 number must be 001-999`
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
valid: issues.length === 0,
|
|
89
|
+
issues
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export { ObligationSchema, SpecRequirementSchema, SpecScenarioSchema, SpecSectionSchema, SwarmSpecSchema, SpecDeltaSchema, DeltaSpecSchema, validateSpecContent };
|
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import {
|
|
3
3
|
readEffectiveSpecSync
|
|
4
|
-
} from "./index-
|
|
4
|
+
} from "./index-816rkp4y.js";
|
|
5
|
+
import {
|
|
6
|
+
EVIDENCE_MAX_JSON_BYTES,
|
|
7
|
+
EvidenceBundleSchema,
|
|
8
|
+
EvidenceSchema,
|
|
9
|
+
ExecutionProfileSchema,
|
|
10
|
+
PlanSchema,
|
|
11
|
+
TaskStatusSchema
|
|
12
|
+
} from "./index-0mbmfmt0.js";
|
|
5
13
|
import {
|
|
6
14
|
_internals,
|
|
7
15
|
buildDefaultPolicy,
|
|
@@ -25,23 +33,23 @@ import {
|
|
|
25
33
|
readTaskEvidence,
|
|
26
34
|
readTaskEvidenceRaw,
|
|
27
35
|
sanitizeTaskId
|
|
28
|
-
} from "./index-
|
|
36
|
+
} from "./index-qg11yf8q.js";
|
|
29
37
|
import {
|
|
30
38
|
atomicWriteFile
|
|
31
|
-
} from "./index-
|
|
32
|
-
import {
|
|
33
|
-
ZodError,
|
|
34
|
-
exports_external
|
|
35
|
-
} from "./index-293f68mj.js";
|
|
39
|
+
} from "./index-h07wn84h.js";
|
|
36
40
|
import {
|
|
37
41
|
withEvidenceLock
|
|
38
|
-
} from "./index-
|
|
42
|
+
} from "./index-76kvm9z5.js";
|
|
39
43
|
import {
|
|
40
44
|
readCachedParsedFile
|
|
41
45
|
} from "./index-fsrp8wp3.js";
|
|
42
46
|
import {
|
|
43
47
|
emit
|
|
44
48
|
} from "./index-q2rrv0cy.js";
|
|
49
|
+
import {
|
|
50
|
+
ZodError,
|
|
51
|
+
exports_external
|
|
52
|
+
} from "./index-293f68mj.js";
|
|
45
53
|
import {
|
|
46
54
|
bunHash,
|
|
47
55
|
bunWrite,
|
|
@@ -863,67 +871,6 @@ import {
|
|
|
863
871
|
import * as fsPromises from "fs/promises";
|
|
864
872
|
import * as path9 from "path";
|
|
865
873
|
|
|
866
|
-
// src/config/plan-schema.ts
|
|
867
|
-
var ExecutionProfileSchema = exports_external.object({
|
|
868
|
-
parallelization_enabled: exports_external.boolean().default(false),
|
|
869
|
-
max_concurrent_tasks: exports_external.number().int().min(1).max(64).default(10),
|
|
870
|
-
council_parallel: exports_external.boolean().default(true),
|
|
871
|
-
locked: exports_external.boolean().default(false),
|
|
872
|
-
auto_proceed: exports_external.boolean().default(false)
|
|
873
|
-
});
|
|
874
|
-
var TaskStatusSchema = exports_external.enum([
|
|
875
|
-
"pending",
|
|
876
|
-
"in_progress",
|
|
877
|
-
"completed",
|
|
878
|
-
"blocked",
|
|
879
|
-
"closed"
|
|
880
|
-
]);
|
|
881
|
-
var TaskSizeSchema = exports_external.enum(["small", "medium", "large"]);
|
|
882
|
-
var PhaseStatusSchema = exports_external.enum([
|
|
883
|
-
"pending",
|
|
884
|
-
"in_progress",
|
|
885
|
-
"complete",
|
|
886
|
-
"completed",
|
|
887
|
-
"blocked",
|
|
888
|
-
"closed"
|
|
889
|
-
]);
|
|
890
|
-
var MigrationStatusSchema = exports_external.enum([
|
|
891
|
-
"native",
|
|
892
|
-
"migrated",
|
|
893
|
-
"migration_failed"
|
|
894
|
-
]);
|
|
895
|
-
var TaskSchema = exports_external.object({
|
|
896
|
-
id: exports_external.string(),
|
|
897
|
-
phase: exports_external.number().int().min(1),
|
|
898
|
-
status: TaskStatusSchema.default("pending"),
|
|
899
|
-
size: TaskSizeSchema.default("small"),
|
|
900
|
-
description: exports_external.string().min(1),
|
|
901
|
-
depends: exports_external.array(exports_external.string()).default([]),
|
|
902
|
-
acceptance: exports_external.string().optional(),
|
|
903
|
-
files_touched: exports_external.array(exports_external.string()).default([]),
|
|
904
|
-
evidence_path: exports_external.string().optional(),
|
|
905
|
-
blocked_reason: exports_external.string().optional()
|
|
906
|
-
});
|
|
907
|
-
var PhaseSchema = exports_external.object({
|
|
908
|
-
id: exports_external.number().int().min(1),
|
|
909
|
-
name: exports_external.string().min(1),
|
|
910
|
-
status: PhaseStatusSchema.default("pending"),
|
|
911
|
-
tasks: exports_external.array(TaskSchema).default([]),
|
|
912
|
-
type: exports_external.enum(["code", "non-code"]).optional(),
|
|
913
|
-
required_agents: exports_external.array(exports_external.string()).optional()
|
|
914
|
-
});
|
|
915
|
-
var PlanSchema = exports_external.object({
|
|
916
|
-
schema_version: exports_external.literal("1.0.0"),
|
|
917
|
-
title: exports_external.string().min(1),
|
|
918
|
-
swarm: exports_external.string().min(1),
|
|
919
|
-
current_phase: exports_external.number().int().min(1).optional(),
|
|
920
|
-
phases: exports_external.array(PhaseSchema).min(1),
|
|
921
|
-
migration_status: MigrationStatusSchema.optional(),
|
|
922
|
-
specMtime: exports_external.string().optional(),
|
|
923
|
-
specHash: exports_external.string().optional(),
|
|
924
|
-
execution_profile: ExecutionProfileSchema.optional()
|
|
925
|
-
});
|
|
926
|
-
|
|
927
874
|
// src/git/branch.ts
|
|
928
875
|
init_executor();
|
|
929
876
|
import * as child_process from "child_process";
|
|
@@ -3881,288 +3828,6 @@ import * as fs7 from "fs/promises";
|
|
|
3881
3828
|
import * as os4 from "os";
|
|
3882
3829
|
import * as path13 from "path";
|
|
3883
3830
|
|
|
3884
|
-
// src/config/evidence-schema.ts
|
|
3885
|
-
var EVIDENCE_MAX_JSON_BYTES = 500 * 1024;
|
|
3886
|
-
var EVIDENCE_MAX_PATCH_BYTES = 5 * 1024 * 1024;
|
|
3887
|
-
var EVIDENCE_MAX_TASK_BYTES = 20 * 1024 * 1024;
|
|
3888
|
-
var EvidenceTypeSchema = exports_external.enum([
|
|
3889
|
-
"review",
|
|
3890
|
-
"test",
|
|
3891
|
-
"diff",
|
|
3892
|
-
"approval",
|
|
3893
|
-
"note",
|
|
3894
|
-
"retrospective",
|
|
3895
|
-
"syntax",
|
|
3896
|
-
"placeholder",
|
|
3897
|
-
"sast",
|
|
3898
|
-
"sbom",
|
|
3899
|
-
"build",
|
|
3900
|
-
"quality_budget",
|
|
3901
|
-
"secretscan",
|
|
3902
|
-
"mutation-gate",
|
|
3903
|
-
"drift-verification",
|
|
3904
|
-
"hallucination-verification"
|
|
3905
|
-
]);
|
|
3906
|
-
var EvidenceVerdictSchema = exports_external.enum([
|
|
3907
|
-
"pass",
|
|
3908
|
-
"fail",
|
|
3909
|
-
"warn",
|
|
3910
|
-
"skip",
|
|
3911
|
-
"approved",
|
|
3912
|
-
"rejected",
|
|
3913
|
-
"info"
|
|
3914
|
-
]);
|
|
3915
|
-
var BaseEvidenceSchema = exports_external.object({
|
|
3916
|
-
task_id: exports_external.string().min(1),
|
|
3917
|
-
type: EvidenceTypeSchema,
|
|
3918
|
-
timestamp: exports_external.string().datetime(),
|
|
3919
|
-
agent: exports_external.string().min(1),
|
|
3920
|
-
verdict: EvidenceVerdictSchema,
|
|
3921
|
-
summary: exports_external.string().min(1),
|
|
3922
|
-
metadata: exports_external.record(exports_external.string(), exports_external.unknown()).optional()
|
|
3923
|
-
});
|
|
3924
|
-
var ReviewEvidenceSchema = BaseEvidenceSchema.extend({
|
|
3925
|
-
type: exports_external.literal("review"),
|
|
3926
|
-
risk: exports_external.enum(["low", "medium", "high", "critical"]),
|
|
3927
|
-
issues: exports_external.array(exports_external.object({
|
|
3928
|
-
severity: exports_external.enum(["error", "warning", "info"]),
|
|
3929
|
-
message: exports_external.string().min(1),
|
|
3930
|
-
file: exports_external.string().optional(),
|
|
3931
|
-
line: exports_external.number().int().optional()
|
|
3932
|
-
})).default([])
|
|
3933
|
-
});
|
|
3934
|
-
var TestEvidenceSchema = BaseEvidenceSchema.extend({
|
|
3935
|
-
type: exports_external.literal("test"),
|
|
3936
|
-
tests_passed: exports_external.number().int().min(0),
|
|
3937
|
-
tests_failed: exports_external.number().int().min(0),
|
|
3938
|
-
test_file: exports_external.string().optional(),
|
|
3939
|
-
failures: exports_external.array(exports_external.object({
|
|
3940
|
-
name: exports_external.string().min(1),
|
|
3941
|
-
message: exports_external.string().min(1)
|
|
3942
|
-
})).default([])
|
|
3943
|
-
});
|
|
3944
|
-
var DiffEvidenceSchema = BaseEvidenceSchema.extend({
|
|
3945
|
-
type: exports_external.literal("diff"),
|
|
3946
|
-
files_changed: exports_external.array(exports_external.string()).default([]),
|
|
3947
|
-
additions: exports_external.number().int().min(0).default(0),
|
|
3948
|
-
deletions: exports_external.number().int().min(0).default(0),
|
|
3949
|
-
patch_path: exports_external.string().optional()
|
|
3950
|
-
});
|
|
3951
|
-
var ApprovalEvidenceSchema = BaseEvidenceSchema.extend({
|
|
3952
|
-
type: exports_external.literal("approval")
|
|
3953
|
-
});
|
|
3954
|
-
var NoteEvidenceSchema = BaseEvidenceSchema.extend({
|
|
3955
|
-
type: exports_external.literal("note")
|
|
3956
|
-
});
|
|
3957
|
-
var RetrospectiveEvidenceSchema = BaseEvidenceSchema.extend({
|
|
3958
|
-
type: exports_external.literal("retrospective"),
|
|
3959
|
-
phase_number: exports_external.number().int().min(1).max(99),
|
|
3960
|
-
total_tool_calls: exports_external.number().int().min(0).max(9999),
|
|
3961
|
-
coder_revisions: exports_external.number().int().min(0).max(999),
|
|
3962
|
-
reviewer_rejections: exports_external.number().int().min(0).max(999),
|
|
3963
|
-
loop_detections: exports_external.number().int().min(0).max(9999).optional(),
|
|
3964
|
-
circuit_breaker_trips: exports_external.number().int().min(0).max(9999).optional(),
|
|
3965
|
-
test_failures: exports_external.number().int().min(0).max(9999),
|
|
3966
|
-
security_findings: exports_external.number().int().min(0).max(999),
|
|
3967
|
-
integration_issues: exports_external.number().int().min(0).max(999),
|
|
3968
|
-
task_count: exports_external.number().int().min(1).max(9999),
|
|
3969
|
-
task_complexity: exports_external.enum(["trivial", "simple", "moderate", "complex"]),
|
|
3970
|
-
top_rejection_reasons: exports_external.array(exports_external.string()).default([]),
|
|
3971
|
-
lessons_learned: exports_external.array(exports_external.string()).max(5).default([]),
|
|
3972
|
-
user_directives: exports_external.array(exports_external.object({
|
|
3973
|
-
directive: exports_external.string().min(1),
|
|
3974
|
-
category: exports_external.enum([
|
|
3975
|
-
"tooling",
|
|
3976
|
-
"code_style",
|
|
3977
|
-
"architecture",
|
|
3978
|
-
"process",
|
|
3979
|
-
"other"
|
|
3980
|
-
]),
|
|
3981
|
-
scope: exports_external.enum(["session", "project", "global"])
|
|
3982
|
-
})).default([]),
|
|
3983
|
-
approaches_tried: exports_external.array(exports_external.object({
|
|
3984
|
-
approach: exports_external.string().min(1),
|
|
3985
|
-
result: exports_external.enum(["success", "failure", "partial"]),
|
|
3986
|
-
abandoned_reason: exports_external.string().optional()
|
|
3987
|
-
})).max(10).default([]),
|
|
3988
|
-
error_taxonomy: exports_external.array(exports_external.enum([
|
|
3989
|
-
"planning_error",
|
|
3990
|
-
"interface_mismatch",
|
|
3991
|
-
"logic_error",
|
|
3992
|
-
"scope_creep",
|
|
3993
|
-
"gate_evasion"
|
|
3994
|
-
])).default([])
|
|
3995
|
-
});
|
|
3996
|
-
var SyntaxEvidenceSchema = BaseEvidenceSchema.extend({
|
|
3997
|
-
type: exports_external.literal("syntax"),
|
|
3998
|
-
files_checked: exports_external.number().int(),
|
|
3999
|
-
files_failed: exports_external.number().int(),
|
|
4000
|
-
skipped_count: exports_external.number().int().default(0),
|
|
4001
|
-
files: exports_external.array(exports_external.object({
|
|
4002
|
-
path: exports_external.string(),
|
|
4003
|
-
language: exports_external.string(),
|
|
4004
|
-
ok: exports_external.boolean(),
|
|
4005
|
-
errors: exports_external.array(exports_external.object({
|
|
4006
|
-
line: exports_external.number().int(),
|
|
4007
|
-
column: exports_external.number().int(),
|
|
4008
|
-
message: exports_external.string()
|
|
4009
|
-
})).default([]),
|
|
4010
|
-
skipped_reason: exports_external.string().optional()
|
|
4011
|
-
})).default([])
|
|
4012
|
-
});
|
|
4013
|
-
var PlaceholderEvidenceSchema = BaseEvidenceSchema.extend({
|
|
4014
|
-
type: exports_external.literal("placeholder"),
|
|
4015
|
-
findings: exports_external.array(exports_external.object({
|
|
4016
|
-
path: exports_external.string(),
|
|
4017
|
-
line: exports_external.number().int(),
|
|
4018
|
-
kind: exports_external.enum(["comment", "string", "function_body", "other"]),
|
|
4019
|
-
excerpt: exports_external.string(),
|
|
4020
|
-
rule_id: exports_external.string()
|
|
4021
|
-
})).default([]),
|
|
4022
|
-
files_scanned: exports_external.number().int(),
|
|
4023
|
-
files_with_findings: exports_external.number().int(),
|
|
4024
|
-
findings_count: exports_external.number().int()
|
|
4025
|
-
});
|
|
4026
|
-
var SastFindingSchema = exports_external.object({
|
|
4027
|
-
rule_id: exports_external.string(),
|
|
4028
|
-
severity: exports_external.enum(["critical", "high", "medium", "low"]),
|
|
4029
|
-
message: exports_external.string(),
|
|
4030
|
-
location: exports_external.object({
|
|
4031
|
-
file: exports_external.string(),
|
|
4032
|
-
line: exports_external.number().int(),
|
|
4033
|
-
column: exports_external.number().int().optional()
|
|
4034
|
-
}),
|
|
4035
|
-
remediation: exports_external.string().optional()
|
|
4036
|
-
});
|
|
4037
|
-
var SastEvidenceSchema = BaseEvidenceSchema.extend({
|
|
4038
|
-
type: exports_external.literal("sast"),
|
|
4039
|
-
findings: exports_external.array(SastFindingSchema).default([]),
|
|
4040
|
-
engine: exports_external.enum(["tier_a", "tier_a+tier_b"]),
|
|
4041
|
-
files_scanned: exports_external.number().int(),
|
|
4042
|
-
findings_count: exports_external.number().int(),
|
|
4043
|
-
findings_by_severity: exports_external.object({
|
|
4044
|
-
critical: exports_external.number().int(),
|
|
4045
|
-
high: exports_external.number().int(),
|
|
4046
|
-
medium: exports_external.number().int(),
|
|
4047
|
-
low: exports_external.number().int()
|
|
4048
|
-
}),
|
|
4049
|
-
new_findings: exports_external.array(SastFindingSchema).optional(),
|
|
4050
|
-
pre_existing_findings: exports_external.array(SastFindingSchema).optional(),
|
|
4051
|
-
baseline_used: exports_external.boolean().optional()
|
|
4052
|
-
});
|
|
4053
|
-
var SbomEvidenceSchema = BaseEvidenceSchema.extend({
|
|
4054
|
-
type: exports_external.literal("sbom"),
|
|
4055
|
-
components: exports_external.array(exports_external.object({
|
|
4056
|
-
name: exports_external.string(),
|
|
4057
|
-
version: exports_external.string(),
|
|
4058
|
-
type: exports_external.enum(["library", "framework", "application"]),
|
|
4059
|
-
purl: exports_external.string().optional(),
|
|
4060
|
-
license: exports_external.string().optional()
|
|
4061
|
-
})).default([]),
|
|
4062
|
-
metadata: exports_external.object({
|
|
4063
|
-
timestamp: exports_external.string().datetime(),
|
|
4064
|
-
tool: exports_external.string(),
|
|
4065
|
-
tool_version: exports_external.string()
|
|
4066
|
-
}),
|
|
4067
|
-
files: exports_external.array(exports_external.string()),
|
|
4068
|
-
components_count: exports_external.number().int(),
|
|
4069
|
-
output_path: exports_external.string()
|
|
4070
|
-
});
|
|
4071
|
-
var BuildEvidenceSchema = BaseEvidenceSchema.extend({
|
|
4072
|
-
type: exports_external.literal("build"),
|
|
4073
|
-
runs: exports_external.array(exports_external.object({
|
|
4074
|
-
kind: exports_external.enum(["build", "typecheck", "test"]),
|
|
4075
|
-
command: exports_external.string(),
|
|
4076
|
-
cwd: exports_external.string(),
|
|
4077
|
-
exit_code: exports_external.number().int(),
|
|
4078
|
-
duration_ms: exports_external.number().int(),
|
|
4079
|
-
stdout_tail: exports_external.string(),
|
|
4080
|
-
stderr_tail: exports_external.string()
|
|
4081
|
-
})).default([]),
|
|
4082
|
-
files_scanned: exports_external.number().int(),
|
|
4083
|
-
runs_count: exports_external.number().int(),
|
|
4084
|
-
failed_count: exports_external.number().int(),
|
|
4085
|
-
skipped_reason: exports_external.string().optional()
|
|
4086
|
-
});
|
|
4087
|
-
var QualityBudgetEvidenceSchema = BaseEvidenceSchema.extend({
|
|
4088
|
-
type: exports_external.literal("quality_budget"),
|
|
4089
|
-
metrics: exports_external.object({
|
|
4090
|
-
complexity_delta: exports_external.number(),
|
|
4091
|
-
public_api_delta: exports_external.number(),
|
|
4092
|
-
duplication_ratio: exports_external.number(),
|
|
4093
|
-
test_to_code_ratio: exports_external.number()
|
|
4094
|
-
}),
|
|
4095
|
-
thresholds: exports_external.object({
|
|
4096
|
-
max_complexity_delta: exports_external.number(),
|
|
4097
|
-
max_public_api_delta: exports_external.number(),
|
|
4098
|
-
max_duplication_ratio: exports_external.number(),
|
|
4099
|
-
min_test_to_code_ratio: exports_external.number()
|
|
4100
|
-
}),
|
|
4101
|
-
violations: exports_external.array(exports_external.object({
|
|
4102
|
-
type: exports_external.enum(["complexity", "api", "duplication", "test_ratio"]),
|
|
4103
|
-
message: exports_external.string(),
|
|
4104
|
-
severity: exports_external.enum(["error", "warning"]),
|
|
4105
|
-
files: exports_external.array(exports_external.string())
|
|
4106
|
-
})).default([]),
|
|
4107
|
-
files_analyzed: exports_external.array(exports_external.string())
|
|
4108
|
-
});
|
|
4109
|
-
var SecretscanEvidenceSchema = BaseEvidenceSchema.extend({
|
|
4110
|
-
type: exports_external.literal("secretscan"),
|
|
4111
|
-
findings_count: exports_external.number().int().min(0).default(0),
|
|
4112
|
-
scan_directory: exports_external.string().optional(),
|
|
4113
|
-
files_scanned: exports_external.number().int().min(0).default(0),
|
|
4114
|
-
skipped_files: exports_external.number().int().min(0).default(0)
|
|
4115
|
-
});
|
|
4116
|
-
var GateEvidenceBaseSchema = exports_external.object({
|
|
4117
|
-
task_id: exports_external.string().optional(),
|
|
4118
|
-
agent: exports_external.string().optional(),
|
|
4119
|
-
timestamp: exports_external.string().datetime(),
|
|
4120
|
-
summary: exports_external.string().min(1),
|
|
4121
|
-
metadata: exports_external.record(exports_external.string(), exports_external.unknown()).optional()
|
|
4122
|
-
});
|
|
4123
|
-
var MutationGateEvidenceSchema = GateEvidenceBaseSchema.extend({
|
|
4124
|
-
type: exports_external.literal("mutation-gate"),
|
|
4125
|
-
verdict: exports_external.enum(["pass", "warn", "fail", "skip"]),
|
|
4126
|
-
killRate: exports_external.number().min(0).max(1).optional(),
|
|
4127
|
-
adjustedKillRate: exports_external.number().min(0).max(1).optional(),
|
|
4128
|
-
survivedMutants: exports_external.string().optional()
|
|
4129
|
-
});
|
|
4130
|
-
var DriftVerificationEvidenceSchema = GateEvidenceBaseSchema.extend({
|
|
4131
|
-
type: exports_external.literal("drift-verification"),
|
|
4132
|
-
verdict: exports_external.enum(["approved", "rejected"]),
|
|
4133
|
-
requirementCoverage: exports_external.string().optional()
|
|
4134
|
-
});
|
|
4135
|
-
var HallucinationVerificationEvidenceSchema = GateEvidenceBaseSchema.extend({
|
|
4136
|
-
type: exports_external.literal("hallucination-verification"),
|
|
4137
|
-
verdict: exports_external.enum(["approved", "rejected"]),
|
|
4138
|
-
findings: exports_external.string().optional()
|
|
4139
|
-
});
|
|
4140
|
-
var EvidenceSchema = exports_external.discriminatedUnion("type", [
|
|
4141
|
-
ReviewEvidenceSchema,
|
|
4142
|
-
TestEvidenceSchema,
|
|
4143
|
-
DiffEvidenceSchema,
|
|
4144
|
-
ApprovalEvidenceSchema,
|
|
4145
|
-
NoteEvidenceSchema,
|
|
4146
|
-
RetrospectiveEvidenceSchema,
|
|
4147
|
-
SyntaxEvidenceSchema,
|
|
4148
|
-
PlaceholderEvidenceSchema,
|
|
4149
|
-
SastEvidenceSchema,
|
|
4150
|
-
SbomEvidenceSchema,
|
|
4151
|
-
BuildEvidenceSchema,
|
|
4152
|
-
QualityBudgetEvidenceSchema,
|
|
4153
|
-
SecretscanEvidenceSchema,
|
|
4154
|
-
MutationGateEvidenceSchema,
|
|
4155
|
-
DriftVerificationEvidenceSchema,
|
|
4156
|
-
HallucinationVerificationEvidenceSchema
|
|
4157
|
-
]);
|
|
4158
|
-
var EvidenceBundleSchema = exports_external.object({
|
|
4159
|
-
schema_version: exports_external.literal("1.0.0"),
|
|
4160
|
-
task_id: exports_external.string().min(1),
|
|
4161
|
-
entries: exports_external.array(EvidenceSchema).default([]),
|
|
4162
|
-
created_at: exports_external.string().datetime(),
|
|
4163
|
-
updated_at: exports_external.string().datetime()
|
|
4164
|
-
});
|
|
4165
|
-
|
|
4166
3831
|
// src/evaluation/retention.ts
|
|
4167
3832
|
import * as fs6 from "fs/promises";
|
|
4168
3833
|
import * as path12 from "path";
|
|
@@ -5734,4 +5399,4 @@ function mergeDurableGateEntriesFromEvidence(taskId, entries, evidence) {
|
|
|
5734
5399
|
return merged;
|
|
5735
5400
|
}
|
|
5736
5401
|
|
|
5737
|
-
export {
|
|
5402
|
+
export { getExecutor, init_executor, MAX_TRANSIENT_RETRIES, isTransientSpawnError, transientBackoff, getGitRepositoryStatus, isGitRepo, getDefaultBaseBranch, resetToRemoteBranch, resetToMainAfterMerge, initDurableStatusPath, getAllWorktreeMergeFailures, isStateUnreadable, loadEpicSessionState, isEpicModeActive, enableEpicMode, disableEpicMode, normalizePath, pathsConflict, isGlobalFile, isProtectedPath, readTaskScopes, computeSpecHash, derivePlanId, computePlanHash, initLedger, appendLedgerEvent, loadPlanJsonOnly, loadPlan, savePlan, closePlanTerminalState, derivePlanMarkdown, IdentifierSchema, EvaluationTaskV1Schema, GateNameSchema, GateAuditManifestV1Schema, GateAuditResultV1Schema, canonicalJson, canonicalHash, computeTaskInputContentHash, computeTaskSetContentHash, computeManifestContentHash, resolveContainedExistingPath, admitEvaluationTask, saveTaskSetSnapshot, saveGateAuditResult, saveGateAuditManifest, readGateAuditManifest, readGateAuditResult, listGateAuditResults, isValidEvidenceType, sanitizeTaskId2 as sanitizeTaskId, validateProjectRoot, saveEvidence, loadEvidence, listEvidenceTaskIds, checkRequirementCoverage, archiveEvidence, readDurableGateEvidence, getDurableGateEvidenceStatus, getDurableGateEvidenceStatusForTask, mergeDurableGateEntriesFromEvidence };
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import {
|
|
3
|
-
resolveHiveEventsPath
|
|
3
|
+
resolveHiveEventsPath
|
|
4
|
+
} from "./index-ae75rja9.js";
|
|
5
|
+
import {
|
|
4
6
|
resolveKnowledgeStoreDir
|
|
5
|
-
} from "./index-
|
|
7
|
+
} from "./index-3jvqw5hy.js";
|
|
6
8
|
import {
|
|
7
9
|
init_logger,
|
|
8
10
|
warn
|
|
9
11
|
} from "./index-zgwm4ryv.js";
|
|
10
12
|
import {
|
|
11
13
|
atomicWriteFile
|
|
12
|
-
} from "./index-
|
|
14
|
+
} from "./index-h07wn84h.js";
|
|
13
15
|
import {
|
|
14
16
|
require_proper_lockfile
|
|
15
|
-
} from "./index-
|
|
17
|
+
} from "./index-7g4c7s5r.js";
|
|
16
18
|
import {
|
|
17
19
|
__require,
|
|
18
20
|
__toESM
|
|
@@ -583,7 +585,7 @@ async function applyKnowledgeVerdictFeedback(directory, options) {
|
|
|
583
585
|
deltas.push({ id, delta });
|
|
584
586
|
}
|
|
585
587
|
if (deltas.length > 0) {
|
|
586
|
-
const { bumpKnowledgeConfidenceBatch } = await import("./knowledge-store-
|
|
588
|
+
const { bumpKnowledgeConfidenceBatch } = await import("./knowledge-store-rnajx33a.js");
|
|
587
589
|
await bumpKnowledgeConfidenceBatch(directory, deltas, options?.floorOptions);
|
|
588
590
|
}
|
|
589
591
|
return {
|