@wjarka/cezarion 0.14.8-pr516.783 → 0.14.8-pr518.768

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 (94) hide show
  1. package/README.md +1 -1
  2. package/dist/artifacts/store.js +4 -5
  3. package/dist/artifacts/store.js.map +1 -1
  4. package/dist/contract/conversations.d.ts +0 -2
  5. package/dist/contract/delegation.d.ts +0 -2
  6. package/dist/contract/events.d.ts +0 -4
  7. package/dist/contract/index.js +2 -8
  8. package/dist/contract/runs.d.ts +0 -10
  9. package/dist/contract/skills.d.ts +0 -2
  10. package/dist/core/agent-runner.d.ts +4 -33
  11. package/dist/core/agent-runner.js +0 -5
  12. package/dist/core/agent-runner.js.map +1 -1
  13. package/dist/core/claude-cli-runner.d.ts +12 -6
  14. package/dist/core/claude-cli-runner.js +19 -89
  15. package/dist/core/claude-cli-runner.js.map +1 -1
  16. package/dist/core/codex-app-server-runner.d.ts +1 -2
  17. package/dist/core/codex-app-server-runner.js +13 -107
  18. package/dist/core/codex-app-server-runner.js.map +1 -1
  19. package/dist/core/codex-app-server-transport.d.ts +0 -4
  20. package/dist/core/codex-app-server-transport.js +1 -5
  21. package/dist/core/codex-app-server-transport.js.map +1 -1
  22. package/dist/core/cursor-acp-runner.d.ts +1 -4
  23. package/dist/core/cursor-acp-runner.js +0 -3
  24. package/dist/core/cursor-acp-runner.js.map +1 -1
  25. package/dist/core/cursor-provider-error.js +1 -3
  26. package/dist/core/cursor-provider-error.js.map +1 -1
  27. package/dist/core/opencode-server-runner.d.ts +1 -4
  28. package/dist/core/opencode-server-runner.js +21 -144
  29. package/dist/core/opencode-server-runner.js.map +1 -1
  30. package/dist/core/pi-runner.d.ts +1 -2
  31. package/dist/core/pi-runner.js +7 -72
  32. package/dist/core/pi-runner.js.map +1 -1
  33. package/dist/delegation/conversations.js +5 -10
  34. package/dist/delegation/conversations.js.map +1 -1
  35. package/dist/delegation/provision.js +2 -2
  36. package/dist/delegation/provision.js.map +1 -1
  37. package/dist/delegation/routes.d.ts +53 -53
  38. package/dist/delegation/service.js +1 -1
  39. package/dist/delegation/service.js.map +1 -1
  40. package/dist/delegation/transport.d.ts +7 -7
  41. package/dist/index.js +1 -2
  42. package/dist/index.js.map +1 -1
  43. package/dist/runs/store.d.ts +0 -14
  44. package/dist/runs/store.js +0 -44
  45. package/dist/runs/store.js.map +1 -1
  46. package/dist/server/server.d.ts +70 -114
  47. package/dist/workflows/run.d.ts +0 -38
  48. package/dist/workflows/run.js +45 -322
  49. package/dist/workflows/run.js.map +1 -1
  50. package/dist/workspace/projects-cli.js +1 -1
  51. package/package.json +3 -3
  52. package/scripts/mock-claude.mjs +2 -38
  53. package/scripts/mock-codex-app-server.mjs +1 -91
  54. package/scripts/mock-cursor-acp.mjs +0 -3
  55. package/scripts/mock-opencode-serve.mjs +2 -69
  56. package/scripts/mock-pi-rpc.mjs +2 -63
  57. package/web/dist/assets/{agent-accounts-rI8P_23R.js → agent-accounts-BLbHj4zN.js} +1 -1
  58. package/web/dist/assets/{centered-state-rsIAKfsy.js → centered-state-BY9nxtUF.js} +1 -1
  59. package/web/dist/assets/{collapsible-DctNTBTX.js → collapsible-OcPoX8CI.js} +1 -1
  60. package/web/dist/assets/{commit-list-BzyaYGgy.js → commit-list-7GFd1NS1.js} +1 -1
  61. package/web/dist/assets/{compare-variants-BFB9QREe.js → compare-variants-DboI5ZsP.js} +1 -1
  62. package/web/dist/assets/{diff-D9L47_of2.js → diff-PcFWIjVs2.js} +2 -2
  63. package/web/dist/assets/{diff-controls-B-xJRCvO.js → diff-controls-nStORQkN.js} +1 -1
  64. package/web/dist/assets/{diff-stat-DXsouDj-.js → diff-stat-B_JhzlOf.js} +1 -1
  65. package/web/dist/assets/{diff-view-BJqQlp6x.js → diff-view-BcdISSo6.js} +1 -1
  66. package/web/dist/assets/{dropdown-menu-DBo8f1A_.js → dropdown-menu-B6leedu7.js} +1 -1
  67. package/web/dist/assets/{git-toolbar-D_fSJ36g.js → git-toolbar-MkqtfIIV.js} +1 -1
  68. package/web/dist/assets/{github-ChXu5Wh5.js → github-B-KR-wid.js} +1 -1
  69. package/web/dist/assets/{image-preview-w6xuSPM4.js → image-preview-Dj9DwKeX.js} +1 -1
  70. package/web/dist/assets/{index-BoT0_Xi-.js → index-DH16sEQu.js} +3 -3
  71. package/web/dist/assets/{markdown-BKDyE5Iu.js → markdown-C9zaGGCY.js} +1 -1
  72. package/web/dist/assets/{pill-DK7FwsJO.js → pill-CEquvmVe.js} +1 -1
  73. package/web/dist/assets/{project-router-o05ozfPs.js → project-router-D5bheilq.js} +1 -1
  74. package/web/dist/assets/{prompt-templates-BzMs7xrl.js → prompt-templates-Cc0OiZwa.js} +1 -1
  75. package/web/dist/assets/{repo-git-DiWw5oAI.js → repo-git-DdoGyEd4.js} +1 -1
  76. package/web/dist/assets/{run-diff-B_aYKc7R.js → run-diff-CEgrdLC5.js} +1 -1
  77. package/web/dist/assets/{run-header-B5IcPMwE.js → run-header-BB_ziqhj.js} +1 -1
  78. package/web/dist/assets/{skills-ByIVsWTk.js → skills-KC4f5zq3.js} +1 -1
  79. package/web/dist/assets/{tab-link-DEV1jCOB.js → tab-link-CYp8aGXO.js} +1 -1
  80. package/web/dist/assets/{task-changes-91PJcxjW.js → task-changes-CLeKZHre.js} +1 -1
  81. package/web/dist/assets/{task-commits-Cxz0TbIx.js → task-commits-BFfPgwOX.js} +1 -1
  82. package/web/dist/assets/{task-files-DN7vZ9GL.js → task-files-BO5IR96z.js} +1 -1
  83. package/web/dist/assets/task-thread-BXcfM68g.js +9 -0
  84. package/web/dist/assets/{textarea-DcuvXTo9.js → textarea-Ds49_-93.js} +1 -1
  85. package/web/dist/assets/{thread-loading-DwrSdSRd.js → thread-loading-nfMOtX4g.js} +1 -1
  86. package/web/dist/assets/{token-metrics-DNO9l5nv.js → token-metrics-CwMZJ1Ue.js} +1 -1
  87. package/web/dist/assets/{utils-lWyAyteq.js → utils-B7odbg_R.js} +1 -1
  88. package/web/dist/assets/{workflows-CeIv3bW3.js → workflows-CsxsxCKm.js} +1 -1
  89. package/web/dist/assets/{zoomable-image-B185Xf0_.js → zoomable-image-CZD8EweH.js} +1 -1
  90. package/web/dist/index.html +13 -13
  91. package/dist/core/input-submissions.d.ts +0 -14
  92. package/dist/core/input-submissions.js +0 -26
  93. package/dist/core/input-submissions.js.map +0 -1
  94. package/web/dist/assets/task-thread-gnLwYgGO.js +0 -9
