opencode-swarm 7.152.0 → 7.153.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/.opencode/skills/swarm-pr-review/SKILL.md +10 -10
- package/.opencode/skills/{resume → swarm-resume}/SKILL.md +1 -1
- package/dist/cli/{capability-probe-va4kk8vg.js → capability-probe-5wa7mcp6.js} +3 -2
- package/dist/cli/{config-doctor-4hctd61b.js → config-doctor-7s7xga6f.js} +3 -3
- package/dist/cli/{core-ea8xgnwy.js → core-vkpy14vv.js} +2 -2
- package/dist/cli/{curation-policy-vb2f0vm7.js → curation-policy-xy7tm4ad.js} +4 -4
- package/dist/cli/{curator-krg3abzq.js → curator-6freqnhf.js} +25 -26
- package/dist/cli/{curator-llm-factory-6xnnfpt4.js → curator-llm-factory-q5cjk7mt.js} +25 -26
- package/dist/cli/{evidence-summary-service-dtjr30pg.js → evidence-summary-service-engtgjww.js} +11 -11
- package/dist/cli/{gate-evidence-msnd1tda.js → gate-evidence-6bzzz8kq.js} +5 -5
- package/dist/cli/{guardrail-explain-nbgds0g0.js → guardrail-explain-vsck39dh.js} +26 -27
- package/dist/cli/{guardrail-log-emgfqa5s.js → guardrail-log-0dn8m3k6.js} +4 -4
- package/dist/cli/{guardrail-reset-95jhw7rg.js → guardrail-reset-6e2vyfn9.js} +25 -26
- package/dist/cli/{hive-promoter-ch6h94j3.js → hive-promoter-021abs6z.js} +25 -26
- package/dist/cli/{index-kca6ng28.js → index-0n7nm9e8.js} +1 -1
- package/dist/cli/{index-r0bwks42.js → index-1yfpw7w0.js} +1 -1
- package/dist/cli/{index-h9tcawtm.js → index-3z2f1cy8.js} +54 -11
- package/dist/cli/{index-cgfjvkps.js → index-3z5jtyan.js} +15 -7
- package/dist/cli/{index-85gkedsf.js → index-4fwbbad3.js} +521 -15
- package/dist/cli/{index-rqc83msp.js → index-4gn111h3.js} +5 -5
- package/dist/cli/{index-trj11few.js → index-5w915x8b.js} +4 -4
- package/dist/cli/{index-dsg5aqtj.js → index-5x67858f.js} +3 -3
- package/dist/cli/{index-nwpbfh8x.js → index-6v77adf7.js} +84 -23
- package/dist/cli/{index-qdnj3nwt.js → index-77xy577c.js} +6 -6
- package/dist/cli/{index-h6tvj6nr.js → index-7q56f3se.js} +2 -2
- package/dist/cli/{index-fk3msss3.js → index-80ekaf5b.js} +1 -1
- package/dist/cli/{index-9hc6ytb1.js → index-95qra69h.js} +3827 -2019
- package/dist/cli/{index-ek6t1e9h.js → index-9gjbe4e4.js} +1 -1
- package/dist/cli/{index-1hbmy0ny.js → index-9vdh4kdx.js} +22 -150
- package/dist/cli/{index-8nzqtv6b.js → index-babtfqa0.js} +2 -2
- package/dist/cli/{index-ngzc8db3.js → index-dh1gk5c5.js} +29 -28
- package/dist/cli/{index-7afvf50d.js → index-e2hs0bh7.js} +1 -1
- package/dist/cli/{index-n1j0cmj3.js → index-eajfs7v4.js} +2 -2
- package/dist/cli/{index-19tznm6x.js → index-eqh3t8eh.js} +6 -6
- package/dist/cli/{index-cxt62pxj.js → index-g0m6kypc.js} +1 -1
- package/dist/cli/{index-n8yastrw.js → index-hexhzq5j.js} +4 -4
- package/dist/cli/{index-93rgk3ax.js → index-hkmgzesw.js} +3 -3
- package/dist/cli/{index-dc7hh4d9.js → index-hw49515c.js} +2 -2
- package/dist/cli/{index-30gf3exm.js → index-k2ydsqs7.js} +3 -3
- package/dist/cli/{index-cpg98bh1.js → index-myt57pht.js} +1 -1
- package/dist/cli/{index-5th6khpe.js → index-qgfnd206.js} +1 -1
- package/dist/cli/{index-s85abenr.js → index-x6zy6veh.js} +1 -1
- package/dist/cli/{index-sgdqbhkv.js → index-xv881ahz.js} +5 -5
- package/dist/cli/index.js +25 -26
- package/dist/cli/{knowledge-escalator-n4nx4veq.js → knowledge-escalator-79zbhpz5.js} +10 -10
- package/dist/cli/{knowledge-events-t77r3zhe.js → knowledge-events-79cak7eb.js} +8 -8
- package/dist/cli/{knowledge-link-r6hfj2ep.js → knowledge-link-40zsr5ja.js} +3 -3
- package/dist/cli/{knowledge-store-w1v0041d.js → knowledge-store-w29aw5w0.js} +4 -4
- package/dist/cli/{knowledge-validator-6fcx0xdb.js → knowledge-validator-qsecnt2d.js} +6 -6
- package/dist/cli/{model-preflight-7ea00h34.js → model-preflight-b95w8wxy.js} +1 -1
- package/dist/cli/{runner-cmvgkbtp.js → runner-fbgsxs74.js} +4 -4
- package/dist/cli/{scan-cursor-936pmv37.js → scan-cursor-1r3pcdqp.js} +5 -5
- package/dist/cli/{schema-exk5afyz.js → schema-19qsv6fw.js} +2 -2
- package/dist/cli/{scope-persistence-0ddz95ke.js → scope-persistence-ypcrvqtt.js} +6 -6
- package/dist/cli/{skill-generator-qk0mf7da.js → skill-generator-wpp9kpa0.js} +12 -12
- package/dist/cli/{worktree-isolation-2jvaebns.js → worktree-isolation-wcry8qnn.js} +25 -26
- package/dist/commands/approve-write.d.ts +1 -0
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/registry.d.ts +7 -0
- package/dist/config/bundled-skills.d.ts +10 -1
- package/dist/config/schema.d.ts +39 -4
- package/dist/consensus/contracts.d.ts +14 -0
- package/dist/hooks/full-auto-permission.d.ts +7 -0
- package/dist/hooks/guardrails/index.d.ts +2 -1
- package/dist/hooks/guardrails/tool-before.d.ts +4 -0
- package/dist/hooks/pr-workflow-gate.d.ts +12 -0
- package/dist/hooks/scope-guard.d.ts +1 -3
- package/dist/index.js +626 -608
- package/dist/learning/provenance.d.ts +9 -0
- package/dist/sandbox/capability-probe.d.ts +40 -1
- package/dist/sandbox/executor.d.ts +26 -1
- package/dist/sandbox/linux/bubblewrap-executor.d.ts +3 -1
- package/dist/sandbox/macos/sandbox-exec-executor.d.ts +3 -1
- package/dist/sandbox/skip-state.d.ts +24 -0
- package/dist/sandbox/win32/native-sandbox-executor.d.ts +5 -1
- package/dist/security/command-classifier.d.ts +22 -0
- package/dist/security/protected-input-integrity.d.ts +19 -0
- package/dist/security/protected-path-policy.d.ts +9 -0
- package/dist/security/write-authority.d.ts +46 -0
- package/dist/services/diagnose-service.d.ts +1 -1
- package/dist/services/skill-generator.d.ts +2 -0
- package/dist/services/skill-improver.d.ts +69 -0
- package/dist/tools/dispatch-lanes.d.ts +47 -0
- package/dist/tools/repo-graph/query.d.ts +2 -1
- package/dist/tools/repo-graph/types.d.ts +64 -0
- package/dist/tools/repo-graph.d.ts +1 -1
- package/dist/tools/skill-improve.d.ts +7 -0
- package/package.json +2 -2
- package/dist/cli/index-3g0xk6tk.js +0 -219
|
@@ -7,60 +7,59 @@ import {
|
|
|
7
7
|
isHiveEligible,
|
|
8
8
|
promoteFromSwarm,
|
|
9
9
|
promoteToHive
|
|
10
|
-
} from "./index-
|
|
11
|
-
import"./index-
|
|
12
|
-
import"./index-
|
|
13
|
-
import"./index-
|
|
14
|
-
import"./index-
|
|
15
|
-
import"./index-
|
|
10
|
+
} from "./index-95qra69h.js";
|
|
11
|
+
import"./index-x6zy6veh.js";
|
|
12
|
+
import"./index-6v77adf7.js";
|
|
13
|
+
import"./index-hw49515c.js";
|
|
14
|
+
import"./index-eqh3t8eh.js";
|
|
15
|
+
import"./index-9gjbe4e4.js";
|
|
16
16
|
import"./index-134d35c1.js";
|
|
17
17
|
import"./index-nj6rmyeh.js";
|
|
18
18
|
import"./index-y8552snf.js";
|
|
19
|
-
import"./index-
|
|
20
|
-
import"./index-
|
|
19
|
+
import"./index-4gn111h3.js";
|
|
20
|
+
import"./index-7q56f3se.js";
|
|
21
21
|
import"./index-70ha9e09.js";
|
|
22
22
|
import"./index-c8s9a3zh.js";
|
|
23
23
|
import"./index-9ss2m4rs.js";
|
|
24
24
|
import"./index-vnn7qq8c.js";
|
|
25
25
|
import"./index-0q2mjxp2.js";
|
|
26
|
-
import"./index-
|
|
27
|
-
import"./index-
|
|
28
|
-
import"./index-
|
|
26
|
+
import"./index-3z2f1cy8.js";
|
|
27
|
+
import"./index-5w915x8b.js";
|
|
28
|
+
import"./index-1yfpw7w0.js";
|
|
29
29
|
import"./index-rtry5xyf.js";
|
|
30
30
|
import"./index-zsrtt42s.js";
|
|
31
31
|
import"./index-z4bg1hv8.js";
|
|
32
32
|
import"./index-fxvgaeq4.js";
|
|
33
|
-
import"./index-
|
|
34
|
-
import"./index-
|
|
35
|
-
import"./index-
|
|
36
|
-
import"./index-
|
|
33
|
+
import"./index-babtfqa0.js";
|
|
34
|
+
import"./index-eajfs7v4.js";
|
|
35
|
+
import"./index-5x67858f.js";
|
|
36
|
+
import"./index-80ekaf5b.js";
|
|
37
37
|
import"./index-6zkm4p7p.js";
|
|
38
38
|
import"./index-556ja8an.js";
|
|
39
39
|
import"./index-b43rt5ph.js";
|
|
40
40
|
import"./index-q7sjgr1y.js";
|
|
41
|
-
import"./index-
|
|
42
|
-
import"./index-85gkedsf.js";
|
|
41
|
+
import"./index-4fwbbad3.js";
|
|
43
42
|
import {
|
|
44
43
|
resolveHiveKnowledgePath
|
|
45
|
-
} from "./index-
|
|
46
|
-
import"./index-
|
|
47
|
-
import"./index-
|
|
44
|
+
} from "./index-77xy577c.js";
|
|
45
|
+
import"./index-xv881ahz.js";
|
|
46
|
+
import"./index-hkmgzesw.js";
|
|
48
47
|
import"./index-gprxjmm7.js";
|
|
49
48
|
import"./index-n832052r.js";
|
|
50
49
|
import"./index-4cgee5vh.js";
|
|
51
50
|
import"./index-z6xqpmqg.js";
|
|
52
51
|
import"./index-r3mvsbtq.js";
|
|
53
|
-
import"./index-
|
|
54
|
-
import"./index-
|
|
55
|
-
import"./index-
|
|
52
|
+
import"./index-e2hs0bh7.js";
|
|
53
|
+
import"./index-3z5jtyan.js";
|
|
54
|
+
import"./index-myt57pht.js";
|
|
56
55
|
import"./index-9e6fdz2h.js";
|
|
57
56
|
import"./index-4rhhvd1a.js";
|
|
58
57
|
import"./index-zjygnfay.js";
|
|
59
58
|
import"./index-ae75rja9.js";
|
|
60
|
-
import"./index-
|
|
61
|
-
import"./index-
|
|
59
|
+
import"./index-qgfnd206.js";
|
|
60
|
+
import"./index-0n7nm9e8.js";
|
|
62
61
|
import"./index-bk5tah7q.js";
|
|
63
|
-
import"./index-
|
|
62
|
+
import"./index-k2ydsqs7.js";
|
|
64
63
|
import"./index-txbd25bc.js";
|
|
65
64
|
import"./index-aw492hpn.js";
|
|
66
65
|
import"./index-7g4c7s5r.js";
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
readLinkPointer,
|
|
8
8
|
resolveKnowledgeStoreDir,
|
|
9
9
|
resolveLinkDir
|
|
10
|
-
} from "./index-
|
|
10
|
+
} from "./index-qgfnd206.js";
|
|
11
11
|
|
|
12
12
|
// src/knowledge/curation-policy.ts
|
|
13
13
|
import { appendFile, mkdir as mkdir2, readFile as readFile2 } from "fs/promises";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
ALLOWED_SKILL_PATH_PREFIXES,
|
|
4
4
|
validateSkillPath
|
|
5
|
-
} from "./index-
|
|
5
|
+
} from "./index-5w915x8b.js";
|
|
6
6
|
import {
|
|
7
7
|
withTimeoutSignal
|
|
8
8
|
} from "./index-q7sjgr1y.js";
|
|
@@ -12,11 +12,11 @@ import {
|
|
|
12
12
|
resolveHiveKnowledgePath,
|
|
13
13
|
resolveSwarmKnowledgePath,
|
|
14
14
|
transactKnowledge
|
|
15
|
-
} from "./index-
|
|
15
|
+
} from "./index-77xy577c.js";
|
|
16
16
|
import {
|
|
17
17
|
effectiveRetrievalOutcomes,
|
|
18
18
|
readAuthoritativeKnowledgeCounterRollups
|
|
19
|
-
} from "./index-
|
|
19
|
+
} from "./index-xv881ahz.js";
|
|
20
20
|
import {
|
|
21
21
|
advisoryWarn,
|
|
22
22
|
init_warning_buffer
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
import {
|
|
29
29
|
atomicWriteFileAnyRoot,
|
|
30
30
|
atomicWriteSwarmFile
|
|
31
|
-
} from "./index-
|
|
31
|
+
} from "./index-k2ydsqs7.js";
|
|
32
32
|
import {
|
|
33
33
|
init_logger,
|
|
34
34
|
log,
|
|
@@ -53,7 +53,7 @@ var BUNDLED_PROJECT_SKILLS = [
|
|
|
53
53
|
"brainstorm",
|
|
54
54
|
"specify",
|
|
55
55
|
"clarify-spec",
|
|
56
|
-
"resume",
|
|
56
|
+
"swarm-resume",
|
|
57
57
|
"clarify",
|
|
58
58
|
"discover",
|
|
59
59
|
"consult",
|
|
@@ -92,6 +92,7 @@ var BUNDLED_PROJECT_SKILLS = [
|
|
|
92
92
|
"orchestrating-subagents",
|
|
93
93
|
"durable-session-state"
|
|
94
94
|
];
|
|
95
|
+
var RETIRED_BUNDLED_PROJECT_SKILLS = ["resume"];
|
|
95
96
|
var BUNDLED_PROJECT_SKILL_ROOT = ".swarm/bundled-skills";
|
|
96
97
|
function bundledProjectSkillFileReference(slug) {
|
|
97
98
|
return `file:${BUNDLED_PROJECT_SKILL_ROOT}/${slug}/SKILL.md`;
|
|
@@ -280,7 +281,38 @@ async function copyBundledDirectoryBoundedAsync(sourceDir, destDir) {
|
|
|
280
281
|
throw err;
|
|
281
282
|
}
|
|
282
283
|
}
|
|
284
|
+
async function removeRetiredBundledSkillDirsAsync(skillsDir) {
|
|
285
|
+
if (!await ensureNotSymlinkedDirectoryAsync(skillsDir))
|
|
286
|
+
return;
|
|
287
|
+
const safeRoot = path.resolve(skillsDir);
|
|
288
|
+
for (const slug of RETIRED_BUNDLED_PROJECT_SKILLS) {
|
|
289
|
+
try {
|
|
290
|
+
const target = path.resolve(safeRoot, slug);
|
|
291
|
+
const relative2 = path.relative(safeRoot, target);
|
|
292
|
+
if (relative2.startsWith("..") || path.isAbsolute(relative2)) {
|
|
293
|
+
throw new Error("retired bundled skill path escaped its private root");
|
|
294
|
+
}
|
|
295
|
+
try {
|
|
296
|
+
const stat2 = await fsp.lstat(target);
|
|
297
|
+
if (stat2.isSymbolicLink() || !stat2.isDirectory())
|
|
298
|
+
continue;
|
|
299
|
+
} catch (err) {
|
|
300
|
+
if (err.code === "ENOENT")
|
|
301
|
+
continue;
|
|
302
|
+
throw err;
|
|
303
|
+
}
|
|
304
|
+
await fsp.rm(target, { recursive: true, force: true });
|
|
305
|
+
log("removed retired bundled skill", { slug });
|
|
306
|
+
} catch (err) {
|
|
307
|
+
log("could not remove retired bundled skill (continuing)", {
|
|
308
|
+
slug,
|
|
309
|
+
message: err instanceof Error ? err.message : String(err)
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
}
|
|
283
314
|
async function performBundledProjectSkillSyncAsync(projectDirectory, packageRoot, quiet) {
|
|
315
|
+
let skillsDirValidated = false;
|
|
284
316
|
try {
|
|
285
317
|
const sourceRoot = path.join(packageRoot, ".opencode", "skills");
|
|
286
318
|
const swarmDir = path.join(projectDirectory, ".swarm");
|
|
@@ -292,6 +324,7 @@ async function performBundledProjectSkillSyncAsync(projectDirectory, packageRoot
|
|
|
292
324
|
return;
|
|
293
325
|
if (!await ensureNotSymlinkedDirectoryAsync(skillsDir))
|
|
294
326
|
return;
|
|
327
|
+
skillsDirValidated = true;
|
|
295
328
|
for (const slug of BUNDLED_PROJECT_SKILLS) {
|
|
296
329
|
const sourceDir = path.join(sourceRoot, slug);
|
|
297
330
|
const sourceSkill = path.join(sourceDir, "SKILL.md");
|
|
@@ -315,6 +348,10 @@ async function performBundledProjectSkillSyncAsync(projectDirectory, packageRoot
|
|
|
315
348
|
} else {
|
|
316
349
|
console.warn(failureMsg);
|
|
317
350
|
}
|
|
351
|
+
} finally {
|
|
352
|
+
if (skillsDirValidated) {
|
|
353
|
+
await removeRetiredBundledSkillDirsAsync(path.join(projectDirectory, BUNDLED_PROJECT_SKILL_ROOT));
|
|
354
|
+
}
|
|
318
355
|
}
|
|
319
356
|
}
|
|
320
357
|
async function syncBundledProjectSkillsIfMissingAsync(projectDirectory, packageRoot, quiet = false) {
|
|
@@ -1046,6 +1083,7 @@ async function atomicWrite2(p, content) {
|
|
|
1046
1083
|
await atomicWriteFileAnyRoot(p, content);
|
|
1047
1084
|
}
|
|
1048
1085
|
async function generateSkills(req) {
|
|
1086
|
+
const preview = req.preview === true;
|
|
1049
1087
|
const minConfidence = req.minConfidence ?? DEFAULT_SKILL_MIN_CONFIDENCE;
|
|
1050
1088
|
const minConfirmations = req.minConfirmations ?? DEFAULT_SKILL_MIN_CONFIRMATIONS;
|
|
1051
1089
|
const candidates = await selectCandidateEntries(req.directory, {
|
|
@@ -1121,7 +1159,9 @@ async function generateSkills(req) {
|
|
|
1121
1159
|
}
|
|
1122
1160
|
}
|
|
1123
1161
|
let content = renderSkillMarkdown(cluster, req.mode);
|
|
1124
|
-
|
|
1162
|
+
if (!preview) {
|
|
1163
|
+
await writeEvalStub(req.directory, cluster.slug, generateEvalStub(cluster));
|
|
1164
|
+
}
|
|
1125
1165
|
if (await isRejectedSkillContent(req.directory, cluster.slug, content)) {
|
|
1126
1166
|
result.skipped.push({
|
|
1127
1167
|
slug: cluster.slug,
|
|
@@ -1130,7 +1170,7 @@ async function generateSkills(req) {
|
|
|
1130
1170
|
continue;
|
|
1131
1171
|
}
|
|
1132
1172
|
let evaluation;
|
|
1133
|
-
if (req.evaluate) {
|
|
1173
|
+
if (req.evaluate && !preview) {
|
|
1134
1174
|
let incumbentContent;
|
|
1135
1175
|
const existingActivePath = activePath(req.directory, cluster.slug);
|
|
1136
1176
|
if (existsSync2(existingActivePath)) {
|
|
@@ -1164,18 +1204,20 @@ async function generateSkills(req) {
|
|
|
1164
1204
|
}
|
|
1165
1205
|
}
|
|
1166
1206
|
let missingSourceIds = [];
|
|
1167
|
-
if (req.mode === "active") {
|
|
1207
|
+
if (!preview && req.mode === "active") {
|
|
1168
1208
|
const idsToStamp = req.sourceKnowledgeIds?.length ? req.sourceKnowledgeIds : cluster.entries.map((e) => e.id);
|
|
1169
1209
|
const { missing } = await stampSourceEntries(req.directory, cluster.slug, idsToStamp);
|
|
1170
1210
|
missingSourceIds = missing;
|
|
1171
1211
|
if (missingSourceIds.length > 0) {
|
|
1172
1212
|
content = injectMissingIdsIntoFrontmatter(content, missingSourceIds);
|
|
1173
1213
|
}
|
|
1174
|
-
} else if (req.mode === "draft") {
|
|
1214
|
+
} else if (!preview && req.mode === "draft") {
|
|
1175
1215
|
const idsToStamp = req.sourceKnowledgeIds?.length ? req.sourceKnowledgeIds : cluster.entries.map((e) => e.id);
|
|
1176
1216
|
await stampSourceEntries(req.directory, cluster.slug, idsToStamp, "draft");
|
|
1177
1217
|
}
|
|
1178
|
-
|
|
1218
|
+
if (!preview) {
|
|
1219
|
+
await atomicWrite2(targetPath, content);
|
|
1220
|
+
}
|
|
1179
1221
|
result.written.push({
|
|
1180
1222
|
slug: cluster.slug,
|
|
1181
1223
|
path: targetPath,
|
|
@@ -1183,7 +1225,8 @@ async function generateSkills(req) {
|
|
|
1183
1225
|
sourceKnowledgeIds: cluster.entries.map((e) => e.id),
|
|
1184
1226
|
missingSourceKnowledgeIds: missingSourceIds,
|
|
1185
1227
|
preserved,
|
|
1186
|
-
evaluation
|
|
1228
|
+
evaluation,
|
|
1229
|
+
...preview ? { content } : {}
|
|
1187
1230
|
});
|
|
1188
1231
|
}
|
|
1189
1232
|
return result;
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
ALL_AGENT_NAMES,
|
|
4
4
|
SUMMARIZER_EXEMPT_TOOL_NAMES,
|
|
5
5
|
init_constants
|
|
6
|
-
} from "./index-
|
|
6
|
+
} from "./index-myt57pht.js";
|
|
7
7
|
import {
|
|
8
8
|
OUTCOME_BLOCK_THRESHOLD,
|
|
9
9
|
init_knowledge_types
|
|
@@ -21,7 +21,7 @@ var package_default;
|
|
|
21
21
|
var init_package = __esm(() => {
|
|
22
22
|
package_default = {
|
|
23
23
|
name: "opencode-swarm",
|
|
24
|
-
version: "7.
|
|
24
|
+
version: "7.153.0",
|
|
25
25
|
description: "Architect-centric agentic swarm plugin for OpenCode - hub-and-spoke orchestration with SME consultation, code generation, and QA review",
|
|
26
26
|
main: "dist/index.js",
|
|
27
27
|
types: "dist/index.d.ts",
|
|
@@ -66,7 +66,7 @@ var init_package = __esm(() => {
|
|
|
66
66
|
".opencode/skills/brainstorm",
|
|
67
67
|
".opencode/skills/specify",
|
|
68
68
|
".opencode/skills/clarify-spec",
|
|
69
|
-
".opencode/skills/resume",
|
|
69
|
+
".opencode/skills/swarm-resume",
|
|
70
70
|
".opencode/skills/clarify",
|
|
71
71
|
".opencode/skills/discover",
|
|
72
72
|
".opencode/skills/consult",
|
|
@@ -784,11 +784,19 @@ var init_schema = __esm(() => {
|
|
|
784
784
|
execution_stall_warn_calls: exports_external.number().int().min(1).default(30),
|
|
785
785
|
execution_stall_stop_calls: exports_external.number().int().min(1).default(60),
|
|
786
786
|
execution_stall_episode_minutes: exports_external.number().int().min(1).default(30),
|
|
787
|
-
sandbox_macos_enabled: exports_external.boolean().optional()
|
|
787
|
+
sandbox_macos_enabled: exports_external.boolean().optional(),
|
|
788
|
+
sandbox: exports_external.object({
|
|
789
|
+
mode: exports_external.enum(["advisory", "required"]).default("advisory"),
|
|
790
|
+
require_filesystem: exports_external.boolean().default(false),
|
|
791
|
+
require_network: exports_external.boolean().default(false),
|
|
792
|
+
require_process: exports_external.boolean().default(false),
|
|
793
|
+
network_mode: exports_external.enum(["off", "on"]).default("off"),
|
|
794
|
+
network_allowlist: exports_external.array(exports_external.string().min(1)).max(128).default([]),
|
|
795
|
+
writable_roots: exports_external.array(exports_external.string().min(1)).max(128).default([])
|
|
796
|
+
}).optional()
|
|
788
797
|
});
|
|
789
798
|
WatchdogConfigSchema = exports_external.object({
|
|
790
799
|
scope_guard: exports_external.boolean().default(true),
|
|
791
|
-
skip_in_turbo: exports_external.boolean().default(false),
|
|
792
800
|
delegation_ledger: exports_external.boolean().default(true)
|
|
793
801
|
});
|
|
794
802
|
SelfReviewConfigSchema = exports_external.object({
|
|
@@ -1601,14 +1609,14 @@ var init_schema = __esm(() => {
|
|
|
1601
1609
|
enabled: false
|
|
1602
1610
|
};
|
|
1603
1611
|
DEFAULT_PR_REVIEW_RESILIENCE_CONFIG = {
|
|
1604
|
-
enabled:
|
|
1612
|
+
enabled: false,
|
|
1605
1613
|
canary_probe_ms: 300000,
|
|
1606
1614
|
status_probe_timeout_ms: 2000,
|
|
1607
1615
|
correlated_failure_threshold: 2,
|
|
1608
1616
|
max_retry_attempts_after_initial: 2
|
|
1609
1617
|
};
|
|
1610
1618
|
PrReviewResilienceConfigSchema = exports_external.object({
|
|
1611
|
-
enabled: exports_external.boolean().default(
|
|
1619
|
+
enabled: exports_external.boolean().default(false),
|
|
1612
1620
|
canary_probe_ms: exports_external.number().int().min(1).max(3600000).default(300000),
|
|
1613
1621
|
status_probe_timeout_ms: exports_external.number().int().min(1).max(60000).default(2000),
|
|
1614
1622
|
correlated_failure_threshold: exports_external.number().int().min(2).max(8).default(2),
|