opencode-swarm 7.165.0 → 7.166.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.
Files changed (95) hide show
  1. package/binaries/win32-arm64/swarm-sandbox-runner.exe +0 -0
  2. package/binaries/win32-x64/swarm-sandbox-runner.exe +0 -0
  3. package/dist/background/delegation-cost-identity.d.ts +41 -0
  4. package/dist/background/delegation-lifecycle.d.ts +24 -5
  5. package/dist/background/pending-delegations.d.ts +2 -0
  6. package/dist/background/pr-monitor-worker.d.ts +60 -6
  7. package/dist/background/pr-subscriptions.d.ts +13 -0
  8. package/dist/cli/{capability-probe-5wa7mcp6.js → capability-probe-faqefhah.js} +2 -1
  9. package/dist/cli/{coder-settlement-89nt4j7g.js → coder-settlement-ydg2jfrk.js} +8 -8
  10. package/dist/cli/{config-doctor-gm6f5chm.js → config-doctor-drqx6tzc.js} +2 -2
  11. package/dist/cli/{core-91p43zwj.js → core-x6sftfwt.js} +1 -1
  12. package/dist/cli/{curation-policy-bqpmry2n.js → curation-policy-jtzwz6bc.js} +4 -4
  13. package/dist/cli/{curator-drift-hbc3w5zj.js → curator-drift-2vwtkegg.js} +2 -2
  14. package/dist/cli/{curator-4bs2hmy9.js → curator-kg2h8jjf.js} +34 -34
  15. package/dist/cli/curator-llm-factory-7znajprp.js +70 -0
  16. package/dist/cli/{evidence-summary-service-g1xd8egd.js → evidence-summary-service-ry5ebnmq.js} +15 -15
  17. package/dist/cli/{gate-evidence-gdmgsz7c.js → gate-evidence-qgeceqy8.js} +5 -5
  18. package/dist/cli/guardrail-explain-jdv4n2j3.js +71 -0
  19. package/dist/cli/{guardrail-log-nyggdv04.js → guardrail-log-s7c3rpde.js} +7 -7
  20. package/dist/cli/{guardrail-reset-rp9jq0gj.js → guardrail-reset-4nmy7xas.js} +34 -34
  21. package/dist/cli/{hive-promoter-39xb4tx2.js → hive-promoter-w5tsgttc.js} +34 -34
  22. package/dist/cli/{index-tqw8w2n5.js → index-17yszqs5.js} +1 -1
  23. package/dist/cli/{index-qzvry1n1.js → index-289epdpc.js} +36 -36
  24. package/dist/cli/{index-7h94rfem.js → index-2dvk153d.js} +14 -12
  25. package/dist/cli/{index-p7hdp3rp.js → index-2rm5x9ps.js} +1 -1
  26. package/dist/cli/{index-xwbn7c8m.js → index-2v17wb75.js} +2 -2
  27. package/dist/cli/{index-y1zhpfk8.js → index-30f4fe30.js} +4 -4
  28. package/dist/cli/{index-n3pjcks8.js → index-359djbj1.js} +5 -5
  29. package/dist/cli/{index-4gmt79q9.js → index-4mpdy32j.js} +1 -1
  30. package/dist/cli/{index-afpkqsdb.js → index-52jfm5s0.js} +13 -6
  31. package/dist/cli/{index-6m24v15v.js → index-79sr3fd1.js} +2 -2
  32. package/dist/cli/{index-dh5th4jn.js → index-8hqkrd2j.js} +1 -1
  33. package/dist/cli/{index-3xyjvx24.js → index-8m12y79g.js} +11 -9
  34. package/dist/cli/{index-e6n7cemz.js → index-8n62bphd.js} +11 -7
  35. package/dist/cli/{index-hdakb4n9.js → index-9hy5q7gp.js} +15 -12
  36. package/dist/cli/{index-2k53pfnc.js → index-a5w71m8f.js} +4 -4
  37. package/dist/cli/{index-6rx1rdaq.js → index-a7rw4g4s.js} +1 -1
  38. package/dist/cli/{index-w6988bbc.js → index-aftapk6j.js} +75 -1
  39. package/dist/cli/{index-hwz46jj7.js → index-an89qzd9.js} +2074 -545
  40. package/dist/cli/{index-58be2gtd.js → index-apxaa755.js} +2 -2
  41. package/dist/cli/{index-j2svfhzk.js → index-axf65x87.js} +1 -1
  42. package/dist/cli/{index-g8wdekzz.js → index-bw7r2b2m.js} +2 -2
  43. package/dist/cli/{index-ajknebrc.js → index-c20gf089.js} +1 -1
  44. package/dist/cli/{index-ptsqnxwd.js → index-czr3jcg6.js} +20 -10
  45. package/dist/cli/{index-jre6tm3v.js → index-edm41q4j.js} +1 -1
  46. package/dist/cli/{index-r5hj3nfe.js → index-ejf6w8vw.js} +2 -2
  47. package/dist/cli/{index-c4ddtrqg.js → index-fywshabz.js} +6 -6
  48. package/dist/cli/{index-6be5caj8.js → index-hrkamw9q.js} +3 -3
  49. package/dist/cli/{index-f36hy1x4.js → index-hvk3zs62.js} +1 -1
  50. package/dist/cli/{index-5ebgzb5a.js → index-hwj25q9r.js} +78 -53
  51. package/dist/cli/{index-gn6ybsc4.js → index-jc9cxh90.js} +7 -7
  52. package/dist/cli/{index-e45htt92.js → index-jx9f4ke1.js} +1 -1
  53. package/dist/cli/{index-zycp24b9.js → index-mg43w8p2.js} +1 -1
  54. package/dist/cli/{index-0e9jh9c7.js → index-nb924ar6.js} +2 -2
  55. package/dist/cli/{index-k1ntjzmf.js → index-p04pa9c9.js} +1 -1
  56. package/dist/cli/{index-4fwbbad3.js → index-q1r1cfww.js} +46 -17
  57. package/dist/cli/{index-5ythtd9t.js → index-qkq56zyr.js} +11 -11
  58. package/dist/cli/{index-1v6vc90w.js → index-rkn17q5e.js} +3 -3
  59. package/dist/cli/{index-556ja8an.js → index-yzjaj53h.js} +9 -2
  60. package/dist/cli/index.js +34 -34
  61. package/dist/cli/{knowledge-escalator-eq07pcj3.js → knowledge-escalator-xdzmr31d.js} +10 -10
  62. package/dist/cli/{knowledge-events-rv9q9mkm.js → knowledge-events-1t1t0bv7.js} +8 -8
  63. package/dist/cli/{knowledge-link-dgvbqjqg.js → knowledge-link-1zykfk1p.js} +3 -3
  64. package/dist/cli/{knowledge-store-cxcr0ttk.js → knowledge-store-m2snb0xg.js} +4 -4
  65. package/dist/cli/{knowledge-validator-8qtd9ys0.js → knowledge-validator-tf7yq2pd.js} +6 -6
  66. package/dist/cli/{pending-delegations-dp3g8e7k.js → pending-delegations-jr8hwxrz.js} +11 -9
  67. package/dist/cli/{pr-subscriptions-3vx06rar.js → pr-subscriptions-ca1xmf9r.js} +13 -9
  68. package/dist/cli/{pr-workflow-gate-bbet0apk.js → pr-workflow-gate-fb1dj0zx.js} +34 -34
  69. package/dist/cli/{runner-0e3bjeev.js → runner-j3acybhs.js} +4 -4
  70. package/dist/cli/{scan-cursor-zwm0xng7.js → scan-cursor-3gdvy0ym.js} +5 -5
  71. package/dist/cli/{schema-ebfxgya0.js → schema-mzb1354k.js} +1 -1
  72. package/dist/cli/{scope-persistence-6c55akfz.js → scope-persistence-c4n21b5n.js} +14 -14
  73. package/dist/cli/{skill-generator-mv5jxzsh.js → skill-generator-dvpvwt8k.js} +12 -12
  74. package/dist/cli/{snapshot-coordination-init-n556wa18.js → snapshot-coordination-init-g7v63zcm.js} +34 -34
  75. package/dist/cli/{telemetry-a1yvjerj.js → telemetry-9h1z2w9d.js} +1 -1
  76. package/dist/cli/{worktree-collision-ownership-pp4z4z8p.js → worktree-collision-ownership-k15qrpy9.js} +9 -9
  77. package/dist/cli/{worktree-isolation-69hz9dgg.js → worktree-isolation-y7ec1pm5.js} +34 -34
  78. package/dist/commands/pr-monitor-status.d.ts +2 -0
  79. package/dist/commands/registry.d.ts +8 -0
  80. package/dist/commands/report.d.ts +36 -0
  81. package/dist/db/observability-event-store.d.ts +162 -0
  82. package/dist/git/pr.d.ts +23 -25
  83. package/dist/hooks/context-capsule-inject.d.ts +3 -0
  84. package/dist/index.d.ts +6 -1
  85. package/dist/index.js +522 -429
  86. package/dist/observability/catalog.d.ts +8 -4
  87. package/dist/sandbox/executor.d.ts +10 -0
  88. package/dist/sandbox/win32/runner-client.d.ts +7 -0
  89. package/dist/services/context-attribution.d.ts +69 -0
  90. package/dist/services/cost-accounting.d.ts +2 -0
  91. package/dist/telemetry.d.ts +10 -2
  92. package/opencode-swarm.schema.json +1 -1
  93. package/package.json +1 -1
  94. package/dist/cli/curator-llm-factory-fhbjwar0.js +0 -70
  95. package/dist/cli/guardrail-explain-1nfbtpgg.js +0 -71
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Delegation cost-record identity construction (issue #2482).
3
+ *
4
+ * Leaf module — imports only from `node:crypto` and the cost-accounting
5
+ * types — so BOTH `delegation-lifecycle.ts` and `pending-delegations.ts`
6
+ * (which `delegation-lifecycle` imports from; a reverse import would cycle)
7
+ * can construct the exact same canonical cost-record identity material for a
8
+ * delegation terminal.
9
+ */
10
+ import type { DelegationCostFields } from '../services/cost-accounting.js';
11
+ /** Record fields the identity material is derived from — never agent names. */
12
+ export interface DelegationCostIdentityRecord {
13
+ parentSessionId: string;
14
+ callID: string;
15
+ laneId?: string;
16
+ }
17
+ /**
18
+ * Canonical cost-record identity material. Records WITH a `laneId` (lane
19
+ * records) use the `lane:` discriminator; records WITHOUT one (Task-tool
20
+ * delegations, foreground or background) use the pre-documented Task shape
21
+ * `${sessionId}\0${callID}` — the same material the foreground Task handoff
22
+ * hashes. Hash inputs stay distinct, so lane and Task ids never collide even
23
+ * for a shared (sessionId, callID).
24
+ */
25
+ export declare function delegationCostRecordMaterial(record: DelegationCostIdentityRecord): string;
26
+ export interface DelegationTerminalIdentityInput {
27
+ record: DelegationCostIdentityRecord & {
28
+ swarmPrefixedAgent: string;
29
+ subagentSessionId: string;
30
+ };
31
+ /** Model name for the identity fingerprint ('' when unknown). */
32
+ model?: string;
33
+ /** Marks a recovered eventless-terminal end (#2482). */
34
+ recovered?: boolean;
35
+ }
36
+ /**
37
+ * Build the canonical cost-record identity fields (`record_id`,
38
+ * `identity_fingerprint`, digests, version, and the `recovered` marker) for a
39
+ * delegation terminal emission. Token/cost fields are the caller's to add.
40
+ */
41
+ export declare function buildDelegationTerminalIdentityFields(input: DelegationTerminalIdentityInput): Pick<DelegationCostFields, 'record_id' | 'identity_fingerprint' | 'version' | 'parent_session_digest' | 'child_session_digest' | 'recovered'>;
@@ -99,12 +99,31 @@ export declare function settleDelegationTerminal(directory: string, record: Back
99
99
  */
100
100
  export declare function emitDelegationBegin(record: Pick<BackgroundDelegationRecord, 'parentSessionId' | 'swarmPrefixedAgent' | 'planTaskId'>): void;
101
101
  /**
102
- * Canonical cost-record identity material for a lane/delegation terminal.
103
- * Joining back to the delegation record uses exactly these record fields —
104
- * never agent-name matching. The `lane:` discriminator keeps lane identities
105
- * disjoint from Task-tool records, whose material is `${sessionId}\0${callID}`.
102
+ * Canonical cost-record identity material for a lane/delegation terminal
103
+ * re-exported from the leaf module `delegation-cost-identity.ts` (issue
104
+ * #2482) so `pending-delegations.ts` (imported by this module) can construct
105
+ * the exact same identity for its stale-sweep terminal emissions without an
106
+ * import cycle. Records WITH a `laneId` (lane records) use the `lane:`
107
+ * discriminator; records WITHOUT one (Task-tool delegations) use the
108
+ * pre-documented Task shape `${sessionId}\0${callID}` (the same material the
109
+ * foreground Task handoff hashes). Hash inputs stay distinct, so lane and
110
+ * Task ids can never collide even for a shared (sessionId, callID) pair.
106
111
  */
107
- export declare function delegationCostRecordMaterial(record: Pick<BackgroundDelegationRecord, 'parentSessionId' | 'callID' | 'laneId'>): string;
112
+ export { delegationCostRecordMaterial } from './delegation-cost-identity.js';
113
+ /** Durable record fields the terminal emitters need (record-attributed). */
114
+ type TerminalEmitRecord = Pick<BackgroundDelegationRecord, 'parentSessionId' | 'swarmPrefixedAgent' | 'planTaskId' | 'callID' | 'laneId' | 'subagentSessionId'>;
115
+ /**
116
+ * Emit the exactly-once `delegation_end` pairing observation for an
117
+ * EVENTLESS terminal (issue #2482 / #2244): a durable record that reached a
118
+ * terminal status without the claim path ever emitting the terminal event —
119
+ * the `already_terminal_without_event` settle outcome and the stale sweep.
120
+ * Attribution and pairing identity come from the durable record (correct
121
+ * across restarts; never the in-memory parent-session map), and the
122
+ * deterministic `record_id` keeps cost rollups deduped. `recovered: true`
123
+ * marks these ends in the payload. `duplicate`/`conflict` outcomes must NOT
124
+ * call this — the original claimer's emission stands (exactly-once-at-emit).
125
+ */
126
+ export declare function emitDelegationEventlessTerminalEnd(record: TerminalEmitRecord, terminalStatus: string): void;
108
127
  /** Bounded per-pass cap for terminal-lane receipt recovery (crash window). */
109
128
  export declare const MAX_TERMINAL_LANE_RECEIPT_RECOVERY = 64;
110
129
  /**
@@ -730,6 +730,8 @@ export declare function findOpenAsyncLaneBatches(directory: string): BackgroundD
730
730
  * the exact same status set as the store's own guards — never a second copy.
731
731
  */
732
732
  export declare function isTerminalDelegationStatus(status: BackgroundDelegationStatus): boolean;
733
+ /** #2482: register the stale-sweep terminal observer. */
734
+ export declare function registerStaleSweepObserver(observer: ((record: BackgroundDelegationRecord, status: 'stale') => void) | null): void;
733
735
  /**
734
736
  * Public stale sweep: acquires the store lock and marks overdue pendings as `stale`.
735
737
  * Best-effort; returns the number swept (0 on lock timeout / error).
@@ -7,7 +7,7 @@
7
7
  * start/stop/dispose lifecycle and bounded, fail-open operation.
8
8
  */
9
9
  import type { PrMonitorConfig } from '../config/schema';
10
- import { getMergeGroupRun, getMergeState, getPRComments, getPRReviewState, getPRStatus } from '../git/pr';
10
+ import { getMergeGroupRun, getPRPollSnapshot, getPRReviewComments } from '../git/pr';
11
11
  import { type AutomationEventType, getGlobalEventBus } from './event-bus';
12
12
  import { listActive, sweepStale, unsubscribe, updateSnapshot } from './pr-subscriptions';
13
13
  /** Configuration options for PrMonitorWorker construction. */
@@ -28,6 +28,34 @@ export interface AutomationEvent<T = unknown> {
28
28
  payload: T;
29
29
  source: string;
30
30
  }
31
+ /**
32
+ * Store-write refusal state (#2409/#2471). When the subscription store
33
+ * refuses every write as a deterministic capacity policy failure, the worker
34
+ * skips polling for all but a one-PR recovery probe instead of re-polling
35
+ * into the same throw every interval. Subsystem-scoped by design: the
36
+ * per-PR breaker stays action-local for action-attributable failures; a
37
+ * store-attributable policy failure cannot be remediated per action.
38
+ */
39
+ interface StoreWriteRefusalState {
40
+ consecutiveCycles: number;
41
+ lastReason: string;
42
+ sinceEpochMs: number;
43
+ skippedPrCount: number;
44
+ }
45
+ /** Structured, queryable worker health for status surfaces (#2471). */
46
+ export interface PrMonitorWorkerHealth {
47
+ status: PrMonitorWorkerStatus;
48
+ /** PRs currently circuit-suspended (breaker query surface). */
49
+ suspendedPrCount: number;
50
+ /** Non-null while the store is refusing writes (capacity skip active). */
51
+ storeWriteRefusal: StoreWriteRefusalState | null;
52
+ }
53
+ /**
54
+ * Query the running worker's health for a project directory. Returns null
55
+ * when no worker is registered for the directory (status surfaces fail
56
+ * open and omit the Monitor line).
57
+ */
58
+ export declare function getPrMonitorWorkerHealth(directory: string): PrMonitorWorkerHealth | null;
31
59
  /**
32
60
  * Determine whether to skip polling a PR based on idle backoff (issue #1691).
33
61
  *
@@ -71,6 +99,8 @@ export declare class PrMonitorWorker {
71
99
  private readonly reviewStateMap;
72
100
  /** Accumulates merged/closed PR keys during the current poll cycle for sweep cleanup. */
73
101
  private mergedOrClosedKeys;
102
+ /** Store-write refusal state; null while writes are accepted (#2409/#2471). */
103
+ private storeWriteRefusal;
74
104
  constructor(options: PrMonitorWorkerOptions);
75
105
  /**
76
106
  * Start the polling worker. Fail-open: logs and returns on bad state
@@ -80,7 +110,9 @@ export declare class PrMonitorWorker {
80
110
  /**
81
111
  * Stop the polling worker. Clears the interval timer but does not
82
112
  * interrupt an in-flight poll cycle — it will complete and the result
83
- * is discarded.
113
+ * is discarded. Deliberately stays in the module health registry:
114
+ * /swarm pr status must keep disclosing a stopped worker's refusal /
115
+ * suspension state until dispose().
84
116
  */
85
117
  stop(): void;
86
118
  /**
@@ -95,6 +127,12 @@ export declare class PrMonitorWorker {
95
127
  * Check if worker is currently running.
96
128
  */
97
129
  isRunning(): boolean;
130
+ /**
131
+ * Structured health snapshot (#2471): breaker suspension count and the
132
+ * store-write refusal state, queryable by status surfaces via
133
+ * getPrMonitorWorkerHealth(directory).
134
+ */
135
+ getHealth(): PrMonitorWorkerHealth;
98
136
  /**
99
137
  * Public entry point for a single poll cycle. Checks only disposed
100
138
  * state (not running status) so it can be invoked directly in tests
@@ -106,6 +144,15 @@ export declare class PrMonitorWorker {
106
144
  * changes, publish events, update snapshots, run sweep.
107
145
  */
108
146
  private executePollCycle;
147
+ /**
148
+ * Advance the refusal cycle counter after a full poll cycle (#2409).
149
+ * Called at cycle end so the FIRST refusal (discovered mid-cycle by
150
+ * handlePollError) probes immediately on the next cycle. This cycle
151
+ * skipped nothing — every capped PR was already polled — so only the
152
+ * cycle count advances here; skippedPrCount is credited per refused
153
+ * cycle in the refusal branch above.
154
+ */
155
+ private settleCycleRefusal;
109
156
  /**
110
157
  * Process subscriptions with a concurrency limit using a sliding window.
111
158
  */
@@ -143,6 +190,14 @@ export declare class PrMonitorWorker {
143
190
  * state mutation to prevent stale writes after timeout.
144
191
  */
145
192
  private applyChanges;
193
+ /**
194
+ * Record a store-write capacity refusal (#2409/#2471). Entering the
195
+ * refusal state emits one always-visible advisory; leaving it (probe
196
+ * success) emits the recovery advisory. Bounded by construction: a
197
+ * single worker-scoped object.
198
+ */
199
+ private noteStoreWriteRefusal;
200
+ private clearStoreWriteRefusal;
146
201
  /**
147
202
  * Handle a poll error for a single PR: increment error count, apply
148
203
  * circuit-breaker suspension with exponential backoff.
@@ -168,14 +223,13 @@ export declare class PrMonitorWorker {
168
223
  private parseCheckSet;
169
224
  }
170
225
  export declare const _internals: {
171
- getPRStatus: typeof getPRStatus;
172
- getPRComments: typeof getPRComments;
173
- getMergeState: typeof getMergeState;
226
+ getPRPollSnapshot: typeof getPRPollSnapshot;
227
+ getPRReviewComments: typeof getPRReviewComments;
174
228
  getMergeGroupRun: typeof getMergeGroupRun;
175
- getPRReviewState: typeof getPRReviewState;
176
229
  listActive: typeof listActive;
177
230
  updateSnapshot: typeof updateSnapshot;
178
231
  unsubscribe: typeof unsubscribe;
179
232
  sweepStale: typeof sweepStale;
180
233
  getGlobalEventBus: typeof getGlobalEventBus;
181
234
  };
235
+ export {};
@@ -248,6 +248,19 @@ export interface PrSubscriptionHealth {
248
248
  */
249
249
  legacyOverLimit: boolean;
250
250
  }
251
+ /**
252
+ * Deterministic store-capacity policy failure (issue #2409/#2471): the folded
253
+ * live set exceeds the bounded checkpoint and every store write is refused
254
+ * until the operator archives/splits the store. Structured as a distinct
255
+ * error class so consumers (the PR-monitor worker) can classify it without
256
+ * string matching — capacity refusals short-circuit to the skip state, not
257
+ * transient retry or per-PR breaker accounting (AGENTS invariant 9).
258
+ */
259
+ export declare class PrSubscriptionCapacityError extends Error {
260
+ constructor(message: string);
261
+ }
262
+ /** True when the error is the store's bounded-capacity refusal. */
263
+ export declare function isPrSubscriptionCapacityError(err: unknown): boolean;
251
264
  /**
252
265
  * Build the composite correlation key from session, repo, and PR number.
253
266
  */
@@ -8,7 +8,8 @@ import {
8
8
  isBubblewrapAvailable,
9
9
  isSandboxExecAvailable,
10
10
  isWindowsSandboxAvailable
11
- } from "./index-4fwbbad3.js";
11
+ } from "./index-q1r1cfww.js";
12
+ import"./index-yzjaj53h.js";
12
13
  import"./index-zgwm4ryv.js";
13
14
  import"./index-a76rekgs.js";
14
15
  init_capability_probe();
@@ -13,27 +13,27 @@ import {
13
13
  releaseCoderDispatchOwnership,
14
14
  settleCoderDispatch,
15
15
  transferCoderSettlementToBackground
16
- } from "./index-7h94rfem.js";
16
+ } from "./index-2dvk153d.js";
17
17
  import"./index-6chhqq2n.js";
