agentfootprint 9.95.0 → 9.97.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 (160) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/CLAUDE.md +2 -1
  3. package/dist/core/Agent.js +80 -7
  4. package/dist/core/Agent.js.map +1 -1
  5. package/dist/core/RunnerBase.js +10 -0
  6. package/dist/core/RunnerBase.js.map +1 -1
  7. package/dist/core/agent/buildDynamicAgentChart.js +12 -0
  8. package/dist/core/agent/buildDynamicAgentChart.js.map +1 -1
  9. package/dist/core/agent/evidence/gate.js +13 -1
  10. package/dist/core/agent/evidence/gate.js.map +1 -1
  11. package/dist/core/agent/evidence/recovery.js +75 -0
  12. package/dist/core/agent/evidence/recovery.js.map +1 -0
  13. package/dist/core/agent/stages/callLLM.js +24 -3
  14. package/dist/core/agent/stages/callLLM.js.map +1 -1
  15. package/dist/core/agent/stages/evidenceRecheck.js +12 -22
  16. package/dist/core/agent/stages/evidenceRecheck.js.map +1 -1
  17. package/dist/core/agent/stages/seed.js +6 -1
  18. package/dist/core/agent/stages/seed.js.map +1 -1
  19. package/dist/core/agent/stages/toolCalls.js +22 -3
  20. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  21. package/dist/core/inputRequest.js +202 -0
  22. package/dist/core/inputRequest.js.map +1 -0
  23. package/dist/core/pause.js +17 -1
  24. package/dist/core/pause.js.map +1 -1
  25. package/dist/core/runCheckpoint.js +22 -1
  26. package/dist/core/runCheckpoint.js.map +1 -1
  27. package/dist/core/toolSessions.js +10 -8
  28. package/dist/core/toolSessions.js.map +1 -1
  29. package/dist/esm/core/Agent.d.ts +6 -2
  30. package/dist/esm/core/Agent.js +80 -7
  31. package/dist/esm/core/Agent.js.map +1 -1
  32. package/dist/esm/core/RunnerBase.d.ts +7 -0
  33. package/dist/esm/core/RunnerBase.js +10 -0
  34. package/dist/esm/core/RunnerBase.js.map +1 -1
  35. package/dist/esm/core/agent/buildDynamicAgentChart.js +12 -0
  36. package/dist/esm/core/agent/buildDynamicAgentChart.js.map +1 -1
  37. package/dist/esm/core/agent/evidence/gate.js +13 -1
  38. package/dist/esm/core/agent/evidence/gate.js.map +1 -1
  39. package/dist/esm/core/agent/evidence/index.d.ts +1 -1
  40. package/dist/esm/core/agent/evidence/recovery.d.ts +21 -0
  41. package/dist/esm/core/agent/evidence/recovery.js +69 -0
  42. package/dist/esm/core/agent/evidence/recovery.js.map +1 -0
  43. package/dist/esm/core/agent/evidence/types.d.ts +30 -0
  44. package/dist/esm/core/agent/stages/callLLM.d.ts +2 -0
  45. package/dist/esm/core/agent/stages/callLLM.js +24 -3
  46. package/dist/esm/core/agent/stages/callLLM.js.map +1 -1
  47. package/dist/esm/core/agent/stages/evidenceRecheck.d.ts +3 -6
  48. package/dist/esm/core/agent/stages/evidenceRecheck.js +13 -23
  49. package/dist/esm/core/agent/stages/evidenceRecheck.js.map +1 -1
  50. package/dist/esm/core/agent/stages/seed.d.ts +3 -0
  51. package/dist/esm/core/agent/stages/seed.js +6 -1
  52. package/dist/esm/core/agent/stages/seed.js.map +1 -1
  53. package/dist/esm/core/agent/stages/toolCalls.d.ts +1 -0
  54. package/dist/esm/core/agent/stages/toolCalls.js +22 -3
  55. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  56. package/dist/esm/core/agent/types.d.ts +6 -1
  57. package/dist/esm/core/inputRequest.d.ts +62 -0
  58. package/dist/esm/core/inputRequest.js +194 -0
  59. package/dist/esm/core/inputRequest.js.map +1 -0
  60. package/dist/esm/core/pause.d.ts +9 -0
  61. package/dist/esm/core/pause.js +14 -0
  62. package/dist/esm/core/pause.js.map +1 -1
  63. package/dist/esm/core/runCheckpoint.d.ts +17 -1
  64. package/dist/esm/core/runCheckpoint.js +22 -1
  65. package/dist/esm/core/runCheckpoint.js.map +1 -1
  66. package/dist/esm/core/toolSessions.d.ts +10 -7
  67. package/dist/esm/core/toolSessions.js +10 -8
  68. package/dist/esm/core/toolSessions.js.map +1 -1
  69. package/dist/esm/events/types.d.ts +1 -1
  70. package/dist/esm/hosting/httpHost.js +7 -2
  71. package/dist/esm/hosting/httpHost.js.map +1 -1
  72. package/dist/esm/hosting/index.d.ts +1 -1
  73. package/dist/esm/hosting/index.js +1 -1
  74. package/dist/esm/hosting/index.js.map +1 -1
  75. package/dist/esm/hosting/ingressRecord.js +8 -3
  76. package/dist/esm/hosting/ingressRecord.js.map +1 -1
  77. package/dist/esm/hosting/sessionWire.d.ts +7 -0
  78. package/dist/esm/hosting/sessionWire.js +6 -3
  79. package/dist/esm/hosting/sessionWire.js.map +1 -1
  80. package/dist/esm/hosting/standingAgent.js +70 -4
  81. package/dist/esm/hosting/standingAgent.js.map +1 -1
  82. package/dist/esm/hosting/types.d.ts +3 -0
  83. package/dist/esm/hosting/types.js.map +1 -1
  84. package/dist/esm/hosting/wireOps.d.ts +2 -0
  85. package/dist/esm/hosting/wireOps.js +4 -1
  86. package/dist/esm/hosting/wireOps.js.map +1 -1
  87. package/dist/esm/index.d.ts +4 -2
  88. package/dist/esm/index.js +2 -1
  89. package/dist/esm/index.js.map +1 -1
  90. package/dist/esm/lib/time-travel/servedView.js +5 -2
  91. package/dist/esm/lib/time-travel/servedView.js.map +1 -1
  92. package/dist/esm/recorders/core/contextEngineering.js +1 -0
  93. package/dist/esm/recorders/core/contextEngineering.js.map +1 -1
  94. package/dist/hosting/httpHost.js +6 -1
  95. package/dist/hosting/httpHost.js.map +1 -1
  96. package/dist/hosting/index.js +2 -1
  97. package/dist/hosting/index.js.map +1 -1
  98. package/dist/hosting/ingressRecord.js +7 -2
  99. package/dist/hosting/ingressRecord.js.map +1 -1
  100. package/dist/hosting/sessionWire.js +7 -4
  101. package/dist/hosting/sessionWire.js.map +1 -1
  102. package/dist/hosting/standingAgent.js +69 -3
  103. package/dist/hosting/standingAgent.js.map +1 -1
  104. package/dist/hosting/types.js.map +1 -1
  105. package/dist/hosting/wireOps.js +4 -1
  106. package/dist/hosting/wireOps.js.map +1 -1
  107. package/dist/index.js +9 -5
  108. package/dist/index.js.map +1 -1
  109. package/dist/lib/time-travel/servedView.js +5 -2
  110. package/dist/lib/time-travel/servedView.js.map +1 -1
  111. package/dist/recorders/core/contextEngineering.js +1 -0
  112. package/dist/recorders/core/contextEngineering.js.map +1 -1
  113. package/dist/types/core/Agent.d.ts +6 -2
  114. package/dist/types/core/Agent.d.ts.map +1 -1
  115. package/dist/types/core/RunnerBase.d.ts +7 -0
  116. package/dist/types/core/RunnerBase.d.ts.map +1 -1
  117. package/dist/types/core/agent/buildDynamicAgentChart.d.ts.map +1 -1
  118. package/dist/types/core/agent/evidence/gate.d.ts.map +1 -1
  119. package/dist/types/core/agent/evidence/index.d.ts +1 -1
  120. package/dist/types/core/agent/evidence/index.d.ts.map +1 -1
  121. package/dist/types/core/agent/evidence/recovery.d.ts +22 -0
  122. package/dist/types/core/agent/evidence/recovery.d.ts.map +1 -0
  123. package/dist/types/core/agent/evidence/types.d.ts +30 -0
  124. package/dist/types/core/agent/evidence/types.d.ts.map +1 -1
  125. package/dist/types/core/agent/stages/callLLM.d.ts +2 -0
  126. package/dist/types/core/agent/stages/callLLM.d.ts.map +1 -1
  127. package/dist/types/core/agent/stages/evidenceRecheck.d.ts +3 -6
  128. package/dist/types/core/agent/stages/evidenceRecheck.d.ts.map +1 -1
  129. package/dist/types/core/agent/stages/seed.d.ts +3 -0
  130. package/dist/types/core/agent/stages/seed.d.ts.map +1 -1
  131. package/dist/types/core/agent/stages/toolCalls.d.ts +1 -0
  132. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  133. package/dist/types/core/agent/types.d.ts +6 -1
  134. package/dist/types/core/agent/types.d.ts.map +1 -1
  135. package/dist/types/core/inputRequest.d.ts +63 -0
  136. package/dist/types/core/inputRequest.d.ts.map +1 -0
  137. package/dist/types/core/pause.d.ts +9 -0
  138. package/dist/types/core/pause.d.ts.map +1 -1
  139. package/dist/types/core/runCheckpoint.d.ts +17 -1
  140. package/dist/types/core/runCheckpoint.d.ts.map +1 -1
  141. package/dist/types/core/toolSessions.d.ts +10 -7
  142. package/dist/types/core/toolSessions.d.ts.map +1 -1
  143. package/dist/types/events/types.d.ts +1 -1
  144. package/dist/types/events/types.d.ts.map +1 -1
  145. package/dist/types/hosting/httpHost.d.ts.map +1 -1
  146. package/dist/types/hosting/index.d.ts +1 -1
  147. package/dist/types/hosting/index.d.ts.map +1 -1
  148. package/dist/types/hosting/ingressRecord.d.ts.map +1 -1
  149. package/dist/types/hosting/sessionWire.d.ts +7 -0
  150. package/dist/types/hosting/sessionWire.d.ts.map +1 -1
  151. package/dist/types/hosting/standingAgent.d.ts.map +1 -1
  152. package/dist/types/hosting/types.d.ts +3 -0
  153. package/dist/types/hosting/types.d.ts.map +1 -1
  154. package/dist/types/hosting/wireOps.d.ts +2 -0
  155. package/dist/types/hosting/wireOps.d.ts.map +1 -1
  156. package/dist/types/index.d.ts +4 -2
  157. package/dist/types/index.d.ts.map +1 -1
  158. package/dist/types/lib/time-travel/servedView.d.ts.map +1 -1
  159. package/dist/types/recorders/core/contextEngineering.d.ts.map +1 -1
  160. package/package.json +1 -1
