@relayflows/sdk 2.0.34 → 2.0.36

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 (162) hide show
  1. package/dist/adapters/base.d.ts +16 -0
  2. package/dist/adapters/base.d.ts.map +1 -1
  3. package/dist/adapters/claude.d.ts.map +1 -1
  4. package/dist/adapters/claude.js +15 -0
  5. package/dist/adapters/claude.js.map +1 -1
  6. package/dist/adapters/codex.d.ts.map +1 -1
  7. package/dist/adapters/codex.js +4 -0
  8. package/dist/adapters/codex.js.map +1 -1
  9. package/dist/adapters/usage-limit.d.ts +2 -0
  10. package/dist/adapters/usage-limit.d.ts.map +1 -0
  11. package/dist/adapters/usage-limit.js +17 -0
  12. package/dist/adapters/usage-limit.js.map +1 -0
  13. package/dist/authored-activity.d.ts +17 -0
  14. package/dist/authored-activity.d.ts.map +1 -0
  15. package/dist/authored-activity.js +218 -0
  16. package/dist/authored-activity.js.map +1 -0
  17. package/dist/authored-child-run.d.ts +34 -0
  18. package/dist/authored-child-run.d.ts.map +1 -0
  19. package/dist/authored-child-run.js +128 -0
  20. package/dist/authored-child-run.js.map +1 -0
  21. package/dist/authored-dispatch.d.ts +24 -0
  22. package/dist/authored-dispatch.d.ts.map +1 -0
  23. package/dist/authored-dispatch.js +81 -0
  24. package/dist/authored-dispatch.js.map +1 -0
  25. package/dist/authored-flow-error.d.ts +32 -3
  26. package/dist/authored-flow-error.d.ts.map +1 -1
  27. package/dist/authored-flow-error.js +3 -1
  28. package/dist/authored-flow-error.js.map +1 -1
  29. package/dist/authored-flow-executor.d.ts +26 -1
  30. package/dist/authored-flow-executor.d.ts.map +1 -1
  31. package/dist/authored-flow-executor.js +122 -16
  32. package/dist/authored-flow-executor.js.map +1 -1
  33. package/dist/authored-flow-loader.d.ts.map +1 -1
  34. package/dist/authored-flow-loader.js +9 -0
  35. package/dist/authored-flow-loader.js.map +1 -1
  36. package/dist/authored-mcp.js +2 -2
  37. package/dist/authored-mcp.js.map +1 -1
  38. package/dist/authored-node-entry.js +4 -1
  39. package/dist/authored-node-entry.js.map +1 -1
  40. package/dist/authored-node-runner.d.ts.map +1 -1
  41. package/dist/authored-node-runner.js +40 -8
  42. package/dist/authored-node-runner.js.map +1 -1
  43. package/dist/authored-plugin-effect.js +2 -2
  44. package/dist/authored-plugin-effect.js.map +1 -1
  45. package/dist/authored-root.d.ts +10 -7
  46. package/dist/authored-root.d.ts.map +1 -1
  47. package/dist/authored-root.js +20 -0
  48. package/dist/authored-root.js.map +1 -1
  49. package/dist/authored-step-output.d.ts +24 -8
  50. package/dist/authored-step-output.d.ts.map +1 -1
  51. package/dist/authored-step-output.js +81 -15
  52. package/dist/authored-step-output.js.map +1 -1
  53. package/dist/authored-subscription-park.d.ts +5 -0
  54. package/dist/authored-subscription-park.d.ts.map +1 -0
  55. package/dist/authored-subscription-park.js +47 -0
  56. package/dist/authored-subscription-park.js.map +1 -0
  57. package/dist/authored-worker-step.d.ts +3 -1
  58. package/dist/authored-worker-step.d.ts.map +1 -1
  59. package/dist/authored-worker-step.js +25 -9
  60. package/dist/authored-worker-step.js.map +1 -1
  61. package/dist/cli/check-activities.d.ts +8 -0
  62. package/dist/cli/check-activities.d.ts.map +1 -0
  63. package/dist/cli/check-activities.js +155 -0
  64. package/dist/cli/check-activities.js.map +1 -0
  65. package/dist/cli/cli-probe.d.ts.map +1 -1
  66. package/dist/cli/cli-probe.js +14 -2
  67. package/dist/cli/cli-probe.js.map +1 -1
  68. package/dist/cli/direct-run.d.ts.map +1 -1
  69. package/dist/cli/direct-run.js +10 -2
  70. package/dist/cli/direct-run.js.map +1 -1
  71. package/dist/cli/run.d.ts +23 -5
  72. package/dist/cli/run.d.ts.map +1 -1
  73. package/dist/cli/run.js +32 -5
  74. package/dist/cli/run.js.map +1 -1
  75. package/dist/cli/subscription-report.d.ts +5 -0
  76. package/dist/cli/subscription-report.d.ts.map +1 -0
  77. package/dist/cli/subscription-report.js +48 -0
  78. package/dist/cli/subscription-report.js.map +1 -0
  79. package/dist/cli-adapter.d.ts +4 -2
  80. package/dist/cli-adapter.d.ts.map +1 -1
  81. package/dist/cli-adapter.js +4 -0
  82. package/dist/cli-adapter.js.map +1 -1
  83. package/dist/cli.d.ts +1 -1
  84. package/dist/cli.d.ts.map +1 -1
  85. package/dist/cli.js +16 -5
  86. package/dist/cli.js.map +1 -1
  87. package/dist/cloud-mirror-step.d.ts +2 -0
  88. package/dist/cloud-mirror-step.d.ts.map +1 -1
  89. package/dist/cloud-mirror-step.js +9 -1
  90. package/dist/cloud-mirror-step.js.map +1 -1
  91. package/dist/cloud-mirror.d.ts.map +1 -1
  92. package/dist/cloud-mirror.js +17 -2
  93. package/dist/cloud-mirror.js.map +1 -1
  94. package/dist/failure-kinds.d.ts +2 -2
  95. package/dist/failure-kinds.d.ts.map +1 -1
  96. package/dist/failure-kinds.js +2 -0
  97. package/dist/failure-kinds.js.map +1 -1
  98. package/dist/index.d.ts +1 -1
  99. package/dist/index.d.ts.map +1 -1
  100. package/dist/index.js.map +1 -1
  101. package/dist/journal-client.d.ts +17 -2
  102. package/dist/journal-client.d.ts.map +1 -1
  103. package/dist/journal-client.js +33 -2
  104. package/dist/journal-client.js.map +1 -1
  105. package/dist/journal-reader.d.ts.map +1 -1
  106. package/dist/journal-reader.js +2 -0
  107. package/dist/journal-reader.js.map +1 -1
  108. package/dist/local-agent.d.ts +4 -1
  109. package/dist/local-agent.d.ts.map +1 -1
  110. package/dist/local-agent.js +14 -4
  111. package/dist/local-agent.js.map +1 -1
  112. package/dist/preflight.d.ts +6 -0
  113. package/dist/preflight.d.ts.map +1 -1
  114. package/dist/preflight.js +36 -10
  115. package/dist/preflight.js.map +1 -1
  116. package/dist/protocol.d.ts +166 -1
  117. package/dist/protocol.d.ts.map +1 -1
  118. package/dist/step-settling.d.ts +11 -0
  119. package/dist/step-settling.d.ts.map +1 -0
  120. package/dist/step-settling.js +22 -0
  121. package/dist/step-settling.js.map +1 -0
  122. package/dist/worker-slots.d.ts +15 -0
  123. package/dist/worker-slots.d.ts.map +1 -1
  124. package/dist/worker-slots.js +40 -3
  125. package/dist/worker-slots.js.map +1 -1
  126. package/package.json +2 -2
  127. package/src/adapters/base.ts +19 -0
  128. package/src/adapters/claude.ts +15 -0
  129. package/src/adapters/codex.ts +6 -0
  130. package/src/adapters/usage-limit.ts +17 -0
  131. package/src/authored-activity.ts +251 -0
  132. package/src/authored-child-run.ts +138 -0
  133. package/src/authored-dispatch.ts +113 -0
  134. package/src/authored-flow-error.ts +36 -0
  135. package/src/authored-flow-executor.ts +166 -15
  136. package/src/authored-flow-loader.ts +12 -0
  137. package/src/authored-mcp.ts +2 -2
  138. package/src/authored-node-entry.ts +4 -1
  139. package/src/authored-node-runner.ts +41 -8
  140. package/src/authored-plugin-effect.ts +2 -2
  141. package/src/authored-root.ts +28 -4
  142. package/src/authored-step-output.ts +88 -15
  143. package/src/authored-subscription-park.ts +46 -0
  144. package/src/authored-worker-step.ts +24 -8
  145. package/src/cli/check-activities.ts +144 -0
  146. package/src/cli/cli-probe.ts +15 -3
  147. package/src/cli/direct-run.ts +9 -0
  148. package/src/cli/run.ts +56 -9
  149. package/src/cli/subscription-report.ts +51 -0
  150. package/src/cli-adapter.ts +8 -2
  151. package/src/cli.ts +16 -6
  152. package/src/cloud-mirror-step.ts +16 -2
  153. package/src/cloud-mirror.ts +15 -2
  154. package/src/failure-kinds.ts +2 -0
  155. package/src/index.ts +6 -0
  156. package/src/journal-client.ts +47 -3
  157. package/src/journal-reader.ts +2 -0
  158. package/src/local-agent.ts +17 -3
  159. package/src/preflight.ts +46 -10
  160. package/src/protocol.ts +129 -0
  161. package/src/step-settling.ts +19 -0
  162. package/src/worker-slots.ts +63 -4
