@intentic/sandbox-contract 1.340.0 → 1.341.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/dist/contracts/agent.contract.d.ts +220 -0
  2. package/dist/contracts/agent.contract.d.ts.map +1 -1
  3. package/dist/contracts/agents.contract.d.ts +70 -0
  4. package/dist/contracts/agents.contract.d.ts.map +1 -1
  5. package/dist/contracts/ci.contract.d.ts +5 -0
  6. package/dist/contracts/ci.contract.d.ts.map +1 -1
  7. package/dist/contracts/git.contract.d.ts +320 -0
  8. package/dist/contracts/git.contract.d.ts.map +1 -1
  9. package/dist/contracts/git.contract.js +28 -0
  10. package/dist/contracts/git.contract.js.map +1 -1
  11. package/dist/contracts/runner.contract.d.ts +82 -2
  12. package/dist/contracts/runner.contract.d.ts.map +1 -1
  13. package/dist/contracts/sessions.contract.d.ts +35 -0
  14. package/dist/contracts/sessions.contract.d.ts.map +1 -1
  15. package/dist/contracts/settings.contract.d.ts +2 -0
  16. package/dist/contracts/settings.contract.d.ts.map +1 -1
  17. package/dist/contracts/system.contract.d.ts +9 -0
  18. package/dist/contracts/system.contract.d.ts.map +1 -1
  19. package/dist/events/agent-events.d.ts +143 -0
  20. package/dist/events/agent-events.d.ts.map +1 -1
  21. package/dist/events/agent-events.js +3 -0
  22. package/dist/events/agent-events.js.map +1 -1
  23. package/dist/events/agent-words.d.ts +1 -0
  24. package/dist/events/agent-words.d.ts.map +1 -1
  25. package/dist/events/agent-words.js +2 -2
  26. package/dist/events/agent-words.js.map +1 -1
  27. package/dist/events/review.d.ts +70 -0
  28. package/dist/events/review.d.ts.map +1 -0
  29. package/dist/events/review.js +29 -0
  30. package/dist/events/review.js.map +1 -0
  31. package/dist/events/system-events.d.ts +6 -0
  32. package/dist/events/system-events.d.ts.map +1 -1
  33. package/dist/events/system-events.js +2 -0
  34. package/dist/events/system-events.js.map +1 -1
  35. package/dist/events/transcript.d.ts +210 -0
  36. package/dist/events/transcript.d.ts.map +1 -1
  37. package/dist/events/transcript.js +2 -0
  38. package/dist/events/transcript.js.map +1 -1
  39. package/dist/events/undelivered.d.ts +6 -0
  40. package/dist/events/undelivered.d.ts.map +1 -0
  41. package/dist/events/undelivered.js +9 -0
  42. package/dist/events/undelivered.js.map +1 -0
  43. package/dist/index.d.ts +703 -42
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/models/plan-pools.d.ts.map +1 -1
  46. package/dist/models/plan-pools.js +2 -2
  47. package/dist/models/plan-pools.js.map +1 -1
  48. package/dist/netd/generated/browser-wire.d.ts +2 -0
  49. package/dist/netd/generated/browser-wire.d.ts.map +1 -1
  50. package/dist/protocol/peer-dial.d.ts +2 -1
  51. package/dist/protocol/peer-dial.d.ts.map +1 -1
  52. package/dist/protocol/peer-dial.js.map +1 -1
  53. package/dist/schemas/ci.d.ts +16 -0
  54. package/dist/schemas/ci.d.ts.map +1 -1
  55. package/dist/schemas/ci.js +9 -0
  56. package/dist/schemas/ci.js.map +1 -1
  57. package/dist/schemas/git/index-run.d.ts +201 -0
  58. package/dist/schemas/git/index-run.d.ts.map +1 -0
  59. package/dist/schemas/git/index-run.js +48 -0
  60. package/dist/schemas/git/index-run.js.map +1 -0
  61. package/dist/schemas/providers/plan-limits.d.ts +2 -0
  62. package/dist/schemas/providers/plan-limits.d.ts.map +1 -1
  63. package/dist/schemas/providers/plan-limits.js +4 -0
  64. package/dist/schemas/providers/plan-limits.js.map +1 -1
  65. package/dist/schemas/settings.d.ts +2 -0
  66. package/dist/schemas/settings.d.ts.map +1 -1
  67. package/dist/schemas/settings.js +1 -0
  68. package/dist/schemas/settings.js.map +1 -1
  69. package/dist/schemas/voice.d.ts +3 -0
  70. package/dist/schemas/voice.d.ts.map +1 -1
  71. package/dist/schemas/voice.js +29 -1
  72. package/dist/schemas/voice.js.map +1 -1
  73. package/dist/state/definition.d.ts +4 -0
  74. package/dist/state/definition.d.ts.map +1 -1
  75. package/dist/text/packed-formats.d.ts +2 -0
  76. package/dist/text/packed-formats.d.ts.map +1 -0
  77. package/dist/text/packed-formats.js +8 -0
  78. package/dist/text/packed-formats.js.map +1 -0
  79. package/dist/text/transcript-fold.d.ts +1 -1
  80. package/dist/text/transcript-fold.d.ts.map +1 -1
  81. package/dist/text/transcript-fold.js +14 -25
  82. package/dist/text/transcript-fold.js.map +1 -1
  83. package/dist/text/transcript-inline.d.ts +8 -0
  84. package/dist/text/transcript-inline.d.ts.map +1 -0
  85. package/dist/text/transcript-inline.js +28 -0
  86. package/dist/text/transcript-inline.js.map +1 -0
  87. package/package.json +5 -5
  88. package/src/contracts/git.contract.ts +33 -0
  89. package/src/events/agent-events.ts +7 -0
  90. package/src/events/agent-words.test.ts +6 -0
  91. package/src/events/agent-words.ts +4 -2
  92. package/src/events/review.ts +44 -0
  93. package/src/events/system-events.ts +6 -0
  94. package/src/events/transcript.ts +3 -0
  95. package/src/events/undelivered.ts +15 -0
  96. package/src/models/plan-pools.test.ts +12 -0
  97. package/src/models/plan-pools.ts +3 -2
  98. package/src/netd/generated/browser-wire.json +13 -0
  99. package/src/netd/generated/browser-wire.ts +1 -1
  100. package/src/protocol/peer-dial.ts +4 -2
  101. package/src/schemas/ci.ts +15 -0
  102. package/src/schemas/git/index-run.ts +80 -0
  103. package/src/schemas/providers/plan-limits.ts +8 -0
  104. package/src/schemas/settings.ts +4 -0
  105. package/src/schemas/voice.ts +40 -1
  106. package/src/text/packed-formats.ts +17 -0
  107. package/src/text/transcript-fold.ts +20 -35
  108. package/src/text/transcript-inline.test.ts +43 -0
  109. package/src/text/transcript-inline.ts +38 -0