@@ -0,0 +1,194 @@
1
+ const own = (o, k) => Object.prototype.hasOwnProperty.call(o, k);
2
+ function object(value) {
3
+ return (typeof value === 'object' &&
4
+ value !== null &&
5
+ !Array.isArray(value) &&
6
+ (Object.getPrototypeOf(value) === Object.prototype || Object.getPrototypeOf(value) === null));
7
+ }
8
+ function nonempty(value) {
9
+ return typeof value === 'string' && value.trim().length > 0 && value.length <= 4096;
10
+ }
11
+ function jsonValue(value, seen = new Set(), depth = 0) {
12
+ if (depth > 32)
13
+ return false;
14
+ if (value === null || typeof value === 'string' || typeof value === 'boolean')
15
+ return true;
16
+ if (typeof value === 'number')
17
+ return Number.isFinite(value);
18
+ if (!Array.isArray(value) && !object(value))
19
+ return false;
20
+ if (seen.has(value))
21
+ return false;
22
+ seen.add(value);
23
+ const valid = Object.values(value).every((child) => jsonValue(child, seen, depth + 1));
24
+ seen.delete(value);
25
+ return valid;
26
+ }
27
+ function fail(reason) {
28
+ throw new InputRequestError(reason);
29
+ }
30
+ /** A malformed or stale data reply; no value was consumed and the ask remains live. */
31
+ export class InputRequestError extends TypeError {
32
+ code = 'ERR_INPUT_REQUEST_INVALID';
33
+ constructor(reason) {
34
+ super(`[input request] ${reason}. No input was accepted.`);
35
+ this.name = 'InputRequestError';
36
+ }
37
+ }
38
+ function validateValues(fields, raw) {
39
+ if (!object(raw))
40
+ fail('values must be an object');
41
+ const values = {};
42
+ for (const [id, value] of Object.entries(raw)) {
43
+ const field = fields.find((f) => f.id === id);
44
+ if (!field)
45
+ fail('values contain an undeclared field');
46
+ if (typeof value !== field.type ||
47
+ (typeof value === 'number' && !Number.isFinite(value)) ||
48
+ (typeof value === 'string' && (value.length > 4096 || value.trim().length === 0)) ||
49
+ (field.enum !== undefined && !field.enum.includes(value))) {
50
+ fail('a value does not satisfy its declared field type or choices');
51
+ }
52
+ Object.defineProperty(values, id, {
53
+ value,
54
+ enumerable: true,
55
+ writable: true,
56
+ configurable: true,
57
+ });
58
+ }
59
+ return values;
60
+ }
61
+ /** One validation owner, shared by the declaration and durable-pause readers. */
62
+ export function validateInputDeclaration(raw) {
63
+ if (!object(raw) ||
64
+ !nonempty(raw.id) ||
65
+ !nonempty(raw.question) ||
66
+ !Array.isArray(raw.fields) ||
67
+ raw.fields.length < 1 ||
68
+ raw.fields.length > 32) {
69
+ fail('declare an id, question and between one and 32 fields');
70
+ }
71
+ if (Object.keys(raw).some((k) => !['id', 'question', 'fields', 'supplied', 'context'].includes(k)))
72
+ fail('unknown declaration field');
73
+ const ids = new Set();
74
+ const fields = raw.fields.map((field) => {
75
+ if (!object(field) ||
76
+ !nonempty(field.id) ||
77
+ ids.has(field.id) ||
78
+ typeof field.type !== 'string' ||
79
+ !['string', 'number', 'boolean'].includes(String(field.type)) ||
80
+ (field.required !== undefined && typeof field.required !== 'boolean') ||
81
+ (field.description !== undefined && !nonempty(field.description)) ||
82
+ Object.keys(field).some((k) => !['id', 'type', 'required', 'enum', 'description'].includes(k)))
83
+ fail('invalid or duplicate input field');
84
+ ids.add(field.id);
85
+ const copy = { ...field };
86
+ if (field.enum !== undefined) {
87
+ if (!Array.isArray(field.enum) || field.enum.length === 0 || field.enum.length > 100)
88
+ fail('enum must contain between one and 100 choices');
89
+ for (const value of field.enum)
90
+ validateValues([{ ...copy, enum: undefined }], { [field.id]: value });
91
+ }
92
+ return {
93
+ id: copy.id,
94
+ type: copy.type,
95
+ ...(copy.required !== undefined && { required: copy.required }),
96
+ ...(copy.description !== undefined && { description: copy.description }),
97
+ ...(copy.enum !== undefined && { enum: [...copy.enum] }),
98
+ };
99
+ });
100
+ const supplied = validateValues(fields, raw.supplied ?? {});
101
+ let context;
102
+ if (raw.context !== undefined) {
103
+ if (!object(raw.context) || !jsonValue(raw.context))
104
+ fail('context must be a JSON object');
105
+ const json = JSON.stringify(raw.context, (_key, value) => {
106
+ if (value === undefined ||
107
+ typeof value === 'function' ||
108
+ typeof value === 'symbol' ||
109
+ typeof value === 'bigint' ||
110
+ (typeof value === 'number' && !Number.isFinite(value)))
111
+ fail('context must contain JSON values');
112
+ return value;
113
+ });
114
+ if (json.length > 16384)
115
+ fail('context exceeds 16384 characters');
116
+ context = JSON.parse(json);
117
+ }
118
+ return {
119
+ id: raw.id,
120
+ question: raw.question,
121
+ fields,
122
+ ...(raw.supplied !== undefined && { supplied }),
123
+ ...(context !== undefined && { context }),
124
+ };
125
+ }
126
+ /** Runtime-only stamping: a model cannot choose its saved skill or original request. */
127
+ export function stampInputRequest(declaration, requestId, origin) {
128
+ const clean = validateInputDeclaration(declaration);
129
+ const supplied = { ...clean.supplied };
130
+ return {
131
+ ...clean,
132
+ status: 'awaiting_input',
133
+ requestId,
134
+ supplied,
135
+ origins: Object.fromEntries(Object.keys(supplied).map((k) => [k, 'declaration'])),
136
+ missing: clean.fields
137
+ .filter((f) => f.required !== false && !own(supplied, f.id))
138
+ .map((f) => f.id),
139
+ origin: JSON.parse(JSON.stringify(origin)),
140
+ };
141
+ }
142
+ /** Read only an explicitly declared, well-shaped input pause; never assistant prose. */
143
+ export function readAwaitingInput(pauseData) {
144
+ if (!object(pauseData) || !own(pauseData, 'awaitingInput'))
145
+ return undefined;
146
+ const value = pauseData.awaitingInput;
147
+ if (!object(value) ||
148
+ value.status !== 'awaiting_input' ||
149
+ !nonempty(value.requestId) ||
150
+ !object(value.origin) ||
151
+ typeof value.origin.originalRequest !== 'string' ||
152
+ !nonempty(value.origin.toolCallId))
153
+ fail('malformed stored input request');
154
+ const clean = validateInputDeclaration({
155
+ id: value.id,
156
+ question: value.question,
157
+ fields: value.fields,
158
+ supplied: value.supplied,
159
+ ...(value.context !== undefined && { context: value.context }),
160
+ });
161
+ const origins = value.origins;
162
+ if (!object(origins) ||
163
+ Object.keys(clean.supplied ?? {}).some((k) => !['declaration', 'response'].includes(String(origins[k]))))
164
+ fail('malformed input origins');
165
+ return JSON.parse(JSON.stringify({ ...value, ...clean }));
166
+ }
167
+ /** Accept typed fields, or explicit cancellation, without coercing free text. */
168
+ export function applyInputResponse(waiting, raw) {
169
+ if (!object(raw) || raw.requestId !== waiting.requestId)
170
+ fail('response names a different input request');
171
+ if (raw.cancel === true) {
172
+ if (Object.keys(raw).some((k) => !['requestId', 'cancel'].includes(k)))
173
+ fail('cancellation cannot carry values');
174
+ return { requestId: waiting.requestId, cancel: true };
175
+ }
176
+ if (Object.keys(raw).some((k) => !['requestId', 'values'].includes(k)))
177
+ fail('unknown response field');
178
+ const values = validateValues(waiting.fields, raw.values);
179
+ if (Object.keys(values).length === 0)
180
+ fail('supply at least one field or cancel explicitly');
181
+ const supplied = { ...waiting.supplied, ...values };
182
+ return {
183
+ ...waiting,
184
+ supplied,
185
+ origins: {
186
+ ...waiting.origins,
187
+ ...Object.fromEntries(Object.keys(values).map((k) => [k, 'response'])),
188
+ },
189
+ missing: waiting.fields
190
+ .filter((f) => f.required !== false && !own(supplied, f.id))
191
+ .map((f) => f.id),
192
+ };
193
+ }
194
+ //# sourceMappingURL=inputRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inputRequest.js","sourceRoot":"","sources":["../../../src/core/inputRequest.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@
18
18
  import type { FlowchartCheckpoint } from 'footprintjs';