@@ -12,6 +12,7 @@ import { withWorkerLease } from './worker-lease.js';
12
12
  import { AuthoredFlowExecutionError, AuthoredHumanParked } from './authored-flow-error.js';
13
13
  import { readOpenHumanWaits } from './authored-human.js';
14
14
  import { isSurfaceCompletionReason } from './authored-step-output.js';
15
+ import { readSubscriptionPark } from './authored-subscription-park.js';
15
16
  /**
16
17
  * Taken from the projection module rather than spelled twice: `flows status`
17
18
  * has to recognise the same root this file writes, and it must not import the
@@ -56,6 +57,7 @@ export async function executeDurableAuthoredFlow(loaded, journal, input, options
56
57
  workspace: [], streams: [{ stream, read_offset: 0 }],
57
58
  });
58
59
  const outcome = await journal.runStart(spec, undefined, admissionKey);
60
+ options.onAdmitted?.(outcome.run_id);
59
61
  if (outcome.status === 'completed') {
60
62
  dispatchWait.cancel();
61
63
  return await completedRootResult(journal, outcome.run_id);
@@ -69,6 +71,10 @@ export async function executeDurableAuthoredFlow(loaded, journal, input, options
69
71
  // redelivers only when the former worker connection is gone.
70
72
  const resumed = await journal.runResume(outcome.run_id);
71
73
  await assertNoOpenHumanWait(journal, resumed);
74
+ const parked = await readSubscriptionPark(journal, outcome.run_id);
75
+ if (parked !== undefined)
76
+ return { state: 'suspended', name: metadata.flowName,
77
+ suspension: parked, journalSteps: [], rootRunId: outcome.run_id };
72
78
  const dispatch = await dispatchWait.promise;
73
79
  return await driveRoot(loaded, metadata, journal, peer, dispatch, options);
74
80
  }
@@ -106,6 +112,10 @@ export async function resumeDurableAuthoredFlow(rootRunId, journal, options) {
106
112
  assertRootCanDispatch(outcome);
107
113
  await assertNoOpenHumanWait(journal, outcome);
108
114
  options.lifecycle?.onRunStarted?.({ runId: rootRunId, flow: metadata.flowName, resumed: true });
115
+ const parked = await readSubscriptionPark(journal, rootRunId);
116
+ if (parked !== undefined)
117
+ return { state: 'suspended', name: metadata.flowName,
118
+ suspension: parked, journalSteps: [], rootRunId };
109
119
  const dispatch = await dispatchWait.promise;
110
120
  return await driveRoot(loaded, metadata, journal, peer, dispatch, options);
111
121
  }
@@ -165,6 +175,7 @@ async function driveRoot(loaded, metadata, journal, peer, dispatch, options) {
165
175
  ...(options.workerCapacity === undefined ? {} : { workerCapacity: options.workerCapacity }),
166
176
  rootRunId: dispatch.run_id,
167
177
  extensions: loaded.extensions,
178
+ flowGraph: loaded.graph,
168
179
  ...options.lifecycle,
169
180
  signal: callerSignal === undefined
170
181
  ? rootSignal
@@ -181,6 +192,15 @@ async function driveRoot(loaded, metadata, journal, peer, dispatch, options) {
181
192
  return Object.freeze({ ...result, rootRunId: dispatch.run_id });
182
193
  }
183
194
  catch (error) {
195
+ if (error instanceof AuthoredFlowExecutionError
196
+ && error.code === 'subscription_suspended'
197
+ && error.suspension !== undefined) {
198
+ await peer.subscriptionPark({ run_id: dispatch.run_id, step_id: dispatch.step_id,
199
+ attempt: dispatch.attempt, idempotency_key: dispatch.idempotency_key,
200
+ subscription_id: error.suspension.subscriptionId, phase: error.suspension.kind });
201
+ return Object.freeze({ state: 'suspended', name: metadata.flowName,
202
+ suspension: error.suspension, journalSteps: Object.freeze([]), rootRunId: dispatch.run_id });
203
+ }
184
204
  if (error instanceof AuthoredHumanParked) {
185
205
  // Not a failure: the body reached a question nobody has answered. Park
186
206
  // THIS attempt on the kernel's `wait.human` under the body's own wait
@@ -1 +1 @@
1
- {"version":3,"file":"authored-root.js","sourceRoot":"","sources":["../src/authored-root.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authored-root.js","sourceRoot":"","sources":["../src/authored-root.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { type FlowCompletionReason } from '@relayflows/surface';
2
2
  import type { JournalClient } from './journal-client.js';
3
- import type { CompletionReason as ProtocolCompletionReason, RunCompletionReason as ProtocolRunCompletionReason, RunOutcome } from './protocol.js';
3
+ import type { CompletionReason as ProtocolCompletionReason, RunCompletionReason as ProtocolRunCompletionReason, RunOutcome, RunStatus } from './protocol.js';
4
4
  import type { AuthoredFlowJournalStep } from './authored-flow-executor.js';
5
5
  import { type AuthoredStepEdges } from './authored-step-index.js';
6
6
  /**
@@ -15,6 +15,8 @@ export interface AuthoredStepContext {
15
15
  readonly dataDir?: string;
16
16
  /** The step's label and causal predecessors, carried on every record about it. */