18
18
  import"./index-8bdk7124.js";
19
- import"./index-e6n7cemz.js";
20
- import"./index-p7hdp3rp.js";
19
+ import"./index-8n62bphd.js";
20
+ import"./index-2rm5x9ps.js";
21
21
  import"./index-anxs69ad.js";
22
22
  import"./index-z6xqpmqg.js";
23
23
  import"./index-p612v1mv.js";
24
- import"./index-xwbn7c8m.js";
25
- import"./index-556ja8an.js";
26
- import"./index-j2svfhzk.js";
24
+ import"./index-2v17wb75.js";
25
+ import"./index-axf65x87.js";
27
26
  import"./index-7qefgq4j.js";
28
- import"./index-jre6tm3v.js";
27
+ import"./index-edm41q4j.js";
29
28
  import"./index-gy0nyfbw.js";
30
- import"./index-5ebgzb5a.js";
29
+ import"./index-hwj25q9r.js";
31
30
  import"./index-7g4c7s5r.js";
32
31
  import"./index-9e6fdz2h.js";
33
32
  import"./index-4rhhvd1a.js";
34
33
  import"./index-a0d4fp6r.js";
35
34
  import"./index-zjygnfay.js";
36
35
  import"./index-bpmtbmy9.js";
36
+ import"./index-yzjaj53h.js";
37
37
  import"./index-zgwm4ryv.js";