package/README.md CHANGED
@@ -551,7 +551,7 @@ Parents and owned workers can converse in both directions; a worker may address
551
551
 
552
552
  Messages allow 100,000 characters each, with at most 32 undelivered inputs per recipient, 1,024 messages per family, and 32 pending requests. Request deadlines default to 600 seconds, configurable per message with `--timeout-seconds 1–1800`. Request waits use the same limits and `one`/`any`/`all` modes as worker waits, and each run has one active wait. Incoming conversation can interrupt a parked wait without settling its requests. `cancel-request` cancels an obligation; `cancel-wait` only stops waiting. Completion without a reply, failure, cancellation, destruction, timeout, or sender closure settle obligations distinctly. Late replies remain visible without reopening them.
553
553
 
554
- Messages reach a live recipient as soon as they are accepted, including mid-turn: Claude, Codex, Pi and OpenCode steer them into the running turn, and the model reads them at its next step. Cursor delivers at the turn boundary, because a second prompt would cancel its running turn. Pending conversations go together, in order, up to 32 messages and 100,000 formatted characters per batch; a single valid message is never split. Every message keeps its ID, sender, delivery receipt and request outcome; receipts show queued, delivered and read (when the agent's harness can tell) separately. A pending human question holds messages until it is answered, then they follow right behind the answer. The thread's Details distinguish creation, delivery confirmation and event-recording times.
554
+ Pending conversations are delivered together at the next safe turn boundary, in order, up to 32 messages and 100,000 formatted characters per batch. A single valid message is never split. Messages arriving during that turn wait for the next boundary. Every message retains its ID, sender, delivery receipt and request outcome. Human questions, active turns and scheduler capacity can delay delivery. The thread's Details distinguish creation, delivery confirmation and event-recording times.
555
555
 
556
556
  Sending to a review or terminal participant without `--resume` reports `not-delivered` and `continuation-required`, with the reason and next command; the CLI exits 1. An active parent can use `worker send --resume` (request or progress) to continue its settled done/review/failed worker with that message as the new instruction. No human Continue is needed for this parent-controlled action. A retry with the same payload and ID never creates another continuation; changing a rejected send to use `--resume` requires a new ID. Stopped or destroyed workers need a new worker. Workers cannot resume parents, and conversation never answers a pending human question. Durable IDs deduplicate accepted queue entries and event replay, but a crash between provider acceptance and its durable delivery checkpoint can leave transport delivery ambiguous; this is not an exactly-once execution guarantee.
557
557
 
@@ -1,7 +1,7 @@
1
1
  import { randomUUID, createHash } from 'node:crypto';
2
2
  import { constants, realpathSync } from 'node:fs';
3
3
  import { mkdir, open, opendir, realpath, lstat, rename, rm, writeFile } from 'node:fs/promises';
4
- import { basename, isAbsolute, join, parse, resolve, sep } from 'node:path';
4
+ import { basename, isAbsolute, join, resolve, sep } from 'node:path';
5
5
  import { hostname } from 'node:os';
6
6
  import { setTimeout as delay } from 'node:timers/promises';
7
7
  import { z } from 'zod';
@@ -64,11 +64,10 @@ async function boundedRead(path, limit, stored = false) {
64
64
  async function storageDirectory(path, create = false) {
65
65
  const absolute = resolve(path);
66
66
  let file;
67
- const root = parse(absolute).root;
68
- let current = root;
67
+ let current = sep;
69
68
  try {
70
- file = await open(root, readFlags | constants.O_DIRECTORY);
71
- for (const part of absolute.slice(root.length).split(sep).filter(Boolean)) {
69
+ file = await open(sep, readFlags | constants.O_DIRECTORY);
70
+ for (const part of absolute.split(sep).filter(Boolean)) {
72
71
  current = join(current, part);
73
72
  const anchored = process.platform === 'linux' ? join(`/proc/self/fd/${file.fd}`, part) : current;
74
73
  if (create)
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/artifacts/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/artifacts/store.ts"],"names":[],"mappings":"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"}
@@ -204,7 +204,6 @@ export declare const conversationSendRequestSchema: z.ZodObject<{
204
204
  resume: z.ZodOptional<z.ZodBoolean>;
205
205
  }, z.core.$strict>;
206
206
  export type ConversationSendRequest = z.infer<typeof conversationSendRequestSchema>;
207
- /** `consumed`: the recipient's harness reported the model read it (#505). */
208
207
  export declare const conversationSendResultSchema: z.ZodObject<{
209
208
  message: z.ZodObject<{
210
209
  senderRunId: z.ZodUUID;
@@ -231,7 +230,6 @@ export declare const conversationSendResultSchema: z.ZodObject<{
231
230
  instruction: z.ZodOptional<z.ZodString>;
232
231
  }, z.core.$strict>;
233
232
  delivery: z.ZodEnum<{
234
- consumed: "consumed";
235
233
  delivered: "delivered";
236
234
  "not-delivered": "not-delivered";
237
235
  queued: "queued";
@@ -975,8 +975,6 @@ export declare const agentInputSchema: z.ZodObject<{
975
975
  text: z.ZodString;
976
976
  createdAt: z.ZodISODateTime;
977
977
  deliveredAt: z.ZodOptional<z.ZodISODateTime>;
978
- consumedAt: z.ZodOptional<z.ZodISODateTime>;
979
- awaitingRead: z.ZodOptional<z.ZodLiteral<true>>;
980
978
  inboxClaim: z.ZodOptional<z.ZodObject<{
981
979
  receiptId: z.ZodUUID;
982
980
  generation: z.ZodUUID;
@@ -55,13 +55,11 @@ export declare const conversationMessageEventSchema: z.ZodObject<{
55
55
  instruction: z.ZodOptional<z.ZodString>;
56
56
  }, z.core.$strict>;
57
57
  delivery: z.ZodEnum<{
58
- consumed: "consumed";
59
58
  delivered: "delivered";
60
59
  "not-delivered": "not-delivered";
61
60
  queued: "queued";
62
61
  }>;
63
62
  deliveredAt: z.ZodOptional<z.ZodISODateTime>;
64
- consumedAt: z.ZodOptional<z.ZodISODateTime>;
65
63
  }, z.core.$loose>;
66
64
  export type ConversationMessageEvent = z.infer<typeof conversationMessageEventSchema>;
67
65
  export declare const requestOutcomeEventSchema: z.ZodObject<{
@@ -111,8 +109,6 @@ export declare const agentInputEventSchema: z.ZodObject<{
111
109
  text: z.ZodString;
112
110
  createdAt: z.ZodISODateTime;
113
111
  deliveredAt: z.ZodOptional<z.ZodISODateTime>;
114
- consumedAt: z.ZodOptional<z.ZodISODateTime>;
115
- awaitingRead: z.ZodOptional<z.ZodLiteral<true>>;
116
112
  inboxClaim: z.ZodOptional<z.ZodObject<{
117
113
  receiptId: z.ZodUUID;
118
114
  generation: z.ZodUUID;
@@ -51,7 +51,7 @@ var conversationSendRequestSchema = z.object({
51
51
  timeoutSeconds: z.number().int().min(1).max(1800).default(600),
52
52
  resume: z.boolean().optional()
53
53
  }).strict().refine((value) => (value.kind === "reply" || value.kind === "follow-up") === (value.requestId !== void 0), { message: "Replies and follow-ups require a request ID; new messages must omit it" }).refine((value) => !value.resume || value.kind === "request" || value.kind === "progress", { message: "--resume requires a new request or progress instruction" });
54
- var conversationSendResultSchema = z.object({ message: conversationMessageSchema, delivery: z.enum(["queued", "delivered", "consumed", "not-delivered"]), outcome: requestOutcomeSchema.optional() }).strict();
54
+ var conversationSendResultSchema = z.object({ message: conversationMessageSchema, delivery: z.enum(["queued", "delivered", "not-delivered"]), outcome: requestOutcomeSchema.optional() }).strict();
55
55
  var conversationInspectRequestSchema = z.object({ recipientRunId: z.uuid() }).strict();
56
56
  var conversationCancelRequestSchema = z.object({ requestId: z.uuid() }).strict();
57
57
  var requestWaitRequestSchema = z.object({
@@ -275,12 +275,6 @@ var agentInputSchema = z3.object({
275
275
  text: z3.string().min(1).max(1e5),
276
276
  createdAt: z3.iso.datetime(),
277
277
  deliveredAt: z3.iso.datetime().optional(),
278
- /** The model received it, when the harness can show that (#505). Absent on
279
- * unobservable backends and on records written before #505. */
280
- consumedAt: z3.iso.datetime().optional(),
281
- /** Accepted by a harness that reports reading, and not read yet. A restart replays
282
- * such input; records written before #505 never carry it, so nothing historical replays. */
283
- awaitingRead: z3.literal(true).optional(),
284
278
  inboxClaim: inboxClaimSchema.optional()
285
279
  }).strict();
286
280
  var workerInspectionSchema = z3.object({
@@ -350,7 +344,7 @@ var runEventSchema = z4.looseObject({
350
344
  stepId: z4.string().optional(),
351
345
  type: z4.string()
352
346
  });
353
- var conversationMessageEventSchema = runEventSchema.extend({ type: z4.literal("conversation-message"), message: conversationMessageSchema, delivery: z4.enum(["queued", "delivered", "consumed", "not-delivered"]), deliveredAt: z4.iso.datetime().optional(), consumedAt: z4.iso.datetime().optional() });
347
+ var conversationMessageEventSchema = runEventSchema.extend({ type: z4.literal("conversation-message"), message: conversationMessageSchema, delivery: z4.enum(["queued", "delivered", "not-delivered"]), deliveredAt: z4.iso.datetime().optional() });
354
348
  var requestOutcomeEventSchema = runEventSchema.extend({ type: z4.literal("request-outcome"), outcome: requestOutcomeSchema });
355
349
  var agentInputEventSchema = runEventSchema.extend({
356
350
  type: z4.literal("agent-input"),
@@ -551,8 +551,6 @@ export declare const runRecordSchema: z.ZodObject<{
551
551
  text: z.ZodString;
552
552
  createdAt: z.ZodISODateTime;
553
553
  deliveredAt: z.ZodOptional<z.ZodISODateTime>;
554
- consumedAt: z.ZodOptional<z.ZodISODateTime>;
555
- awaitingRead: z.ZodOptional<z.ZodLiteral<true>>;
556
554
  inboxClaim: z.ZodOptional<z.ZodObject<{
557
555
  receiptId: z.ZodUUID;
558
556
  generation: z.ZodUUID;
@@ -1229,8 +1227,6 @@ export declare const apiRunSchema: z.ZodObject<{
1229
1227
  text: z.ZodString;
1230
1228
  createdAt: z.ZodISODateTime;
1231
1229
  deliveredAt: z.ZodOptional<z.ZodISODateTime>;
1232
- consumedAt: z.ZodOptional<z.ZodISODateTime>;
1233
- awaitingRead: z.ZodOptional<z.ZodLiteral<true>>;
1234
1230
  inboxClaim: z.ZodOptional<z.ZodObject<{
1235
1231
  receiptId: z.ZodUUID;
1236
1232
  generation: z.ZodUUID;
@@ -2154,8 +2150,6 @@ export declare const createRunResponseSchema: z.ZodUnion<readonly [z.ZodObject<{
2154
2150
  text: z.ZodString;
2155
2151
  createdAt: z.ZodISODateTime;
2156
2152
  deliveredAt: z.ZodOptional<z.ZodISODateTime>;
2157
- consumedAt: z.ZodOptional<z.ZodISODateTime>;
2158
- awaitingRead: z.ZodOptional<z.ZodLiteral<true>>;
2159
2153
  inboxClaim: z.ZodOptional<z.ZodObject<{
2160
2154
  receiptId: z.ZodUUID;
2161
2155
  generation: z.ZodUUID;
@@ -2825,8 +2819,6 @@ export declare const createRunResponseSchema: z.ZodUnion<readonly [z.ZodObject<{
2825
2819
  text: z.ZodString;
2826
2820
  createdAt: z.ZodISODateTime;
2827
2821
  deliveredAt: z.ZodOptional<z.ZodISODateTime>;
2828
- consumedAt: z.ZodOptional<z.ZodISODateTime>;
2829
- awaitingRead: z.ZodOptional<z.ZodLiteral<true>>;
2830
2822
  inboxClaim: z.ZodOptional<z.ZodObject<{
2831
2823
  receiptId: z.ZodUUID;
2832
2824
  generation: z.ZodUUID;
@@ -3703,8 +3695,6 @@ export declare const pickVariantResponseSchema: z.ZodObject<{
3703
3695
  text: z.ZodString;
3704
3696
  createdAt: z.ZodISODateTime;
3705
3697
  deliveredAt: z.ZodOptional<z.ZodISODateTime>;
3706
- consumedAt: z.ZodOptional<z.ZodISODateTime>;
3707
- awaitingRead: z.ZodOptional<z.ZodLiteral<true>>;
3708
3698
  inboxClaim: z.ZodOptional<z.ZodObject<{
3709
3699
  receiptId: z.ZodUUID;
3710
3700
  generation: z.ZodUUID;
@@ -485,8 +485,6 @@ export declare const startTodoResponseSchema: z.ZodObject<{
485
485
  text: z.ZodString;
486
486
  createdAt: z.ZodISODateTime;
487
487
  deliveredAt: z.ZodOptional<z.ZodISODateTime>;
488
- consumedAt: z.ZodOptional<z.ZodISODateTime>;
489
- awaitingRead: z.ZodOptional<z.ZodLiteral<true>>;
490
488
  inboxClaim: z.ZodOptional<z.ZodObject<{
491
489
  receiptId: z.ZodUUID;
492
490
  generation: z.ZodUUID;
@@ -186,18 +186,8 @@ export type AgentEvent = {
186
186
  | {
187
187
  type: 'session';
188
188
  sessionId: string;
189
- }
190
- /** `unconsumedInputIds`: agent input accepted in this turn that the model never
191
- * read before the turn ended idle (#505). */
192
- | {
189
+ } | {
193
190
  type: 'turn-end';
194
- unconsumedInputIds?: readonly string[];
195
- }
196
- /** Accepted agent input the harness will not read without a new prompt, reported
197
- * outside a turn (an OpenCode lost wake) (#505). */
198
- | {
199
- type: 'input-unconsumed';
200
- inputIds: readonly string[];
201
191
  } | {
202
192
  type: 'note';
203
193
  message: string;
@@ -236,9 +226,6 @@ export interface SessionOptions {
236
226
  /** Readiness hint only, not an acknowledgement or a turn completion. The
237
227
  * caller rechecks session identity, ask state and queue before retrying. */
238
228
  onAgentInputReady?: () => void;
239
- /** The model received these inputs (replay echo, userMessage item, …). Fires at most
240
- * once per ID and never from a transport acknowledgement (#505). */
241
- onAgentInputConsumed?: (inputIds: readonly string[]) => void;
242
229
  }
243
230
  /**
244
231
  * A live agent session over one spawned backend process. The process stays
@@ -256,11 +243,9 @@ export interface AgentSession {
256
243
  /** Write a user message into the live session. False when it is closed. */
257
244
  sendMessage(content: ContentBlock[]): boolean;
258
245
  /** Synchronous non-human reservation: false refuses without writing; a Promise
259
- * confirms the HARNESS ACCEPTED the input — mid-turn on a `steer` runner — not that
260
- * the model consumed it (#505). Reject retains caller ownership for replay.
261
- * `inputIds` correlate `onAgentInputConsumed` and `turn-end.unconsumedInputIds`.
262
- * Never fall back to the human-answer seam. */
263
- sendAgentMessage(content: ContentBlock[], inputIds?: readonly string[]): false | Promise<void>;
246
+ * confirms transport acceptance, not turn completion. Reject retains caller
247
+ * ownership for replay. Never fall back to the human-answer seam. */
248
+ sendAgentMessage(content: ContentBlock[]): false | Promise<void>;
264
249
  /**
265
250
  * Drop follow-ups queued while a turn was still in flight. A `CEZ:ASK` park
266
251
  * must call this so a mid-turn `sendMessage` cannot start a new turn after
@@ -275,24 +260,10 @@ export interface AgentSession {
275
260
  /** True while the session still accepts messages. */
276
261
  readonly open: boolean;
277
262
  }
278
- /** How a runner admits non-human input while a turn runs (#505). */
279
- export interface InputDelivery {
280
- /** `steer`: accepted mid-turn, consumed inside the running turn. `boundary`: refused while busy. */
281
- readonly mode: 'steer' | 'boundary';
282
- /** Whether the wire tells us when the model actually received the input. */
283
- readonly consumption: 'observable' | 'unobservable';
284
- /** The native mechanism, for AGENT_PROTOCOL.md and the parity matrix. */
285
- readonly via: string;
286
- }
287
- export declare const BOUNDARY_INPUT_DELIVERY: InputDelivery;
288
- /** Absent means the pre-#505 behavior every runner had. */
289
- export declare function inputDeliveryOf(runner: Pick<AgentRunner, 'inputDelivery'>): InputDelivery;
290
263
  export interface AgentRunner {
291
264
  readonly backend: AgentBackend;
292
265
  /** Which `AgentRunSpec` fields this runner honors, and how — see `AgentRunSpecSupport`. */
293
266
  readonly specSupport: AgentRunSpecSupport;
294
- /** How non-human input is admitted while a turn runs; absent means `boundary` (#505). */
295
- readonly inputDelivery?: InputDelivery;
296
267
  run(spec: AgentRunSpec, onEvent?: (event: AgentEvent) => void): Promise<AgentRunResult>;
297
268
  startSession(spec: AgentRunSpec, onEvent?: (event: AgentEvent) => void, opts?: SessionOptions): AgentSession;
298
269
  interrupt(): Promise<void>;
@@ -88,9 +88,4 @@ export function trackChildExit(child) {
88
88
  });
89
89
  return () => exited;
90
90
  }
91
- export const BOUNDARY_INPUT_DELIVERY = { mode: 'boundary', consumption: 'unobservable', via: 'next idle turn' };
92
- /** Absent means the pre-#505 behavior every runner had. */
93
- export function inputDeliveryOf(runner) {
94
- return runner.inputDelivery ?? BOUNDARY_INPUT_DELIVERY;
95
- }
96
91
  //# sourceMappingURL=agent-runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../../src/core/agent-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAU,CAAC;AAQnF,gFAAgF;AAChF,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAQ,UAAgC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC3D,CAAC;AAiDD;;;;GAIG;AACH,MAAM,wBAAwB,GAA+C;IAC3E,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,IAAI;IACZ,GAAG,EAAE,IAAI;IACT,YAAY,EAAE,IAAI;IAClB,wBAAwB,EAAE,IAAI;IAC9B,aAAa,EAAE,IAAI;IACnB,qBAAqB,EAAE,IAAI;IAC3B,GAAG,EAAE,IAAI;IACT,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,IAAI;CACb,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAiC,CAAC;AAsB3G;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAgC,EAAE,UAAkB;IACtF,OAAO,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,cAAc,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;AAC/E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAuB;IAC7D,OAAO,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,CAAC;AAClE,CAAC;AAUD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,KAAqB;IAClD,IAAI,MAAM,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC;IAChE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;QACtB,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC;AACtB,CAAC;AAiHD,MAAM,CAAC,MAAM,uBAAuB,GAAkB,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,EAAE,gBAAgB,EAAE,CAAC;AAC/H,2DAA2D;AAC3D,MAAM,UAAU,eAAe,CAAC,MAA0C;IACxE,OAAO,MAAM,CAAC,aAAa,IAAI,uBAAuB,CAAC;AACzD,CAAC"}
1
+ {"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../../src/core/agent-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAU,CAAC;AAQnF,gFAAgF;AAChF,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAQ,UAAgC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC3D,CAAC;AAiDD;;;;GAIG;AACH,MAAM,wBAAwB,GAA+C;IAC3E,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,IAAI;IACZ,GAAG,EAAE,IAAI;IACT,YAAY,EAAE,IAAI;IAClB,wBAAwB,EAAE,IAAI;IAC9B,aAAa,EAAE,IAAI;IACnB,qBAAqB,EAAE,IAAI;IAC3B,GAAG,EAAE,IAAI;IACT,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,IAAI;CACb,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAiC,CAAC;AAsB3G;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,YAAgC,EAAE,UAAkB;IACtF,OAAO,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,cAAc,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;AAC/E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAuB;IAC7D,OAAO,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,CAAC;AAClE,CAAC;AAUD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,KAAqB;IAClD,IAAI,MAAM,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC;IAChE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;QACtB,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC;AACtB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { AgentEvent, AgentRunResult, AgentRunSpec, AgentRunner, AgentSession, SessionOptions, AgentRunSpecSupport, InputDelivery } from './agent-runner.ts';
1
+ import type { AgentEvent, AgentRunResult, AgentRunSpec, AgentRunner, AgentSession, SessionOptions, AgentRunSpecSupport } from './agent-runner.ts';
2
2
  export type { AgentSession, SessionOptions } from './agent-runner.ts';
3
3
  export interface ClaudeCliRunnerOptions {
4
4
  /** Override the binary name/path; defaults to `claude` on PATH. */
@@ -30,7 +30,6 @@ export declare const CLAUDE_SPEC_SUPPORT: AgentRunSpecSupport;
30
30
  export declare class ClaudeCliRunner implements AgentRunner {
31
31
  readonly backend: 'claude';
32
32
  readonly specSupport: Readonly<Record<keyof AgentRunSpec, import("./agent-runner.ts").SpecFieldSupport>>;
33
- readonly inputDelivery: InputDelivery;
34
33
  private readonly bin;
35
34
  private readonly timeoutMs;
36
35
  private lastSession;
@@ -40,10 +39,17 @@ export declare class ClaudeCliRunner implements AgentRunner {
40
39
  interrupt(): Promise<void>;
41
40
  startSession(spec: AgentRunSpec, onEvent?: (event: AgentEvent) => void, opts?: SessionOptions): AgentSession;
42
41
  }
43
- export declare function supportsReplayUserMessages(bin: string): boolean;
44
- export declare function buildClaudeArgs(spec: AgentRunSpec, env?: NodeJS.ProcessEnv, features?: {
45
- replayUserMessages: boolean;
46
- }): string[];
42
+ /**
43
+ * Build the headless argv. `--input-format stream-json` reads user messages
44
+ * from stdin; `--output-format stream-json --verbose` gives per-event NDJSON;
45
+ * `--permission-mode dontAsk` keeps headless runs non-interactive: tools in
46
+ * `--allowedTools` proceed and everything else is denied instead of prompting.
47
+ * `CEZ_CLAUDE_PERMISSION_MODE` selects `dontAsk` / `acceptEdits` / `bypass`
48
+ * (`bypass` emits `--dangerously-skip-permissions` instead). Unset or unknown
49
+ * keeps today's path: `CEZ_APPROVAL_GATE=1` opts into `acceptEdits` (#435).
50
+ * `CEZ_CLAUDE_SETTING_SOURCES` optionally adds `--setting-sources`.
51
+ */
52
+ export declare function buildClaudeArgs(spec: AgentRunSpec, env?: NodeJS.ProcessEnv): string[];
47
53
  /**
48
54
  * Map `allowedTools` onto claude's `--allowedTools` syntax. `Bash` with a
49
55
  * `bashAllowlist` becomes one `Bash(<prefix>:*)` entry per allowed prefix;
@@ -1,5 +1,4 @@
1
- import { execFileSync, spawn as nodeSpawn } from 'node:child_process';
2
- import { randomUUID } from 'node:crypto';
1
+ import { spawn as nodeSpawn } from 'node:child_process';
3
2
  import { parseEffort } from '../contract/index.js';
4
3
  import { fileURLToPath } from 'node:url';
5
4
  import { dirname, resolve as resolvePath } from 'node:path';
@@ -9,7 +8,6 @@ import { isSignalTerminationExit, trackChildExit } from './agent-runner.js';
9
8
  import { buildChildEnv } from './agent-env.js';
10
9
  import { costWeightedTokens } from './usage.js';
11
10
  import { readNdjson } from './ndjson.js';
12
- import { InputSubmissions } from './input-submissions.js';
13
11
  import { claudeTurnStarted, createClaudeUiState, mapClaudeMessage, stringifyToolResultContent, toolResultImageBlocks, } from './claude-ui-mapper.js';
14
12
  /** Resolve discovery and execution through the same binary and dry-run precedence. */
15
13
  export function resolveClaudeExecutable(override) {
@@ -54,10 +52,6 @@ export const CLAUDE_SPEC_SUPPORT = {
54
52
  export class ClaudeCliRunner {
55
53
  backend = 'claude';
56
54
  specSupport = CLAUDE_SPEC_SUPPORT;
57
- inputDelivery = {
58
- mode: 'steer', consumption: 'observable',
59
- via: 'stream-json stdin line with uuid; --replay-user-messages echo at consumption',
60
- };
61
55
  bin;
62
56
  timeoutMs;
63
57
  lastSession = null;
@@ -73,7 +67,7 @@ export class ClaudeCliRunner {
73
67
  this.lastSession?.interrupt();
74
68
  }
75
69
  startSession(spec, onEvent, opts = {}) {
76
- const args = buildClaudeArgs(spec, process.env, { replayUserMessages: supportsReplayUserMessages(this.bin) });
70
+ const args = buildClaudeArgs(spec);
77
71
  let child;
78
72
  try {
79
73
  child = nodeSpawn(this.bin, args, {
@@ -110,13 +104,10 @@ export class ClaudeCliRunner {
110
104
  child.stdin.on('error', (error) => { onEvent?.({ type: 'note', message: `claude: stdin write failed: ${error.message}` }); });
111
105
  let agentInputReady = false;
112
106
  let agentWritePending = false;
113
- // Stdin lines (by uuid) whose `result` has not arrived yet. Claude 2.1.280
114
- // merges a line written mid-turn into the running turn, and that ONE result
115
- // lists every line it covered in `user_message_uuids` (#505) — a per-line
116
- // counter left the runner busy forever after a merged follow-up.
117
- const unsettled = new Set();
118
- let queuedTurnPending = false;
119
- const submissions = new InputSubmissions();
107
+ // Prompt turns written to stdin whose `result` has not arrived yet. A
108
+ // follow-up accepted while the opening turn is still running makes this 2,
109
+ // and the opening result brings it back to 1, not 0.
110
+ let pendingPromptTurns = 0;
120
111
  const scheduleAutoEnd = () => {
121
112
  // Never arm the close window while an accepted turn is still running:
122
113
  // the timer the opening result would start here has nothing to cancel it,
@@ -124,7 +115,7 @@ export class ClaudeCliRunner {
124
115
  // result brings the count to 0 and arms the window as before.
125
116
  if (!opts.autoEndAfterFirstTurn || !stdinOpen || autoEndTimer || agentWritePending)
126
117
  return;
127
- if (unsettled.size > 0)
118
+ if (pendingPromptTurns > 0)
128
119
  return;
129
120
  autoEndTimer = setTimeout(() => {
130
121
  autoEndTimer = undefined;
@@ -135,37 +126,27 @@ export class ClaudeCliRunner {
135
126
  };
136
127
  let pendingMarkerAsk = false;
137
128
  let turnTextStart = 0;
138
- const sendMessage = (content, acknowledge, inputIds = []) => {
129
+ const sendMessage = (content, acknowledge) => {
139
130
  if (!stdinOpen)
140
131
  return false;
141
- // A line written while a turn runs joins that turn instead of opening one (#505).
142
- const opensTurn = unsettled.size === 0;
143
- if (opensTurn)
144
- queuedTurnPending = false;
145
132
  agentInputReady = false;
146
- if (opensTurn) {
147
- pendingMarkerAsk = false;
148
- turnTextStart = textChunks.length;
149
- }
133
+ pendingMarkerAsk = false;
134
+ turnTextStart = textChunks.length;
150
135
  // A follow-up inside the reopen window cancels the scheduled close.
151
136
  if (autoEndTimer) {
152
137
  clearTimeout(autoEndTimer);
153
138
  autoEndTimer = undefined;
154
139
  }
155
- const uuid = randomUUID();
156
140
  const line = JSON.stringify({
157
141
  type: 'user',
158
- uuid,
159
142
  message: { role: 'user', content },
160
143
  session_id: spec.sessionId,
161
144
  });
162
145
  try {
163
146
  child.stdin.write(`${line}\n`, acknowledge);
164
- unsettled.add(uuid);
165
- submissions.accept(uuid, inputIds, '');
166
- // A user message written to an idle session begins a turn (§7.1).
167
- if (opensTurn)
168
- emitUi(claudeTurnStarted);
147
+ pendingPromptTurns += 1;
148
+ // Each user message written to stdin begins a turn (§7.1).
149
+ emitUi(claudeTurnStarted);
169
150
  return true;
170
151
  }
171
152
  catch (err) {
@@ -263,18 +244,6 @@ export class ClaudeCliRunner {
263
244
  // describes the intentional stop rather than an agent failure.
264
245
  // Normalize only this precise wire shape so genuine result errors
265
246
  // (authentication, limits, malformed sessions) stay authoritative.
266
- if (queuedTurnPending && (msg.type === 'assistant' || msg.type === 'user' || msg.type === 'result')) {
267
- queuedTurnPending = false;
268
- emitUi(claudeTurnStarted);
269
- }
270
- // `--replay-user-messages` echoes a line when the model consumes it (#505).
271
- // Presentation-free: it is the user's own text, and it carries no tool_result.
272
- if (msg.type === 'user' && msg.isReplay === true) {
273
- const ids = typeof msg.uuid === 'string' ? submissions.consume(msg.uuid) : [];
274
- if (ids.length)
275
- opts.onAgentInputConsumed?.(ids);
276
- continue;
277
- }
278
247
  const mappedMessage = normalizeIntentionalTeardownResult(msg, terminatedByCezar);
279
248
  emitUi((state) => mapClaudeMessage(mappedMessage, state));
280
249
  let delta = 0;
@@ -296,25 +265,9 @@ export class ClaudeCliRunner {
296
265
  onEvent?.({ type: 'cost', usd: msg.total_cost_usd });
297
266
  }
298
267
  pendingMarkerAsk = parseAskMarker(textChunks.slice(turnTextStart).join('\n')) !== null;
299
- // The named lines are exact; `queued_turn_count: 0` is only a fallback, because a
300
- // line still in the pipe when the CLI computed this result is not covered by it.
301
- const settled = Array.isArray(msg.user_message_uuids) ? msg.user_message_uuids.map(String)
302
- : msg.queued_turn_count === 0 ? [...unsettled]
303
- : [...unsettled].slice(0, 1);
304
- // A line this result covered was read even if its replay echo was missed.
305
- // An error result settles its lines but proves nothing reached the model: they
306
- // stay pending, so a closing session returns them to the queue (#505 review).
307
- const covered = settled.flatMap(id => { unsettled.delete(id); return msg.is_error === true ? [] : submissions.consume(id); });
308
- if (covered.length)
309
- opts.onAgentInputConsumed?.(covered);
268
+ pendingPromptTurns = Math.max(0, pendingPromptTurns - 1);
310
269
  // A result is not idle if human stdin messages already queued later turns.
311
- agentInputReady = unsettled.size === 0;
312
- // A line written after this turn's last model call runs as the CLI's next
313
- // queued turn; its replay/result reports consumption then (#505). Announce
314
- // that turn when its first frame arrives, never speculatively: a line the
315
- // CLI never runs must not look like activity. Decided before the turn-end
316
- // callback, which may itself submit (and announce) the next prompt.
317
- queuedTurnPending = unsettled.size > 0;
270
+ agentInputReady = pendingPromptTurns === 0;
318
271
  onEvent?.({ type: 'turn-end' });
319
272
  scheduleAutoEnd();
320
273
  }
@@ -376,9 +329,8 @@ export class ClaudeCliRunner {
376
329
  const session = {
377
330
  result,
378
331
  sendMessage,
379
- sendAgentMessage: (content, inputIds = []) => {
380
- // #505: allowed mid-turn — the CLI steers the line into the running turn.
381
- if (!stdinOpen || pendingMarkerAsk || agentWritePending)
332
+ sendAgentMessage: (content) => {
333
+ if (!stdinOpen || !agentInputReady || pendingMarkerAsk || agentWritePending)
382
334
  return false;
383
335
  let resolve, reject;
384
336
  const acknowledged = new Promise((yes, no) => { resolve = yes; reject = no; });
@@ -396,7 +348,7 @@ export class ClaudeCliRunner {
396
348
  opts.onAgentInputReady?.();
397
349
  scheduleAutoEnd();
398
350
  }
399
- }, inputIds);
351
+ });
400
352
  if (!sent) {
401
353
  agentWritePending = false;
402
354
  child.off('close', closed);
@@ -428,26 +380,7 @@ export class ClaudeCliRunner {
428
380
  * keeps today's path: `CEZ_APPROVAL_GATE=1` opts into `acceptEdits` (#435).
429
381
  * `CEZ_CLAUDE_SETTING_SOURCES` optionally adds `--setting-sources`.
430
382
  */
431
- /** `--replay-user-messages` is the read signal (#505), but an older CLI rejects unknown
432
- * options at startup. Read the installed CLI's own `--help` once per binary; without the
433
- * flag, result coverage (`user_message_uuids`) still reports reads. */
434
- const replaySupport = new Map();
435
- export function supportsReplayUserMessages(bin) {
436
- const known = replaySupport.get(bin);
437
- if (known !== undefined)
438
- return known;
439
- let supported = false;
440
- try {
441
- supported = execFileSync(bin, ['--help'], { encoding: 'utf8', timeout: 5_000, stdio: ['ignore', 'pipe', 'ignore'] })
442
- .includes('--replay-user-messages');
443
- }
444
- catch {
445
- supported = false;
446
- }
447
- replaySupport.set(bin, supported);
448
- return supported;
449
- }
450
- export function buildClaudeArgs(spec, env = process.env, features = { replayUserMessages: true }) {
383
+ export function buildClaudeArgs(spec, env = process.env) {
451
384
  const args = [
452
385
  '--input-format',
453
386
  'stream-json',
@@ -455,9 +388,6 @@ export function buildClaudeArgs(spec, env = process.env, features = { replayUser
455
388
  'stream-json',
456
389
  '--verbose',
457
390
  ];
458
- // Echo each stdin line when the model consumes it: the consumption signal (#505).
459
- if (features.replayUserMessages)
460
- args.push('--replay-user-messages');
461
391
  const permissionMode = env.CEZ_CLAUDE_PERMISSION_MODE;
462
392
  if (permissionMode === 'bypass') {
463
393
  args.push('--dangerously-skip-permissions');