17
17
  readonly stepEdges?: (step: string) => AuthoredStepEdges | undefined;
18
+ /** Cancels the wait for an adopted child run that is not yet terminal. */
19
+ readonly signal?: AbortSignal;
18
20
  }
19
21
  /**
20
22
  * Shared by every `f.*` verb that lowers to its own kernel run: find the
@@ -22,12 +24,26 @@ export interface AuthoredStepContext {
22
24
  * clean success before handing the raw `output` back for verb-specific
23
25
  * extraction (a plain string for `f.run`, an `AgentResult` for `f.agent`).
24
26
  *
25
- * Callers are responsible for having already waited for the run to reach a
26
- * terminal state — `f.run`'s caller relies on `runStart`'s own immediate
27
- * response (the kernel drives a deterministic step to completion inline, no
28
- * race); `f.agent`'s caller relies on `classifyOutcome` (cli/run.ts) having
29
- * already polled to one. Given that, a single read from the start of this
30
- * run's small journal is enough, and no polling happens here.
27
+ * The run must be terminal before it is judged. Usually it already is —
28
+ * `f.run`'s `runStart` drives a deterministic step to completion inline, and
29
+ * `f.agent`'s caller has polled one with `classifyOutcome` (cli/run.ts). But a
30
+ * child ADOPTED through its admission key on resume is returned as it stands,
31
+ * possibly mid-attempt or mid-backoff on the request that first started it,
32
+ * so unless the step has already settled as a failure, a run that neither
33
+ * the caller's own kernel answer (`knownStatus`) nor a journaled
34
+ * `run.completed` shows terminal is waited out first (`waitForTerminalChildRun`, bounded by
35
+ * the child's own lease and backoff). A success is never read off a child
36
+ * whose run is not terminal. A child that cannot settle — parked on a worker
37
+ * nobody attached — reports its latest attempt that ran to a failed result,
38
+ * or is refused.
39
+ *
40
+ * The step's verdict is its TERMINAL completion. A retried attempt journals a
41
+ * `step.completed` too — `disposition: retry` (crash recovery's `crashed`, a
42
+ * `worker_error`, a failed gate with iterations left) — and it precedes the
43
+ * attempt that settled the step. Taking the first `step.completed` read that
44
+ * retried attempt's failure as the step's, and failed a child that completed
45
+ * `success`. Only the last completion whose disposition is not `retry` or
46
+ * `park` is read, recorded and indexed.
31
47
  *
32
48
  * What is NOT delegated to the caller is the run's verdict. A child spec has
33
49
  * more than one step whenever the author declared a `.gate()`, and that gate
@@ -45,7 +61,7 @@ export interface AuthoredStepContext {
45
61
  * `f.agent`/`f.llm` already reach through `classifyOutcome`, so both step
46
62
  * families report one grammar instead of two divergent ones.
47
63
  */