38
38
  import"./index-a76rekgs.js";
39
39
  export {
@@ -14,11 +14,11 @@ import {
14
14
  shouldRunOnStartup,
15
15
  writeBackupArtifact,
16
16
  writeDoctorArtifact
17
- } from "./index-k1ntjzmf.js";
17
+ } from "./index-p04pa9c9.js";
18
18
  import"./index-cw912re7.js";
19
19
  import"./index-z6xqpmqg.js";
20
20
  import"./index-ry16d01s.js";
21
- import"./index-0e9jh9c7.js";
21
+ import"./index-nb924ar6.js";
22
22
  import"./index-a0d4fp6r.js";
23
23
  import"./index-zjygnfay.js";
24
24
  import"./index-bk5tah7q.js";
@@ -14,7 +14,7 @@ import {
14
14
  resolveWorktreeBaseDir,
15
15
  shortenWorktreePath,
16
16
  writeLaneProfileToDiskReal
17
- } from "./index-p7hdp3rp.js";
17
+ } from "./index-2rm5x9ps.js";
18
18
  import"./index-z6xqpmqg.js";
19
19
  import"./index-p612v1mv.js";
20
20
  import"./index-9e6fdz2h.js";
@@ -4,13 +4,13 @@ import {
4
4
  authorizeCuration,
5
5
  buildConfigFingerprintInput,
6
6
  readCohortConfigFingerprint
7
- } from "./index-ajknebrc.js";
7
+ } from "./index-c20gf089.js";
8
8
  import"./index-rtry5xyf.js";