@@ -1,10 +1,12 @@
1
1
  import { cancelledRequests, settledRequests } from "../policy/request-status.js";
2
+ import { drawInline, supersedeEarlier } from "./transcript-inline.js";
2
3
  import { REQUEST_FIELDS, holdsRequest, isAwaitingDecision, } from "../events/transcript.js";
3
4
  import { contextTrimLine, contextTrimNotice } from "../schemas/context-trim.js";
4
5
  import { keptWarmLine, keptWarmNotice } from "../schemas/keep-warm.js";
5
6
  import { handedOffLine, handedOffNotice } from "../schemas/providers/handoff.js";
6
7
  import { isLandConflict } from "../events/land-conflict.js";
7
8
  import { turnedAwayCode } from "../policy/turned-away.js";
9
+ import { undeliveredRow } from "../events/undelivered.js";
8
10
  import { mentionedPathTokens } from "./mentions.js";
9
11
  import { unspokenPromptRow } from "../events/agent-words.js";
10
12
  import { needRowText } from "../events/need-wake.js";
@@ -121,9 +123,6 @@ const landedRow = (event) => {
121
123
  };
122
124
  };
123
125
  const failureOf = (event) => event.code === undefined ? { message: event.message } : { message: event.message, error: event.code };
124
- const undelivered = (unattended) => unattended
125
- ? `Nothing ran, and nothing is held: this run started on its own, so there is no message waiting to be sent again.`
126
- : `Your message was not delivered: it is held for you to send again.`;
127
126
  const memoryPress = (event) => event.memory === undefined ? "sendAnyway" : "sandboxMemory";
128
127
  const heldRow = (event) => {
129
128
  const unattended = event.unattended === true;
@@ -141,11 +140,7 @@ const heldRow = (event) => {
141
140
  };
142
141
  }
