@wjarka/cezarion 0.14.8 → 0.14.9-dev.1004

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 (274) hide show
  1. package/README.md +129 -2
  2. package/dist/application-update/bin-recovery.d.ts +5 -0
  3. package/dist/application-update/bin-recovery.js +96 -0
  4. package/dist/application-update/bin-recovery.js.map +1 -0
  5. package/dist/application-update/discovery.d.ts +22 -0
  6. package/dist/application-update/discovery.js +91 -0
  7. package/dist/application-update/discovery.js.map +1 -0
  8. package/dist/application-update/helper.d.ts +57 -0
  9. package/dist/application-update/helper.js +374 -0
  10. package/dist/application-update/helper.js.map +1 -0
  11. package/dist/application-update/launcher.d.ts +8 -0
  12. package/dist/application-update/launcher.js +53 -0
  13. package/dist/application-update/launcher.js.map +1 -0
  14. package/dist/application-update/lock.d.ts +4 -0
  15. package/dist/application-update/lock.js +70 -0
  16. package/dist/application-update/lock.js.map +1 -0
  17. package/dist/application-update/npm-process.d.ts +17 -0
  18. package/dist/application-update/npm-process.js +133 -0
  19. package/dist/application-update/npm-process.js.map +1 -0
  20. package/dist/application-update/service.d.ts +69 -0
  21. package/dist/application-update/service.js +456 -0
  22. package/dist/application-update/service.js.map +1 -0
  23. package/dist/artifacts/cli.d.ts +1 -0
  24. package/dist/artifacts/cli.js +32 -0
  25. package/dist/artifacts/cli.js.map +1 -0
  26. package/dist/artifacts/lifecycle.d.ts +4 -0
  27. package/dist/artifacts/lifecycle.js +42 -0
  28. package/dist/artifacts/lifecycle.js.map +1 -0
  29. package/dist/artifacts/resolve.d.ts +18 -0
  30. package/dist/artifacts/resolve.js +102 -0
  31. package/dist/artifacts/resolve.js.map +1 -0
  32. package/dist/artifacts/store.d.ts +8 -0
  33. package/dist/artifacts/store.js +323 -0
  34. package/dist/artifacts/store.js.map +1 -0
  35. package/dist/automations/scheduler.d.ts +6 -0
  36. package/dist/automations/scheduler.js +45 -17
  37. package/dist/automations/scheduler.js.map +1 -1
  38. package/dist/automations/store.d.ts +12 -4
  39. package/dist/automations/store.js +199 -22
  40. package/dist/automations/store.js.map +1 -1
  41. package/dist/automations/types.d.ts +2 -0
  42. package/dist/automations/types.js +1 -0
  43. package/dist/automations/types.js.map +1 -1
  44. package/dist/ci-wait/mcp.d.ts +3 -0
  45. package/dist/ci-wait/mcp.js +14 -3
  46. package/dist/ci-wait/mcp.js.map +1 -1
  47. package/dist/contract/application-update.d.ts +32 -0
  48. package/dist/contract/artifacts.d.ts +83 -0
  49. package/dist/contract/ask-schema.d.ts +32 -0
  50. package/dist/contract/ask.d.ts +2 -32
  51. package/dist/contract/automations.d.ts +6 -0
  52. package/dist/contract/conversations.d.ts +165 -0
  53. package/dist/contract/delegation.d.ts +68 -0
  54. package/dist/contract/discovery.d.ts +134 -0
  55. package/dist/contract/events.d.ts +49 -0
  56. package/dist/contract/health.d.ts +12 -0
  57. package/dist/contract/index.d.ts +3 -0
  58. package/dist/contract/index.js +1654 -1454
  59. package/dist/contract/projects.d.ts +40 -0
  60. package/dist/contract/runs.d.ts +186 -0
  61. package/dist/contract/skills.d.ts +33 -0
  62. package/dist/core/agent-runner.d.ts +33 -4
  63. package/dist/core/agent-runner.js +5 -0
  64. package/dist/core/agent-runner.js.map +1 -1
  65. package/dist/core/claude-cli-runner.d.ts +6 -12
  66. package/dist/core/claude-cli-runner.js +90 -20
  67. package/dist/core/claude-cli-runner.js.map +1 -1
  68. package/dist/core/codex-app-server-runner.d.ts +2 -1
  69. package/dist/core/codex-app-server-runner.js +327 -92
  70. package/dist/core/codex-app-server-runner.js.map +1 -1
  71. package/dist/core/codex-app-server-transport.d.ts +13 -1
  72. package/dist/core/codex-app-server-transport.js +58 -17
  73. package/dist/core/codex-app-server-transport.js.map +1 -1
  74. package/dist/core/cursor-acp-runner.d.ts +6 -1
  75. package/dist/core/cursor-acp-runner.js +162 -26
  76. package/dist/core/cursor-acp-runner.js.map +1 -1
  77. package/dist/core/cursor-provider-error.d.ts +3 -0
  78. package/dist/core/cursor-provider-error.js +16 -1
  79. package/dist/core/cursor-provider-error.js.map +1 -1
  80. package/dist/core/input-submissions.d.ts +14 -0
  81. package/dist/core/input-submissions.js +26 -0
  82. package/dist/core/input-submissions.js.map +1 -0
  83. package/dist/core/opencode-server-runner.d.ts +4 -1
  84. package/dist/core/opencode-server-runner.js +156 -26
  85. package/dist/core/opencode-server-runner.js.map +1 -1
  86. package/dist/core/pi-runner.d.ts +2 -1
  87. package/dist/core/pi-runner.js +88 -10
  88. package/dist/core/pi-runner.js.map +1 -1
  89. package/dist/core/provider-auth.d.ts +99 -1
  90. package/dist/core/provider-auth.js +203 -2
  91. package/dist/core/provider-auth.js.map +1 -1
  92. package/dist/delegation/cli.d.ts +1 -0
  93. package/dist/delegation/cli.js +103 -7
  94. package/dist/delegation/cli.js.map +1 -1
  95. package/dist/delegation/conversations.js +13 -5
  96. package/dist/delegation/conversations.js.map +1 -1
  97. package/dist/delegation/input.d.ts +2 -1
  98. package/dist/delegation/input.js +6 -1
  99. package/dist/delegation/input.js.map +1 -1
  100. package/dist/delegation/policy.d.ts +3 -2
  101. package/dist/delegation/policy.js +3 -1
  102. package/dist/delegation/policy.js.map +1 -1
  103. package/dist/delegation/process-liveness.d.ts +66 -0
  104. package/dist/delegation/process-liveness.js +215 -0
  105. package/dist/delegation/process-liveness.js.map +1 -0
  106. package/dist/delegation/provision.d.ts +1 -1
  107. package/dist/delegation/provision.js +10 -5
  108. package/dist/delegation/provision.js.map +1 -1
  109. package/dist/delegation/questions.d.ts +19 -0
  110. package/dist/delegation/questions.js +45 -0
  111. package/dist/delegation/questions.js.map +1 -0
  112. package/dist/delegation/results.d.ts +1 -1
  113. package/dist/delegation/results.js +33 -19
  114. package/dist/delegation/results.js.map +1 -1
  115. package/dist/delegation/routes.d.ts +185 -11
  116. package/dist/delegation/routes.js +6 -2
  117. package/dist/delegation/routes.js.map +1 -1
  118. package/dist/delegation/service.d.ts +16 -5
  119. package/dist/delegation/service.js +161 -13
  120. package/dist/delegation/service.js.map +1 -1
  121. package/dist/delegation/transport.d.ts +228 -65
  122. package/dist/discovery/catalog.d.ts +14 -0
  123. package/dist/discovery/catalog.js +31 -0
  124. package/dist/discovery/catalog.js.map +1 -0
  125. package/dist/discovery/cli.d.ts +8 -0
  126. package/dist/discovery/cli.js +104 -0
  127. package/dist/discovery/cli.js.map +1 -0
  128. package/dist/git-worktree.d.ts +3 -1
  129. package/dist/git-worktree.js +26 -4
  130. package/dist/git-worktree.js.map +1 -1
  131. package/dist/index.js +92 -26
  132. package/dist/index.js.map +1 -1
  133. package/dist/open-url.d.ts +2 -0
  134. package/dist/open-url.js +20 -0
  135. package/dist/open-url.js.map +1 -0
  136. package/dist/release/snapshot.d.ts +3 -3
  137. package/dist/release/snapshot.js +6 -6
  138. package/dist/release/snapshot.js.map +1 -1
  139. package/dist/runs/agent-tmpdir.d.ts +2 -0
  140. package/dist/runs/agent-tmpdir.js +5 -2
  141. package/dist/runs/agent-tmpdir.js.map +1 -1
  142. package/dist/runs/client-request.d.ts +11 -0
  143. package/dist/runs/client-request.js +26 -0
  144. package/dist/runs/client-request.js.map +1 -0
  145. package/dist/runs/delegation-state.d.ts +17 -0
  146. package/dist/runs/event-history.js +6 -0
  147. package/dist/runs/event-history.js.map +1 -1
  148. package/dist/runs/retention.d.ts +7 -2
  149. package/dist/runs/retention.js +39 -7
  150. package/dist/runs/retention.js.map +1 -1
  151. package/dist/runs/store.d.ts +100 -6
  152. package/dist/runs/store.js +245 -2
  153. package/dist/runs/store.js.map +1 -1
  154. package/dist/runs/webhook.d.ts +125 -0
  155. package/dist/runs/webhook.js +256 -0
  156. package/dist/runs/webhook.js.map +1 -0
  157. package/dist/server/provider-auth-runtime.d.ts +30 -4
  158. package/dist/server/provider-auth-runtime.js +71 -6
  159. package/dist/server/provider-auth-runtime.js.map +1 -1
  160. package/dist/server/server.d.ts +8226 -4860
  161. package/dist/server/server.js +309 -15
  162. package/dist/server/server.js.map +1 -1
  163. package/dist/server-install/platforms/ubuntu-vps.d.ts +5 -1
  164. package/dist/server-install/platforms/ubuntu-vps.js +160 -18
  165. package/dist/server-install/platforms/ubuntu-vps.js.map +1 -1
  166. package/dist/server-install/steps.d.ts +4 -2
  167. package/dist/server-install/steps.js +5 -4
  168. package/dist/server-install/steps.js.map +1 -1
  169. package/dist/skills-remote.d.ts +30 -5
  170. package/dist/skills-remote.js +122 -32
  171. package/dist/skills-remote.js.map +1 -1
  172. package/dist/skills.js +15 -6
  173. package/dist/skills.js.map +1 -1
  174. package/dist/task-cli/cli.d.ts +38 -0
  175. package/dist/task-cli/cli.js +580 -0
  176. package/dist/task-cli/cli.js.map +1 -0
  177. package/dist/task-cli/discovery.d.ts +22 -0
  178. package/dist/task-cli/discovery.js +96 -0
  179. package/dist/task-cli/discovery.js.map +1 -0
  180. package/dist/task-cli/http.d.ts +46 -0
  181. package/dist/task-cli/http.js +101 -0
  182. package/dist/task-cli/http.js.map +1 -0
  183. package/dist/task-cli/projections.d.ts +40 -0
  184. package/dist/task-cli/projections.js +45 -0
  185. package/dist/task-cli/projections.js.map +1 -0
  186. package/dist/task-cli/watch.d.ts +78 -0
  187. package/dist/task-cli/watch.js +336 -0
  188. package/dist/task-cli/watch.js.map +1 -0
  189. package/dist/workflows/run.d.ts +160 -2
  190. package/dist/workflows/run.js +1141 -108
  191. package/dist/workflows/run.js.map +1 -1
  192. package/dist/workspace/agent-profiles.d.ts +22 -0
  193. package/dist/workspace/agent-profiles.js +15 -0
  194. package/dist/workspace/agent-profiles.js.map +1 -1
  195. package/dist/workspace/config.d.ts +9 -0
  196. package/dist/workspace/config.js +13 -1
  197. package/dist/workspace/config.js.map +1 -1
  198. package/dist/workspace/projects-cli.js +1 -1
  199. package/dist/workspace/projects.d.ts +24 -1
  200. package/dist/workspace/projects.js +14 -1
  201. package/dist/workspace/projects.js.map +1 -1
  202. package/package.json +5 -5
  203. package/scripts/mock-claude.mjs +64 -2
  204. package/scripts/mock-codex-app-server.mjs +124 -1
  205. package/scripts/mock-cursor-acp.mjs +54 -3
  206. package/scripts/mock-cursor-hang-stdin-late.mjs +35 -0
  207. package/scripts/mock-cursor-hang-stdin.mjs +30 -0
  208. package/scripts/mock-opencode-serve.mjs +102 -2
  209. package/scripts/mock-pi-rpc.mjs +82 -3
  210. package/web/dist/assets/agent-accounts-CerclGiO.js +1 -0
  211. package/web/dist/assets/centered-state-DH8qtCz-.js +43 -0
  212. package/web/dist/assets/collapsible-De2G0xqQ.js +1 -0
  213. package/web/dist/assets/commit-list-CQubP1iS.js +1 -0
  214. package/web/dist/assets/compare-variants-C_NijJvg.js +1 -0
  215. package/web/dist/assets/{diff-tRE59UNb2.js → diff-8M5HlDxq2.js} +2 -2
  216. package/web/dist/assets/diff-controls-B6ok0TtQ.js +1 -0
  217. package/web/dist/assets/{diff-stat-Cgnl_hYF.js → diff-stat-D1AODN2a.js} +1 -1
  218. package/web/dist/assets/{diff-view-DN1ort7Q.js → diff-view-Bs5Gh7UF.js} +2 -2
  219. package/web/dist/assets/dropdown-menu-7KGQMoFj.js +1 -0
  220. package/web/dist/assets/git-toolbar-DqbapMXr.js +1 -0
  221. package/web/dist/assets/github-lMHiuYSx.js +1 -0
  222. package/web/dist/assets/{image-preview-C2JGcBlC.js → image-preview-jzHoEyLM.js} +1 -1
  223. package/web/dist/assets/index-D4OJTArJ.js +7 -0
  224. package/web/dist/assets/index-D5NkwqY7.css +1 -0
  225. package/web/dist/assets/markdown-DvbymqXz.js +2 -0
  226. package/web/dist/assets/pill-BL6ugwXo.js +1 -0
  227. package/web/dist/assets/project-router-ChC5Rb-Y.js +1 -0
  228. package/web/dist/assets/prompt-templates-j8qlK7c-.js +15 -0
  229. package/web/dist/assets/repo-git-BbPAgkqb.js +1 -0
  230. package/web/dist/assets/{run-diff-CyG0Nciv.js → run-diff-BuATgZpx.js} +2 -2
  231. package/web/dist/assets/run-header-DuAWswYM.js +1 -0
  232. package/web/dist/assets/skills-DiC2XrU1.js +1 -0
  233. package/web/dist/assets/{tab-link-BWNp3mLY.js → tab-link-BmGKj9Rt.js} +1 -1
  234. package/web/dist/assets/task-changes-CP9kPnsy.js +1 -0
  235. package/web/dist/assets/task-commits-D6NfTw5r.js +1 -0
  236. package/web/dist/assets/task-files-W-b_gtcb.js +2 -0
  237. package/web/dist/assets/task-thread-Bw_nQuTx.css +1 -0
  238. package/web/dist/assets/task-thread-Q7Nj33DH.js +9 -0
  239. package/web/dist/assets/textarea-ByZ-txS7.js +1 -0
  240. package/web/dist/assets/thread-loading-DHT9p5o5.js +1 -0
  241. package/web/dist/assets/token-metrics-k4XoovDS.js +1 -0
  242. package/web/dist/assets/utils-BTFBhZ55.js +64 -0
  243. package/web/dist/assets/workflows-DqQszPHJ.js +11 -0
  244. package/web/dist/assets/{zoomable-image-Z3JDnm0b.js → zoomable-image-Ba6y6Wyl.js} +1 -1
  245. package/web/dist/index.html +14 -14
  246. package/web/dist/assets/agent-accounts-BZm_2WAv.js +0 -1
  247. package/web/dist/assets/alert-dialog-B422RI-k.js +0 -43
  248. package/web/dist/assets/collapsible-Cy_Fmkrd.js +0 -1
  249. package/web/dist/assets/commit-list-Dcnk7TnI.js +0 -1
  250. package/web/dist/assets/compare-variants-Ciqwvd_f.js +0 -1
  251. package/web/dist/assets/diff-controls-BGrXGi7O.js +0 -1
  252. package/web/dist/assets/dropdown-menu-dwDGT8MM.js +0 -1
  253. package/web/dist/assets/git-toolbar-UiHnGvE0.js +0 -1
  254. package/web/dist/assets/github-D-MrkbJ7.js +0 -1
  255. package/web/dist/assets/ibm-plex-mono-regular-BF3vfe7_.ttf +0 -0
  256. package/web/dist/assets/index-BszfYvBq.js +0 -7
  257. package/web/dist/assets/index-CWh4pKP3.css +0 -1
  258. package/web/dist/assets/markdown-C_IcKVQd.js +0 -2
  259. package/web/dist/assets/pill-BsbO6G7y.js +0 -1
  260. package/web/dist/assets/project-router-DbLkll25.js +0 -1
  261. package/web/dist/assets/prompt-templates-BlTGJB5W.js +0 -15
  262. package/web/dist/assets/repo-git-Bm3s6Why.js +0 -1
  263. package/web/dist/assets/run-header-IFyIGCey.js +0 -1
  264. package/web/dist/assets/skills-C-C4DVFY.js +0 -1
  265. package/web/dist/assets/task-changes-D2PHtWUW.js +0 -1
  266. package/web/dist/assets/task-commits-N5u9U0_R.js +0 -1
  267. package/web/dist/assets/task-files-BS7c7CFm.js +0 -2
  268. package/web/dist/assets/task-thread-BQFdz1dJ.css +0 -1
  269. package/web/dist/assets/task-thread-DGM2dZV-.js +0 -9
  270. package/web/dist/assets/textarea-FjaU370i.js +0 -1
  271. package/web/dist/assets/thread-loading-77sJ8Yu_.js +0 -1
  272. package/web/dist/assets/token-metrics-Clxh03bE.js +0 -1
  273. package/web/dist/assets/utils-PYYcpCFZ.js +0 -64
  274. package/web/dist/assets/workflows-Czl0ZfXH.js +0 -11