19
19
  import type { AskComponent } from './askComponent.js';
20
20
  import type { CheckInRequest } from './checkin.js';
21
+ import type { AwaitingInput, InputRequestDeclaration } from './inputRequest.js';
21
22
  /**
22
23
  * Outcome returned by `runner.run()` / `runner.resume()` when execution
23
24
  * has paused mid-flow. The shape mirrors footprintjs's `PausedResult` but
@@ -30,6 +31,8 @@ export interface RunnerPauseOutcome {
30
31
  readonly checkpoint: FlowchartCheckpoint;
31
32
  /** Data passed to `scope.$pause()` / `pauseHere()`. Consumer-typed. */
32
33
  readonly pauseData: unknown;
34
+ /** Typed data collection; answers are values, never approval decisions. */
35
+ readonly awaitingInput?: AwaitingInput;
33
36
  /**
34
37
  * Present ONLY when this pause is an evidence-carrying check-in (a tool
35
38
  * declared `checkIn`). Carries the typed ask + evidence pack. Absent for
@@ -73,6 +76,12 @@ export interface MiddlewareAsk {
73
76
  }
74
77
  /** Type guard — discriminates `RunnerPauseOutcome` from a normal `TOut`. */
75
78
  export declare function isPaused<T>(result: T | RunnerPauseOutcome): result is RunnerPauseOutcome;