48
- export declare function readCompletedStepOutput(journal: JournalClient, runId: string, stepId: string, journalSteps: AuthoredFlowJournalStep[], context?: AuthoredStepContext): Promise<unknown>;
64
+ export declare function readCompletedStepOutput(journal: JournalClient, runId: string, stepId: string, journalSteps: AuthoredFlowJournalStep[], context?: AuthoredStepContext, knownStatus?: RunStatus | 'suspended'): Promise<unknown>;
49
65
  export declare function readSuccessfulOutput(journal: JournalClient, outcome: RunOutcome, stepId: string, journalSteps: AuthoredFlowJournalStep[], context?: AuthoredStepContext): Promise<string>;
50
66
  /** What `f.run` resolves to under `onNonZero: 'record'` (surface `RunResult`). */
51
67
  export interface RecordedRunOutcome {
@@ -1 +1 @@
1
- {"version":3,"file":"authored-step-output.d.ts","sourceRoot":"","sources":["../src/authored-step-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAErI,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,IAAI,wBAAwB,EAAE,mBAAmB,IAAI,2BAA2B,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAClJ,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAG3E,OAAO,EAAmC,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAEnG;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,kFAAkF;IAClF,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,iBAAiB,GAAG,SAAS,CAAC;CACtE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,uBAAuB,EAAE,EACvC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,OAAO,CAAC,CA6BlB;AAsCD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,uBAAuB,EAAE,EACvC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,kFAAkF;AAClF,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,uBAAuB,EAAE,EACvC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,kBAAkB,CAAC,CAkB7B;AAiDD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,wBAAwB,CAG3F;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,2BAA2B,CAGjG;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,oBAAoB,CAG3F"}
1
+ {"version":3,"file":"authored-step-output.d.ts","sourceRoot":"","sources":["../src/authored-step-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAErI,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,IAAI,wBAAwB,EAAE,mBAAmB,IAAI,2BAA2B,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC7J,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAG3E,OAAO,EAAmC,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAInG;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,kFAAkF;IAClF,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,iBAAiB,GAAG,SAAS,CAAC;IACrE,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,uBAAuB,EAAE,EACvC,OAAO,GAAE,mBAAwB,EAGjC,WAAW,CAAC,EAAE,SAAS,GAAG,WAAW,GACpC,OAAO,CAAC,OAAO,CAAC,CAyElB;AAsCD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,uBAAuB,EAAE,EACvC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,kFAAkF;AAClF,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,uBAAuB,EAAE,EACvC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,kBAAkB,CAAC,CAkB7B;AAyDD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,wBAAwB,CAG3F;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,2BAA2B,CAGjG;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,oBAAoB,CAG3F"}
@@ -2,18 +2,34 @@ import { COMPLETION_REASONS, RUN_COMPLETION_REASONS, FLOW_COMPLETION_REASONS } f
2
2
  import { AuthoredFlowExecutionError } from './authored-flow-error.js';
3
3
  import { inspectionHint, renderInspection, renderStepEvidence, stepFailureDetails } from './cli/step-failure.js';
4
4
  import { alsoRecord, recordAuthoredChild } from './authored-step-index.js';
5
+ import { readChildJournal, waitForTerminalChildRun } from './authored-child-run.js';
6
+ import { settlingCompletion } from './step-settling.js';
5
7
  /**
6
8
  * Shared by every `f.*` verb that lowers to its own kernel run: find the
7
9
  * operation's `step.completed` entry, record it, and refuse anything but a
8
10
  * clean success before handing the raw `output` back for verb-specific
9
11
  * extraction (a plain string for `f.run`, an `AgentResult` for `f.agent`).
10
12
  *
11
- * Callers are responsible for having already waited for the run to reach a
12
- * terminal state — `f.run`'s caller relies on `runStart`'s own immediate
13
- * response (the kernel drives a deterministic step to completion inline, no
14
- * race); `f.agent`'s caller relies on `classifyOutcome` (cli/run.ts) having
15
- * already polled to one. Given that, a single read from the start of this
16
- * run's small journal is enough, and no polling happens here.
13
+ * The run must be terminal before it is judged. Usually it already is —
14
+ * `f.run`'s `runStart` drives a deterministic step to completion inline, and
15
+ * `f.agent`'s caller has polled one with `classifyOutcome` (cli/run.ts). But a
16
+ * child ADOPTED through its admission key on resume is returned as it stands,
17
+ * possibly mid-attempt or mid-backoff on the request that first started it,
18
+ * so unless the step has already settled as a failure, a run that neither
19
+ * the caller's own kernel answer (`knownStatus`) nor a journaled
20
+ * `run.completed` shows terminal is waited out first (`waitForTerminalChildRun`, bounded by
21
+ * the child's own lease and backoff). A success is never read off a child
22
+ * whose run is not terminal. A child that cannot settle — parked on a worker
23
+ * nobody attached — reports its latest attempt that ran to a failed result,
24
+ * or is refused.
25
+ *
26
+ * The step's verdict is its TERMINAL completion. A retried attempt journals a
27
+ * `step.completed` too — `disposition: retry` (crash recovery's `crashed`, a
28
+ * `worker_error`, a failed gate with iterations left) — and it precedes the
29
+ * attempt that settled the step. Taking the first `step.completed` read that
30
+ * retried attempt's failure as the step's, and failed a child that completed
31
+ * `success`. Only the last completion whose disposition is not `retry` or
32
+ * `park` is read, recorded and indexed.
17
33
  *
18
34
  * What is NOT delegated to the caller is the run's verdict. A child spec has
19
35
  * more than one step whenever the author declared a `.gate()`, and that gate
@@ -31,14 +47,60 @@ import { alsoRecord, recordAuthoredChild } from './authored-step-index.js';
31
47
  * `f.agent`/`f.llm` already reach through `classifyOutcome`, so both step
32
48
  * families report one grammar instead of two divergent ones.
33
49
  */
34
- export async function readCompletedStepOutput(journal, runId, stepId, journalSteps, context = {}) {
35
- const entries = (await journal.journalRead(runId, 1)).entries;
36
- const completed = entries.find((entry) => isStepCompleted(entry, stepId));
37
- if (!isStepCompleted(completed, stepId)) {
38
- throw protocolViolation(runId, `journal has no step.completed for "${stepId}"`);
50
+ export async function readCompletedStepOutput(journal, runId, stepId, journalSteps, context = {},
51
+ // `suspended` (an Event Await boundary, `RunReport.status`) is not terminal:
52
+ // it is judged exactly like a run still in flight.
53
+ knownStatus) {
54
+ let entries = await readChildJournal(journal, runId);
55
+ let completed = terminalCompletion(entries, stepId);
56
+ // A success is never accepted before the child RUN is terminal: a declared
57
+ // gate lowers to a dependent step (`lowerNamedGates`) that may not even have
58
+ // started when the producer's success is journaled, and the run's verdict,
59
+ // not the producer's, is the operation's. Only a settled FAILURE is final
60
+ // on its own — the step has no attempt left.
61
+ // `knownStatus` is the kernel's own answer the caller already holds (the
62
+ // `run.start` receipt, or the outcome `classifyOutcome` polled to): a
63
+ // terminal one is as authoritative as a journaled `run.completed`.
64
+ const settledFailure = completed !== undefined && completed.payload.completionReason !== 'success';
65
+ const terminal = knownStatus === 'completed' || knownStatus === 'failed'
66
+ || entries.some(entry => runCompletionReason(entry) !== undefined);
67
+ if (!terminal && !settledFailure) {
68
+ const status = await waitForTerminalChildRun(journal, runId, context.signal);
69
+ entries = await readChildJournal(journal, runId);
70
+ completed = terminalCompletion(entries, stepId);
71
+ if (status !== 'completed' && status !== 'failed') {
72
+ if (completed?.payload.completionReason === 'success') {
73
+ throw protocolViolation(runId, `child run for step "${stepId}" is not terminal (status: ${status}); its verdict is still pending`);
74
+ }
75
+ if (completed === undefined) {
76
+ // Nothing will settle the step from here: the child is parked on a
77
+ // worker the caller did not keep attached (a helper drives exactly
78
+ // one attempt, and the retry dispatched after it dies with its
79
+ // connection). The latest attempt that ran to a result — not one the
80
+ // kernel recorded as dead (`completed_by: kernel`,
81
+ // machine/recovery.rs) — is then why the step stands where it does,
82
+ // and is reported as that: never as a success, never silently.
83
+ const attempts = entries.filter((entry) => isStepCompleted(entry, stepId));
84
+ const latest = attempts.filter(entry => entry.payload.completed_by !== 'kernel').at(-1) ?? attempts.at(-1);
85
+ if (latest === undefined || latest.payload.completionReason === 'success') {
86
+ throw protocolViolation(runId, `child run for step "${stepId}" is not terminal (status: ${status})`);
87
+ }
88
+ completed = latest;
89
+ }
90
+ }
39
91
  }
40
- const reason = completed.payload.completionReason;
92
+ const runReason = entries.map(runCompletionReason).find((value) => value !== undefined);
41
93
  const edges = context.stepEdges?.(stepId);
94
+ if (completed === undefined) {
95
+ // Canceled or out of budget while the step was between attempts: the run
96
+ // settled with no terminal completion for the step. That is the run's
97
+ // failure to report, not a malformed journal.
98
+ if (runReason !== undefined && runReason !== 'success') {
99
+ throw await stepFailure(journal, runId, stepId, runReason, context, edges, `journal run for step "${stepId}" completed with ${runReason}`);
100
+ }
101
+ throw protocolViolation(runId, `journal has no terminal step.completed for "${stepId}"`);
102
+ }
103
+ const reason = completed.payload.completionReason;
42
104
  journalSteps.push(Object.freeze({ id: stepId, runId, completionReason: reason, ...edges }));
43
105
  if (reason !== 'success') {
44
106
  throw await stepFailure(journal, runId, stepId, reason, context, edges, `journal step "${stepId}" completed with ${reason}`);
@@ -49,7 +111,6 @@ export async function readCompletedStepOutput(journal, runId, stepId, journalSte
49
111
  // verdict. Reading only the producer's entry let a failed gate resolve as
50
112
  // though the command had passed — the `|| true` invisibility this module's
51
113
  // recording policy exists to remove, reappearing one layer up.
52
- const runReason = entries.map(runCompletionReason).find((value) => value !== undefined);
53
114
  if (runReason !== undefined && runReason !== 'success') {
54
115
  throw await stepFailure(journal, runId, stepId, runReason, context, edges, `journal run for step "${stepId}" completed with ${runReason}`);
55
116
  }
@@ -88,7 +149,7 @@ async function stepFailure(journal, runId, stepId, reason, context, edges, heade
88
149
  return new AuthoredFlowExecutionError('step_failed', message, reason, runId, { ...details, ...where });
89
150
  }
90
151
  export async function readSuccessfulOutput(journal, outcome, stepId, journalSteps, context = {}) {
91
- const output = await readCompletedStepOutput(journal, outcome.run_id, stepId, journalSteps, context)
152
+ const output = await readCompletedStepOutput(journal, outcome.run_id, stepId, journalSteps, context, outcome.status)
92
153
  .catch(relabelCommandTimeout(stepId));
93
154
  if (!isRecord(output) || typeof output['stdout_tail'] !== 'string') {
94
155
  throw protocolViolation(outcome.run_id, `step "${stepId}" has no string stdout_tail`);
@@ -108,7 +169,7 @@ export async function readSuccessfulOutput(journal, outcome, stepId, journalStep
108
169
  * reach an author's `if (!result.ok)` as a real verdict.
109
170
  */
110
171
  export async function readRecordedOutcome(journal, outcome, stepId, journalSteps, context = {}) {
111
- const envelope = await readCompletedStepOutput(journal, outcome.run_id, stepId, journalSteps, context)
172
+ const envelope = await readCompletedStepOutput(journal, outcome.run_id, stepId, journalSteps, context, outcome.status)
112
173
  .catch(relabelCommandTimeout(stepId));
113
174
  const exitCode = isRecord(envelope) ? envelope['exit_code'] : undefined;
114
175
  if (!isRecord(envelope) || typeof envelope['stdout_tail'] !== 'string'
@@ -136,6 +197,11 @@ function relabelCommandTimeout(stepId) {
136
197
  throw error;
137
198
  };
138
199
  }
200
+ /** The step's LAST settling completion, when it is well formed. */
201
+ function terminalCompletion(entries, stepId) {
202
+ const settling = settlingCompletion(entries, stepId);
203
+ return isStepCompleted(settling, stepId) ? settling : undefined;
204
+ }
139
205
  function isStepCompleted(value, stepId) {
140
206
  if (!isRecord(value) || value['entry_type'] !== 'step.completed' || value['step_id'] !== stepId) {
141
207
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"authored-step-output.js","sourceRoot":"","sources":["../src/authored-step-output.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authored-step-output.js","sourceRoot":"","sources":["../src/authored-step-output.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { AuthoredFlowSuspension } from './authored-flow-error.js';
2
+ import type { JournalClient } from './journal-client.js';
3
+ /** Recover the handoff report without starting a worker on a still-open wait. */
4
+ export declare function readSubscriptionPark(journal: JournalClient, runId: string): Promise<AuthoredFlowSuspension | undefined>;
5
+ //# sourceMappingURL=authored-subscription-park.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authored-subscription-park.d.ts","sourceRoot":"","sources":["../src/authored-subscription-park.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,iFAAiF;AACjF,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GACpC,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,CAuC7C"}
@@ -0,0 +1,47 @@
1
+ /** Recover the handoff report without starting a worker on a still-open wait. */
2
+ export async function readSubscriptionPark(journal, runId) {
3
+ const open = new Map();
4
+ const prepared = new Map();
5
+ let from = 1;
6
+ for (;;) {
7
+ const { entries } = await journal.journalRead(runId, from, 500);
8
+ for (const raw of entries) {
9
+ const entry = raw;
10
+ from = entry.seq + 1;
11
+ const p = entry.payload;
12
+ if (entry.entry_type === 'subscription.prepared')
13
+ prepared.set(String(p['subscription_id']), p);
14
+ if (entry.entry_type === 'wait.event' && entry.step_id === 'authored-root'
15
+ && typeof p['event_key'] === 'string' && p['event_key'].startsWith('subscription.park:')) {
16
+ const park = JSON.parse(p['event_key'].slice('subscription.park:'.length));
17
+ if (typeof park['subscription_id'] !== 'string'
18
+ || (park['phase'] !== 'activation' && park['phase'] !== 'event_wait')) {
19
+ throw new Error('malformed durable subscription park');
20
+ }
21
+ open.set(String(p['wait_id']), { subscription_id: park['subscription_id'], phase: park['phase'] });
22
+ }
23
+ if (entry.entry_type === 'wait.completed')
24
+ open.delete(String(p['wait_id']));
25
+ }
26
+ if (entries.length < 500)
27
+ break;
28
+ }
29
+ const park = [...open.values()].at(-1);
30
+ if (park === undefined)
31
+ return undefined;
32
+ const p = prepared.get(park.subscription_id);
33
+ if (p === undefined || typeof p['stream'] !== 'string' || typeof p['deadline_at_ms'] !== 'number') {
34
+ throw new Error('subscription park has no prepared boundary');
35
+ }
36
+ const common = { subscriptionId: park.subscription_id, stream: p['stream'], deadlineAtMs: p['deadline_at_ms'] };
37
+ if (park.phase === 'event_wait')
38
+ return { kind: 'event_wait', ...common };
39
+ if (!Array.isArray(p['event_types']) || !p['event_types'].every(v => typeof v === 'string')
40
+ || typeof p['settle_ms'] !== 'number' || typeof p['idle_ms'] !== 'number' || typeof p['include_self'] !== 'boolean') {
41
+ throw new Error('subscription park has malformed prepared facts');
42
+ }
43
+ return { kind: 'activation', ...common, eventTypes: p['event_types'], settleMs: p['settle_ms'],
44
+ idleMs: p['idle_ms'], includeSelf: p['include_self'],
45
+ ...(p['pattern'] === undefined || p['pattern'] === null ? {} : { pattern: p['pattern'] }) };
46
+ }
47
+ //# sourceMappingURL=authored-subscription-park.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authored-subscription-park.js","sourceRoot":"","sources":["../src/authored-subscription-park.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,12 @@ import { type RunLifecycleOptions } from './cli/run.js';
4
4
  import type { JournalClient } from './journal-client.js';
5
5
  import { type AuthoredStepContext, type RecordedRunOutcome } from './authored-step-output.js';
6
6
  import type { AuthoredFlowJournalStep } from './authored-flow-executor.js';
7
+ import { type AuthoredWorkerSlots } from './worker-slots.js';
7
8
  /** Agent and LLM calls share the exact declarative preflight and lease wait. */
8
9
  export declare function authoredWorkerRunner(definition: {
9
10
  name: string;
10
- }, journal: JournalClient, flowPath: string, journalSteps: AuthoredFlowJournalStep[], waitOptions: RunLifecycleOptions, localAgentStream?: string, budget?: AuthoredBudget, headerBudget?: unknown, rootRunId?: string, workerCapacity?: number, stepEdges?: AuthoredStepContext['stepEdges']): {
11
+ }, journal: JournalClient, flowPath: string, journalSteps: AuthoredFlowJournalStep[], waitOptions: RunLifecycleOptions, localAgentStream?: string, budget?: AuthoredBudget, headerBudget?: unknown, rootRunId?: string, workerCapacity?: number, stepEdges?: AuthoredStepContext['stepEdges'], sharedSlots?: AuthoredWorkerSlots): {
12
+ slots: AuthoredWorkerSlots | undefined;
11
13
  /** Refuse every agent/LLM call still waiting for a worker slot (body teardown). */
12
14
  stop(reason: unknown): void;
13
15
  agent(id: string, options: AgentOptions, verification?: NamedGate): Promise<AgentResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"authored-worker-step.d.ts","sourceRoot":"","sources":["../src/authored-worker-step.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAG5F,OAAO,EAAmB,KAAK,mBAAmB,EAAkB,MAAM,cAAc,CAAC;AAIzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAiG,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC7L,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAS3E,gFAAgF;AAChF,wBAAgB,oBAAoB,CAClC,UAAU,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EACtE,YAAY,EAAE,uBAAuB,EAAE,EAAE,WAAW,EAAE,mBAAmB,EACzE,gBAAgB,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,OAAO,EAC1E,SAAS,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC;IAmHvF,mFAAmF;iBACtE,OAAO,GAAG,IAAI;cAIX,MAAM,WAAW,YAAY,iBAAiB,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;YAqFhF,MAAM,UAAU,MAAM,YAAY,UAAU,iBAAiB,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;EAmB1G;AAED;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,cAAc,EACrG,OAAO,GAAE,mBAAwB;SAgCX,MAAM,WAAW,MAAM,gCAA8B,MAAM,iBAAiB,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;kBAInG,MAAM,WAAW,MAAM,YAAY,MAAM,iBAAiB,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC;EAI5H"}
1
+ {"version":3,"file":"authored-worker-step.d.ts","sourceRoot":"","sources":["../src/authored-worker-step.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAG5F,OAAO,EAAmB,KAAK,mBAAmB,EAAkB,MAAM,cAAc,CAAC;AAIzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAiG,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC7L,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAK3E,OAAO,EAAuB,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAIlF,gFAAgF;AAChF,wBAAgB,oBAAoB,CAClC,UAAU,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EACtE,YAAY,EAAE,uBAAuB,EAAE,EAAE,WAAW,EAAE,mBAAmB,EACzE,gBAAgB,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,OAAO,EAC1E,SAAS,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzF,WAAW,CAAC,EAAE,mBAAmB;;IA6H/B,mFAAmF;iBACtE,OAAO,GAAG,IAAI;cASX,MAAM,WAAW,YAAY,iBAAiB,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC;YAqFhF,MAAM,UAAU,MAAM,YAAY,UAAU,iBAAiB,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;EAmB1G;AAED;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,cAAc,EACrG,OAAO,GAAE,mBAAwB;SAgCX,MAAM,WAAW,MAAM,gCAA8B,MAAM,iBAAiB,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;kBAInG,MAAM,WAAW,MAAM,YAAY,MAAM,iBAAiB,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC;EAI5H"}
@@ -10,19 +10,24 @@ import { isSurfaceCompletionReason, readCompletedStepOutput, readRecordedOutcome
10
10
  import { snapshotJsonValue } from './json-value.js';
11
11
  import { authoredChildAdmissionKey } from './authored-admission.js';
12
12
  import { alsoRecord, recordAuthoredChild } from './authored-step-index.js';
13
- import { WorkerSlots } from './worker-slots.js';
13
+ import { authoredWorkerSlots } from './worker-slots.js';
14
14
  const WORKSPACE_PERMISSION_ANNOTATION = /:\s*(readonly|readwrite)\s*$/i;
15
15
  /** Agent and LLM calls share the exact declarative preflight and lease wait. */
16
- export function authoredWorkerRunner(definition, journal, flowPath, journalSteps, waitOptions, localAgentStream, budget, headerBudget, rootRunId, workerCapacity, stepEdges) {
16
+ export function authoredWorkerRunner(definition, journal, flowPath, journalSteps, waitOptions, localAgentStream, budget, headerBudget, rootRunId, workerCapacity, stepEdges, sharedSlots) {
17
17
  // Sized to the attached local workers, so concurrent calls wait here for a
18
18
  // slot instead of being admitted and parked for want of a free worker.
19
- const slots = workerCapacity === undefined ? undefined
20
- : { agent: new WorkerSlots(workerCapacity), llm: new WorkerSlots(workerCapacity) };
19
+ const ownsSlots = sharedSlots === undefined;
20
+ const slots = sharedSlots ?? (workerCapacity === undefined ? undefined : authoredWorkerSlots(workerCapacity));
21
+ const slotScopes = slots === undefined ? undefined : {
22
+ agent: slots.agent.scope(),
23
+ llm: slots.llm.scope(),
24
+ };
21
25
  const check = authoredPreflight(flowPath);
22
26
  const context = {
23
27
  ...(rootRunId === undefined ? {} : { rootRunId }),
24
28
  ...(waitOptions.dataDir === undefined ? {} : { dataDir: waitOptions.dataDir }),
25
29
  ...(stepEdges === undefined ? {} : { stepEdges }),
30
+ ...(waitOptions.signal === undefined ? {} : { signal: waitOptions.signal }),
26
31
  };
27
32
  async function run(step) {
28
33
  const id = step.id;
@@ -35,7 +40,11 @@ export function authoredWorkerRunner(definition, journal, flowPath, journalSteps
35
40
  const { report, flow: resolved } = await check(authoring);
36
41
  if (!report.ok || resolved === undefined) {
37
42
  const refusal = report.diagnostics.find((diagnostic) => diagnostic.severity === 'refusal');
38
- throw new AuthoredFlowExecutionError(refusal?.kind === 'budget_syntax_invalid' ? refusal.kind
43
+ // Environment refusals keep their own kind: folding a usage limit or an
44
+ // outdated CLI into `*_cli_unresolved` reported them as `invalid_spec`,
45
+ // telling the author to fix a flow that was never wrong.
46
+ throw new AuthoredFlowExecutionError(refusal?.kind === 'budget_syntax_invalid' || refusal?.kind === 'cli_outdated'
47
+ || refusal?.kind === 'provider_usage_limited' ? refusal.kind
39
48
  : step.type === 'llm' ? 'llm_cli_unresolved' : 'agent_cli_unresolved', refusal?.message
40
49
  ?? `flow "${definition.name}" step "${id}": no CLI could be resolved for f.${step.type} `
41
50
  + `(searched for flows.json from "${flowPath}")`);
@@ -101,19 +110,26 @@ export function authoredWorkerRunner(definition, journal, flowPath, journalSteps
101
110
  }
102
111
  throw new AuthoredFlowExecutionError('step_failed', message, isSurfaceCompletionReason(reason) ? reason : undefined, outcome.run_id, details);
103
112
  }
104
- return readCompletedStepOutput(journal, outcome.run_id, id, journalSteps, context);
113
+ return readCompletedStepOutput(journal, outcome.run_id, id, journalSteps, context, execution.report.status);
105
114
  };
106
115
  const admissionKey = authoredChildAdmissionKey(rootRunId, id);
107
116
  const admit = async () => budget === undefined
108
117
  ? consume(await journal.runStart(spec, undefined, admissionKey))
109
118
  : budget.execute(journal, spec, consume, admissionKey);
110
- return slots === undefined ? admit() : slots[step.type === 'llm' ? 'llm' : 'agent'].run(admit);
119
+ return slotScopes === undefined ? admit() : slotScopes[step.type === 'llm' ? 'llm' : 'agent'].run(admit);
111
120
  }
112
121
  return {
122
+ slots,
113
123
  /** Refuse every agent/LLM call still waiting for a worker slot (body teardown). */
114
124
  stop(reason) {
115
- slots?.agent.close(reason);
116
- slots?.llm.close(reason);
125
+ if (ownsSlots) {
126
+ slots?.agent.close(reason);
127
+ slots?.llm.close(reason);
128
+ }
129
+ else {
130
+ slotScopes?.agent.close(reason);
131
+ slotScopes?.llm.close(reason);
132
+ }
117
133
  },
118
134
  async agent(id, options, verification) {
119
135
  if (options.workspace !== undefined && localAgentStream !== undefined) {