9
- import"./index-6rx1rdaq.js";
9
+ import"./index-a7rw4g4s.js";
10
10
  import"./index-7qefgq4j.js";
11
- import"./index-jre6tm3v.js";
11
+ import"./index-edm41q4j.js";
12
12
  import"./index-gy0nyfbw.js";
13
- import"./index-5ebgzb5a.js";
13
+ import"./index-hwj25q9r.js";
14
14
  import"./index-7g4c7s5r.js";
15
15
  import"./index-bpmtbmy9.js";
16
16
  import"./index-zgwm4ryv.js";
@@ -4,7 +4,7 @@ import {
4
4
  getGlobalEventBus,
5
5
  getGroupCommitWriter,
6
6
  importLegacyJsonFiles
7
- } from "./index-dh5th4jn.js";
7
+ } from "./index-8hqkrd2j.js";
8
8
  import {
9
9
  readEffectiveSpecSync
10
10
  } from "./index-9ss2m4rs.js";
@@ -18,7 +18,7 @@ import {
18
18
  DURABILITY_CLASSES,
19
19
  getProjectDb,
20
20
  projectDbExists
21
- } from "./index-w6988bbc.js";
21
+ } from "./index-aftapk6j.js";
22
22
  import"./index-ry16d01s.js";
23
23
  import"./index-n4fzmqz8.js";
