@morty-build/cli 0.4.3 → 0.4.7

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 (91) hide show
  1. package/dist/{chunk-DVSX6ALB.js → chunk-J56NGK6J.js} +763 -780
  2. package/dist/{chunk-DVSX6ALB.js.map → chunk-J56NGK6J.js.map} +4 -4
  3. package/dist/{chunk-OEX63ZJX.js → chunk-TLYWGG4Q.js} +2 -2
  4. package/dist/{chunk-OEX63ZJX.js.map → chunk-TLYWGG4Q.js.map} +1 -1
  5. package/dist/{cli-3TKBBY7N.js → cli-MJKKZEI4.js} +3 -3
  6. package/dist/cli.js +2 -2
  7. package/dist/engine/generated/acp-session-store-migrations.d.ts +6 -0
  8. package/dist/engine/generated/acp-session-store-migrations.d.ts.map +1 -1
  9. package/dist/engine/generated/acp-session-store-migrations.js +9 -1
  10. package/dist/engine/generated/acp-session-store-migrations.js.map +1 -1
  11. package/dist/engine/runtime/command/registry/prompt.d.ts.map +1 -1
  12. package/dist/engine/runtime/command/registry/prompt.js +16 -3
  13. package/dist/engine/runtime/command/registry/prompt.js.map +1 -1
  14. package/dist/engine/schema/{command-cancellation/cancelled-command.d.ts → acp-session-store/command-outcome.d.ts} +10 -7
  15. package/dist/engine/schema/acp-session-store/command-outcome.d.ts.map +1 -0
  16. package/dist/engine/schema/acp-session-store/command-outcome.js +10 -0
  17. package/dist/engine/schema/acp-session-store/command-outcome.js.map +1 -0
  18. package/dist/engine/schema/acp-session-store/{execution-receipt.d.ts → command.d.ts} +20 -32
  19. package/dist/engine/schema/acp-session-store/command.d.ts.map +1 -0
  20. package/dist/engine/schema/acp-session-store/command.js +24 -0
  21. package/dist/engine/schema/acp-session-store/command.js.map +1 -0
  22. package/dist/engine/schema/acp-session-store/index.d.ts +2 -2
  23. package/dist/engine/schema/acp-session-store/index.d.ts.map +1 -1
  24. package/dist/engine/schema/acp-session-store/index.js +2 -2
  25. package/dist/engine/schema/acp-session-store/index.js.map +1 -1
  26. package/dist/engine/session/api/session-api.d.ts +0 -2
  27. package/dist/engine/session/api/session-api.d.ts.map +1 -1
  28. package/dist/engine/session/api/session-api.js.map +1 -1
  29. package/dist/engine/session/api/session-layer.d.ts.map +1 -1
  30. package/dist/engine/session/api/session-layer.js +3 -7
  31. package/dist/engine/session/api/session-layer.js.map +1 -1
  32. package/dist/engine/session/prompt/execute-prompt.d.ts +4 -9
  33. package/dist/engine/session/prompt/execute-prompt.d.ts.map +1 -1
  34. package/dist/engine/session/prompt/execute-prompt.js +9 -19
  35. package/dist/engine/session/prompt/execute-prompt.js.map +1 -1
  36. package/dist/engine/session/prompt/prompt-lifecycle.d.ts +2 -1
  37. package/dist/engine/session/prompt/prompt-lifecycle.d.ts.map +1 -1
  38. package/dist/engine/session/prompt/prompt-lifecycle.js +9 -6
  39. package/dist/engine/session/prompt/prompt-lifecycle.js.map +1 -1
  40. package/dist/engine/session/turn/active-turn.d.ts +17 -2
  41. package/dist/engine/session/turn/active-turn.d.ts.map +1 -1
  42. package/dist/engine/session/turn/active-turn.js +23 -15
  43. package/dist/engine/session/turn/active-turn.js.map +1 -1
  44. package/dist/engine/session/turn/execution-receipts.d.ts +28 -21
  45. package/dist/engine/session/turn/execution-receipts.d.ts.map +1 -1
  46. package/dist/engine/session/turn/execution-receipts.js +173 -259
  47. package/dist/engine/session/turn/execution-receipts.js.map +1 -1
  48. package/dist/engine/session/turn/session-execution.d.ts +7 -10
  49. package/dist/engine/session/turn/session-execution.d.ts.map +1 -1
  50. package/dist/engine/session/turn/session-execution.js +13 -19
  51. package/dist/engine/session/turn/session-execution.js.map +1 -1
  52. package/dist/engine/session/turn/session-turns.d.ts +2 -3
  53. package/dist/engine/session/turn/session-turns.d.ts.map +1 -1
  54. package/dist/engine/session/turn/session-turns.js.map +1 -1
  55. package/dist/engine/storage/session/command-ledger-table.d.ts +68 -0
  56. package/dist/engine/storage/session/command-ledger-table.d.ts.map +1 -0
  57. package/dist/engine/storage/session/command-ledger-table.js +172 -0
  58. package/dist/engine/storage/session/command-ledger-table.js.map +1 -0
  59. package/dist/engine/storage/sqlite/local-databases.d.ts +0 -3
  60. package/dist/engine/storage/sqlite/local-databases.d.ts.map +1 -1
  61. package/dist/engine/storage/sqlite/local-databases.js +0 -4
  62. package/dist/engine/storage/sqlite/local-databases.js.map +1 -1
  63. package/dist/engine.js +2 -2
  64. package/package.json +1 -1
  65. package/dist/engine/generated/command-cancellation-migrations.d.ts +0 -5
  66. package/dist/engine/generated/command-cancellation-migrations.d.ts.map +0 -1
  67. package/dist/engine/generated/command-cancellation-migrations.js +0 -9
  68. package/dist/engine/generated/command-cancellation-migrations.js.map +0 -1
  69. package/dist/engine/schema/acp-session-store/execution-identity.d.ts +0 -57
  70. package/dist/engine/schema/acp-session-store/execution-identity.d.ts.map +0 -1
  71. package/dist/engine/schema/acp-session-store/execution-identity.js +0 -8
  72. package/dist/engine/schema/acp-session-store/execution-identity.js.map +0 -1
  73. package/dist/engine/schema/acp-session-store/execution-receipt.d.ts.map +0 -1
  74. package/dist/engine/schema/acp-session-store/execution-receipt.js +0 -12
  75. package/dist/engine/schema/acp-session-store/execution-receipt.js.map +0 -1
  76. package/dist/engine/schema/command-cancellation/cancelled-command.d.ts.map +0 -1
  77. package/dist/engine/schema/command-cancellation/cancelled-command.js +0 -7
  78. package/dist/engine/schema/command-cancellation/cancelled-command.js.map +0 -1
  79. package/dist/engine/schema/command-cancellation/index.d.ts +0 -2
  80. package/dist/engine/schema/command-cancellation/index.d.ts.map +0 -1
  81. package/dist/engine/schema/command-cancellation/index.js +0 -2
  82. package/dist/engine/schema/command-cancellation/index.js.map +0 -1
  83. package/dist/engine/storage/session/command-cancellation-table.d.ts +0 -17
  84. package/dist/engine/storage/session/command-cancellation-table.d.ts.map +0 -1
  85. package/dist/engine/storage/session/command-cancellation-table.js +0 -28
  86. package/dist/engine/storage/session/command-cancellation-table.js.map +0 -1
  87. package/dist/engine/storage/session/execution-receipt-table.d.ts +0 -28
  88. package/dist/engine/storage/session/execution-receipt-table.d.ts.map +0 -1
  89. package/dist/engine/storage/session/execution-receipt-table.js +0 -87
  90. package/dist/engine/storage/session/execution-receipt-table.js.map +0 -1
  91. /package/dist/{cli-3TKBBY7N.js.map → cli-MJKKZEI4.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"execute-prompt.d.ts","sourceRoot":"","sources":["../../../../src/engine/session/prompt/execute-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,oBAAoB,EAE5B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAErF,OAAO,EAAuB,KAAK,kBAAkB,EAA0B,MAAM,uBAAuB,CAAC;AAC7G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,yBAAyB,CAAC;IAChD,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,0BAA0B,EAAE,CACjC,MAAM,EAAE,WAAW,KAClB,OAAO,CACN;QAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAC5D;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GACzB;QAAE,QAAQ,CAAC,IAAI,EAAE,0BAA0B,CAAA;KAAE,CAClD,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,OAAO,CAAC;CACjD;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,EAChC,eAAe,EACf,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,WAAW,EACX,QAAQ,EACR,SAAS,EACT,KAAK,EACL,0BAA0B,EAC1B,MAAM,EACN,qBAAqB,GACxB,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsKtC"}
1
+ {"version":3,"file":"execute-prompt.d.ts","sourceRoot":"","sources":["../../../../src/engine/session/prompt/execute-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAG/F,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAErF,OAAO,EAAuB,KAAK,kBAAkB,EAA0B,MAAM,uBAAuB,CAAC;AAC7G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,yBAAyB,CAAC;IAChD,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,8EAA8E;IAC9E,QAAQ,CAAC,uBAAuB,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACnF,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,OAAO,CAAC;CACjD;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,EAChC,eAAe,EACf,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,WAAW,EACX,QAAQ,EACR,SAAS,EACT,KAAK,EACL,uBAAuB,EACvB,MAAM,EACN,qBAAqB,GACxB,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8ItC"}
@@ -1,4 +1,4 @@
1
- import { SessionHistoryPolicy, SessionPromptDisposition, } from "@morty-build/client/protocol";
1
+ import { SessionHistoryPolicy } from "@morty-build/client/protocol";
2
2
  import { AcpExecutionError } from "../../acp/acp-error.js";
3
3
  import { operationErrorCode, operationErrorMessage } from "../../infra/operation-error.js";
4
4
  import { resolveSessionDirectories } from "../workspace/resolve-session-directories.js";
@@ -9,22 +9,15 @@ import { PromptArtifactError, resolvePromptArtifacts } from "./prompt-artifacts.
9
9
  * immediately before handing the work to the Agent; until then a cancellation withdraws it and a failure settles it
10
10
  * as failed before start.
11
11
  */
12
- export async function executePrompt({ eventProjection, command, resolveAgent, readArtifact, reportFailure, directories, sessions, attemptId, epoch, waitForSessionAvailability, signal, cancellationRequested, }) {
12
+ export async function executePrompt({ eventProjection, command, resolveAgent, readArtifact, reportFailure, directories, sessions, attemptId, epoch, waitForSessionAdmission, signal, cancellationRequested, }) {
13
13
  try {
14
14
  const resolved = await resolveSessionDirectories(directories, command.bindingId, command.directoryId, command.additionalDirectoryIds, signal);
15
15
  const { agent, adapter, externalizeSessionUpdate } = await resolveAgent(command.agentId, signal, command.sessionId);
16
- const availability = await waitForSessionAvailability(signal);
17
- if (availability.kind === "busy") {
18
- throw new AcpExecutionError("Another prompt is already running in this conversation", {}, "session_busy");
19
- }
20
- if (availability.kind === "queue-target-unavailable") {
21
- throw new AcpExecutionError("The queued prompt target is unavailable", {}, "prompt_queue_target_unavailable");
22
- }
16
+ const dispatch = await waitForSessionAdmission(signal);
23
17
  // A steering prompt joins an execution the Agent already holds. Check before preparing, so a steer can never
24
18
  // replace or reconfigure the process an admitted prompt is still preparing.
25
- if (availability.disposition === SessionPromptDisposition.Steer &&
26
- !sessions.acceptsSteering(command.sessionId, command.targetCommandId)) {
27
- throw new AcpExecutionError("The steering target is unavailable", {}, "prompt_queue_target_unavailable");
19
+ if (dispatch.kind === "steer" && !sessions.acceptsSteering(command.sessionId, dispatch.targetCommandId)) {
20
+ throw new AcpExecutionError("The steering target is unavailable", {}, "steering_target_unavailable");
28
21
  }
29
22
  const appliedSettings = command.sessionConfigurations === undefined
30
23
  ? undefined
@@ -49,13 +42,12 @@ export async function executePrompt({ eventProjection, command, resolveAgent, re
49
42
  // applied and must not gate the prompt. A member who changes a setting while a Turn runs
50
43
  // sends their follow-up with the newer snapshot, and steering folds that follow-up into
51
44
  // the Turn still running on the older settings; rejecting it loses the member's message.
52
- if (command.sessionConfigurations !== undefined &&
53
- availability.disposition !== SessionPromptDisposition.Steer) {
45
+ if (command.sessionConfigurations !== undefined && dispatch.kind !== "steer") {
54
46
  await applyCompleteSessionConfiguration(sessions, prepared.configOptions, sessionConfigurations ?? [], executionAgent, adapter, resolved.cwd, resolved.additionalDirectories, command.commandId, command.sessionId, signal);
55
47
  prepared = await sessions.prepareExecutionSession(preparation);
56
48
  }
57
49
  signal.throwIfAborted();
58
- const lifecycle = eventProjection.lifecycle(command.sessionId, command.commandId, attemptId, epoch, availability.disposition);
50
+ const lifecycle = eventProjection.lifecycle(command.sessionId, command.commandId, attemptId, epoch, dispatch);
59
51
  const attachments = await resolvePromptArtifacts(readArtifact, command.attachments, signal);
60
52
  const skipped = command.attachments.length - attachments.images.length - attachments.resources.length;
61
53
  if (skipped > 0) {
@@ -67,7 +59,7 @@ export async function executePrompt({ eventProjection, command, resolveAgent, re
67
59
  throw new PromptArtifactError("prompt_attachments_unsupported", "No supported prompt content remains");
68
60
  }
69
61
  let stopReason;
70
- if (availability.disposition === SessionPromptDisposition.Steer) {
62
+ if (dispatch.kind === "steer") {
71
63
  await sessions.steerPrompt({
72
64
  adapter,
73
65
  ...(externalizeSessionUpdate === undefined ? {} : { externalizeSessionUpdate }),
@@ -81,7 +73,7 @@ export async function executePrompt({ eventProjection, command, resolveAgent, re
81
73
  resources: attachments.resources,
82
74
  sessionId: command.sessionId,
83
75
  signal,
84
- targetCommandId: command.targetCommandId,
76
+ targetCommandId: dispatch.targetCommandId,
85
77
  });
86
78
  stopReason = "steered";
87
79
  }
@@ -94,14 +86,12 @@ export async function executePrompt({ eventProjection, command, resolveAgent, re
94
86
  agent: executionAgent,
95
87
  commandId: command.commandId,
96
88
  cwd: resolved.cwd,
97
- disposition: availability.disposition,
98
89
  images: attachments.images,
99
90
  lifecycle,
100
91
  prompt: command.prompt,
101
92
  resources: attachments.resources,
102
93
  sessionId: command.sessionId,
103
94
  signal,
104
- targetCommandId: command.targetCommandId,
105
95
  recovery,
106
96
  });
107
97
  stopReason = result.stopReason;
@@ -1 +1 @@
1
- {"version":3,"file":"execute-prompt.js","sourceRoot":"","sources":["../../../../src/engine/session/prompt/execute-prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute-prompt.js","sourceRoot":"","sources":["../../../../src/engine/session/prompt/execute-prompt.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { ContentBlock, PromptExecutionContext, PromptMessageOutcome, QueuedPromptRequestEventLog, SessionCancelCommand, SessionEventPayload, SessionLiveEvent, SessionPromptCommand } from "@morty-build/client/protocol";
2
2
  import type { SessionEventSink } from "../api/session-api.ts";
3
+ import type { PromptDispatch } from "../turn/active-turn.ts";
3
4
  import type { ExecutionReceipts, RestatedOutcome } from "../turn/execution-receipts.ts";
4
5
  export interface PromptRequestRecovery {
5
6
  readonly queuedPromptRequests: readonly QueuedPromptRequestEventLog[];
@@ -11,7 +12,7 @@ export declare class PromptLifecycle {
11
12
  constructor(sink: SessionEventSink, recordLifecycle: (sessionId: string, event: SessionEventPayload) => Promise<boolean>, append: (sessionId: string, event: SessionEventPayload, recordedAt?: string) => SessionLiveEvent, recordActiveTurn: (event: SessionLiveEvent) => void, executions: ExecutionProgress);
12
13
  readonly requested: (command: SessionPromptCommand) => void;
13
14
  /** The lifecycle metadata the Agent session records when it starts this claimed command. */
14
- readonly lifecycle: (sessionId: string, commandId: string, attemptId: string, epoch: string, disposition: string) => {
15
+ readonly lifecycle: (sessionId: string, commandId: string, attemptId: string, epoch: string, dispatch: PromptDispatch) => {
15
16
  readonly attemptId: string;
16
17
  readonly content: readonly ContentBlock[];
17
18
  readonly disposition?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-lifecycle.d.ts","sourceRoot":"","sources":["../../../../src/engine/session/prompt/prompt-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACvB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAgBxF,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,2BAA2B,EAAE,CAAC;CACzE;AA8BD,iFAAiF;AACjF,KAAK,iBAAiB,GAAG,IAAI,CACzB,iBAAiB,EACjB,wBAAwB,GAAG,YAAY,GAAG,qBAAqB,GAAG,gBAAgB,CACrF,CAAC;AAEF,qBAAa,eAAe;;IAWxB,YACI,IAAI,EAAE,gBAAgB,EACtB,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,OAAO,CAAC,EACpF,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,gBAAgB,EAChG,gBAAgB,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,EACnD,UAAU,EAAE,iBAAiB,EAOhC;IAED,QAAQ,CAAC,SAAS,YAAa,oBAAoB,KAAG,IAAI,CAaxD;IAEF,4FAA4F;IAC5F,QAAQ,CAAC,SAAS,cACH,MAAM,aACN,MAAM,aACN,MAAM,SACV,MAAM,eACA,MAAM,KACpB;QACC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;QAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;QACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;KACrC,CAaC;IAEF,QAAQ,CAAC,MAAM,aAAc,gBAAgB,KAAG,IAAI,CAYlD;IAYF,QAAQ,CAAC,eAAe,cAAe,MAAM,aAAa,MAAM,KAAG,IAAI,CAyBrE;IAEF,QAAQ,CAAC,aAAa,cAAqB,MAAM,SAAS,mBAAmB,KAAG,OAAO,CAAC,IAAI,CAAC,CAM3F;IAEF;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,cAAe,MAAM,yBAAyB,eAAe,KAAG,IAAI,CAazF;IAEF,QAAQ,CAAC,YAAY,cAAqB,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC,CAKjF;IAEF,QAAQ,CAAC,SAAS,cAAqB,MAAM,aAAa,MAAM,cAAc,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC,CAsBlG;IAEF;;;;OAIG;IACH,QAAQ,CAAC,MAAM,cACA,MAAM,aACN,MAAM,aACN,MAAM,QACX,MAAM,WACH,MAAM,KAChB,OAAO,CAAC,IAAI,CAAC,CAad;IAEF,8GAA8G;IAC9G,QAAQ,CAAC,cAAc,cAAe,MAAM,KAAG,SAAS,oBAAoB,EAAE,CAC/B;IAE/C,QAAQ,CAAC,qBAAqB,cAAe,MAAM,KAAG,qBAAqB,CAYxE;CACN;AAED,wBAAsB,mBAAmB,CACrC,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,iBAAiB,EAC7B,YAAY,EAAE,oBAAoB,GACnC,OAAO,CAAC,IAAI,CAAC,CA8Bf"}
1
+ {"version":3,"file":"prompt-lifecycle.d.ts","sourceRoot":"","sources":["../../../../src/engine/session/prompt/prompt-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACvB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAgBxF,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,oBAAoB,EAAE,SAAS,2BAA2B,EAAE,CAAC;CACzE;AA8BD,iFAAiF;AACjF,KAAK,iBAAiB,GAAG,IAAI,CACzB,iBAAiB,EACjB,wBAAwB,GAAG,YAAY,GAAG,qBAAqB,GAAG,gBAAgB,CACrF,CAAC;AAEF,qBAAa,eAAe;;IAWxB,YACI,IAAI,EAAE,gBAAgB,EACtB,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,OAAO,CAAC,EACpF,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,gBAAgB,EAChG,gBAAgB,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,EACnD,UAAU,EAAE,iBAAiB,EAOhC;IAED,QAAQ,CAAC,SAAS,YAAa,oBAAoB,KAAG,IAAI,CAexD;IAEF,4FAA4F;IAC5F,QAAQ,CAAC,SAAS,cACH,MAAM,aACN,MAAM,aACN,MAAM,SACV,MAAM,YACH,cAAc,KACzB;QACC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;QAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;QACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;KACrC,CAcC;IAEF,QAAQ,CAAC,MAAM,aAAc,gBAAgB,KAAG,IAAI,CAYlD;IAYF,QAAQ,CAAC,eAAe,cAAe,MAAM,aAAa,MAAM,KAAG,IAAI,CAyBrE;IAEF,QAAQ,CAAC,aAAa,cAAqB,MAAM,SAAS,mBAAmB,KAAG,OAAO,CAAC,IAAI,CAAC,CAM3F;IAEF;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,cAAe,MAAM,yBAAyB,eAAe,KAAG,IAAI,CAazF;IAEF,QAAQ,CAAC,YAAY,cAAqB,MAAM,aAAa,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC,CAKjF;IAEF,QAAQ,CAAC,SAAS,cAAqB,MAAM,aAAa,MAAM,cAAc,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC,CAsBlG;IAEF;;;;OAIG;IACH,QAAQ,CAAC,MAAM,cACA,MAAM,aACN,MAAM,aACN,MAAM,QACX,MAAM,WACH,MAAM,KAChB,OAAO,CAAC,IAAI,CAAC,CAad;IAEF,8GAA8G;IAC9G,QAAQ,CAAC,cAAc,cAAe,MAAM,KAAG,SAAS,oBAAoB,EAAE,CAC/B;IAE/C,QAAQ,CAAC,qBAAqB,cAAe,MAAM,KAAG,qBAAqB,CAYxE;CACN;AAED,wBAAsB,mBAAmB,CACrC,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,iBAAiB,EAC7B,YAAY,EAAE,oBAAoB,GACnC,OAAO,CAAC,IAAI,CAAC,CA8Bf"}
@@ -1,4 +1,4 @@
1
- import { isPromptTerminal, SESSION_CLOSED_ERROR_CODE } from "@morty-build/client/protocol";
1
+ import { isPromptTerminal, SESSION_CLOSED_ERROR_CODE, SessionPromptDisposition } from "@morty-build/client/protocol";
2
2
  import { SessionError } from "../api/session-error.js";
3
3
  import { isTextPromptResourceMediaType } from "./prompt-artifacts.js";
4
4
  function promptContent(command) {
@@ -47,27 +47,30 @@ export class PromptLifecycle {
47
47
  this.#queued.set(command.commandId, {
48
48
  commandId: command.commandId,
49
49
  content: promptContent(command),
50
- ...(command.disposition === undefined ? {} : { disposition: command.disposition }),
50
+ disposition: command.disposition,
51
51
  context: {
52
52
  agentId: command.agentId,
53
53
  directoryId: command.directoryId,
54
54
  additionalDirectoryIds: command.additionalDirectoryIds,
55
55
  },
56
56
  sessionId: command.sessionId,
57
- ...(command.targetCommandId.length === 0 ? {} : { targetCommandId: command.targetCommandId }),
57
+ ...(command.disposition === SessionPromptDisposition.Steer
58
+ ? { targetCommandId: command.targetCommandId }
59
+ : {}),
58
60
  });
59
61
  };
60
62
  /** The lifecycle metadata the Agent session records when it starts this claimed command. */
61
- lifecycle = (sessionId, commandId, attemptId, epoch, disposition) => {
63
+ lifecycle = (sessionId, commandId, attemptId, epoch, dispatch) => {
62
64
  const request = this.#queued.get(commandId);
63
65
  if (request?.sessionId === sessionId) {
64
66
  return {
65
67
  attemptId,
66
68
  content: request.content,
67
- disposition,
68
69
  epoch,
69
70
  context: request.context,
70
- ...(request.targetCommandId === undefined ? {} : { targetCommandId: request.targetCommandId }),
71
+ ...(dispatch.kind === "steer"
72
+ ? { disposition: SessionPromptDisposition.Steer, targetCommandId: dispatch.targetCommandId }
73
+ : { disposition: SessionPromptDisposition.Append }),
71
74
  };
72
75
  }
73
76
  throw new Error("The executing prompt was not registered in the V2 queue");
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-lifecycle.js","sourceRoot":"","sources":["../../../../src/engine/session/prompt/prompt-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-lifecycle.js","sourceRoot":"","sources":["../../../../src/engine/session/prompt/prompt-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,16 @@ type ActiveTurnSnapshot = Extract<NativeSessionResult, {
4
4
  }>["turn"];
5
5
  /** Interaction events the daemon folds into an in-flight prompt Turn. */
6
6
  export type RecordedSessionEvent = SessionElicitationRequestedEvent | SessionElicitationResolvedEvent | SessionPermissionRequestedEvent | SessionPermissionResolvedEvent;
7
+ /**
8
+ * How an admitted prompt executes: as its own turn, or by steering the running turn of `targetCommandId`. An appended
9
+ * prompt promoted out of the queue steers the turn it waited behind, which admission names when it admits it.
10
+ */
11
+ export type PromptDispatch = {
12
+ readonly kind: "own";
13
+ } | {
14
+ readonly kind: "steer";
15
+ readonly targetCommandId: string;
16
+ };
7
17
  export type TurnCancellation = {
8
18
  readonly kind: "already-requested";
9
19
  } | {
@@ -29,9 +39,14 @@ export declare class ActiveRuntimeTurn {
29
39
  readonly abortRuntime: () => void;
30
40
  readonly finish: () => void;
31
41
  readonly promoteQueuedPrompt: (command: SessionPromptDispositionCommand) => "accepted" | "already-started" | "unavailable";
32
- readonly admit: () => string;
42
+ /**
43
+ * Fixes how the prompt executes before asynchronous Agent preparation, so a late promotion cannot change a dispatch
44
+ * that execution has already selected.
45
+ */
46
+ readonly admit: (dispatch: PromptDispatch) => PromptDispatch;
33
47
  readonly queuePromotion: () => Promise<void> | null;
34
- readonly effectiveDisposition: () => string;
48
+ /** Whether the prompt joins another turn's execution instead of owning one, so it holds no place in the queue. */
49
+ readonly isSteering: () => boolean;
35
50
  /** A steering prompt joins the execution of the turn it steers; every other prompt owns its execution. */
36
51
  readonly execution: () => string;
37
52
  readonly recordEvent: (event: RecordedSessionEvent) => RecordedSessionEvent;
@@ -1 +1 @@
1
- {"version":3,"file":"active-turn.d.ts","sourceRoot":"","sources":["../../../../src/engine/session/turn/active-turn.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,KAAK,mBAAmB,EAKxB,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,EACnC,KAAK,oBAAoB,EAEzB,KAAK,+BAA+B,EACvC,MAAM,8BAA8B,CAAC;AAEtC,KAAK,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,EAAE;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;CAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnG,yEAAyE;AACzE,MAAM,MAAM,oBAAoB,GAC1B,gCAAgC,GAChC,+BAA+B,GAC/B,+BAA+B,GAC/B,8BAA8B,CAAC;AAYrC,MAAM,MAAM,gBAAgB,GACtB;IAAE,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAA;CAAE,GACtC;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/D,qBAAa,iBAAiB;;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;IACvC,QAAQ,CAAC,KAAK,8CAAkC;IAahD;;;OAGG;IACH,YACI,OAAO,EAAE,oBAAoB,EAC7B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,OAAO,EACtB,SAAS,EAAE,MAAM,MAAM,GAAG,SAAS,EAOtC;IAED,QAAQ,CAAC,OAAO,QAAO,IAAI,CAKzB;IAEF,kGAAkG;IAClG,QAAQ,CAAC,YAAY,QAAO,OAAO,CACmE;IAEtG,QAAQ,CAAC,QAAQ,QAAO,OAAO,CAIM;IAErC,QAAQ,CAAC,YAAY,QAAO,IAAI,CAE9B;IAEF,QAAQ,CAAC,MAAM,QAAO,IAAI,CAExB;IAEF,QAAQ,CAAC,mBAAmB,YACf,+BAA+B,KACzC,UAAU,GAAG,iBAAiB,GAAG,aAAa,CAsB/C;IAEF,QAAQ,CAAC,KAAK,QAAO,MAAM,CAMzB;IAEF,QAAQ,CAAC,cAAc,QAAO,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAKhD;IAEF,QAAQ,CAAC,oBAAoB,QAAO,MAAM,CAUxC;IAEF,0GAA0G;IAC1G,QAAQ,CAAC,SAAS,QAAO,MAAM,CAGE;IAEjC,QAAQ,CAAC,WAAW,UAAW,oBAAoB,KAAG,oBAAoB,CAgBxE;IAEF,QAAQ,CAAC,QAAQ,QAAO,kBAAkB,CAcxC;IAEF,QAAQ,CAAC,kBAAkB,kBAAmB,MAAM,aAAa,MAAM,KAAG,OAAO,CACc;IAE/F;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,QAAO,gBAAgB,CAUjD;IAEF,QAAQ,CAAC,qBAAqB,QAAO,OAAO,CAAgC;IAE5E,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9B;CACJ"}
1
+ {"version":3,"file":"active-turn.d.ts","sourceRoot":"","sources":["../../../../src/engine/session/turn/active-turn.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,KAAK,mBAAmB,EAKxB,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,EACnC,KAAK,oBAAoB,EAEzB,KAAK,+BAA+B,EACvC,MAAM,8BAA8B,CAAC;AAEtC,KAAK,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,EAAE;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;CAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnG,yEAAyE;AACzE,MAAM,MAAM,oBAAoB,GAC1B,gCAAgC,GAChC,+BAA+B,GAC/B,+BAA+B,GAC/B,8BAA8B,CAAC;AAErC;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CAAE,CAAC;AAYrH,MAAM,MAAM,gBAAgB,GACtB;IAAE,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAA;CAAE,GACtC;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/D,qBAAa,iBAAiB;;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;IACvC,QAAQ,CAAC,KAAK,8CAAkC;IAahD;;;OAGG;IACH,YACI,OAAO,EAAE,oBAAoB,EAC7B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,OAAO,EACtB,SAAS,EAAE,MAAM,MAAM,GAAG,SAAS,EAOtC;IAED,QAAQ,CAAC,OAAO,QAAO,IAAI,CAKzB;IAEF,kGAAkG;IAClG,QAAQ,CAAC,YAAY,QAAO,OAAO,CAGoC;IAEvE,QAAQ,CAAC,QAAQ,QAAO,OAAO,CAMM;IAErC,QAAQ,CAAC,YAAY,QAAO,IAAI,CAE9B;IAEF,QAAQ,CAAC,MAAM,QAAO,IAAI,CAExB;IAEF,QAAQ,CAAC,mBAAmB,YACf,+BAA+B,KACzC,UAAU,GAAG,iBAAiB,GAAG,aAAa,CAsB/C;IAEF;;;OAGG;IACH,QAAQ,CAAC,KAAK,aAAc,cAAc,KAAG,cAAc,CAIzD;IAEF,QAAQ,CAAC,cAAc,QAAO,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAKhD;IAEF,kHAAkH;IAClH,QAAQ,CAAC,UAAU,QAAO,OAAO,CAW/B;IAEF,0GAA0G;IAC1G,QAAQ,CAAC,SAAS,QAAO,MAAM,CAGE;IAEjC,QAAQ,CAAC,WAAW,UAAW,oBAAoB,KAAG,oBAAoB,CAgBxE;IAEF,QAAQ,CAAC,QAAQ,QAAO,kBAAkB,CAcxC;IAEF,QAAQ,CAAC,kBAAkB,kBAAmB,MAAM,aAAa,MAAM,KAAG,OAAO,CACc;IAE/F;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,QAAO,gBAAgB,CAUjD;IAEF,QAAQ,CAAC,qBAAqB,QAAO,OAAO,CAAgC;IAE5E,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,IAAI,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9B;CACJ"}
@@ -30,9 +30,13 @@ export class ActiveRuntimeTurn {
30
30
  this.#admission = { kind: "queued", promotion: Promise.withResolvers() };
31
31
  };
32
32
  /** Whether the prompt was admitted to its Session's queue, whatever happened to it afterwards. */
33
- enteredQueue = () => this.command.disposition === SessionPromptDisposition.Queue && this.#admission.kind !== "waiting";
33
+ enteredQueue = () => this.#admission.kind === "queued" ||
34
+ this.#admission.kind === "promoted" ||
35
+ (this.#admission.kind === "admitted" && this.#admission.fromQueue);
34
36
  isQueued = () => (this.#admission.kind === "queued" ||
35
- (this.#admission.kind === "admitted" && this.#admission.disposition === SessionPromptDisposition.Queue)) &&
37
+ (this.#admission.kind === "admitted" &&
38
+ this.#admission.fromQueue &&
39
+ this.#admission.dispatch.kind === "own")) &&
36
40
  !this.#started() &&
37
41
  !this.#controller.signal.aborted;
38
42
  abortRuntime = () => {
@@ -57,17 +61,19 @@ export class ActiveRuntimeTurn {
57
61
  case "promoted":
58
62
  return "accepted";
59
63
  case "admitted":
60
- return this.#admission.disposition === SessionPromptDisposition.Steer ? "accepted" : "already-started";
64
+ return this.#admission.dispatch.kind === "steer" ? "accepted" : "already-started";
61
65
  case "waiting":
62
66
  return "unavailable";
63
67
  }
64
68
  };
65
- admit = () => {
66
- const disposition = this.effectiveDisposition();
67
- // Claim the dispatch before asynchronous Agent preparation so a late promotion
68
- // cannot change a disposition that execution has already selected.
69
- this.#admission = { kind: "admitted", disposition };
70
- return disposition;
69
+ /**
70
+ * Fixes how the prompt executes before asynchronous Agent preparation, so a late promotion cannot change a dispatch
71
+ * that execution has already selected.
72
+ */
73
+ admit = (dispatch) => {
74
+ const fromQueue = this.enteredQueue();
75
+ this.#admission = { kind: "admitted", dispatch, fromQueue };
76
+ return dispatch;
71
77
  };
72
78
  queuePromotion = () => {
73
79
  if (this.#admission.kind === "queued") {
@@ -75,20 +81,22 @@ export class ActiveRuntimeTurn {
75
81
  }
76
82
  return this.#admission.kind === "promoted" ? Promise.resolve() : null;
77
83
  };
78
- effectiveDisposition = () => {
84
+ /** Whether the prompt joins another turn's execution instead of owning one, so it holds no place in the queue. */
85
+ isSteering = () => {
79
86
  switch (this.#admission.kind) {
80
87
  case "waiting":
88
+ return this.command.disposition === SessionPromptDisposition.Steer;
81
89
  case "queued":
82
- return this.command.disposition;
90
+ return false;
83
91
  case "promoted":
84
- return SessionPromptDisposition.Steer;
92
+ return true;
85
93
  case "admitted":
86
- return this.#admission.disposition;
94
+ return this.#admission.dispatch.kind === "steer";
87
95
  }
88
96
  };
89
97
  /** A steering prompt joins the execution of the turn it steers; every other prompt owns its execution. */
90
- execution = () => this.effectiveDisposition() === SessionPromptDisposition.Steer
91
- ? this.command.targetCommandId
98
+ execution = () => this.#admission.kind === "admitted" && this.#admission.dispatch.kind === "steer"
99
+ ? this.#admission.dispatch.targetCommandId
92
100
  : this.command.commandId;
93
101
  recordEvent = (event) => {
94
102
  if (event.sessionId !== this.command.sessionId ||
@@ -1 +1 @@
1
- {"version":3,"file":"active-turn.js","sourceRoot":"","sources":["../../../../src/engine/session/turn/active-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"active-turn.js","sourceRoot":"","sources":["../../../../src/engine/session/turn/active-turn.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { type CommandDelivery, type LastTurnOutcome, type PromptMessageOutcome, type SessionEventPayload, type SessionLiveEvent } from "@morty-build/client/protocol";
2
- import type { CommandCancellationTable } from "../../storage/session/command-cancellation-table.ts";
3
- import type { ExecutionReceiptTable } from "../../storage/session/execution-receipt-table.ts";
2
+ import type { CommandLedgerTable } from "../../storage/session/command-ledger-table.ts";
4
3
  export type RuntimeExecutionReceipt = Readonly<{
5
4
  attemptId: string;
6
5
  commandId: string;
@@ -14,10 +13,12 @@ export type RuntimeExecutionReceipt = Readonly<{
14
13
  readonly kind: "conflict";
15
14
  } | {
16
15
  readonly kind: "expired";
16
+ } | {
17
+ readonly kind: "refused";
17
18
  };
18
19
  /**
19
- * An outcome a restart publishes: one the restart itself settles (a command it interrupted or a cancellation it
20
- * restores), or one the previous process had already recorded, which is published again for clients that missed it.
20
+ * An outcome a restart publishes: one the restart itself settles (a command it interrupted), or one the previous
21
+ * process had already recorded, which is published again for clients that missed it.
21
22
  */
22
23
  export type RecoveredOutcome = {
23
24
  readonly kind: "recorded";
@@ -30,8 +31,8 @@ export type RecoveredOutcome = {
30
31
  readonly outcome: RestatedOutcome;
31
32
  };
32
33
  /**
33
- * An outcome a receipt already holds, restated for clients that missed it. It keeps the time it was recorded, which
34
- * identifies when the command ended; undefined when no receipt holds it.
34
+ * An outcome the ledger already holds, restated for clients that missed it. It keeps the time it was recorded, which
35
+ * identifies when the command ended; undefined when the ledger no longer keeps it.
35
36
  */
36
37
  export interface RestatedOutcome {
37
38
  readonly event: SessionEventPayload;
@@ -49,32 +50,34 @@ export type CancellationBeforeAdmission = {
49
50
  } | {
50
51
  readonly kind: "expired";
51
52
  };
53
+ /**
54
+ * The Runtime's answers about the commands it admitted, read from the command ledger, which alone records what
55
+ * became of each command.
56
+ */
52
57
  export declare class ExecutionReceipts {
53
58
  #private;
54
- constructor(table: ExecutionReceiptTable, cancellations: CommandCancellationTable, onCount?: (count: number) => void);
59
+ constructor(ledger: CommandLedgerTable, onCount?: (count: number) => void);
55
60
  readonly beginShutdown: () => void;
56
61
  readonly outcome: (commandId: string) => SessionEventPayload | undefined;
57
- /** The outcome the command's receipt holds, with the time it was recorded. */
62
+ /** The outcome the ledger keeps for the command, with the time it was recorded. */
58
63
  readonly restatedOutcome: (commandId: string) => RestatedOutcome | undefined;
59
- /** The command's delivery as these receipts know it; another Session's command reads as unknown. */
64
+ /** The command's delivery as the ledger knows it; another Session's command reads as unknown. */
60
65
  readonly delivery: (commandId: string, sessionId: string) => CommandDelivery;
61
66
  /**
62
- * How the Session's most recently admitted turn ended. Admission order survives updates and
63
- * restarts. Commands that never started (queued, or reserved for cancellation) are not turns,
64
- * unless they failed before starting. A steering command that completed as `steered` joined the
65
- * turn it steered, which reports for both; a steer not known to have joined (it failed, or a
66
- * restart interrupted it) keeps its own outcome. Undefined while the latest turn runs or none is
67
- * retained.
67
+ * How the Session's most recently admitted turn ended. Commands that never started (queued, or reserved for
68
+ * cancellation) are not turns, unless they failed before starting. A steering command that completed as `steered`
69
+ * joined the turn it steered, which reports for both; a steer not known to have joined (it failed, or a restart
70
+ * interrupted it) keeps its own outcome. Undefined while the latest turn runs or its outcome is no longer kept.
68
71
  */
69
72
  readonly lastTurn: (sessionId: string) => LastTurnOutcome | undefined;
70
- /** When the Session's running command started, while its receipt holds the time. */
73
+ /** When the Session's running command started. */
71
74
  readonly startedAt: (commandId: string, sessionId: string) => string | undefined;
72
75
  /**
73
76
  * The recorded terminal events of the Session's settled prompts whose Agent reported the user message they
74
- * recorded, while their receipts are retained.
77
+ * recorded, while the ledger keeps their outcomes.
75
78
  */
76
79
  readonly promptOutcomes: (sessionId: string) => readonly PromptMessageOutcome[];
77
- /** Started identities remain authoritative after their detailed receipt is evicted. */
80
+ /** A command that started stays started after its outcome is no longer kept. */
78
81
  readonly hasStarted: (commandId: string, sessionId: string) => boolean;
79
82
  /**
80
83
  * Reserves an unseen command for cancellation before a delayed prompt can claim its identity. A command that
@@ -82,13 +85,17 @@ export declare class ExecutionReceipts {
82
85
  */
83
86
  readonly recordCancellationBeforeAdmission: (commandId: string, sessionId: string) => CancellationBeforeAdmission;
84
87
  /**
85
- * Receipts follow their command's recorded lifecycle. `prompt.started` is recorded where the command is handed
88
+ * The ledger follows each command's recorded lifecycle. `prompt.started` is recorded where the command is handed
86
89
  * to the Agent, so the started mark and the event clients see are one transition; a terminal event settles the
87
- * receipt. Nothing else marks a command started.
90
+ * command. Nothing else marks a command started.
88
91
  */
89
92
  readonly record: (event: SessionLiveEvent) => void;
90
93
  readonly recover: () => readonly RecoveredOutcome[];
91
- readonly claimExecution: (commandId: string, sessionId: string, commandJson: string) => RuntimeExecutionReceipt;
94
+ /**
95
+ * Claims a command's identifier for the Session. A known identifier is answered from the ledger; a new command is
96
+ * recorded only when `admits` accepts it in the same step, so a command the Session refuses leaves no record.
97
+ */
98
+ readonly claimExecution: (commandId: string, sessionId: string, commandJson: string, admits: () => boolean) => RuntimeExecutionReceipt;
92
99
  /** Only commands without a terminal result can still be cancelled. */
93
100
  readonly findUnsettledAttemptId: (commandId: string, sessionId: string) => string | null;
94
101
  readonly isTerminalExecution: (commandId: string, sessionId: string) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"execution-receipts.d.ts","sourceRoot":"","sources":["../../../../src/engine/session/turn/execution-receipts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-receipts.d.ts","sourceRoot":"","sources":["../../../../src/engine/session/turn/execution-receipts.ts"],"names":[],"mappings":"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"}