79
+ /** A missing-input pause, distinct from every consent gate. */
80
+ export declare function isInputPause(result: unknown): result is RunnerPauseOutcome & {
81
+ readonly awaitingInput: AwaitingInput;
82
+ };
83
+ /** Collect declared fields using a dedicated tool. The query itself runs afterwards. */
84
+ export declare function requestInput(declaration: InputRequestDeclaration): never;
76
85
  /**
77
86
  * Type guard — is this a check-in pause (evidence-carrying human consent),
78
87
  * as opposed to a plain `askHuman` pause? Narrows `checkIn` to present.
@@ -16,10 +16,24 @@
16
16
  * the tool API clean (tools are pure-ish) while still supporting pause.
17
17
  */
18
18
  import { readAskComponent } from './askComponent.js';
19
+ import { InputRequestError, validateInputDeclaration } from './inputRequest.js';
19
20
  /** Type guard — discriminates `RunnerPauseOutcome` from a normal `TOut`. */
20
21
  export function isPaused(result) {
21
22
  return (typeof result === 'object' && result !== null && result.paused === true);
22
23
  }
24
+ /** A missing-input pause, distinct from every consent gate. */
25
+ export function isInputPause(result) {
26
+ return isPaused(result) && result.awaitingInput !== undefined;
27
+ }
28
+ /** Collect declared fields using a dedicated tool. The query itself runs afterwards. */
29
+ export function requestInput(declaration) {
30
+ const inputRequest = validateInputDeclaration(declaration);
31
+ if (!inputRequest.fields.some((field) => field.required !== false &&
32
+ !Object.prototype.hasOwnProperty.call(inputRequest.supplied ?? {}, field.id))) {
33
+ throw new InputRequestError('no required fields are missing; continue without requesting input');
34
+ }
35
+ return pauseHere({ question: inputRequest.question, inputRequest });
36
+ }
23
37
  /**
24
38
  * Type guard — is this a check-in pause (evidence-carrying human consent),
25
39
  * as opposed to a plain `askHuman` pause? Narrows `checkIn` to present.
@@ -1 +1 @@
1
- {"version":3,"file":"pause.js","sourceRoot":"","sources":["../../../src/core/pause.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pause.js","sourceRoot":"","sources":["../../../src/core/pause.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,15 @@
56
56
  import type { LLMMessage } from '../adapters/types.js';
57
57
  import type { MemoryIdentity } from '../memory/identity/types.js';
58
58
  import type { FoldedSpan } from './agent/window/types.js';
59
+ /** Internal repair state kept separately from the human conversation.
60
+ * Restored only when retrying the same failed request, never on a new turn. */
61
+ export interface EvidenceRecoveryCheckpoint {
62
+ readonly revisionSpent: true;
63
+ /** Present only when the request carrying this instruction did not complete. */
64
+ readonly pending?: {
65
+ readonly instruction: string;
66
+ };
67
+ }
59
68
  /**
60
69
  * JSON-serializable checkpoint of an in-progress agent run. Persist
61
70
  * to ANY durable store (Redis / Postgres / S3 / disk / queue) and
@@ -87,6 +96,13 @@ export interface AgentRunCheckpoint {
87
96
  };
88
97
  /** Wall-clock when the checkpoint was captured. Diagnostic only. */