143
142
  if (!memory || unattended) {
144
- return {
145
- role: "notice",
146
- text: `${event.message} ${undelivered(unattended)}`,
147
- noticeCode: noticeCode({ code: "undelivered", params: { ...said, unattended: unattended || undefined } }),
148
- };
143
+ return undeliveredRow(said, unattended);
149
144
  }
150
145
  return {
151
146
  role: "notice",
@@ -325,12 +320,7 @@ export class TranscriptFold {
325
320
  case "steer":
326
321
  return this.steered(event);
327
322
  case "checkpoint":
328
- return this.stampOpener((row) => {
329
- row.checkpointId = event.id;
330
- if (event.index !== undefined) {
331
- row.rewindIndex = event.index;
332
- }
333
- });
323
+ return this.stampOpener((row) => Object.assign(row, { checkpointId: event.id }, event.index === undefined ? {} : { rewindIndex: event.index }));
334
324
  case "preamble":
335
325
  return event.notes.length === 0 ? [] : this.stampOpener((row) => (row.notes = [...event.notes]));
336
326
  case "prompt_cache": {
@@ -343,7 +333,7 @@ export class TranscriptFold {
343
333
  case "handoff":
344
334
  return this.pushRow({ role: "notice", text: handedOffLine(event), noticeCode: noticeCode(handedOffNotice(event)) });
345
335
  case "worktree":
346
- return event.sync === undefined ? [] : this.synced(event.sync);
336
+ return this.synced(event.sync);
347
337
  case "landed":
348
338
  return this.pushRow(landedRow(event));
349
339
  case "compact":
@@ -403,7 +393,8 @@ export class TranscriptFold {
403
393
  case "credential_offer":
404
394
  return this.park(event.requestId, { credentialOffer: { requestId: event.requestId, offer: event.offer, status: "pending" } });
405
395
  case "page":
406
- return this.showPage(event.page);
396
+ case "review":
397
+ return this.showInline(event);
407
398
  case "page_ask":
408
399
  return this.park(event.requestId, { pageAsk: { requestId: event.requestId, page: event.page, status: "pending" } });
409
400
  case "need":
@@ -453,17 +444,12 @@ export class TranscriptFold {
453
444
  return [];
454
445
  }
455
446
  }
456
- showPage(page) {
457
- const patches = [];
458
- const earlier = this.rows.findLastIndex((row) => row.page !== undefined && row.page.id === page.id && row.page.superseded !== true);
459
- if (earlier !== -1) {
460
- this.rows[earlier].page = { ...this.rows[earlier].page, superseded: true };
461
- patches.push(this.replace(earlier));
462
- }
447
+ showInline(event) {
448
+ const earlier = supersedeEarlier(this.rows, event);
463
449
  const [index, opened] = this.open();
464
- this.rows[index].page = page;
450
+ drawInline(this.rows[index], event);
465
451
  this.bubble = undefined;
466
- return [...patches, ...opened, this.replace(index)];
452
+ return [...(earlier === undefined ? [] : [this.replace(earlier)]), ...opened, this.replace(index)];
467
453
  }
468
454
  steered(event) {
469
455
  this.steeredIn = true;
@@ -678,6 +664,9 @@ export class TranscriptFold {
678
664
  return [{ op: "tool", index: place.row, tool: structuredClone(ownFields(place.tool)), ...(place.parent === undefined ? {} : { parent: place.parent }) }];
679
665
  }
680
666
  synced(sync) {
667
+ if (sync === undefined) {
668
+ return [];
669
+ }
681
670
  const opener = this.opener === undefined ? undefined : this.rows[this.opener];
682
671
  const told = opener !== undefined && isLandConflict(opener.text) ? { ...sync, blocked: [] } : sync;
683
672
  const text = syncLine(told);
@@ -1 +1 @@
1
- {"version":3,"file":"transcript-fold.js","sourceRoot":"","sources":["../../src/text/transcript-fold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transcript-fold.js","sourceRoot":"","sources":["../../src/text/transcript-fold.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { AgentEvent } from "../events/agent-events.js";
2
+ import type { TranscriptRow } from "../events/transcript.js";
3
+ export type InlineEvent = Extract<AgentEvent, {
4
+ kind: "page" | "review";
5
+ }>;
6
+ export declare const supersedeEarlier: (rows: TranscriptRow[], event: InlineEvent) => number | undefined;
7
+ export declare const drawInline: (row: TranscriptRow, event: InlineEvent) => void;
8
+ //# sourceMappingURL=transcript-inline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcript-inline.d.ts","sourceRoot":"","sources":["../../src/text/transcript-inline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAM7D,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE;IAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;CAAE,CAAC,CAAC;AAM3E,eAAO,MAAM,gBAAgB,SAAU,aAAa,EAAE,SAAS,WAAW,KAAG,MAAM,GAAG,SAgBrF,CAAC;AAEF,eAAO,MAAM,UAAU,QAAS,aAAa,SAAS,WAAW,KAAG,IAMnE,CAAC"}
@@ -0,0 +1,28 @@
1
+ const drawnOf = (row, kind) => kind === "page" ? row.page : row.review;
2
+ export const supersedeEarlier = (rows, event) => {
3
+ const id = event.kind === "page" ? event.page.id : event.review.id;
4
+ const index = rows.findLastIndex((row) => {
5
+ const drawn = drawnOf(row, event.kind);
6
+ return drawn !== undefined && drawn.id === id && drawn.superseded !== true;
7
+ });
8
+ const row = rows[index];
9
+ if (row === undefined) {
10
+ return undefined;
11
+ }
12
+ if (event.kind === "page" && row.page !== undefined) {
13
+ row.page = { ...row.page, superseded: true };
14
+ }
15
+ else if (event.kind === "review" && row.review !== undefined) {
16
+ row.review = { ...row.review, superseded: true };
17
+ }
18
+ return index;
19
+ };
20
+ export const drawInline = (row, event) => {
21
+ if (event.kind === "page") {
22
+ row.page = event.page;
23
+ }
24
+ else {
25
+ row.review = event.review;
26
+ }
27
+ };
28
+ //# sourceMappingURL=transcript-inline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcript-inline.js","sourceRoot":"","sources":["../../src/text/transcript-inline.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,GAAG,CAAC,GAAkB,EAAE,IAAyB,EAAkF,EAAE,CAC9I,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;AAG5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAqB,EAAE,KAAkB,EAAsB,EAAE;IAC9F,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACvC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC/E,CAAC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAClD,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACjD,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7D,GAAG,CAAC,MAAM,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAkB,EAAE,KAAkB,EAAQ,EAAE;IACvE,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACxB,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IAC1B,CAAC;SAAM,CAAC;QACJ,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC9B,CAAC;AACL,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intentic/sandbox-contract",
3
- "version": "1.340.0",
3
+ "version": "1.341.0",
4
4
  "description": "oRPC wire contract for the intentic sandbox daemon, shared by the daemon and its browser client",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -361,10 +361,10 @@
361
361
  }
362
362
  },
363
363
  "dependencies": {
364
- "@intentic/base": "1.340.0",
365
- "@intentic/constants": "1.340.0",
366
- "@intentic/extension-manifest": "1.340.0",
367
- "@intentic/registry": "1.340.0",
364
+ "@intentic/base": "1.341.0",
365
+ "@intentic/constants": "1.341.0",
366
+ "@intentic/extension-manifest": "1.341.0",
367
+ "@intentic/registry": "1.341.0",
368
368
  "@orpc/contract": "1.15.4",
369
369
  "tslib": "2.8.1",
370
370
  "zod": "4.6.5"
@@ -45,6 +45,7 @@ import {
45
45
  StashPushSchema,
46
46
  StashRefParamSchema,
47
47
  } from "../schemas/git/git-history.js";
48
+ import { IndexRunSchema, IndexRunStartSchema } from "../schemas/git/index-run.js";
48
49
  import { FileDiffSchema } from "../schemas/history.js";
49
50
  import { OkSchema, RepoParamSchema } from "../schemas/shared.js";
50
51
 
@@ -465,6 +466,38 @@ export const gitContract = {
465
466
  })
466
467
  .input(RepoParamSchema)
467
468
  .output(OkSchema),
469
+ // Stage-all and commit-all as runs (index-run.ts): a stage over tens of thousands of files outlives the browser's
470
+ // header deadline, so it starts, answers at once and is polled, like a push.
471
+ indexRunStart: procedure
472
+ .route({
473
+ method: "POST",
474
+ path: "/git/{repo}/index-run",
475
+ summary: "Start staging or committing",
476
+ description:
477
+ "Starts a stage or a commit and answers at once with the run; poll indexRunState for its progress and verdict. One per repository: starting the same thing again while it runs joins it, and starting something different is refused until it settles. A stage that would take thousands of files or hundreds of megabytes stops before touching the index and says what it found, unless `confirmed` is set.",
478
+ })
479
+ .input(IndexRunStartSchema)
480
+ .output(IndexRunSchema),
481
+ indexRunState: procedure
482
+ .route({
483
+ method: "GET",
484
+ path: "/git/{repo}/index-run",
485
+ summary: "How the stage or commit is going",
486
+ description:
487
+ "The repository's latest stage or commit run: its phase and file counts while it runs, then its verdict, the commit's answer, or what held it at the guardrail. Idle when none has been started since the sandbox last started.",
488
+ })
489
+ .input(RepoParamSchema)
490
+ .output(IndexRunSchema),
491
+ indexRunCancel: procedure
492
+ .route({
493
+ method: "POST",
494
+ path: "/git/{repo}/index-run/cancel",
495
+ summary: "Stop the stage or commit",
496
+ description:
497
+ "Kills the git the run is waiting on. It settles as cancelled; a stage stopped part way leaves the index as git last wrote it, which unstaging takes back, and a commit stopped before git recorded it records nothing.",
498
+ })
499
+ .input(RepoParamSchema)
500
+ .output(OkSchema),
468
501
  files: procedure
469
502
  .route({
470
503
  method: "GET",
@@ -13,6 +13,7 @@ import { RetryLadderSchema } from "../schemas/turn-break.js";
13
13
  import { HandedOffSchema, HandoffOfferSchema } from "../schemas/providers/handoff.js";
14
14
  import { AgentCommandSchema, browserHelpRequest, capabilityOfferRequest, CapabilityOutcomeSchema, ContextUsageSchema, credentialOfferRequest, CredentialReceiptSchema, pageAskRequest, PageSchema, paymentOfferRequest, PaymentReceiptSchema, PermissionRequestSchema, PlanRequestSchema, QuestionRequestSchema, terminalHelpRequest, TodoItemSchema, ToolCallContentSchema, ToolCallLocationSchema, ToolCallStatusSchema, ToolKindSchema } from "./requests.js";
15
15
  import { TranscriptPatchSchema, TranscriptRowSchema, TurnNoteSchema } from "./transcript.js";
16
+ import { ReviewFindingsSchema } from "./review.js";
16
17
  import { agentNoticeEvent, agentStatusEvent } from "./agent-ui.js";
17
18
 
18
19
  // Every frame an agent turn streams, as one `kind`-discriminated union: turn facts (session, standing, cost) and the
@@ -239,6 +240,9 @@ export const AgentEventSchema = z.discriminatedUnion("kind", [
239
240
  // A page the agent showed (its `show_page` tool): drawn inline where the turn stands, in a sealed frame. Parks
240
241
  // nothing. A page whose id an earlier one already holds is a redraw, and the earlier row folds to a line.
241
242
  z.object({ kind: z.literal("page"), page: PageSchema }),
243
+ // A code review's findings (events/review.ts), drawn inline as one card. A review whose id an earlier one holds is
244
+ // its re-report, its fixes applied, and the earlier card folds to a line, as a page's redraw does.
245
+ z.object({ kind: z.literal("review"), review: ReviewFindingsSchema }),
242
246
  // A page the agent showed to be answered (`ask_page`): parks the turn until the page sends its answer back, or the
243
247
  // person dismisses it. Not journalled for restore: the tool call waiting on it dies with the daemon.
244
248
  z.object({ kind: z.literal("page_ask"), ...pageAskRequest }),
@@ -279,6 +283,9 @@ export const AgentEventSchema = z.discriminatedUnion("kind", [
279
283
  "claude-token-refused",
280
284
  // The account authenticates and has real usage pools, but the org disabled Claude Code for this seat.
281
285
  "claude-not-entitled",
286
+ // Any other provider's account signs in but is refused service outright, for every model (Cursor's
287
+ // `[role_forbidden]` for a non-billable admin): filed against the account, so placement skips it.
288
+ "account-not-entitled",
282
289
  // The provider failed transiently and in-turn retries did not outlast it; the daemon retries on
283
290
  // backoff.
284
291
  "provider-outage",
@@ -21,6 +21,12 @@ describe("another agent's words", () => {
21
21
  expect(agentWordsOf(prompt)).toEqual({ kind: "peer", from: "sharp-shale-htw8", title: "Bun migration", sent: prompt });
22
22
  });
23
23
 
24
+ // 2026-10-17: a child its parent cancelled was reported to it as finished.
25
+ it("says a stopped child was stopped, and still reads it back as a child's report", () => {
26
+ expect(report({ stopped: true }).split("\n", 1)[0]).toMatch(/ was stopped\.$/u);
27
+ expect(agentWordsOf(report({ stopped: true }))).toMatchObject({ kind: "child" });
28
+ });
29
+
24
30
  it("round-trips a child's report, finished or failed", () => {
25
31
  expect(agentWordsOf(report())).toMatchObject({ kind: "child", from: "sub-x7", title: "Port the parser" });
26
32
  expect(agentWordsOf(report()) ?? {}).not.toHaveProperty("failed");
@@ -40,6 +40,8 @@ export interface ChildReportFields {
40
40
  readonly child: string;
41
41
  readonly title: string | undefined;
42
42
  readonly failed: boolean;
43
+ // Stopped by a person or its parent rather than ending by itself: said as such, never as finished.
44
+ readonly stopped?: boolean | undefined;
43
45
  readonly report: string;
44
46
  // Undefined when nothing of the child's work was seen, which is not a verdict.
45
47
  readonly verification: SubagentVerification | undefined;
@@ -70,7 +72,7 @@ const verificationLine = (verification: SubagentVerification | undefined): strin
70
72
  export const childReportPrompt = (fields: ChildReportFields): string => {
71
73
  const verification = verificationLine(fields.verification);
72
74
  return [
73
- `${CHILD_OPENING}${senderOf(fields.child, fields.title)} ${fields.failed ? "failed" : "finished"}.`,
75
+ `${CHILD_OPENING}${senderOf(fields.child, fields.title)} ${fields.failed ? "failed" : fields.stopped === true ? "was stopped" : "finished"}.`,
74
76
  ...(verification === undefined ? [] : [verification]),
75
77
  "",
76
78
  fields.report.trim() === "" ? "(It ended without a closing report.)" : fields.report.trim(),
@@ -81,7 +83,7 @@ export const childReportPrompt = (fields: ChildReportFields): string => {
81
83
  };
82
84
 
83
85
  const PEER_LINE = /^Message from another conversation in this workspace: `([^`]+)`(?: \("(.*)"\))?\.$/u;
84
- const CHILD_LINE = /^Report from a (?:subagent|child agent) you started: `([^`]+)`(?: \("(.*)"\))? (finished|failed)\.$/u;
86
+ const CHILD_LINE = /^Report from a (?:subagent|child agent) you started: `([^`]+)`(?: \("(.*)"\))? (finished|failed|was stopped)\.$/u;
85
87
 
86
88
  const peerOf = (first: string, prompt: string): TranscriptAgentWords | undefined => {
87
89
  const match = first.startsWith(PEER_OPENING) ? PEER_LINE.exec(first) : null;
@@ -0,0 +1,44 @@
1
+ import { z } from "zod";
2
+
3
+ // A code review's findings in one shape, whichever harness ran the review: Claude Code's `/code-review` reports them
4
+ // through its ReportFindings tool, Codex's `review/start` ends on a review item whose comments are read into the same
5
+ // rows. The chat draws one card per review (row.review), the same card for either; what the reviewer said around its
6
+ // findings is prose on the bubble, never repeated on the card.
7
+
8
+ // How hard Claude Code's review looked: from a few high-confidence findings (low) to every one it could verify (max).
9
+ export const REVIEW_LEVELS = ["low", "medium", "high", "xhigh", "max"] as const;
10
+ export const ReviewLevelSchema = z.enum(REVIEW_LEVELS);
11
+ export type ReviewLevel = z.infer<typeof ReviewLevelSchema>;
12
+
13
+ export const ReviewFindingSchema = z.object({
14
+ file: z.string().describe("The file the finding is in, as the reviewer named it: relative to the checkout, or absolute."),
15
+ line: z.number().int().positive().optional().describe("The 1-based line it anchors to."),
16
+ endLine: z.number().int().positive().optional().describe("The last line of the range it covers, where the reviewer named a range."),
17
+ summary: z.string().describe("The defect in one sentence."),
18
+ title: z.string().optional().describe("The finding as a short label, for a row that has no room for the sentence."),
19
+ scenario: z.string().optional().describe("The concrete inputs or state that lead to the wrong output or the crash."),
20
+ body: z.string().optional().describe("The reviewer's own explanation of the finding, where it wrote one beyond the summary."),
21
+ category: z.string().optional().describe("What kind of finding it is: correctness, simplification, efficiency, and so on."),
22
+ verdict: z.enum(["CONFIRMED", "PLAUSIBLE"]).optional().describe("Whether a verification pass reproduced it, or only found it believable."),
23
+ priority: z.number().int().min(0).max(3).optional().describe("How urgent the reviewer rated it: 0 is the most urgent, as Codex's P0 to P3."),
24
+ outcome: z
25
+ .enum(["fixed", "skipped", "no_change_needed"])
26
+ .optional()
27
+ .describe("What happened to it, on a review re-reported after its fixes were applied."),
28
+ });
29
+ export type ReviewFinding = z.infer<typeof ReviewFindingSchema>;
30
+
31
+ export const ReviewFindingsSchema = z.object({
32
+ id: z.string().min(1).describe("The review's own id: a re-report of the same review (its fixes applied) carries it again and redraws the card."),
33
+ source: z.enum(["claude", "codex"]).describe("Which harness's reviewer reported it."),
34
+ level: ReviewLevelSchema.optional().describe("The effort the review ran at, where the reviewer has levels."),
35
+ findings: z.array(ReviewFindingSchema).describe("What it found, most severe first. Empty when nothing survived."),
36
+ superseded: z.boolean().optional().describe("A later report of this review stands further down the conversation, so this one is drawn folded."),
37
+ });
38
+ export type ReviewFindings = z.infer<typeof ReviewFindingsSchema>;
39
+
40
+ // Each reviewer's own cap: ReportFindings takes 32; a Codex review's comments are not capped, so a card says how many
41
+ // were left off rather than drawing a hundred rows.
42
+ export const REVIEW_FINDINGS_MAX = 50;
43
+ // Prose a finding carries is the model's, and unbounded: kept to what a card can draw.
44
+ export const REVIEW_TEXT_MAX = 2000;
@@ -58,6 +58,12 @@ export const HelloSchema = z.object({
58
58
  // `rawFingerprints` is what `shapes` is for a procedure, under the name the rest of the code gives it.
59
59
  rawRoutes: z.array(z.string()).optional(),
60
60
  rawFingerprints: z.record(z.string(), z.string()).optional(),
61
+ // The codings `POST /workspace/upload` and `POST /workspace/upload-archive` decode a request body from
62
+ // (`Content-Encoding`). Absent means a daemon that writes whatever bytes arrive, so the browser sends them plain.
63
+ uploadEncodings: z.array(z.string()).optional(),
64
+ // The codings the voice sockets speak besides PCM when asked (`codec=opus`, schemas/voice.ts). Absent or empty: PCM
65
+ // only, which is every daemon from before the field and one whose Opus binding did not load.
66
+ voiceCodecs: z.array(z.string()).optional(),
61
67
  // `<version>:<newest mtime of the compiled tree>`, as every release since 1.0.0 sends it. The version at its head
62
68
  // is what the browser holds against the oldest daemon it supports (state/daemon-floor.ts), so it stays first.
63
69
  build: z.string().optional(),
@@ -8,6 +8,7 @@ import { HeldEndingSchema, RetryLadderSchema } from "../schemas/turn-break.js";
8
8
  import { HandoffOfferSchema } from "../schemas/providers/handoff.js";
9
9
  import { NoticeCodeSchema } from "./sandbox-notice.js";
10
10
  import { TranscriptAgentNoticeSchema } from "./agent-ui.js";
11
+ import { ReviewFindingsSchema } from "./review.js";
11
12
  import type { ToolCallContent, ToolCallLocation, ToolCallStatus, ToolKind } from "./requests.js";
12
13
  import {
13
14
  browserHelpRequest,
@@ -387,6 +388,8 @@ export const TranscriptRowSchema = z.object({
387
388
  backgroundJob: TranscriptBackgroundJobSchema.optional().describe("The background job this row marks the start of."),
388
389
  // Not a card: a page parks nothing, it is part of what the agent said. On the bubble whose tool call showed it.
389
390
  page: PageSchema.optional().describe("A page the agent showed here, drawn inline."),
391
+ // Not a card either: a review's findings are what the agent said, drawn as one block on the bubble that reported them.
392
+ review: ReviewFindingsSchema.optional().describe("A code review's findings the agent reported here, drawn inline."),
390
393
  pageAsk: TranscriptPageAskSchema.optional().describe("A page the agent asked to be answered on, and what it sent back."),
391
394
  credentialOffer: TranscriptCredentialOfferSchema.optional().describe(
392
395
  "The gated credential this row asked to use, who may release it, and who did.",
@@ -0,0 +1,15 @@
1
+ import { noticeCode } from "./sandbox-notice.js";
2
+ import type { TranscriptRow } from "./transcript.js";
3
+
4
+ // The row a refusal that ran nothing leaves when the conversation's queue holds the words (transcript-fold's heldRow).
5
+ // A turn somebody typed is held in its conversation's queue for another press; a turn that started itself (an
6
+ // automation, a loop, a watch wake) has no typed message and nobody watching, so promising a resend there names a
7
+ // composer the reader is not looking at. Neither version promises a retry: whether one comes is the scheduler's
8
+ // decision, not this row's to state. The code carries the same fact, so the editor's localized line agrees.
9
+ export const undeliveredRow = (said: { readonly message: string; readonly error?: string }, unattended: boolean): TranscriptRow => ({
10
+ role: "notice",
11
+ text: unattended
12
+ ? `${said.message} Nothing ran, and nothing is held: this run started on its own, so there is no message waiting to be sent again.`
13
+ : `${said.message} Your message was not delivered: it is held for you to send again.`,
14
+ noticeCode: noticeCode({ code: "undelivered", params: { ...said, unattended: unattended || undefined } }),
15
+ });
@@ -258,6 +258,18 @@ test("a refusal stands until a later reading contradicts it, and never past its
258
258
  expect(refusalVerdict(refusal({ kind: "limit", account: "a" }), [])).toBe("standing");
259
259
  });
260
260
 
261
+ // 2026-10-17: Codex's team credit ran out while its weekly pool read 57% on the shared credential.
262
+ test("an allowance no reading measures stands against every reading, until the provider's own reset", () => {
263
+ const room = at(Date.now() + 60_000, window({ kind: "seven_day", utilization: 43 }));
264
+ const credit = refusal({ kind: "limit", unmetered: true, at: Date.now(), resetsAt: Math.floor(Date.now() / 1000) + 3_600 });
265
+ expect(refusalVerdict(credit, [{ account: "a", usage: room }, { account: "b", usage: room }])).toBe("standing");
266
+ expect(refusalVerdict({ ...credit, resetsAt: Math.floor(Date.now() / 1000) - 1 }, [{ account: "a", usage: room }, { account: "b", usage: room }])).toBe(
267
+ "answered",
268
+ );
269
+ expect(refusalVerdict({ ...credit, resetsAt: undefined }, [{ account: "a", usage: room }])).toBe("standing");
270
+ });
271
+
272
+
261
273
  // Codex's usage endpoint kept reading room while every turn was refused "try again at 3:38 PM": the provider's own
262
274
  // instant is what ends the refusal, where it is known which account it refused.
263
275
  test("a spent allowance with the provider's own reset stands until that instant, whatever a later reading says", () => {
@@ -188,9 +188,10 @@ export interface ServiceFacts {
188
188
 
189
189
  // A spent allowance is over once a reading with room lands after it; a refused credential once any reading does (the
190
190
  // token worked). Nothing a reading says answers an entitlement refusal: a seatless account authenticates and reads fine.
191
+ // Nor does any reading answer an allowance it does not measure (`unmetered`: an admin's credit).
191
192
  const answers = (refusal: ProviderRefusal, facts: ServiceFacts): boolean => {
192
193
  const measuredAt = facts.usage?.measuredAt;
193
- if (refusal.kind === "entitlement" || measuredAt === undefined || measuredAt <= refusal.at) {
194
+ if (refusal.kind === "entitlement" || refusal.unmetered === true || measuredAt === undefined || measuredAt <= refusal.at) {
194
195
  return false;
195
196
  }
196
197
  if (refusal.kind === "auth") {
@@ -218,7 +219,7 @@ export const refusalVerdict = (
218
219
  // only one), its own words outrank a usage endpoint that kept showing room while it refused: over at that instant,
219
220
  // and not before. A nameless refusal over several accounts is still answered by any of them reading room, since the
220
221
  // translator benches the one it refused and routes on.
221
- if (refusal.kind === "limit" && refusal.resetsAt !== undefined && (refusal.account !== undefined || accounts.length <= 1)) {
222
+ if (refusal.kind === "limit" && refusal.resetsAt !== undefined && (refusal.account !== undefined || accounts.length <= 1 || refusal.unmetered === true)) {
222
223
  return refusal.resetsAt * 1000 <= now ? "answered" : "standing";
223
224
  }
224
225
  return (refusal.account === undefined ? accounts : named).some((facts) => answers(refusal, facts)) ? "answered" : "standing";