@@ -1,7 +1,7 @@
1
1
  import { readBoundedContextFile } from './context.js';
2
2
  import { parseArgs } from 'node:util';
3
3
  import { z } from 'zod';
4
- import { conversationSendRequestSchema, conversationSendResultSchema, conversationStateSchema, conversationInspectRequestSchema, conversationCancelRequestSchema, requestOutcomeSchema, requestWaitRequestSchema, workerCollectedResultSchema, workerCancelWaitRequestSchema, workerCancelWaitResultSchema, workerOperationSchema, workerParamsSchema, workerSpawnRequestSchema, workerSteerRequestSchema, workerWaitRequestSchema, workerSpawnResultSchema, workerInspectionSchema, workerSteerResultSchema, workerStopResultSchema, workerDestroyResultSchema, workerDiffSchema, workerWaitResultSchema, delegationErrorResponseSchema, } from '../contract/index.js';
4
+ import { conversationSendRequestSchema, conversationSendResultSchema, conversationInspectResultSchema, conversationInspectRequestSchema, conversationCancelRequestSchema, inboxReserveResultSchema, inboxReceiptResultSchema, requestOutcomeSchema, requestWaitRequestSchema, workerCollectedResultSchema, workerCancelWaitRequestSchema, workerCancelWaitResultSchema, workerOperationSchema, workerParamsSchema, workerSpawnRequestSchema, workerSteerRequestSchema, workerWaitRequestSchema, workerSpawnResultSchema, workerInspectionSchema, workerSteerResultSchema, workerStopResultSchema, workerDestroyResultSchema, workerDiffSchema, workerWaitResultSchema, delegationErrorResponseSchema, } from '../contract/index.js';
5
5
  import { DelegationPolicyError } from './policy.js';