89
98
  readonly checkpointedAt: number;
99
+ /**
100
+ * The same request's bounded evidence repair. `resumeOnError` restores this
101
+ * budget and any unsent feedback; `run({ continueFrom })` adds a new human
102
+ * turn and deliberately starts a fresh repair budget. Not conversation text.
103
+ * Absent for checkpoints written before request-scoped recovery.
104
+ */
105
+ readonly evidenceRecovery?: EvidenceRecoveryCheckpoint;
90
106
  /**
91
107
  * Every span this conversation folded into a summary, oldest first — what
92
108
  * makes a compacted conversation still a provable one after the process
@@ -352,7 +368,7 @@ owner?: {
352
368
  * lose it on the other. Passed only when the graph declared
353
369
  * `continuity: 'conversation'`.
354
370
  */
355
- skillCursor?: string): AgentRunCheckpoint;
371
+ skillCursor?: string, evidenceRecovery?: EvidenceRecoveryCheckpoint): AgentRunCheckpoint;
356
372
  /**
357
373
  * Validate a checkpoint at deserialization time. Catches forward-
358
374
  * incompatible payloads (someone tries to resume a v3 checkpoint on
@@ -54,6 +54,7 @@
54
54
  * DFS stage).
55
55
  */
56
56
  import { isContextWindowExceeded, looksLikeContextWindowExceeded, } from '../adapters/llm/contextWindow.js';
57
+ import { MAX_EVIDENCE_RECOVERY_CHARS } from './agent/evidence/recovery.js';
57
58
  /**
58
59
  * Thrown by `agent.run()` when a fault occurs mid-run. Carries the
59
60
  * underlying error AND the last-known-good checkpoint. Catch this
@@ -293,7 +294,7 @@ owner,
293
294
  * lose it on the other. Passed only when the graph declared
294
295
  * `continuity: 'conversation'`.
295
296
  */
296
- skillCursor) {
297
+ skillCursor, evidenceRecovery) {
297
298
  return {
298
299
  version: 1,
299
300
  runId: tracker.runId,
@@ -306,6 +307,7 @@ skillCursor) {
306
307
  ...(owner?.identity !== undefined && { identity: owner.identity }),
307
308
  ...(owner?.agentId !== undefined && { agent: { id: owner.agentId } }),
308
309
  ...(skillCursor !== undefined && { skillCursor }),
310
+ ...(evidenceRecovery !== undefined && { evidenceRecovery }),
309
311
  };
310
312
  }
