opencode-swarm 7.113.1 → 7.113.3
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/.opencode/skills/engineering-conventions/SKILL.md +5 -0
- package/.opencode/skills/gate-attribution/SKILL.md +2 -0
- package/binaries/win32-arm64/.gitkeep +0 -0
- package/binaries/win32-x64/.gitkeep +0 -0
- package/dist/background/event-bus.d.ts +1 -1
- package/dist/background/pending-delegations.d.ts +8 -0
- package/dist/background/queue.d.ts +11 -0
- package/dist/background/trigger.d.ts +1 -0
- package/dist/background/workspace-snapshot.d.ts +7 -0
- package/dist/cli/{capability-probe-sh9bwh39.js → capability-probe-f1paszww.js} +1 -1
- package/dist/cli/{config-doctor-az11cwf5.js → config-doctor-xbdfrbwt.js} +2 -2
- package/dist/cli/{core-f4cbabe7.js → core-zg8s1jwx.js} +2 -2
- package/dist/cli/{curator-nm2c9y1p.js → curator-ckzb8ww4.js} +23 -22
- package/dist/cli/{curator-drift-jvs1v6em.js → curator-drift-c0by7063.js} +2 -2
- package/dist/cli/curator-llm-factory-mhjcpy1s.js +41 -0
- package/dist/cli/{dispatch-wst7bypk.js → dispatch-mczsxy5s.js} +2 -2
- package/dist/cli/{evidence-summary-service-j6fnsfeq.js → evidence-summary-service-8g594znj.js} +7 -7
- package/dist/cli/{gate-evidence-mk0ss1re.js → gate-evidence-vkpqt300.js} +5 -5
- package/dist/cli/guardrail-explain-kabd97j8.js +42 -0
- package/dist/cli/{guardrail-log-hysxdwg9.js → guardrail-log-qfc2j0tb.js} +4 -4
- package/dist/cli/hive-promoter-h21wzpsr.js +49 -0
- package/dist/cli/{index-0dab9w37.js → index-0p660a87.js} +2 -2
- package/dist/cli/{index-32bx4kch.js → index-0q7rrh59.js} +4 -4
- package/dist/cli/{index-1ey3dxq7.js → index-147ja18h.js} +0 -4
- package/dist/cli/{index-0gf6de8b.js → index-2148358e.js} +45 -1
- package/dist/cli/{index-30ejh1tx.js → index-43khae15.js} +3 -3
- package/dist/cli/{index-pm992z24.js → index-4h2ea8h5.js} +12 -9
- package/dist/cli/{index-5mkc2f9z.js → index-4sckv7y6.js} +1 -1
- package/dist/cli/{index-q1jaeynn.js → index-80jkseqw.js} +2 -2
- package/dist/cli/{index-wvrj16f0.js → index-8fwhhayc.js} +4 -0
- package/dist/cli/{index-npd9rypp.js → index-dh87tpc5.js} +176 -63
- package/dist/cli/{workspace-snapshot-w58jr2ga.js → index-dqh3zhhc.js} +53 -10
- package/dist/cli/{index-d0w40jm3.js → index-f6y341yk.js} +14 -11
- package/dist/cli/{index-db1fh1fv.js → index-g40r5d08.js} +1 -1
- package/dist/cli/{index-8f256d7t.js → index-g6va6n3t.js} +1 -1
- package/dist/cli/{index-9fxs0rm1.js → index-ga4ta3cr.js} +1 -1
- package/dist/cli/{index-t6wfwdm1.js → index-h7q1bvzm.js} +3 -3
- package/dist/cli/{index-rqpm9cwe.js → index-hw4tcxs9.js} +25 -24
- package/dist/cli/{index-h389ed8y.js → index-mr4whary.js} +3 -3
- package/dist/cli/{index-g55nzpwn.js → index-n6fa2hhk.js} +1 -1
- package/dist/cli/{index-vn263hqt.js → index-pa6t33pt.js} +17 -10
- package/dist/cli/{index-h91bv3hy.js → index-qe3v54nb.js} +6 -1
- package/dist/cli/{index-hpp2r0sd.js → index-qzqx2qky.js} +3 -3
- package/dist/cli/{index-fhmw7evd.js → index-rdwfqhp7.js} +2 -2
- package/dist/cli/{index-ky8eb4q6.js → index-srvqfcyj.js} +2 -2
- package/dist/cli/{index-1rga1vvb.js → index-wh8949ef.js} +1 -1
- package/dist/cli/{index-r9fjzr3k.js → index-xbe1wtme.js} +1 -1
- package/dist/cli/index.js +23 -22
- package/dist/cli/{knowledge-escalator-4gbz527n.js → knowledge-escalator-0q1p6br7.js} +8 -8
- package/dist/cli/{knowledge-events-b6x28fgc.js → knowledge-events-9518gzsp.js} +6 -6
- package/dist/cli/{knowledge-store-h3cjx4dg.js → knowledge-store-k5rab79h.js} +6 -6
- package/dist/cli/{knowledge-validator-q6jw2p0t.js → knowledge-validator-csay9wqj.js} +7 -7
- package/dist/cli/{pending-delegations-gc3a2hfx.js → pending-delegations-ddbkbgxy.js} +11 -4
- package/dist/cli/{pr-subscriptions-p8g2rzxd.js → pr-subscriptions-vwv7zm2p.js} +5 -5
- package/dist/cli/{schema-qb313fyy.js → schema-e5kd993s.js} +1 -1
- package/dist/cli/{scope-persistence-5ccgtebg.js → scope-persistence-fm0gzhnk.js} +2 -2
- package/dist/cli/{skill-generator-nnwn4sq0.js → skill-generator-z01sjppf.js} +9 -9
- package/dist/cli/{telemetry-jm7t8031.js → telemetry-jny76r83.js} +1 -1
- package/dist/cli/workspace-snapshot-eyf6gd0d.js +22 -0
- package/dist/commands/registry.d.ts +7 -0
- package/dist/config/constants.d.ts +1 -1
- package/dist/config/skill-mirrors.d.ts +3 -1
- package/dist/gate-evidence-classification.d.ts +5 -0
- package/dist/gate-evidence.d.ts +14 -3
- package/dist/hooks/messages-transform.d.ts +22 -1
- package/dist/hooks/spawn-helper.d.ts +10 -0
- package/dist/index.js +302 -300
- package/dist/memory/schema.d.ts +4 -4
- package/dist/sandbox/capability-probe.d.ts +14 -0
- package/dist/sandbox/macos/sandbox-exec-executor.d.ts +5 -0
- package/dist/tools/phase-complete.d.ts +8 -0
- package/dist/tools/sast-scan.d.ts +2 -0
- package/dist/tools/tool-metadata.d.ts +1 -1
- package/dist/utils/path-security.d.ts +28 -0
- package/package.json +2 -1
- package/dist/cli/curator-llm-factory-nmhzc774.js +0 -40
- package/dist/cli/guardrail-explain-q1np1xaw.js +0 -41
- package/dist/cli/hive-promoter-z4dezw62.js +0 -48
|
@@ -3,13 +3,13 @@ import {
|
|
|
3
3
|
atomicWriteFile,
|
|
4
4
|
taskEvidencePath,
|
|
5
5
|
withTaskEvidenceLock
|
|
6
|
-
} from "./index-
|
|
6
|
+
} from "./index-0p660a87.js";
|
|
7
7
|
import {
|
|
8
8
|
exports_external
|
|
9
9
|
} from "./index-293f68mj.js";
|
|
10
10
|
import {
|
|
11
11
|
telemetry
|
|
12
|
-
} from "./index-
|
|
12
|
+
} from "./index-pa6t33pt.js";
|
|
13
13
|
|
|
14
14
|
// src/gate-evidence.ts
|
|
15
15
|
import { mkdirSync, readFileSync, realpathSync } from "fs";
|
|
@@ -71,7 +71,8 @@ var TaskEvidenceSchema = exports_external.object({
|
|
|
71
71
|
taskId: exports_external.string(),
|
|
72
72
|
required_gates: exports_external.array(exports_external.string()).default([]),
|
|
73
73
|
gates: exports_external.record(exports_external.string(), GateEvidenceSchema),
|
|
74
|
-
turbo: exports_external.boolean().optional()
|
|
74
|
+
turbo: exports_external.boolean().optional(),
|
|
75
|
+
test_engineer_exempt: exports_external.boolean().optional()
|
|
75
76
|
});
|
|
76
77
|
var DEFAULT_REQUIRED_GATES = ["reviewer", "test_engineer"];
|
|
77
78
|
function isValidTaskId(taskId) {
|
|
@@ -80,10 +81,10 @@ function isValidTaskId(taskId) {
|
|
|
80
81
|
function assertValidTaskId(taskId) {
|
|
81
82
|
assertStrictTaskId(taskId);
|
|
82
83
|
}
|
|
83
|
-
function deriveRequiredGates(agentType) {
|
|
84
|
+
function deriveRequiredGates(agentType, context = {}) {
|
|
84
85
|
switch (agentType) {
|
|
85
86
|
case "coder":
|
|
86
|
-
return ["reviewer", "test_engineer"];
|
|
87
|
+
return context.testEngineerExempt === true ? ["reviewer"] : ["reviewer", "test_engineer"];
|
|
87
88
|
case "docs":
|
|
88
89
|
return ["docs"];
|
|
89
90
|
case "designer":
|
|
@@ -110,8 +111,8 @@ function deriveRequiredGates(agentType) {
|
|
|
110
111
|
return ["reviewer", "test_engineer"];
|
|
111
112
|
}
|
|
112
113
|
}
|
|
113
|
-
function expandRequiredGates(existingGates, newAgentType) {
|
|
114
|
-
const newGates = deriveRequiredGates(newAgentType);
|
|
114
|
+
function expandRequiredGates(existingGates, newAgentType, context = {}) {
|
|
115
|
+
const newGates = deriveRequiredGates(newAgentType, context);
|
|
115
116
|
const combined = [...new Set([...existingGates ?? [], ...newGates])];
|
|
116
117
|
return combined.sort();
|
|
117
118
|
}
|
|
@@ -166,6 +167,7 @@ async function recordGateEvidence(directory, taskId, gate, sessionId, turbo) {
|
|
|
166
167
|
taskId,
|
|
167
168
|
required_gates: requiredGates,
|
|
168
169
|
turbo: turbo === true ? true : existing?.turbo,
|
|
170
|
+
test_engineer_exempt: existing?.test_engineer_exempt,
|
|
169
171
|
gates: {
|
|
170
172
|
...existing?.gates ?? {},
|
|
171
173
|
[gate]: {
|
|
@@ -179,7 +181,7 @@ async function recordGateEvidence(directory, taskId, gate, sessionId, turbo) {
|
|
|
179
181
|
});
|
|
180
182
|
telemetry.gatePassed(sessionId, gate, taskId);
|
|
181
183
|
}
|
|
182
|
-
async function recordAgentDispatch(directory, taskId, agentType, turbo) {
|
|
184
|
+
async function recordAgentDispatch(directory, taskId, agentType, turbo, context = {}) {
|
|
183
185
|
assertValidTaskId(taskId);
|
|
184
186
|
await withTaskEvidenceLock(directory, taskId, agentType, async () => {
|
|
185
187
|
const resolvedEvidenceDir = getEvidenceDir(directory);
|
|
@@ -191,11 +193,12 @@ async function recordAgentDispatch(directory, taskId, agentType, turbo) {
|
|
|
191
193
|
telemetry.gateParseError(taskId, error);
|
|
192
194
|
throw error;
|
|
193
195
|
}
|
|
194
|
-
const requiredGates = existing ? expandRequiredGates(existing.required_gates, agentType) : deriveRequiredGates(agentType);
|
|
196
|
+
const requiredGates = existing ? expandRequiredGates(existing.required_gates, agentType, context) : deriveRequiredGates(agentType, context);
|
|
195
197
|
const updated = {
|
|
196
198
|
taskId,
|
|
197
199
|
required_gates: requiredGates,
|
|
198
200
|
turbo: turbo === true ? true : existing?.turbo,
|
|
201
|
+
test_engineer_exempt: agentType === "coder" ? context.testEngineerExempt === true && !requiredGates.includes("test_engineer") : existing?.test_engineer_exempt,
|
|
199
202
|
gates: existing?.gates ?? {}
|
|
200
203
|
};
|
|
201
204
|
await atomicWriteFile(evidencePath, JSON.stringify(updated, null, 2));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import {
|
|
3
3
|
validateSwarmPath
|
|
4
|
-
} from "./index-
|
|
4
|
+
} from "./index-wh8949ef.js";
|
|
5
5
|
import {
|
|
6
6
|
log
|
|
7
7
|
} from "./index-zgwm4ryv.js";
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from "./index-293f68mj.js";
|
|
11
11
|
import {
|
|
12
12
|
withEvidenceLock
|
|
13
|
-
} from "./index-
|
|
13
|
+
} from "./index-4sckv7y6.js";
|
|
14
14
|
|
|
15
15
|
// src/background/pr-subscriptions.ts
|
|
16
16
|
import * as fs from "fs";
|
|
@@ -54,6 +54,7 @@ async function probeLinux() {
|
|
|
54
54
|
if (output.length > 0) {
|
|
55
55
|
return {
|
|
56
56
|
status: "enabled",
|
|
57
|
+
strength: "strong",
|
|
57
58
|
mechanism: "Bubblewrap",
|
|
58
59
|
platform: "linux"
|
|
59
60
|
};
|
|
@@ -88,6 +89,7 @@ async function probeMacOS() {
|
|
|
88
89
|
if (output.length > 0) {
|
|
89
90
|
return {
|
|
90
91
|
status: "enabled",
|
|
92
|
+
strength: "strong",
|
|
91
93
|
mechanism: "sandbox-exec",
|
|
92
94
|
platform: "darwin"
|
|
93
95
|
};
|
|
@@ -123,6 +125,7 @@ function probeWindows() {
|
|
|
123
125
|
if (result.available) {
|
|
124
126
|
return {
|
|
125
127
|
status: "enabled",
|
|
128
|
+
strength: "strong",
|
|
126
129
|
platform: "win32",
|
|
127
130
|
mechanism: `native-runner/${result.mode}`
|
|
128
131
|
};
|
|
@@ -145,6 +148,7 @@ function probeWindows() {
|
|
|
145
148
|
}
|
|
146
149
|
return result.status === 0 ? {
|
|
147
150
|
status: "enabled",
|
|
151
|
+
strength: "advisory",
|
|
148
152
|
platform: "win32",
|
|
149
153
|
mechanism: "PowerShell wrapper"
|
|
150
154
|
} : {
|