24
24
  import"./index-7qefgq4j.js";
@@ -14,68 +14,68 @@ import {
14
14
  runCuratorInit,
15
15
  runCuratorPhase,
16
16
  writeCuratorSummary
17
- } from "./index-hwz46jj7.js";
17
+ } from "./index-an89qzd9.js";
18
18
  import"./index-8d90gzaz.js";
19
- import"./index-f36hy1x4.js";
20
- import"./index-hdakb4n9.js";
21
- import"./index-k1ntjzmf.js";
22
- import"./index-5ythtd9t.js";
23
- import"./index-tqw8w2n5.js";
19
+ import"./index-hvk3zs62.js";
20
+ import"./index-9hy5q7gp.js";
21
+ import"./index-p04pa9c9.js";
22
+ import"./index-qkq56zyr.js";
23
+ import"./index-17yszqs5.js";
24
24
  import"./index-txdagbh7.js";
25
25
  import"./index-cw912re7.js";
26
- import"./index-6be5caj8.js";
27
- import"./index-n3pjcks8.js";
28
- import"./index-g8wdekzz.js";
26
+ import"./index-hrkamw9q.js";
27
+ import"./index-359djbj1.js";
28
+ import"./index-bw7r2b2m.js";
29
29
  import"./index-70ha9e09.js";