311
313
  /**
@@ -342,6 +344,25 @@ export function validateCheckpoint(value) {
342
344
  `(got ${typeof c.skillCursor}). It is written by a graph with ` +
343
345
  `continuity: 'conversation' and names the node the stored turn ended on.`);
344
346
  }
347
+ if (c.evidenceRecovery !== undefined) {
348
+ const recovery = c.evidenceRecovery;
349
+ const pending = recovery?.pending;
350
+ if (recovery === null ||
351
+ typeof recovery !== 'object' ||
352
+ Array.isArray(recovery) ||
353
+ recovery.revisionSpent !== true ||
354
+ Object.keys(recovery).some((key) => key !== 'revisionSpent' && key !== 'pending') ||
355
+ (pending !== undefined &&
356
+ (pending === null ||
357
+ typeof pending !== 'object' ||
358
+ Array.isArray(pending) ||
359
+ Object.keys(pending).some((key) => key !== 'instruction') ||
360
+ typeof pending.instruction !== 'string' ||
361
+ pending.instruction.length === 0 ||
362
+ pending.instruction.length > MAX_EVIDENCE_RECOVERY_CHARS))) {
363
+ throw new TypeError('[resumeOnError] checkpoint evidenceRecovery must carry a spent revision and optional bounded instruction.');
364
+ }
365
+ }
345
366
  // The conversation itself, message by message (8.18.0). `Array.isArray` was
346
367
  // the whole check, one field away from `originalInput.message` — which HAS
347
368
  // been string-checked since this function was written. A checkpoint that
@@ -1 +1 @@
1
- {"version":3,"file":"runCheckpoint.js","sourceRoot":"","sources":["../../../src/core/runCheckpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runCheckpoint.js","sourceRoot":"","sources":["../../../src/core/runCheckpoint.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,7 @@
54
54
  * Zero-cost when unused: no tool registers → the runner never builds a tier →
55
55
  * the terminal path is one `undefined` check.
56
56
  */
57
+ import type { RunContext } from '../bridge/eventMeta.js';
57
58
  import type { ToolExecutionContext } from './tools.js';
58
59
  /**
59
60
  * How long a registered cleanup is allowed to live.
@@ -99,6 +100,8 @@ export interface TeardownOptions {
99
100
  }
100
101
  /** The call a registration came from — what the firing matrix filters on. */
