opencode-swarm 7.140.4 → 7.140.5
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/plan/SKILL.md +40 -12
- package/dist/agents/architect.d.ts +2 -1
- package/dist/background/pending-delegations.d.ts +5 -0
- package/dist/cli/{config-doctor-qqe6172n.js → config-doctor-5vzpq4qa.js} +3 -3
- package/dist/cli/{core-52k057mf.js → core-xjzdc56e.js} +2 -2
- package/dist/cli/{curation-policy-9291bdat.js → curation-policy-avvb56x2.js} +6 -6
- package/dist/cli/{curator-04xqq68e.js → curator-5nytvg7p.js} +36 -36
- package/dist/cli/curator-llm-factory-rds75zhj.js +61 -0
- package/dist/cli/{evidence-summary-service-em58myd7.js → evidence-summary-service-zq4gyx6g.js} +14 -11
- package/dist/cli/gate-evidence-smn2wqft.js +51 -0
- package/dist/cli/guardrail-explain-an7jvam1.js +62 -0
- package/dist/cli/{guardrail-log-vb5zkegf.js → guardrail-log-0hnd2k9v.js} +4 -4
- package/dist/cli/{hive-promoter-z09khawt.js → hive-promoter-qe8pqg79.js} +36 -36
- package/dist/cli/{index-vrmkg8fm.js → index-01ggt2mj.js} +9 -9
- package/dist/cli/{index-hfwzxh3j.js → index-0r2m0vbq.js} +12 -10
- package/dist/cli/{index-v3xhc7kg.js → index-0rx9t9w8.js} +1 -1
- package/dist/cli/{index-hz0refz4.js → index-2bg901qt.js} +70 -29
- package/dist/cli/{index-7begd9aq.js → index-386ts4tm.js} +4 -4
- package/dist/cli/{index-v3x7j9ey.js → index-8rp1y4ab.js} +2 -2
- package/dist/cli/{index-35qep0v7.js → index-912qz4y0.js} +88 -88
- package/dist/cli/{index-2rb3x0fk.js → index-affh1gtg.js} +7 -7
- package/dist/cli/{index-c5kr20nz.js → index-c432knmy.js} +1 -1
- package/dist/cli/{index-v1an91bq.js → index-e0mpz2j3.js} +5 -5
- package/dist/cli/{index-bfhwtdsw.js → index-epvhf50h.js} +3 -3
- package/dist/cli/{index-s8g7jh1k.js → index-ex7r16gc.js} +2 -2
- package/dist/cli/{index-tj04dj06.js → index-jm4cpp4n.js} +2 -2
- package/dist/cli/{index-hxvkfx6t.js → index-jqsfsqbx.js} +15 -2
- package/dist/cli/{index-hfjvepk2.js → index-kb5q9v34.js} +3 -3
- package/dist/cli/{index-bn17ycxn.js → index-m9xrdjn0.js} +1 -1
- package/dist/cli/{index-djbhe0yh.js → index-mm2egvdt.js} +38 -38
- package/dist/cli/{index-pp5m7xga.js → index-nwrwy8eb.js} +70 -34
- package/dist/cli/index-nyjtzmsj.js +43 -0
- package/dist/cli/{index-4hp8nvwb.js → index-p8kk34am.js} +3 -3
- package/dist/cli/{index-ysa38bnr.js → index-ptn13xjn.js} +3 -3
- package/dist/cli/{index-1kyex7z2.js → index-qwm6vdyv.js} +32 -1
- package/dist/cli/{index-dtam929z.js → index-qy1nq52t.js} +1 -1
- package/dist/cli/{index-rrb6cz2f.js → index-s1v0wza5.js} +6 -2
- package/dist/cli/{index-w4etfamq.js → index-t5pytnca.js} +2 -2
- package/dist/cli/index-tjqzr3jc.js +623 -0
- package/dist/cli/{index-mrpfd1jx.js → index-vh05t3w5.js} +1 -1
- package/dist/cli/{index-ryq97w1x.js → index-wkt9fj06.js} +4 -4
- package/dist/cli/{index-wk8s1m7b.js → index-wrb0gykj.js} +217 -15
- package/dist/cli/{index-arza4m4j.js → index-z7h37d63.js} +2 -2
- package/dist/cli/{index-a1fjhx4w.js → index-z90nvqj3.js} +37836 -35986
- package/dist/cli/{index-b8zgtz81.js → index-zsrtt42s.js} +34 -1
- package/dist/cli/{index-mpytsq6k.js → index-ztgn70jz.js} +2 -2
- package/dist/cli/index.js +35 -35
- package/dist/cli/{knowledge-escalator-gdjnwszd.js → knowledge-escalator-4pfrc902.js} +12 -12
- package/dist/cli/{knowledge-events-581x4q7n.js → knowledge-events-3zkfnksk.js} +10 -10
- package/dist/cli/{knowledge-link-axx45d1h.js → knowledge-link-m9p80f4r.js} +5 -5
- package/dist/cli/{knowledge-store-ttg33482.js → knowledge-store-dpqgvvjt.js} +6 -6
- package/dist/cli/{knowledge-validator-8kywqt8b.js → knowledge-validator-2c7w87dk.js} +8 -8
- package/dist/cli/{pending-delegations-btwqsvz4.js → pending-delegations-cxx9tezp.js} +4 -4
- package/dist/cli/{pr-subscriptions-83y1cdwv.js → pr-subscriptions-2sfnb599.js} +4 -4
- package/dist/cli/{runner-fh3r41nw.js → runner-mky3vvht.js} +6 -6
- package/dist/cli/{scan-cursor-j8ytdpam.js → scan-cursor-1z60gwrw.js} +7 -7
- package/dist/cli/{schema-6xfqtpvn.js → schema-vpnkwvez.js} +2 -2
- package/dist/cli/{scope-persistence-8c72jrgp.js → scope-persistence-p9dmprry.js} +10 -5
- package/dist/cli/{skill-generator-n8vm1yhn.js → skill-generator-yx7ka1cj.js} +14 -14
- package/dist/cli/{telemetry-fb44gpba.js → telemetry-0x6kszvk.js} +1 -1
- package/dist/cli/{worktree-collision-ownership-f28r473k.js → worktree-collision-ownership-wm5pse49.js} +8 -8
- package/dist/cli/worktree-isolation-bwc6ra8e.js +102 -0
- package/dist/cli/worktree-provisioning-owner-sjh7te1h.js +22 -0
- package/dist/commands/acknowledge-spec-drift.d.ts +4 -5
- package/dist/config/evidence-schema.d.ts +3 -3
- package/dist/config/index.d.ts +2 -2
- package/dist/config/plan-schema.d.ts +8 -0
- package/dist/config/schema.d.ts +2 -2
- package/dist/council/council-evidence-writer.d.ts +1 -1
- package/dist/gate-evidence.d.ts +117 -4
- package/dist/hooks/delegation-gate.d.ts +21 -0
- package/dist/index.js +768 -743
- package/dist/plan/ledger.d.ts +55 -0
- package/dist/plan/manager.d.ts +9 -0
- package/dist/plan/planning-profile.d.ts +27 -0
- package/dist/services/spec-drift-recovery.d.ts +84 -0
- package/dist/session/snapshot-writer.d.ts +3 -1
- package/dist/state.d.ts +19 -17
- package/dist/summaries/schema.d.ts +2 -2
- package/dist/tools/convene-council.d.ts +6 -6
- package/dist/tools/save-plan.d.ts +8 -0
- package/dist/tools/submit-phase-council-verdicts.d.ts +6 -6
- package/dist/tools/tool-metadata.d.ts +28 -28
- package/dist/tools/update-task-status.d.ts +13 -0
- package/dist/tools/write-final-council-evidence.d.ts +6 -6
- package/dist/types/events.d.ts +29 -1
- package/dist/workflow/coder-settlement.d.ts +62 -0
- package/dist/workflow/task-repair.d.ts +30 -0
- package/dist/workflow/task-terminal.d.ts +52 -0
- package/package.json +1 -1
- package/dist/cli/curator-llm-factory-cfm8fhdw.js +0 -61
- package/dist/cli/gate-evidence-ezxfkb22.js +0 -32
- package/dist/cli/guardrail-explain-pn1bcgfz.js +0 -62
- package/dist/cli/index-d181x9zr.js +0 -71
- package/dist/cli/index-dtyeabmj.js +0 -239
|
@@ -10,16 +10,16 @@ import {
|
|
|
10
10
|
PluginConfigSchema,
|
|
11
11
|
init_schema,
|
|
12
12
|
resolveExternalSkillsConfig
|
|
13
|
-
} from "./index-
|
|
14
|
-
import {
|
|
15
|
-
DEFAULT_WORKTREE_ISOLATION_CONFIG,
|
|
16
|
-
init_constants
|
|
17
|
-
} from "./index-hxvkfx6t.js";
|
|
13
|
+
} from "./index-jm4cpp4n.js";
|
|
18
14
|
import {
|
|
19
15
|
MAX_MERGE_DEPTH,
|
|
20
16
|
deepMerge,
|
|
21
17
|
init_merge
|
|
22
18
|
} from "./index-zjygnfay.js";
|
|
19
|
+
import {
|
|
20
|
+
exports_external,
|
|
21
|
+
init_zod
|
|
22
|
+
} from "./index-bpmtbmy9.js";
|
|
23
23
|
import {
|
|
24
24
|
__esm,
|
|
25
25
|
__export
|
|
@@ -688,33 +688,69 @@ var init_loader = __esm(() => {
|
|
|
688
688
|
init_merge();
|
|
689
689
|
});
|
|
690
690
|
|
|
691
|
-
// src/config/
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
var
|
|
691
|
+
// src/config/plan-schema.ts
|
|
692
|
+
init_zod();
|
|
693
|
+
var ExecutionProfileSchema = exports_external.object({
|
|
694
|
+
parallelization_enabled: exports_external.boolean().default(false),
|
|
695
|
+
max_concurrent_tasks: exports_external.number().int().min(1).max(64).default(10),
|
|
696
|
+
council_parallel: exports_external.boolean().default(true),
|
|
697
|
+
locked: exports_external.boolean().default(false),
|
|
698
|
+
auto_proceed: exports_external.boolean().default(false),
|
|
699
|
+
commit_after_each_completed_task: exports_external.boolean().default(false),
|
|
700
|
+
planning_profile: exports_external.enum(["balanced", "strict"]).optional()
|
|
701
|
+
});
|
|
702
|
+
var TaskStatusSchema = exports_external.enum([
|
|
703
|
+
"pending",
|
|
704
|
+
"in_progress",
|
|
705
|
+
"completed",
|
|
706
|
+
"blocked",
|
|
707
|
+
"closed"
|
|
708
|
+
]);
|
|
709
|
+
var TaskSizeSchema = exports_external.enum(["small", "medium", "large"]);
|
|
710
|
+
var PhaseStatusSchema = exports_external.enum([
|
|
711
|
+
"pending",
|
|
712
|
+
"in_progress",
|
|
713
|
+
"complete",
|
|
714
|
+
"completed",
|
|
715
|
+
"blocked",
|
|
716
|
+
"closed"
|
|
717
|
+
]);
|
|
718
|
+
var MigrationStatusSchema = exports_external.enum([
|
|
719
|
+
"native",
|
|
720
|
+
"migrated",
|
|
721
|
+
"migration_failed"
|
|
722
|
+
]);
|
|
723
|
+
var TaskSchema = exports_external.object({
|
|
724
|
+
id: exports_external.string(),
|
|
725
|
+
phase: exports_external.number().int().min(1),
|
|
726
|
+
status: TaskStatusSchema.default("pending"),
|
|
727
|
+
size: TaskSizeSchema.default("small"),
|
|
728
|
+
description: exports_external.string().min(1),
|
|
729
|
+
depends: exports_external.array(exports_external.string()).default([]),
|
|
730
|
+
acceptance: exports_external.string().optional(),
|
|
731
|
+
files_touched: exports_external.array(exports_external.string()).default([]),
|
|
732
|
+
evidence_path: exports_external.string().optional(),
|
|
733
|
+
blocked_reason: exports_external.string().optional(),
|
|
734
|
+
fr_refs: exports_external.array(exports_external.string()).optional()
|
|
735
|
+
});
|
|
736
|
+
var PhaseSchema = exports_external.object({
|
|
737
|
+
id: exports_external.number().int().min(1),
|
|
738
|
+
name: exports_external.string().min(1),
|
|
739
|
+
status: PhaseStatusSchema.default("pending"),
|
|
740
|
+
tasks: exports_external.array(TaskSchema).default([]),
|
|
741
|
+
type: exports_external.enum(["code", "non-code"]).optional(),
|
|
742
|
+
required_agents: exports_external.array(exports_external.string()).optional()
|
|
743
|
+
});
|
|
744
|
+
var PlanSchema = exports_external.object({
|
|
745
|
+
schema_version: exports_external.literal("1.0.0"),
|
|
746
|
+
title: exports_external.string().min(1),
|
|
747
|
+
swarm: exports_external.string().min(1),
|
|
748
|
+
current_phase: exports_external.number().int().min(1).optional(),
|
|
749
|
+
phases: exports_external.array(PhaseSchema).min(1),
|
|
750
|
+
migration_status: MigrationStatusSchema.optional(),
|
|
751
|
+
specMtime: exports_external.string().optional(),
|
|
752
|
+
specHash: exports_external.string().optional(),
|
|
753
|
+
execution_profile: ExecutionProfileSchema.optional()
|
|
754
|
+
});
|
|
719
755
|
|
|
720
|
-
export { loadPluginConfig, loadPluginConfigWithMeta, getSafeDefaultConfigLoadResult, loadPluginConfigWithMetaAsync, loadAgentPrompt, exports_loader, init_loader
|
|
756
|
+
export { ExecutionProfileSchema, TaskStatusSchema, TaskSizeSchema, PhaseStatusSchema, MigrationStatusSchema, TaskSchema, PhaseSchema, PlanSchema, loadPluginConfig, loadPluginConfigWithMeta, getSafeDefaultConfigLoadResult, loadPluginConfigWithMetaAsync, loadAgentPrompt, exports_loader, init_loader };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import {
|
|
3
|
+
init_loader,
|
|
4
|
+
loadPluginConfigWithMeta
|
|
5
|
+
} from "./index-nwrwy8eb.js";
|
|
6
|
+
import {
|
|
7
|
+
init_schema
|
|
8
|
+
} from "./index-jm4cpp4n.js";
|
|
9
|
+
import {
|
|
10
|
+
DEFAULT_WORKTREE_ISOLATION_CONFIG,
|
|
11
|
+
init_constants
|
|
12
|
+
} from "./index-jqsfsqbx.js";
|
|
13
|
+
|
|
14
|
+
// src/config/index.ts
|
|
15
|
+
init_constants();
|
|
16
|
+
init_loader();
|
|
17
|
+
init_loader();
|
|
18
|
+
init_schema();
|
|
19
|
+
|
|
20
|
+
// src/config/worktree-isolation-config.ts
|
|
21
|
+
init_constants();
|
|
22
|
+
function resolveWorktreeIsolationConfig(config) {
|
|
23
|
+
if (config.worktree) {
|
|
24
|
+
return { ...DEFAULT_WORKTREE_ISOLATION_CONFIG, ...config.worktree };
|
|
25
|
+
}
|
|
26
|
+
const lean = config.turbo?.strategy === "lean" ? config.turbo.lean : undefined;
|
|
27
|
+
if (lean?.worktree_isolation) {
|
|
28
|
+
return {
|
|
29
|
+
...DEFAULT_WORKTREE_ISOLATION_CONFIG,
|
|
30
|
+
policy: "auto",
|
|
31
|
+
merge_strategy: lean.merge_strategy ?? "merge",
|
|
32
|
+
worktree_dir: lean.worktree_dir,
|
|
33
|
+
deps_strategy: lean.deps_strategy ?? "skip",
|
|
34
|
+
runtime_isolation: lean.runtime_isolation ?? DEFAULT_WORKTREE_ISOLATION_CONFIG.runtime_isolation
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
return DEFAULT_WORKTREE_ISOLATION_CONFIG;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// src/config/index.ts
|
|
41
|
+
var _internals = { loadPluginConfigWithMeta };
|
|
42
|
+
|
|
43
|
+
export { resolveWorktreeIsolationConfig, _internals };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// @bun
|
|
2
|
+
import {
|
|
3
|
+
withEvidenceLock
|
|
4
|
+
} from "./index-912qz4y0.js";
|
|
2
5
|
import {
|
|
3
6
|
invalidateCachedArtifact
|
|
4
7
|
} from "./index-ed5ykebp.js";
|
|
5
|
-
import {
|
|
6
|
-
withEvidenceLock
|
|
7
|
-
} from "./index-35qep0v7.js";
|
|
8
8
|
import {
|
|
9
9
|
bunWrite
|
|
10
10
|
} from "./index-4nt52yr9.js";
|
|
@@ -15,10 +15,10 @@ import {
|
|
|
15
15
|
import {
|
|
16
16
|
init_schema,
|
|
17
17
|
stripKnownSwarmPrefix
|
|
18
|
-
} from "./index-
|
|
18
|
+
} from "./index-jm4cpp4n.js";
|
|
19
19
|
import {
|
|
20
20
|
init_constants
|
|
21
|
-
} from "./index-
|
|
21
|
+
} from "./index-jqsfsqbx.js";
|
|
22
22
|
import {
|
|
23
23
|
__commonJS,
|
|
24
24
|
__toESM
|
|
@@ -2615,4 +2615,4 @@ function redactPath(filePath) {
|
|
|
2615
2615
|
return normalized;
|
|
2616
2616
|
}
|
|
2617
2617
|
|
|
2618
|
-
export {
|
|
2618
|
+
export { classifyFile, stableCanonicalStringify, checkFileAuthority, isInDeclaredScope, redactShellCommand, redactPath };
|
|
@@ -11,6 +11,7 @@ var PROVISIONING_OWNER_DIR = "worktree-provisioning-owners";
|
|
|
11
11
|
var MAX_PROVISIONING_OWNERS = 512;
|
|
12
12
|
var MAX_PROVISIONING_OWNER_BYTES = 16 * 1024;
|
|
13
13
|
var WORKTREE_PROVISIONING_OWNER_LEASE_MS = 5 * 60 * 1000;
|
|
14
|
+
var WORKTREE_LIFECYCLE_LOCK_FILE = ".swarm/locks/init-orphan-recovery.lock";
|
|
14
15
|
function ownerDirectory(directory) {
|
|
15
16
|
return path.dirname(validateSwarmPath(directory, path.join(PROVISIONING_OWNER_DIR, ".containment-anchor")));
|
|
16
17
|
}
|
|
@@ -26,6 +27,36 @@ function isOwner(value) {
|
|
|
26
27
|
const validTaskIdentity = schemaVersion === 1 ? candidate.taskId === undefined : schemaVersion === 2 && typeof candidate.taskId === "string" && candidate.taskId.length > 0 && candidate.taskId.length <= 512;
|
|
27
28
|
return (schemaVersion === 1 || schemaVersion === 2) && validTaskIdentity && typeof candidate.callID === "string" && candidate.callID.length > 0 && candidate.callID.length <= 512 && typeof candidate.parentSessionId === "string" && candidate.parentSessionId.length > 0 && candidate.parentSessionId.length <= 512 && typeof candidate.worktreeSessionId === "string" && candidate.worktreeSessionId.length > 0 && candidate.worktreeSessionId.length <= 512 && typeof candidate.createdAt === "number" && Number.isFinite(candidate.createdAt) && candidate.createdAt >= 0;
|
|
28
29
|
}
|
|
30
|
+
function recordWorktreeProvisioningOwner(directory, input) {
|
|
31
|
+
const owner = {
|
|
32
|
+
schemaVersion: input.taskId ? 2 : 1,
|
|
33
|
+
callID: input.callID,
|
|
34
|
+
parentSessionId: input.parentSessionId,
|
|
35
|
+
worktreeSessionId: input.worktreeSessionId,
|
|
36
|
+
...input.taskId ? { taskId: input.taskId } : {},
|
|
37
|
+
createdAt: Date.now()
|
|
38
|
+
};
|
|
39
|
+
if (!isOwner(owner)) {
|
|
40
|
+
throw new Error("invalid worktree provisioning owner");
|
|
41
|
+
}
|
|
42
|
+
const absolutePath = ownerPath(directory, input.callID);
|
|
43
|
+
fs.mkdirSync(path.dirname(absolutePath), { recursive: true });
|
|
44
|
+
const tempPath = `${absolutePath}.tmp-${randomBytes(8).toString("hex")}`;
|
|
45
|
+
try {
|
|
46
|
+
fs.writeFileSync(tempPath, `${JSON.stringify(owner)}
|
|
47
|
+
`, {
|
|
48
|
+
encoding: "utf8",
|
|
49
|
+
flag: "wx"
|
|
50
|
+
});
|
|
51
|
+
fs.renameSync(tempPath, absolutePath);
|
|
52
|
+
} catch (error) {
|
|
53
|
+
try {
|
|
54
|
+
fs.unlinkSync(tempPath);
|
|
55
|
+
} catch {}
|
|
56
|
+
throw error;
|
|
57
|
+
}
|
|
58
|
+
return owner;
|
|
59
|
+
}
|
|
29
60
|
function removeWorktreeProvisioningOwner(directory, callID) {
|
|
30
61
|
try {
|
|
31
62
|
fs.unlinkSync(ownerPath(directory, callID));
|
|
@@ -91,4 +122,4 @@ function scanWorktreeProvisioningOwnersForRecovery(directory) {
|
|
|
91
122
|
return { status: "ok", owners };
|
|
92
123
|
}
|
|
93
124
|
|
|
94
|
-
export { WORKTREE_PROVISIONING_OWNER_LEASE_MS, removeWorktreeProvisioningOwner, scanWorktreeProvisioningOwnersForRecovery };
|
|
125
|
+
export { WORKTREE_PROVISIONING_OWNER_LEASE_MS, WORKTREE_LIFECYCLE_LOCK_FILE, recordWorktreeProvisioningOwner, removeWorktreeProvisioningOwner, scanWorktreeProvisioningOwnersForRecovery };
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
readLinkPointer,
|
|
8
8
|
resolveKnowledgeStoreDir,
|
|
9
9
|
resolveLinkDir
|
|
10
|
-
} from "./index-
|
|
10
|
+
} from "./index-vh05t3w5.js";
|
|
11
11
|
|
|
12
12
|
// src/knowledge/curation-policy.ts
|
|
13
13
|
import { appendFile, mkdir as mkdir2, readFile as readFile2 } from "fs/promises";
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "./index-k46me75h.js";
|
|
5
5
|
import {
|
|
6
6
|
withEvidenceLock
|
|
7
|
-
} from "./index-
|
|
7
|
+
} from "./index-912qz4y0.js";
|
|
8
8
|
import {
|
|
9
9
|
bunWrite
|
|
10
10
|
} from "./index-4nt52yr9.js";
|
|
@@ -65,7 +65,8 @@ var WorkspaceSchema = exports_external.object({
|
|
|
65
65
|
}).strict();
|
|
66
66
|
var TaskChangeContextSchema = exports_external.object({
|
|
67
67
|
declaredFiles: exports_external.array(exports_external.string()).nullable(),
|
|
68
|
-
baseline: WorkspaceSchema
|
|
68
|
+
baseline: WorkspaceSchema,
|
|
69
|
+
workflowGeneration: exports_external.number().int().nonnegative().optional()
|
|
69
70
|
}).strict();
|
|
70
71
|
var WorktreeDescriptorSchema = exports_external.object({
|
|
71
72
|
callID: exports_external.string().min(1).max(256),
|
|
@@ -260,6 +261,7 @@ var RecordSchema = exports_external.object({
|
|
|
260
261
|
promptHash: exports_external.string().optional(),
|
|
261
262
|
workspace: WorkspaceSchema.optional(),
|
|
262
263
|
taskChangeContext: TaskChangeContextSchema.optional(),
|
|
264
|
+
workflowGeneration: exports_external.number().int().nonnegative().optional(),
|
|
263
265
|
worktree: WorktreeDescriptorSchema.optional(),
|
|
264
266
|
coderReservationId: exports_external.string().min(1).max(256).optional(),
|
|
265
267
|
prompt: PromptSchema.optional(),
|
|
@@ -419,6 +421,7 @@ function buildPendingRecord(input, now) {
|
|
|
419
421
|
...input.promptHash ? { promptHash: input.promptHash } : {},
|
|
420
422
|
...input.workspace ? { workspace: input.workspace } : {},
|
|
421
423
|
...input.taskChangeContext ? { taskChangeContext: input.taskChangeContext } : {},
|
|
424
|
+
...input.workflowGeneration !== undefined ? { workflowGeneration: input.workflowGeneration } : {},
|
|
422
425
|
...input.worktree ? { worktree: input.worktree } : {},
|
|
423
426
|
...input.coderReservationId ? { coderReservationId: input.coderReservationId } : {},
|
|
424
427
|
...input.prompt ? { prompt: input.prompt } : {},
|
|
@@ -444,6 +447,7 @@ function pendingLaunchIdentity(record) {
|
|
|
444
447
|
promptHash: record.promptHash,
|
|
445
448
|
workspace: record.workspace,
|
|
446
449
|
taskChangeContext: record.taskChangeContext,
|
|
450
|
+
workflowGeneration: record.workflowGeneration,
|
|
447
451
|
worktree: record.worktree,
|
|
448
452
|
coderReservationId: record.coderReservationId,
|
|
449
453
|
prompt: record.prompt,
|
|
@@ -9,11 +9,11 @@ import {
|
|
|
9
9
|
} from "./index-y8552snf.js";
|
|
10
10
|
import {
|
|
11
11
|
atomicWriteFile
|
|
12
|
-
} from "./index-
|
|
12
|
+
} from "./index-p8kk34am.js";
|
|
13
13
|
import {
|
|
14
14
|
assertProjectRoot,
|
|
15
15
|
withEvidenceLock
|
|
16
|
-
} from "./index-
|
|
16
|
+
} from "./index-912qz4y0.js";
|
|
17
17
|
import {
|
|
18
18
|
exports_external,
|
|
19
19
|
init_zod
|