30
- import"./index-dh5th4jn.js";
30
+ import"./index-8hqkrd2j.js";
31
31
  import"./index-9ss2m4rs.js";
32
- import"./index-ptsqnxwd.js";
32
+ import"./index-czr3jcg6.js";
33
33
  import"./index-zsrtt42s.js";
34
- import"./index-7h94rfem.js";
34
+ import"./index-2dvk153d.js";
35
35
  import"./index-6chhqq2n.js";
36
36
  import"./index-8bdk7124.js";
37
37
  import"./index-b43rt5ph.js";
38
38
  import"./index-q7sjgr1y.js";
39
- import"./index-e6n7cemz.js";
40
- import"./index-p7hdp3rp.js";
41
- import"./index-afpkqsdb.js";
42
- import"./index-gn6ybsc4.js";
39
+ import"./index-8n62bphd.js";
40
+ import"./index-2rm5x9ps.js";
41
+ import"./index-52jfm5s0.js";
42
+ import"./index-jc9cxh90.js";
43
43
  import"./index-anxs69ad.js";
44
44
  import"./index-z6xqpmqg.js";
45
45
  import"./index-p612v1mv.js";
46
- import"./index-2k53pfnc.js";
47
- import"./index-ajknebrc.js";
46
+ import"./index-a5w71m8f.js";
47
+ import"./index-c20gf089.js";
48
48
  import"./index-rtry5xyf.js";