101
102
  export interface ToolSessionOrigin {
103
+ /** Actual registration-time event context, retained only in memory. */
104
+ readonly runContext?: RunContext;
102
105
  readonly tool: string;
103
106
  readonly toolCallId: string;
104
107
  /** Absent when the door has no run (`mcpServe`). */
@@ -202,7 +205,7 @@ export interface ToolSessionTierOptions {
202
205
  /** Where TEARDOWN reports go. The runner wires this to the typed event
203
206
  * dispatcher. Starts and reuses are the caller's to announce — see
204
207
  * {@link RegisterOutcome}. */
205
- readonly report?: (report: ToolSessionReport) => void;
208
+ readonly report?: (report: ToolSessionReport, origin: ToolSessionOrigin) => void;
206
209
  /** Clock seam — tests drive idle and duration without waiting. */
207
210
  readonly now?: () => number;
208
211
  }
@@ -264,22 +267,22 @@ export declare class ToolSessionTier {
264
267
  * Called from `Agent.run`/`resume` at a terminal that is NOT a pause — and
265
268
  * deliberately not from a `finally`, which also runs on the two pause shapes.
266
269
  *
267
- * **`runId` is optional, and the Agent omits it.** A `'run'` scope means
270
+ * **`runId` is optional for unhosted callers.** A `'run'` scope means
268
271
  * "release this when the TURN that opened it ends", and a turn is not a
269
272
  * runId: a pause and its resume are one turn across two runs (`resume()`
270
273
  * builds a fresh executor with a fresh id). Filtering on the id would leave
271
274
  * every session a paused turn had opened alive forever — the failure would
272
275
  * look like nothing at all, because the run answered fine.
273
276
  *
274
- * Firing all of them is exactly right under the runner's own
275
- * ONE-IN-FLIGHT-RUN-PER-AGENT invariant: at a terminal there is no other turn
276
- * whose sessions these could be. An ABANDONED pause is the interesting case
277
- * and it lands the right way round too — the next completed turn releases
278
- * what the abandoned one left holding.
277
+ * Hosted agents use `fireSessionRuns` instead: one runner can retain pauses
278
+ * for several conversations even though only one run executes at a time.
279
+ * A session terminal must never close another conversation's resources.
279
280
  *
280
281
  * Pass an id where a caller really does mean one specific run.
281
282
  */
282
283
  fireRun(runId?: string): Promise<void>;
284
+ /** End run resources for one hosting conversation across pause/resume run IDs. */
285
+ fireSessionRuns(sessionId: string): Promise<number>;
283
286
  /**
284
287
  * Fire the `'session'` registrations for one hosting session — or, with no
285
288
  * `sessionId`, every `'session'` registration there is.
@@ -253,24 +253,26 @@ export class ToolSessionTier {
253
253
  * Called from `Agent.run`/`resume` at a terminal that is NOT a pause — and
254
254
  * deliberately not from a `finally`, which also runs on the two pause shapes.
255
255
  *
256
- * **`runId` is optional, and the Agent omits it.** A `'run'` scope means
256
+ * **`runId` is optional for unhosted callers.** A `'run'` scope means
257
257
  * "release this when the TURN that opened it ends", and a turn is not a
258
258
  * runId: a pause and its resume are one turn across two runs (`resume()`
259
259
  * builds a fresh executor with a fresh id). Filtering on the id would leave
260
260
  * every session a paused turn had opened alive forever — the failure would
261
261
  * look like nothing at all, because the run answered fine.
262
262
  *
263
- * Firing all of them is exactly right under the runner's own
264
- * ONE-IN-FLIGHT-RUN-PER-AGENT invariant: at a terminal there is no other turn
265
- * whose sessions these could be. An ABANDONED pause is the interesting case
266
- * and it lands the right way round too — the next completed turn releases
267
- * what the abandoned one left holding.
263
+ * Hosted agents use `fireSessionRuns` instead: one runner can retain pauses
264
+ * for several conversations even though only one run executes at a time.
265
+ * A session terminal must never close another conversation's resources.
268
266
  *
269
267
  * Pass an id where a caller really does mean one specific run.
270
268
  */
271
269
  fireRun(runId) {
272
270
  return this.fire((r) => r.scope === 'run' && (runId === undefined || r.origin.runId === runId), 'run-end').then(() => undefined);
273
271
  }
272
+ /** End run resources for one hosting conversation across pause/resume run IDs. */
273
+ fireSessionRuns(sessionId) {
274
+ return this.fire((r) => r.scope === 'run' && r.origin.sessionId === sessionId, 'run-end');
275
+ }
274
276
  /**
275
277
  * Fire the `'session'` registrations for one hosting session — or, with no
276
278
  * `sessionId`, every `'session'` registration there is.
@@ -350,7 +352,7 @@ export class ToolSessionTier {
350
352
  ...base,
351
353
  kind: 'closed',
352
354
  durationMs: this.now() - startedAt,
353
- });
355
+ }, registration.origin);
354
356
  }
355
357
  catch (err) {
356
358
  // Law 5: swallowed at the caller, never silent on the wire.
@@ -360,7 +362,7 @@ export class ToolSessionTier {
360
362
  durationMs: this.now() - startedAt,
361
363
  error: err instanceof Error ? err.message : String(err),
362
364
  ...(err instanceof Error && { errorClass: err.constructor?.name ?? err.name }),
363
- });
365
+ }, registration.origin);
364
366
  }
365
367
  }
366
368
  }
@@ -1 +1 @@
1
- {"version":3,"file":"toolSessions.js","sourceRoot":"","sources":["../../../src/core/toolSessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toolSessions.js","sourceRoot":"","sources":["../../../src/core/toolSessions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAsGpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,cAAc,CAC5B,GAAkF,EAClF,KAAoB;IAEpB,yEAAyE;IACzE,2EAA2E;IAC3E,8EAA8E;IAC9E,sEAAsE;IACtE,4EAA4E;IAC5E,4EAA4E;IAC5E,6EAA6E;IAC7E,mDAAmD;IACnD,EAAE;IACF,wEAAwE;IACxE,0EAA0E;IAC1E,4EAA4E;IAC5E,kDAAkD;IAClD,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,KAAK,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;IACxE,IAAI,KAAK,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,MAAM,GAAG,KAAK,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,mBAAmB,CACpF,GAAG,CAAC,QAAQ,EAAE,SAAS,CACxB,EAAE,CAAC;IACJ,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,MAAM,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,CAAC;IACD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,MAAM,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACjF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtF,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;AACpB,CAAC;AAGD,IAAI,YAAiD,CAAC;AAEtD,SAAS,UAAU;IACjB,IAAI,YAAY,KAAK,SAAS;QAAE,OAAO,YAAY,IAAI,SAAS,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,WAAW,CAAmB,aAAa,CAAC,CAAC;QACzD,YAAY,GAAG,OAAO,GAAG,EAAE,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,YAAY,GAAG,IAAI,CAAC;IACtB,CAAC;IACD,OAAO,YAAY,IAAI,SAAS,CAAC;AACnC,CAAC;AAED,4EAA4E;AAC5E,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC;AAC9C,6EAA6E;AAC7E,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CAAC;AAC5C,+EAA+E;AAC/E,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAmCxC;;;;;;GAMG;AACH,MAAM,OAAO,eAAe;IACT,aAAa,GAAG,IAAI,GAAG,EAAwB,CAAC;IAChD,SAAS,CAAS;IAClB,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,MAAM,CAAiE;IACvE,GAAG,CAAe;IAC3B,GAAG,GAAG,CAAC,CAAC;IAEhB,YAAY,UAAkC,EAAE;QAC9C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,wBAAwB,CAAC;QAC/D,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,oBAAoB,CAAC;QACrD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,qBAAqB,CAAC;QACxD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,GAAS,EAAE,GAAE,CAAC,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAW,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,iDAAiD;IACjD,SAAS;QACP,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;IACjC,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,sDAAsD;IACrC,UAAU,GAAG,IAAI,GAAG,EAAoB,CAAC;IAE1D,kDAAkD;IAC1C,MAAM,CAAC,IAAsB;QACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1B,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,QAAQ,CACN,MAAyB,EACzB,OAAmC,EACnC,UAA2B,EAAE;QAE7B,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC;QACrC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,GAAG,KAAK,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,QAAQ,EAAE,CAAC;YACb,yEAAyE;YACzE,qEAAqE;YACrE,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAChC,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjF,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,YAAY,GAAiB;YACjC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG;YACd,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK;YACL,GAAG;YACH,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC;YAC5B,MAAM;YACN,OAAO;YACP,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrE,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YAC5D,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,CAAC;YACR,KAAK,EAAE,KAAK;SACb,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7C,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACzE,CAAC;IAED,8DAA8D;IAC9D,QAAQ,CAAC,UAAkB;QACzB,OAAO,IAAI,CAAC,IAAI,CACd,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU,KAAK,UAAU,EAC/D,UAAU,CACX,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,KAAc;QACpB,OAAO,IAAI,CAAC,IAAI,CACd,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,EAC7E,SAAS,CACV,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;IAED,kFAAkF;IAClF,eAAe,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,SAAS,CAAC,CAAC;IAC5F,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,SAAkB,EAAE,SAAyB,aAAa;QACpE,OAAO,IAAI,CAAC,IAAI,CACd,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,EAC7F,MAAM,CACP,CAAC;IACJ,CAAC;IAED,kEAAkE;IAClE,YAAY;QACV,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACH,SAAS;QACP,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QACxC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC;QACpF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;QACvD,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;aAC7C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;aACxD,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,IAAI,CAChB,KAA8C,EAC9C,MAAsB;QAEtB,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,KAAK,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACxD,IAAI,YAAY,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;gBAAE,SAAS;YACzD,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,6BAA6B;QAClE,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QACxF,OAAO,OAAO,CAAC,MAAM,CAAC;IACxB,CAAC;IAED,iEAAiE;IACzD,KAAK,CAAC,GAAG,CAAC,YAA0B,EAAE,MAAsB;QAClE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG;YACX,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,GAAG,CAAC,YAAY,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC;YAC/E,GAAG,CAAC,YAAY,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC;YACtE,MAAM;SACE,CAAC;QACX,IAAI,CAAC;YACH,MAAM,WAAW,CACf,KAAK,IAAI,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,EAClC,IAAI,CAAC,SAAS,EACd,GAAG,YAAY,CAAC,IAAI,WAAW,CAChC,CAAC;YACF,IAAI,CAAC,MAAM,CACT;gBACE,GAAG,IAAI;gBACP,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;aACnC,EACD,YAAY,CAAC,MAAM,CACpB,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,4DAA4D;YAC5D,IAAI,CAAC,MAAM,CACT;gBACE,GAAG,IAAI;gBACP,IAAI,EAAE,cAAc;gBACpB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAClC,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;gBACvD,GAAG,CAAC,GAAG,YAAY,KAAK,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;aAC/E,EACD,YAAY,CAAC,MAAM,CACpB,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAED,4EAA4E;AAC5E,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACxC,SAAS,CAAS;IAC3B,YAAY,IAAY,EAAE,SAAiB;QACzC,KAAK,CACH,GAAG,IAAI,0BAA0B,SAAS,8CAA8C;YACtF,oFAAoF,CACvF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,WAAW,CACxB,IAAyB,EACzB,SAAiB,EACjB,IAAY;IAEZ,IAAI,KAAgD,CAAC;IACrD,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE;YACN,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;gBACtC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,wBAAwB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;gBAC1F,KAAgC,CAAC,KAAK,EAAE,EAAE,CAAC;YAC9C,CAAC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,IAAI,KAAK,KAAK,SAAS;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
@@ -27,7 +27,7 @@ export type ContextSlot = 'system-prompt' | 'messages' | 'tools';
27
27
  *
28
28
  * Adding a new source is NOT a breaking change; removing one IS.
29
29
  */
30
- export type ContextSource = 'rag' | 'skill' | 'memory' | 'instructions' | 'steering' | 'fact' | 'custom' | 'user' | 'tool-result' | 'assistant' | 'base' | 'registry';
30
+ export type ContextSource = 'rag' | 'skill' | 'memory' | 'instructions' | 'evidence-recovery' | 'steering' | 'fact' | 'custom' | 'user' | 'tool-result' | 'assistant' | 'base' | 'registry';
31
31
  export type ContextRole = 'system' | 'user' | 'assistant' | 'tool';
32
32
  export type ContextRecency = 'latest' | 'earlier';
33
33
  export type ContextLifetime = 'iteration' | 'turn' | 'run' | 'persistent';
@@ -68,7 +68,7 @@
68
68
  */
69
69
  import { encodeSSE } from '../stream.js';
70
70
  import { ArtifactNotCarriedError, HostClosedError, InvalidWireOpError, RequestTooLargeError, SessionsNotCarriedError, WireRequestRefusal, } from './errors.js';
71
- import { SESSION_LIST_OP, SESSION_TRANSCRIPT_OP } from './sessionWire.js';
71
+ import { SESSION_LIST_OP, SESSION_TRANSCRIPT_OP, SESSION_PENDING_OP } from './sessionWire.js';
72
72
  import { lowerCasedHeaders } from './headers.js';
73
73
  import { conversationDoor, } from './webSocketConversation.js';
74
74
  /**
@@ -101,6 +101,7 @@ const STATUS_BY_CODE = {
101
101
  ERR_AWAITING_DECISION: 409,
102
102
  ERR_NO_PENDING_ASK: 409,
103
103
  ERR_DECISION_REQUIRED: 400,
104
+ ERR_INPUT_REQUEST_INVALID: 400,
104
105
  ERR_INVALID_WIRE_OP: 400,
105
106
  ERR_ARTIFACT_SESSION_REQUIRED: 400,
106
107
  ERR_ARTIFACT_NOT_FOUND: 404,
@@ -636,7 +637,11 @@ async function dispatchOne(req, res, handler, wire, hostName, maxBodyBytes) {
636
637
  // says so by name rather than answering 200 with a shape no client was
637
638
  // written against.
638
639
  if (!wire.sessions) {
639
- reply.fail(new SessionsNotCarriedError(result.op === 'list' ? SESSION_LIST_OP : SESSION_TRANSCRIPT_OP, hostName));
640
+ reply.fail(new SessionsNotCarriedError(result.op === 'list'
641
+ ? SESSION_LIST_OP
642
+ : result.op === 'pending'
643
+ ? SESSION_PENDING_OP
644
+ : SESSION_TRANSCRIPT_OP, hostName));
640
645
  return;
641
646
  }
642
647
  settled = true;