6
6
  /** Accept exactly the endpoint format minted by this installation's private listener. */
7
7
  export function delegationEndpoint(value) {
@@ -13,8 +13,8 @@ export function delegationEndpoint(value) {
13
13
  throw new Error('Invalid delegation endpoint');
14
14
  return url;
15
15
  }
16
- const conversationOperationSchema = z.enum(['send', 'progress', 'follow-up', 'reply', 'conversation', 'cancel-request', 'wait-requests']);
17
- const responseSchemas = { send: conversationSendResultSchema, progress: conversationSendResultSchema, 'follow-up': conversationSendResultSchema, reply: conversationSendResultSchema, conversation: conversationStateSchema, 'cancel-request': requestOutcomeSchema, 'wait-requests': workerWaitResultSchema, collect: workerCollectedResultSchema, spawn: workerSpawnResultSchema, inspect: workerInspectionSchema, steer: workerSteerResultSchema,
16
+ const conversationOperationSchema = z.enum(['send', 'progress', 'follow-up', 'reply', 'conversation', 'inbox', 'cancel-request', 'wait-requests']);
17
+ const responseSchemas = { send: conversationSendResultSchema, progress: conversationSendResultSchema, 'follow-up': conversationSendResultSchema, reply: conversationSendResultSchema, conversation: conversationInspectResultSchema, 'cancel-request': requestOutcomeSchema, 'wait-requests': workerWaitResultSchema, collect: workerCollectedResultSchema, spawn: workerSpawnResultSchema, inspect: workerInspectionSchema, steer: workerSteerResultSchema,
18
18
  stop: workerStopResultSchema, destroy: workerDestroyResultSchema, diff: workerDiffSchema, wait: workerWaitResultSchema, 'cancel-wait': workerCancelWaitResultSchema };
19
19
  const RESPONSE_BYTES = 3_145_728;
20
20
  const CLI_FLAG = {
@@ -39,6 +39,7 @@ const WORKER_USAGE = { operations: [
39
39
  { name: 'follow-up', positionals: 2, required: ['--id', '--request-id'], optional: ['--timeout-seconds'] },
40
40
  { name: 'reply', positionals: 2, required: ['--id', '--request-id'], optional: ['--timeout-seconds'] },
41
41
  { name: 'conversation', positionals: 1 },
42
+ { name: 'inbox', positionals: 0 },
42
43
  { name: 'wait-requests', positionals: 1, optional: ['--mode', '--timeout-seconds'] },
43
44
  { name: 'cancel-request', positionals: 1 },
44
45
  ] };
@@ -57,6 +58,7 @@ const WORKER_HELP = {
57
58
  'follow-up': { args: '<recipient-run-id> "<text>" --id <UUID> --request-id <UUID>', description: 'Clarify an existing request.' },
58
59
  reply: { args: '<recipient-run-id> "<text>" --id <UUID> --request-id <UUID>', description: 'Reply to an existing request.' },
59
60
  conversation: { args: '<recipient-run-id>', description: 'Inspect conversation messages and outcomes.' },
61
+ inbox: { args: '', description: 'Read new messages and acknowledge only those printed successfully.' },
60
62
  'wait-requests': { args: '<request-id>...', description: 'Register a wait for message requests, then end your turn.' },
61
63
  'cancel-request': { args: '<request-id>', description: 'Cancel a request obligation.' },
62
64
  };
@@ -96,6 +98,13 @@ function workerHelp(operation) {
96
98
  }
97
99
  class WorkerCliError extends Error {
98
100
  }
101
+ class InboxHttpError extends Error {
102
+ status;
103
+ constructor(status) {
104
+ super('Inbox operation failed');
105
+ this.status = status;
106
+ }
107
+ }
99
108
  function cliName(path) {
100
109
  return CLI_FLAG[String(path[0] ?? '')] ?? String(path[0] ?? 'argument');
101
110
  }
@@ -125,7 +134,7 @@ function formatWorkerCliError(error, argv0) {
125
134
  }
126
135
  return 'Invalid worker command arguments';
127
136
  }
128
- async function boundedJson(response) {
137
+ export async function boundedJson(response) {
129
138
  if (Number(response.headers.get('content-length')) > RESPONSE_BYTES) {
130
139
  await response.body?.cancel();
131
140
  throw Error('Response too large');
@@ -153,11 +162,47 @@ async function boundedJson(response) {
153
162
  }
154
163
  return JSON.parse(Buffer.concat(chunks, size).toString('utf8'));
155
164
  }
165
+ /** A failed Writable emits `error` as well as reporting through its callback. */
166
+ async function writeInboxOutput(text) {
167
+ const stream = process.stdout;
168
+ await new Promise((resolve, reject) => {
169
+ let settled = false;
170
+ let callbackFailure;
171
+ const finish = (error) => {
172
+ if (settled)
173
+ return;
174
+ settled = true;
175
+ clearImmediate(callbackFailure);
176
+ stream.removeListener('error', onError);
177
+ if (error)
178
+ reject(error);
179
+ else
180
+ resolve();
181
+ };
182
+ const onError = (error) => finish(error);
183
+ stream.on('error', onError);
184
+ try {
185
+ stream.write(text, error => {
186
+ if (settled)
187
+ return;
188
+ // Node emits the paired error after this callback. Keep its listener
189
+ // through that emission; callback-only streams still settle next tick.
190
+ if (error)
191
+ callbackFailure = setImmediate(() => finish(error));
192
+ else
193
+ finish();
194
+ });
195
+ }
196
+ catch (error) {
197
+ finish(error instanceof Error ? error : new Error(String(error)));
198
+ }
199
+ });
200
+ }
156
201
  export async function runWorkerCommand(argv, env) {
157
202
  let token;
158
- const print = (value) => {
203
+ const print = (value, stderr = false) => {
159
204
  const json = JSON.stringify(value);
160
- console.log(token ? json.replaceAll(token, '[REDACTED]') : json);
205
+ (stderr ? console.error : console.log)(token ? json.replaceAll(token, '[REDACTED]') : json);
161
206
  };
162
207
  try {
163
208
  if (argv.length === 1 && (argv[0] === '-h' || argv[0] === '--help')) {
@@ -195,6 +240,10 @@ export async function runWorkerCommand(argv, env) {
195
240
  if (operation === 'progress')
196
241
  path = 'send';
197
242
  }
243
+ else if (operation === 'inbox') {
244
+ expectCount(operation, positionals, 0);
245
+ body = {};
246
+ }
198
247
  else if (operation === 'conversation' || operation === 'cancel-request') {
199
248
  expectCount(operation, positionals, 1);
200
249
  body = operation === 'conversation' ? conversationInspectRequestSchema.parse({ recipientRunId: positionals[0] }) : conversationCancelRequestSchema.parse({ requestId: positionals[0] });
@@ -243,6 +292,51 @@ export async function runWorkerCommand(argv, env) {
243
292
  throw new DelegationPolicyError('unavailable_transport', 'Delegation session is unavailable');
244
293
  }
245
294
  try {
295
+ if (operation === 'inbox') {
296
+ const postInbox = async (action, payload) => {
297
+ const response = await fetch(`${endpoint.href}/inbox${action}`, { method: 'POST', redirect: 'error',
298
+ headers: { authorization: `Bearer ${token}`, 'content-type': 'application/json' }, body: JSON.stringify(payload), signal: AbortSignal.timeout(45_000) });
299
+ const data = await boundedJson(response);
300
+ if (!response.ok)
301
+ throw new InboxHttpError(response.status);
302
+ return data;
303
+ };
304
+ const snapshot = inboxReserveResultSchema.parse(await postInbox('', {}));
305
+ try {
306
+ const json = JSON.stringify(snapshot).replaceAll(token, '[REDACTED]');
307
+ await writeInboxOutput(`${json}\n`);
308
+ }
309
+ catch {
310
+ if (snapshot.receiptId) {
311
+ try {
312
+ inboxReceiptResultSchema.parse(await postInbox('/release', { receiptId: snapshot.receiptId }));
313
+ }
314
+ catch { /* receipt expires */ }
315
+ }
316
+ print({ code: 'unavailable_transport', error: 'Inbox output failed; the receipt was released or will expire' }, true);
317
+ return 1;
318
+ }
319
+ if (snapshot.receiptId) {
320
+ let acknowledged = false;
321
+ for (let attempt = 0; attempt < 2; attempt++) {
322
+ try {
323
+ const result = inboxReceiptResultSchema.parse(await postInbox('/ack', { receiptId: snapshot.receiptId }));
324
+ if (result.receiptId !== snapshot.receiptId || (result.status !== 'acknowledged' && result.status !== 'already-acknowledged'))
325
+ throw Error('Invalid acknowledgement');
326
+ acknowledged = true;
327
+ break;
328
+ }
329
+ catch (error) {
330
+ if (error instanceof InboxHttpError && [400, 401, 403].includes(error.status))
331
+ break;
332
+ // A transport or server failure may have occurred after commit. Retry this receipt only.
333
+ }
334
+ }
335
+ if (!acknowledged)
336
+ throw new DelegationPolicyError('unavailable_transport', `Inbox acknowledgement failed for receipt ${snapshot.receiptId}; messages may reappear after expiry`);
337
+ }
338
+ return 0;
339
+ }
246
340
  const response = await fetch(`${endpoint.href}/${path}`, { method: body === undefined ? 'GET' : 'POST', redirect: 'error',
247
341
  headers: { authorization: `Bearer ${token}`, 'content-type': 'application/json' },
248
342
  ...(body === undefined ? {} : { body: JSON.stringify(body) }), signal: AbortSignal.timeout(45_000) });
@@ -262,7 +356,9 @@ export async function runWorkerCommand(argv, env) {
262
356
  print(result);
263
357
  return 'delivery' in result && result.delivery === 'not-delivered' ? 1 : 0;
264
358
  }
265
- catch {
359
+ catch (error) {
360
+ if (error instanceof DelegationPolicyError)
361
+ throw error;
266
362
  throw new DelegationPolicyError('unavailable_transport', 'Delegation transport failed or returned an invalid response');
267
363
  }
268
364
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/delegation/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/delegation/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,6BAA6B,EAAE,4BAA4B,EAAE,+BAA+B,EAAE,gCAAgC,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,wBAAwB,EACnQ,2BAA2B,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,uBAAuB,EAChN,uBAAuB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,yBAAyB,EAC3H,gBAAgB,EAAE,sBAAsB,EAAE,6BAA6B,GACxE,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,yFAAyF;AACzF,MAAM,UAAU,kBAAkB,CAAC,KAAyB;IAC1D,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC1D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3B,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;QAC/F,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,KAAK,oBAAoB;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAClJ,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC,CAAC;AACnJ,MAAM,eAAe,GAAG,EAAE,IAAI,EAAE,4BAA4B,EAAE,QAAQ,EAAE,4BAA4B,EAAE,WAAW,EAAE,4BAA4B,EAAE,KAAK,EAAE,4BAA4B,EAAE,YAAY,EAAE,+BAA+B,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,eAAe,EAAE,sBAAsB,EAAE,OAAO,EAAE,2BAA2B,EAAE,KAAK,EAAE,uBAAuB,EAAE,OAAO,EAAE,sBAAsB,EAAE,KAAK,EAAE,uBAAuB;IACzb,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,yBAAyB,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,sBAAsB,EAAE,aAAa,EAAE,4BAA4B,EAAE,CAAC;AACxK,MAAM,cAAc,GAAG,SAAS,CAAC;AACjC,MAAM,QAAQ,GAA2B;IACvC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY;IACrI,cAAc,EAAE,mBAAmB,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW;IACrG,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,kBAAkB;IAC7H,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CAC3B,CAAC;AACF,MAAM,YAAY,GAAG,EAAE,UAAU,EAAE;QACjC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,CAAC,EAAE;QACxK,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE;QACnC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE;QACjC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE;QAChC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE;QACnC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE;QAChC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE;QACnC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC,EAAE;QAC3E,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC,EAAE;QACpG,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC,EAAE;QACvC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,mBAAmB,EAAE,UAAU,CAAC,EAAE;QAC3G,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,mBAAmB,EAAE,UAAU,CAAC,EAAE;QACrG,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC,mBAAmB,CAAC,EAAE;QAC1G,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC,mBAAmB,CAAC,EAAE;QACtG,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,EAAE;QACxC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE;QACjC,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC,EAAE;QACpF,EAAE,IAAI,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,EAAE;KAC3C,EAAE,CAAC;AACJ,MAAM,WAAW,GAA0D;IACzE,KAAK,EAAE,EAAE,IAAI,EAAE,+CAA+C,EAAE,WAAW,EAAE,mDAAmD,EAAE;IAClI,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,wCAAwC,EAAE;IACvF,KAAK,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,wCAAwC,EAAE;IAC9F,IAAI,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE;IAC5D,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,yDAAyD,EAAE;IACxG,IAAI,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,+BAA+B,EAAE;IAC3E,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,4DAA4D,EAAE;IAC3G,IAAI,EAAE,EAAE,IAAI,EAAE,yDAAyD,EAAE,WAAW,EAAE,sEAAsE,EAAE;IAC9J,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,uDAAuD,EAAE;IAC1G,IAAI,EAAE,EAAE,IAAI,EAAE,mEAAmE,EAAE,WAAW,EAAE,yDAAyD,EAAE;IAC3J,QAAQ,EAAE,EAAE,IAAI,EAAE,yCAAyC,EAAE,WAAW,EAAE,4CAA4C,EAAE;IACxH,WAAW,EAAE,EAAE,IAAI,EAAE,6DAA6D,EAAE,WAAW,EAAE,8BAA8B,EAAE;IACjI,KAAK,EAAE,EAAE,IAAI,EAAE,6DAA6D,EAAE,WAAW,EAAE,+BAA+B,EAAE;IAC5H,YAAY,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,WAAW,EAAE,6CAA6C,EAAE;IACxG,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,oEAAoE,EAAE;IACtG,eAAe,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,2DAA2D,EAAE;IACtH,gBAAgB,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,8BAA8B,EAAE;CACxF,CAAC;AACF,MAAM,gBAAgB,GAA2B;IAC/C,YAAY,EAAE,2EAA2E;IACzF,cAAc,EAAE,8EAA8E;IAC9F,WAAW,EAAE,iEAAiE;IAC9E,SAAS,EAAE,0CAA0C;IACrD,UAAU,EAAE,mEAAmE;IAC/E,YAAY,EAAE,iHAAiH;IAC/H,WAAW,EAAE,kFAAkF;IAC/F,gBAAgB,EAAE,0EAA0E;IAC5F,QAAQ,EAAE,6EAA6E;IACvF,mBAAmB,EAAE,gEAAgE;IACrF,WAAW,EAAE,2EAA2E;IACxF,MAAM,EAAE,wEAAwE;IAChF,QAAQ,EAAE,2EAA2E;IACrF,UAAU,EAAE,qFAAqF;CAClG,CAAC;AACF,SAAS,UAAU,CAAC,SAAkB;IACpC,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAChH,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChH,OAAO;QACL,8DAA8D,EAAE,EAAE,EAAE,QAAQ;QAC5E,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACtB,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAE,CAAC;YAChC,OAAO,CAAC,gBAAgB,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1E,CAAC,CAAC,EAAE,EAAE,EAAE,UAAU;QAClB,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3D,4EAA4E,EAAE,EAAE;QAChF,sEAAsE;QACtE,uDAAuD;QACvD,sEAAsE;QACtE,wFAAwF;KACzF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AACD,MAAM,cAAe,SAAQ,KAAK;CAAG;AACrC,MAAM,cAAe,SAAQ,KAAK;IAAwB,MAAM;IAA3B,YAAqB,MAAc;QAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;sBAAlD,MAAM;IAA6C,CAAC;CAAE;AAChH,SAAS,OAAO,CAAC,IAAmB;IAClC,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC;AAC1E,CAAC;AACD,SAAS,WAAW,CAAC,SAAiB,EAAE,WAAqB,EAAE,KAAa;IAC1E,IAAI,WAAW,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO;IACzC,MAAM,IAAI,cAAc,CAAC,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,qBAAqB,CAAC,CAAC,CAAC,GAAG,SAAS,0BAA0B,CAAC,CAAC;AACpI,CAAC;AACD,SAAS,oBAAoB,CAAC,KAAc,EAAE,KAAyB;IACrE,IAAI,KAAK,YAAY,cAAc;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IAC1D,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;eACxE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;QAClG,IAAI,gBAAgB;YAAE,OAAO,sBAAsB,KAAK,IAAI,EAAE,GAAG,CAAC;QAClE,MAAM,SAAS,GAAG,KAAK,IAAI,QAAQ,CAAC;QACpC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;QACnH,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,GAAG,SAAS,eAAe,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAChH,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,gBAAgB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,kCAAkC,CAAC;IACxG,CAAC;IACD,IAAI,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,+BAA+B,EAAE,CAAC;QAChG,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACvE,OAAO,GAAG,KAAK,IAAI,QAAQ,uBAAuB,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC;IAC7E,CAAC;IACD,OAAO,kCAAkC,CAAC;AAC5C,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAkB;IAClD,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,GAAG,cAAc,EAAE,CAAC;QAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAAC,CAAC;IAC1I,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM;QAAE,MAAM,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC3C,IAAI,IAAI,GAAG,CAAC,CAAC;IAAC,MAAM,MAAM,GAAiB,EAAE,CAAC;IAC9C,IAAI,CAAC;QACH,SAAS,CAAC;YACR,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,IAAI;gBAAE,MAAM;YACrB,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC1B,IAAI,IAAI,GAAG,cAAc,EAAE,CAAC;gBAAC,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;gBAAC,MAAM,KAAK,CAAC,oBAAoB,CAAC,CAAC;YAAC,CAAC;YACxF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;YAAS,CAAC;QAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAAC,CAAC;IACnC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,iFAAiF;AACjF,KAAK,UAAU,gBAAgB,CAAC,IAAY;IAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,eAA6C,CAAC;QAClD,MAAM,MAAM,GAAG,CAAC,KAAoB,EAAE,EAAE;YACtC,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,cAAc,CAAC,eAAe,CAAC,CAAC;YAChC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACxC,IAAI,KAAK;gBAAE,MAAM,CAAC,KAAK,CAAC,CAAC;;gBAAM,OAAO,EAAE,CAAC;QAC3C,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE;gBACzB,IAAI,OAAO;oBAAE,OAAO;gBACpB,qEAAqE;gBACrE,uEAAuE;gBACvE,IAAI,KAAK;oBAAE,eAAe,GAAG,YAAY,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;;oBAC1D,MAAM,EAAE,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAAC,CAAC;IACxF,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAc,EAAE,GAAsB;IAC3E,IAAI,KAAyB,CAAC;IAC9B,MAAM,KAAK,GAAG,CAAC,KAAc,EAAE,MAAM,GAAG,KAAK,EAAE,EAAE;QAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9F,CAAC,CAAC;IACF,IAAI,CAAC;QACH,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;YACpE,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YAC1B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,kCAAkC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;YACjG,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,qBAAqB,EAAE,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/K,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;gBAC9G,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE;gBACrC,GAAG,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/V,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5O,GAAG,CAAC,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAkB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrG,GAAG,CAAC,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,eAAe,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9M,EAAE,CAAC,CAAC;QACL,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YACnC,OAAO,CAAC,CAAC;QACX,CAAC;QACD,IAAI,IAAI,GAAW,SAAS,CAAC;QAC7B,IAAI,IAAa,CAAC;QAClB,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAC3G,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;YACvC,IAAI,SAAS,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;gBAAE,MAAM,IAAI,cAAc,CAAC,GAAG,SAAS,4BAA4B,CAAC,CAAC;YAC1H,MAAM,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC1C,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAAE,MAAM,IAAI,cAAc,CAAC,GAAG,SAAS,gCAAgC,CAAC,CAAC;YACpI,IAAI,GAAG,6BAA6B,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;gBACpK,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;gBACjE,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/J,IAAI,SAAS,KAAK,UAAU;gBAAE,IAAI,GAAG,MAAM,CAAC;QAC9C,CAAC;aAAM,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YACjC,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;YACvC,IAAI,GAAG,EAAE,CAAC;QACZ,CAAC;aAAM,IAAI,SAAS,KAAK,cAAc,IAAI,SAAS,KAAK,gBAAgB,EAAE,CAAC;YAC1E,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;YACvC,IAAI,GAAG,SAAS,KAAK,cAAc,CAAC,CAAC,CAAC,gCAAgC,CAAC,KAAK,CAAC,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,+BAA+B,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1L,CAAC;aAAM,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YACjC,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;YACvC,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,cAAc,CAAC,KAAK,SAAS;gBAAE,MAAM,IAAI,cAAc,CAAC,yCAAyC,CAAC,CAAC;YAC9I,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO;gBACvE,CAAC,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5H,IAAI,GAAG,wBAAwB,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC;gBACtH,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;gBACpI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;gBACjE,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACvE,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC;aACzE,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;YACjE,MAAM,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC1C,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAAE,MAAM,IAAI,cAAc,CAAC,GAAG,SAAS,gCAAgC,CAAC,CAAC;YAC7J,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;YAChC,IAAI,QAAQ,KAAK,SAAS,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,IAAI,cAAc,CAAC,GAAG,SAAS,qBAAqB,CAAC,CAAC;YAClH,MAAM,WAAW,GAAG,QAAQ,KAAK,SAAS,IAAI,SAAS,KAAK,eAAe,CAAC;YAC5E,IAAI,WAAW;gBAAE,IAAI,GAAG,MAAM,CAAC;YAC/B,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACnT,CAAC;aAAM,IAAI,SAAS,KAAK,aAAa,EAAE,CAAC;YACvC,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;YACvC,IAAI,GAAG,6BAA6B,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnE,MAAM,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5E,IAAI,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,SAAS,EAAE,CAAC;YACvE,IAAI,GAAG,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACxL,CAAC;QACD,IAAI,QAAa,CAAC;QAClB,IAAI,CAAC;YACH,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;YACtD,KAAK,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClF,CAAC;QAAC,MAAM,CAAC;YAAC,MAAM,IAAI,qBAAqB,CAAC,uBAAuB,EAAE,mCAAmC,CAAC,CAAC;QAAC,CAAC;QAC1G,IAAI,CAAC;YACH,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAG,KAAK,EAAE,MAAgC,EAAE,OAAe,EAAE,EAAE;oBAC5E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO;wBACjG,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAC3J,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;oBACzC,IAAI,CAAC,QAAQ,CAAC,EAAE;wBAAE,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC5D,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;gBACF,MAAM,QAAQ,GAAG,wBAAwB,CAAC,KAAK,CAAC,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;gBACzE,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;oBACtE,MAAM,gBAAgB,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;gBACtC,CAAC;gBAAC,MAAM,CAAC;oBACP,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;wBACvB,IAAI,CAAC;4BAAC,wBAAwB,CAAC,KAAK,CAAC,MAAM,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;oBACzI,CAAC;oBACD,KAAK,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,8DAA8D,EAAE,EAAE,IAAI,CAAC,CAAC;oBACtH,OAAO,CAAC,CAAC;gBACX,CAAC;gBACD,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;oBACvB,IAAI,YAAY,GAAG,KAAK,CAAC;oBACzB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;wBAC7C,IAAI,CAAC;4BACH,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,MAAM,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;4BAC1G,IAAI,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,cAAc,IAAI,MAAM,CAAC,MAAM,KAAK,sBAAsB,CAAC;gCAAE,MAAM,KAAK,CAAC,yBAAyB,CAAC,CAAC;4BACtK,YAAY,GAAG,IAAI,CAAC;4BAAC,MAAM;wBAC7B,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,IAAI,KAAK,YAAY,cAAc,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;gCAAE,MAAM;4BACrF,yFAAyF;wBAC3F,CAAC;oBACH,CAAC;oBACD,IAAI,CAAC,YAAY;wBAAE,MAAM,IAAI,qBAAqB,CAAC,uBAAuB,EAAE,4CAA4C,QAAQ,CAAC,SAAS,sCAAsC,CAAC,CAAC;gBACpL,CAAC;gBACD,OAAO,CAAC,CAAC;YACX,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,CAAC,IAAI,IAAI,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO;gBACvH,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBACjF,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxG,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAI,SAAS,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACvD,MAAM,UAAU,GAAG,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC7D,IAAI,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;oBAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBAAC,OAAO,CAAC,CAAC;gBAAC,CAAC;YACzG,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAAC,KAAK,CAAC,6BAA6B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAC,OAAO,CAAC,CAAC;YAAC,CAAC;YACjF,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtD,KAAK,CAAC,MAAM,CAAC,CAAC;YACd,OAAO,UAAU,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,qBAAqB;gBAAE,MAAM,KAAK,CAAC;YACxD,MAAM,IAAI,qBAAqB,CAAC,uBAAuB,EAAE,6DAA6D,CAAC,CAAC;QAC1H,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,CAAC,KAAK,YAAY,qBAAqB,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACpK,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
@@ -14,6 +14,9 @@ export function reconcileConversationState(root, runs, now, isSettled) {
14
14
  const deletedRecipient = !recipient && root.delegation.receipts.some(receipt => receipt.workerId === request.recipientRunId && receipt.deletion?.phase === 'complete');
15
15
  if (deletedRecipient || (recipient?.delegation?.role === 'worker' && recipient.delegation.destroy?.phase === 'complete'))
16
16
  status = 'destroyed';
17
+ // A worker's question outlives its parent: the human answers it instead (#505).
18
+ else if (closed(recipient) && request.question)
19
+ status = 'human-fallback';
17
20
  else if (closed(recipient))
18
21
  status = recipient.status === 'done' ? 'completed-without-reply' : recipient.status;
19
22
  else if (closed(root) || closed(sender))
@@ -42,11 +45,16 @@ export function projectConversationEvents(store, root) {
42
45
  projections.set(runId, ids);
43
46
  }
44
47
  const input = store.getRun(message.recipientRunId)?.agentInputs?.find(input => input.id === message.id);
45
- const delivery = input?.deliveredAt ? 'delivered' : input ? 'queued' : 'not-delivered';
46
- const projectionId = `conversation-message:${message.id}:${delivery}`;
47
- if (!ids.has(projectionId)) {
48
- store.appendEvent(runId, { type: 'conversation-message', projectionId, message, delivery,
49
- ...(input?.deliveredAt ? { deliveredAt: input.deliveredAt } : {}) });
48
+ const delivery = input?.consumedAt ? 'consumed' : input?.deliveredAt ? 'delivered' : input ? 'queued' : 'not-delivered';
49
+ // A read message was delivered first, even when both landed between two projections;
50
+ // readers that predate `consumed` still see it delivered (#505).
51
+ for (const step of delivery === 'consumed' ? ['delivered', 'consumed'] : [delivery]) {
52
+ const projectionId = `conversation-message:${message.id}:${step}`;
53
+ if (ids.has(projectionId))
54
+ continue;
55
+ store.appendEvent(runId, { type: 'conversation-message', projectionId, message, delivery: step,
56
+ ...(input?.deliveredAt ? { deliveredAt: input.deliveredAt } : {}),
57
+ ...(step === 'consumed' && input?.consumedAt ? { consumedAt: input.consumedAt } : {}) });
50
58
  ids.add(projectionId);
51
59
  }
52
60
  const outcome = outcomes.get(message.id);
@@ -1 +1 @@
1
- {"version":3,"file":"conversations.js","sourceRoot":"","sources":["../../src/delegation/conversations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversations.js","sourceRoot":"","sources":["../../src/delegation/conversations.ts"],"names":[],"mappings":"AAGA,oFAAoF;AACpF,MAAM,UAAU,0BAA0B,CAAC,IAAe,EAAE,IAA0B,EAAE,GAAW,EAAE,SAAsC;IACzI,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IACxF,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;IAC3C,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IACrC,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,UAAU,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,EAAE,CAAC;YAAE,SAAS;QACvI,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,CAAC,GAA0B,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC;QAC7H,IAAI,MAA4C,CAAC;QACjD,MAAM,gBAAgB,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,QAAQ,EAAE,KAAK,KAAK,UAAU,CAAC,CAAC;QACvK,IAAI,gBAAgB,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,KAAK,UAAU,CAAC;YAAE,MAAM,GAAG,WAAW,CAAC;QAC/I,gFAAgF;aAC3E,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ;YAAE,MAAM,GAAG,gBAAgB,CAAC;aACrE,IAAI,MAAM,CAAC,SAAS,CAAC;YAAE,MAAM,GAAG,SAAU,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,SAAU,CAAC,MAAgC,CAAC;aACvI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC;YAAE,MAAM,GAAG,eAAe,CAAC;aAC7D,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,IAAI,GAAG;YAAE,MAAM,GAAG,WAAW,CAAC;QAC3E,IAAI,MAAM;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,QAAQ,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,CAAC;AACpF,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,yBAAyB,CAAC,KAA0C,EAAE,IAAe;IACnG,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY;QAAE,OAAO;IAC9E,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;IAC3C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAwB,CAAC;IACpD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACtF,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,KAAK,MAAM,KAAK,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;gBAAE,SAAS;YACnC,IAAI,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACjC,IAAI,CAAC,GAAG,EAAE,CAAC;gBAAC,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;gBAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAAC,CAAC;YACnH,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;YACxG,MAAM,QAAQ,GAAG,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC;YACxH,qFAAqF;YACrF,iEAAiE;YACjE,KAAK,MAAM,IAAI,IAAI,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,UAAU,CAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7F,MAAM,YAAY,GAAG,wBAAwB,OAAO,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;gBAClE,IAAI,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC;oBAAE,SAAS;gBACpC,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI;oBAC5F,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjE,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC3F,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACxB,CAAC;YACD,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACzC,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC;gBAChE,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,YAAY,EAAE,mBAAmB,OAAO,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;gBACrH,GAAG,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -3,9 +3,10 @@ import type { RunRecord } from '../runs/store.ts';
3
3
  /** Pure admission: callers persist the returned queue before attempting delivery. */
4
4
  export declare function enqueueAgentInput(run: RunRecord, input: AgentInput): AgentInput[];
5
5
  export declare function nextAgentInput(queue: readonly AgentInput[], pendingHumanAsk: boolean): AgentInput | undefined;
6
+ export declare function hasLiveInboxClaim(input: AgentInput, now?: number): boolean;
6
7
  /** Drain a bounded FIFO snapshot of conversations into one provider turn. Lifecycle
7
8
  * inputs remain barriers, and an individually valid large message is never split. */
8
- export declare function agentInputBatch(queue: readonly AgentInput[], format: (input: AgentInput) => string): {
9
+ export declare function agentInputBatch(queue: readonly AgentInput[], format: (input: AgentInput) => string, now?: number): {
9
10
  inputs: AgentInput[];
10
11
  text: string;
11
12
  } | undefined;
@@ -20,15 +20,20 @@ export function enqueueAgentInput(run, input) {
20
20
  export function nextAgentInput(queue, pendingHumanAsk) {
21
21
  return pendingHumanAsk ? undefined : queue.find(input => !input.deliveredAt);
22
22
  }
23
+ export function hasLiveInboxClaim(input, now = Date.now()) {
24
+ return !!input.inboxClaim && !input.inboxClaim.acknowledgedAt && Date.parse(input.inboxClaim.expiresAt) > now;
25
+ }
23
26
  /** Drain a bounded FIFO snapshot of conversations into one provider turn. Lifecycle
24
27
  * inputs remain barriers, and an individually valid large message is never split. */
25
- export function agentInputBatch(queue, format) {
28
+ export function agentInputBatch(queue, format, now = Date.now()) {
26
29
  const inputs = [];
27
30
  const parts = [];
28
31
  let length = 0;
29
32
  for (const input of queue) {
30
33
  if (input.deliveredAt)
31
34
  continue;
35
+ if (hasLiveInboxClaim(input, now))
36
+ break;
32
37
  if (inputs.length && (!inputs[0].conversation || !input.conversation))
33
38
  break;
34
39
  const text = format(input);
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/delegation/input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAmB,MAAM,8BAA8B,CAAC;AAEjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,qFAAqF;AACrF,MAAM,UAAU,iBAAiB,CAAC,GAAc,EAAE,KAAiB;IACjE,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;QACxD,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,qBAAqB,CAAC,oBAAoB,EAAE,uCAAuC,CAAC,CAAC;IACjG,CAAC;IACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,MAAM,CAAC,WAAW;QAAE,MAAM,IAAI,qBAAqB,CAAC,eAAe,EAAE,uCAAuC,CAAC,CAAC;IAClH,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;IACpC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC;QAAE,MAAM,IAAI,qBAAqB,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;IACxH,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QAC3D,MAAM,IAAI,qBAAqB,CAAC,gBAAgB,EAAE,8BAA8B,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,EAAE,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAA4B,EAAE,eAAwB;IACnF,OAAO,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AAC/E,CAAC;AAED;qFACqF;AACrF,MAAM,UAAU,eAAe,CAAC,KAA4B,EAAE,MAAqC;IACjG,MAAM,MAAM,GAAiB,EAAE,CAAC;IAAC,MAAM,KAAK,GAAa,EAAE,CAAC;IAAC,IAAI,MAAM,GAAG,CAAC,CAAC;IAC5E,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,KAAK,CAAC,WAAW;YAAE,SAAS;QAChC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YAAE,MAAM;QAC9E,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,OAAO;YAAE,MAAM;QAC/D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAC,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzF,IAAI,MAAM,CAAC,MAAM,KAAK,EAAE;YAAE,MAAM;IAClC,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/delegation/input.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
- import type { DelegationErrorResponse, WorkerOperation, WorkerCollectedResult } from '../contract/index.js';
1
+ import type { DelegationErrorResponse, WorkerOperation, WorkerCollectedResult, ModelChoices } from '../contract/index.js';
2
2
  import type { RunRecord } from '../runs/store.ts';
3
3
  import { type Caller } from './credentials.ts';
4
4
  export type { WorkerOperation } from '../contract/index.js';
5
5
  export declare class DelegationPolicyError extends Error {
6
6
  readonly code: DelegationErrorResponse['code'];
7
- constructor(code: DelegationErrorResponse['code'], message: string);
7
+ readonly modelChoices?: ModelChoices | undefined;
8
+ constructor(code: DelegationErrorResponse['code'], message: string, modelChoices?: ModelChoices | undefined);
8
9
  }
9
10
  /** projectId is the service's trusted store context; RunRecord itself has no project field. */
10
11
  export declare function authorizeWorker(caller: Caller, target: RunRecord | undefined, operation: WorkerOperation, parent: RunRecord | undefined, projectId: string): void;
@@ -2,9 +2,11 @@ import { delegationStateSchema } from '../contract/index.js';
2
2
  import { isAuthenticatedCaller } from './credentials.js';
3
3
  export class DelegationPolicyError extends Error {
4
4
  code;
5
- constructor(code, message) {
5
+ modelChoices;
6
+ constructor(code, message, modelChoices) {
6
7
  super(message);
7
8
  this.code = code;
9
+ this.modelChoices = modelChoices;
8
10
  this.name = 'DelegationPolicyError';
9
11
  }
10
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/delegation/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/delegation/policy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Synchronous, dependency-free proof that a crashed worker generation's processes are gone
3
+ * (#469, spec 2026-09-26-worker-orphan-finalization). Sync so `continueRun` stays sync.
4
+ * Every uncertainty answers "alive" or "unknown", never "gone".
5
+ */
6
+ export type RecordedProcess = {
7
+ pid: number;
8
+ startToken?: string;
9
+ };
10
+ export type WorkerProcessRecord = {
11
+ generation: string;
12
+ controller: RecordedProcess;
13
+ processes: RecordedProcess[];
14
+ };
15
+ export type GenerationLiveness = 'gone' | 'alive' | 'unknown';
16
+ /** `/proc/<pid>/stat` field 22 (`starttime`); `comm` may hold spaces and `)`, so parse after the LAST `)`. */
17
+ export declare function parseProcStat(stat: string): {
18
+ state: string;
19
+ startToken: string;
20
+ } | undefined;
21
+ /** One process incarnation, so a reused PID never matches. Absent when the platform cannot say. */
22
+ export declare function processStartToken(pid: number, platform?: NodeJS.Platform): string | undefined;
23
+ /** Live and the same incarnation. A token-less entry (or an unreadable current token) counts while the PID exists. */
24
+ export declare function recordedProcessLive(entry: RecordedProcess): boolean;
25
+ export declare function isCurrentProcess(entry: RecordedProcess): boolean;
26
+ /** The `/proc` reads the Linux scan makes; injectable because EACCES cannot be staged for real. */
27
+ export type ProcReader = {
28
+ readdir: () => string[];
29
+ readlink: (pid: string) => string;
30
+ ownerUid: (pid: string) => number | undefined;
31
+ startedAtMs: (pid: string) => number | undefined;
32
+ };
33
+ /** The darwin scan: `lsof` for working directories, `ps` for our own user's processes. */
34
+ export type DarwinReader = {
35
+ lsof: () => {
36
+ ok: boolean;
37
+ stdout: string;
38
+ };
39
+ ownProcesses: () => Array<{
40
+ pid: number;
41
+ startedAtMs?: number;
42
+ }> | undefined;
43
+ };
44
+ /** PIDs (never this process) whose working directory is one of `dirs` or beneath it, in one scan
45
+ * pass; `unknown` when no scan can run. cezar's own short-lived git children in a worktree make
46
+ * this read "alive" briefly: conservative, and a retry self-heals. `since` (epoch ms) is the
47
+ * earliest moment the generation's processes can have started; see the EACCES rule below. */
48
+ export declare function processesWithCwdUnder(dirs: string | readonly string[], platform?: NodeJS.Platform, proc?: ProcReader, since?: number, darwin?: DarwinReader): number[] | 'unknown';
49
+ export type GenerationProbe = {
50
+ liveness: GenerationLiveness;
51
+ controller?: number;
52
+ pids: number[];
53
+ };
54
+ /** A missing record (legacy) relies on the working-directory scan alone. `paths` are the
55
+ * worktree and every scratch location, which finalization deletes. A live foreign controller
56
+ * short-circuits the scan; otherwise `pids` names every live recorded or scanned process. */
57
+ export declare function inspectGeneration({ record, paths, since }: {
58
+ record?: WorkerProcessRecord;
59
+ paths: readonly string[];
60
+ since?: number;
61
+ }): GenerationProbe;
62
+ export declare function probeGeneration(input: {
63
+ record?: WorkerProcessRecord;
64
+ paths: readonly string[];
65
+ since?: number;
66
+ }): GenerationLiveness;