49
- import"./index-58be2gtd.js";
49
+ import"./index-apxaa755.js";
50
50
  import"./index-3qf1vxtb.js";
51
51
  import"./index-n832052r.js";
52
- import"./index-3xyjvx24.js";
53
- import"./index-y1zhpfk8.js";
54
- import"./index-xwbn7c8m.js";
55
- import"./index-556ja8an.js";
56
- import"./index-6m24v15v.js";
57
- import"./index-e45htt92.js";
58
- import"./index-w6988bbc.js";
52
+ import"./index-8m12y79g.js";
53
+ import"./index-30f4fe30.js";
54
+ import"./index-2v17wb75.js";
55
+ import"./index-79sr3fd1.js";
56
+ import"./index-jx9f4ke1.js";
57
+ import"./index-aftapk6j.js";
59
58
  import"./index-ry16d01s.js";
60
59
  import"./index-n4fzmqz8.js";
61
- import"./index-j2svfhzk.js";
62
- import"./index-c4ddtrqg.js";
60
+ import"./index-axf65x87.js";
61
+ import"./index-fywshabz.js";
63
62
  import"./index-ae75rja9.js";
64
- import"./index-6rx1rdaq.js";
63
+ import"./index-a7rw4g4s.js";
65
64
  import"./index-7qefgq4j.js";
66
- import"./index-jre6tm3v.js";
65
+ import"./index-edm41q4j.js";
67
66
  import"./index-gy0nyfbw.js";
68
- import"./index-5ebgzb5a.js";
67
+ import"./index-hwj25q9r.js";
69
68
  import"./index-7g4c7s5r.js";
70
- import"./index-zycp24b9.js";
69
+ import"./index-mg43w8p2.js";
71
70
  import"./index-9e6fdz2h.js";
72
71
  import"./index-4rhhvd1a.js";
73
- import"./index-0e9jh9c7.js";
72
+ import"./index-nb924ar6.js";
74
73
  import"./index-a0d4fp6r.js";
75
74
  import"./index-zjygnfay.js";
76
75
  import"./index-bk5tah7q.js";
77
76
  import"./index-bpmtbmy9.js";
78
- import"./index-4fwbbad3.js";
77
+ import"./index-q1r1cfww.js";
78
+ import"./index-yzjaj53h.js";
79
79
  import"./index-zgwm4ryv.js";
80
80
  import"./index-a76rekgs.js";
81
81
  export {
@@ -0,0 +1,70 @@
1
+ // @bun
2
+ import {
3
+ createCuratorLLMDelegate
4
+ } from "./index-an89qzd9.js";
5
+ import"./index-8d90gzaz.js";
6
+ import"./index-hvk3zs62.js";
7
+ import"./index-9hy5q7gp.js";
8
+ import"./index-p04pa9c9.js";
9
+ import"./index-qkq56zyr.js";
10
+ import"./index-17yszqs5.js";
11
+ import"./index-txdagbh7.js";
12
+ import"./index-cw912re7.js";
13
+ import"./index-hrkamw9q.js";
14
+ import"./index-359djbj1.js";
15
+ import"./index-bw7r2b2m.js";
16
+ import"./index-70ha9e09.js";
17
+ import"./index-8hqkrd2j.js";
18
+ import"./index-9ss2m4rs.js";
19
+ import"./index-czr3jcg6.js";
20
+ import"./index-zsrtt42s.js";
21
+ import"./index-2dvk153d.js";
22
+ import"./index-6chhqq2n.js";
23
+ import"./index-8bdk7124.js";
24
+ import"./index-b43rt5ph.js";
25
+ import"./index-q7sjgr1y.js";
26
+ import"./index-8n62bphd.js";
27
+ import"./index-2rm5x9ps.js";
28
+ import"./index-52jfm5s0.js";
29
+ import"./index-jc9cxh90.js";
30
+ import"./index-anxs69ad.js";
31
+ import"./index-z6xqpmqg.js";
32
+ import"./index-p612v1mv.js";
33
+ import"./index-a5w71m8f.js";
34
+ import"./index-c20gf089.js";
35
+ import"./index-rtry5xyf.js";
36
+ import"./index-apxaa755.js";
37
+ import"./index-3qf1vxtb.js";
38
+ import"./index-n832052r.js";
39
+ import"./index-8m12y79g.js";
40
+ import"./index-30f4fe30.js";
41
+ import"./index-2v17wb75.js";
42
+ import"./index-79sr3fd1.js";
43
+ import"./index-jx9f4ke1.js";
44
+ import"./index-aftapk6j.js";
45
+ import"./index-ry16d01s.js";
46
+ import"./index-n4fzmqz8.js";
47
+ import"./index-axf65x87.js";
48
+ import"./index-fywshabz.js";
49
+ import"./index-ae75rja9.js";
50
+ import"./index-a7rw4g4s.js";
51
+ import"./index-7qefgq4j.js";
52
+ import"./index-edm41q4j.js";
53
+ import"./index-gy0nyfbw.js";
54
+ import"./index-hwj25q9r.js";
55
+ import"./index-7g4c7s5r.js";
56
+ import"./index-mg43w8p2.js";
57
+ import"./index-9e6fdz2h.js";
58
+ import"./index-4rhhvd1a.js";
59
+ import"./index-nb924ar6.js";
60
+ import"./index-a0d4fp6r.js";
61
+ import"./index-zjygnfay.js";
62
+ import"./index-bk5tah7q.js";
63
+ import"./index-bpmtbmy9.js";
64
+ import"./index-q1r1cfww.js";
65
+ import"./index-yzjaj53h.js";
66
+ import"./index-zgwm4ryv.js";
67
+ import"./index-a76rekgs.js";
68
+ export {
69
+ createCuratorLLMDelegate
70
+ };
@@ -6,41 +6,41 @@ import {
6
6
  loadPlanJsonOnly,
7
7
  mergeDurableGateEntriesFromEvidence,
8
8
  readDurableGateEvidence
9
- } from "./index-5ythtd9t.js";
10
- import"./index-tqw8w2n5.js";
9
+ } from "./index-qkq56zyr.js";
10
+ import"./index-17yszqs5.js";
11
11
  import"./index-txdagbh7.js";
12
12
  import"./index-cw912re7.js";
13
13
  import"./index-9ss2m4rs.js";
14
14
  import"./index-zsrtt42s.js";
15
- import"./index-e6n7cemz.js";
16
- import"./index-p7hdp3rp.js";
15
+ import"./index-8n62bphd.js";
16
+ import"./index-2rm5x9ps.js";
17
17
  import"./index-anxs69ad.js";
18
18
  import"./index-z6xqpmqg.js";
19
19
  import"./index-p612v1mv.js";
20
20
  import"./index-3qf1vxtb.js";
21
21
  import"./index-n832052r.js";
22
- import"./index-y1zhpfk8.js";
23
- import"./index-xwbn7c8m.js";
24
- import"./index-556ja8an.js";
25
- import"./index-e45htt92.js";
26
- import"./index-w6988bbc.js";
22
+ import"./index-30f4fe30.js";
23
+ import"./index-2v17wb75.js";
24
+ import"./index-jx9f4ke1.js";
25
+ import"./index-aftapk6j.js";
27
26
  import"./index-ry16d01s.js";
28
27
  import"./index-n4fzmqz8.js";
29
- import"./index-j2svfhzk.js";
28
+ import"./index-axf65x87.js";
30
29
  import"./index-7qefgq4j.js";
31
- import"./index-jre6tm3v.js";
30
+ import"./index-edm41q4j.js";
32
31
  import"./index-gy0nyfbw.js";
33
- import"./index-5ebgzb5a.js";
32
+ import"./index-hwj25q9r.js";
34
33
  import"./index-7g4c7s5r.js";
35
- import"./index-zycp24b9.js";
34
+ import"./index-mg43w8p2.js";
36
35
  import"./index-9e6fdz2h.js";
37
36
  import"./index-4rhhvd1a.js";
38
- import"./index-0e9jh9c7.js";
37
+ import"./index-nb924ar6.js";
39
38
  import"./index-a0d4fp6r.js";
40
39
  import"./index-zjygnfay.js";
41
40
  import"./index-bk5tah7q.js";
42
41
  import"./index-bpmtbmy9.js";
43
- import"./index-4fwbbad3.js";
42
+ import"./index-q1r1cfww.js";
43
+ import"./index-yzjaj53h.js";
44
44
  import {
45
45
  log
46
46
  } from "./index-zgwm4ryv.js";
@@ -21,21 +21,21 @@ import {
21
21
  reduceTaskWorkflowSnapshot,
22
22
  transitionTaskWorkflowEvidence,
23
23
  withTaskEvidenceTransaction
24
- } from "./index-e6n7cemz.js";
25
- import"./index-p7hdp3rp.js";
24
+ } from "./index-8n62bphd.js";
25
+ import"./index-2rm5x9ps.js";
26
26
  import"./index-anxs69ad.js";
27
27
  import"./index-z6xqpmqg.js";
28
28
  import"./index-p612v1mv.js";
29
- import"./index-556ja8an.js";
30
- import"./index-jre6tm3v.js";
29
+ import"./index-edm41q4j.js";
31
30
  import"./index-gy0nyfbw.js";
32
- import"./index-5ebgzb5a.js";
31
+ import"./index-hwj25q9r.js";
33
32
  import"./index-7g4c7s5r.js";
34
33
  import"./index-9e6fdz2h.js";
35
34
  import"./index-4rhhvd1a.js";
36
35
  import"./index-a0d4fp6r.js";
37
36
  import"./index-zjygnfay.js";
38
37
  import"./index-bpmtbmy9.js";
38
+ import"./index-yzjaj53h.js";
39
39
  import"./index-zgwm4ryv.js";
40
40
  import"./index-a76rekgs.js";
41
41
  export {