agentfootprint 9.96.1 → 9.98.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 (197) hide show
  1. package/CHANGELOG.md +77 -0
  2. package/dist/artifacts/datasetResult.js +119 -0
  3. package/dist/artifacts/datasetResult.js.map +1 -0
  4. package/dist/artifacts/index.js +4 -1
  5. package/dist/artifacts/index.js.map +1 -1
  6. package/dist/core/Agent.js +43 -6
  7. package/dist/core/Agent.js.map +1 -1
  8. package/dist/core/RunnerBase.js +10 -0
  9. package/dist/core/RunnerBase.js.map +1 -1
  10. package/dist/core/agent/stages/toolCalls.js +22 -3
  11. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  12. package/dist/core/inputRequest.js +202 -0
  13. package/dist/core/inputRequest.js.map +1 -0
  14. package/dist/core/pause.js +17 -1
  15. package/dist/core/pause.js.map +1 -1
  16. package/dist/core/toolSessions.js +10 -8
  17. package/dist/core/toolSessions.js.map +1 -1
  18. package/dist/esm/artifacts/datasetResult.d.ts +44 -0
  19. package/dist/esm/artifacts/datasetResult.js +114 -0
  20. package/dist/esm/artifacts/datasetResult.js.map +1 -0
  21. package/dist/esm/artifacts/index.d.ts +1 -0
  22. package/dist/esm/artifacts/index.js +1 -0
  23. package/dist/esm/artifacts/index.js.map +1 -1
  24. package/dist/esm/core/Agent.d.ts +2 -2
  25. package/dist/esm/core/Agent.js +43 -6
  26. package/dist/esm/core/Agent.js.map +1 -1
  27. package/dist/esm/core/RunnerBase.d.ts +7 -0
  28. package/dist/esm/core/RunnerBase.js +10 -0
  29. package/dist/esm/core/RunnerBase.js.map +1 -1
  30. package/dist/esm/core/agent/stages/toolCalls.d.ts +1 -0
  31. package/dist/esm/core/agent/stages/toolCalls.js +22 -3
  32. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  33. package/dist/esm/core/inputRequest.d.ts +62 -0
  34. package/dist/esm/core/inputRequest.js +194 -0
  35. package/dist/esm/core/inputRequest.js.map +1 -0
  36. package/dist/esm/core/pause.d.ts +9 -0
  37. package/dist/esm/core/pause.js +14 -0
  38. package/dist/esm/core/pause.js.map +1 -1
  39. package/dist/esm/core/toolSessions.d.ts +10 -7
  40. package/dist/esm/core/toolSessions.js +10 -8
  41. package/dist/esm/core/toolSessions.js.map +1 -1
  42. package/dist/esm/hosting/httpHost.js +7 -2
  43. package/dist/esm/hosting/httpHost.js.map +1 -1
  44. package/dist/esm/hosting/index.d.ts +1 -1
  45. package/dist/esm/hosting/index.js +1 -1
  46. package/dist/esm/hosting/index.js.map +1 -1
  47. package/dist/esm/hosting/ingressRecord.js +8 -3
  48. package/dist/esm/hosting/ingressRecord.js.map +1 -1
  49. package/dist/esm/hosting/sessionWire.d.ts +7 -0
  50. package/dist/esm/hosting/sessionWire.js +6 -3
  51. package/dist/esm/hosting/sessionWire.js.map +1 -1
  52. package/dist/esm/hosting/standingAgent.js +70 -4
  53. package/dist/esm/hosting/standingAgent.js.map +1 -1
  54. package/dist/esm/hosting/types.d.ts +3 -0
  55. package/dist/esm/hosting/types.js.map +1 -1
  56. package/dist/esm/hosting/wireOps.d.ts +2 -0
  57. package/dist/esm/hosting/wireOps.js +4 -1
  58. package/dist/esm/hosting/wireOps.js.map +1 -1
  59. package/dist/esm/index.d.ts +5 -3
  60. package/dist/esm/index.js +3 -2
  61. package/dist/esm/index.js.map +1 -1
  62. package/dist/esm/integrity/assertion/conflicts.d.ts +5 -32
  63. package/dist/esm/integrity/assertion/conflicts.js +6 -69
  64. package/dist/esm/integrity/assertion/conflicts.js.map +1 -1
  65. package/dist/esm/integrity/assertion/types.d.ts +8 -69
  66. package/dist/esm/integrity/assertion/types.js +0 -0
  67. package/dist/esm/integrity/assertion/types.js.map +1 -1
  68. package/dist/esm/lib/injection-engine/factories/defineMenuHint.js +3 -5
  69. package/dist/esm/lib/injection-engine/factories/defineMenuHint.js.map +1 -1
  70. package/dist/esm/lib/injection-engine/skillToolDescriptors.d.ts +4 -2
  71. package/dist/esm/lib/injection-engine/skillToolDescriptors.js +17 -8
  72. package/dist/esm/lib/injection-engine/skillToolDescriptors.js.map +1 -1
  73. package/dist/esm/lib/mcp/mcpClient.js +5 -97
  74. package/dist/esm/lib/mcp/mcpClient.js.map +1 -1
  75. package/dist/esm/lib/mcp/mockMcpClient.d.ts +8 -4
  76. package/dist/esm/lib/mcp/mockMcpClient.js +6 -5
  77. package/dist/esm/lib/mcp/mockMcpClient.js.map +1 -1
  78. package/dist/esm/lib/mcp/toolResult.d.ts +8 -0
  79. package/dist/esm/lib/mcp/toolResult.js +244 -0
  80. package/dist/esm/lib/mcp/toolResult.js.map +1 -0
  81. package/dist/esm/lib/mcp/types.d.ts +15 -0
  82. package/dist/esm/lib/semantics/check.d.ts +7 -1
  83. package/dist/esm/lib/semantics/check.js +16 -0
  84. package/dist/esm/lib/semantics/check.js.map +1 -1
  85. package/dist/esm/lib/semantics/cli.js +3 -0
  86. package/dist/esm/lib/semantics/cli.js.map +1 -1
  87. package/dist/esm/lib/semantics/projection.d.ts +15 -0
  88. package/dist/esm/lib/semantics/projection.js +186 -0
  89. package/dist/esm/lib/semantics/projection.js.map +1 -0
  90. package/dist/esm/lib/time-travel/index.d.ts +1 -1
  91. package/dist/esm/lib/time-travel/index.js.map +1 -1
  92. package/dist/esm/lib/time-travel/receipt.d.ts +5 -0
  93. package/dist/esm/lib/time-travel/receipt.js +2 -0
  94. package/dist/esm/lib/time-travel/receipt.js.map +1 -1
  95. package/dist/esm/lib/time-travel/requestMeasurement.d.ts +33 -0
  96. package/dist/esm/lib/time-travel/requestMeasurement.js +120 -0
  97. package/dist/esm/lib/time-travel/requestMeasurement.js.map +1 -0
  98. package/dist/esm/lib/time-travel/servedView.js +8 -1
  99. package/dist/esm/lib/time-travel/servedView.js.map +1 -1
  100. package/dist/hosting/httpHost.js +6 -1
  101. package/dist/hosting/httpHost.js.map +1 -1
  102. package/dist/hosting/index.js +2 -1
  103. package/dist/hosting/index.js.map +1 -1
  104. package/dist/hosting/ingressRecord.js +7 -2
  105. package/dist/hosting/ingressRecord.js.map +1 -1
  106. package/dist/hosting/sessionWire.js +7 -4
  107. package/dist/hosting/sessionWire.js.map +1 -1
  108. package/dist/hosting/standingAgent.js +69 -3
  109. package/dist/hosting/standingAgent.js.map +1 -1
  110. package/dist/hosting/types.js.map +1 -1
  111. package/dist/hosting/wireOps.js +4 -1
  112. package/dist/hosting/wireOps.js.map +1 -1
  113. package/dist/index.js +11 -5
  114. package/dist/index.js.map +1 -1
  115. package/dist/integrity/assertion/conflicts.js +6 -69
  116. package/dist/integrity/assertion/conflicts.js.map +1 -1
  117. package/dist/integrity/assertion/types.js +0 -0
  118. package/dist/integrity/assertion/types.js.map +1 -1
  119. package/dist/lib/injection-engine/factories/defineMenuHint.js +3 -5
  120. package/dist/lib/injection-engine/factories/defineMenuHint.js.map +1 -1
  121. package/dist/lib/injection-engine/skillToolDescriptors.js +17 -8
  122. package/dist/lib/injection-engine/skillToolDescriptors.js.map +1 -1
  123. package/dist/lib/mcp/mcpClient.js +5 -97
  124. package/dist/lib/mcp/mcpClient.js.map +1 -1
  125. package/dist/lib/mcp/mockMcpClient.js +6 -5
  126. package/dist/lib/mcp/mockMcpClient.js.map +1 -1
  127. package/dist/lib/mcp/toolResult.js +249 -0
  128. package/dist/lib/mcp/toolResult.js.map +1 -0
  129. package/dist/lib/semantics/check.js +16 -0
  130. package/dist/lib/semantics/check.js.map +1 -1
  131. package/dist/lib/semantics/cli.js +3 -0
  132. package/dist/lib/semantics/cli.js.map +1 -1
  133. package/dist/lib/semantics/projection.js +191 -0
  134. package/dist/lib/semantics/projection.js.map +1 -0
  135. package/dist/lib/time-travel/index.js.map +1 -1
  136. package/dist/lib/time-travel/receipt.js +2 -0
  137. package/dist/lib/time-travel/receipt.js.map +1 -1
  138. package/dist/lib/time-travel/requestMeasurement.js +124 -0
  139. package/dist/lib/time-travel/requestMeasurement.js.map +1 -0
  140. package/dist/lib/time-travel/servedView.js +8 -1
  141. package/dist/lib/time-travel/servedView.js.map +1 -1
  142. package/dist/types/artifacts/datasetResult.d.ts +45 -0
  143. package/dist/types/artifacts/datasetResult.d.ts.map +1 -0
  144. package/dist/types/artifacts/index.d.ts +1 -0
  145. package/dist/types/artifacts/index.d.ts.map +1 -1
  146. package/dist/types/core/Agent.d.ts +2 -2
  147. package/dist/types/core/Agent.d.ts.map +1 -1
  148. package/dist/types/core/RunnerBase.d.ts +7 -0
  149. package/dist/types/core/RunnerBase.d.ts.map +1 -1
  150. package/dist/types/core/agent/stages/toolCalls.d.ts +1 -0
  151. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  152. package/dist/types/core/inputRequest.d.ts +63 -0
  153. package/dist/types/core/inputRequest.d.ts.map +1 -0
  154. package/dist/types/core/pause.d.ts +9 -0
  155. package/dist/types/core/pause.d.ts.map +1 -1
  156. package/dist/types/core/toolSessions.d.ts +10 -7
  157. package/dist/types/core/toolSessions.d.ts.map +1 -1
  158. package/dist/types/hosting/httpHost.d.ts.map +1 -1
  159. package/dist/types/hosting/index.d.ts +1 -1
  160. package/dist/types/hosting/index.d.ts.map +1 -1
  161. package/dist/types/hosting/ingressRecord.d.ts.map +1 -1
  162. package/dist/types/hosting/sessionWire.d.ts +7 -0
  163. package/dist/types/hosting/sessionWire.d.ts.map +1 -1
  164. package/dist/types/hosting/standingAgent.d.ts.map +1 -1
  165. package/dist/types/hosting/types.d.ts +3 -0
  166. package/dist/types/hosting/types.d.ts.map +1 -1
  167. package/dist/types/hosting/wireOps.d.ts +2 -0
  168. package/dist/types/hosting/wireOps.d.ts.map +1 -1
  169. package/dist/types/index.d.ts +5 -3
  170. package/dist/types/index.d.ts.map +1 -1
  171. package/dist/types/integrity/assertion/conflicts.d.ts +5 -32
  172. package/dist/types/integrity/assertion/conflicts.d.ts.map +1 -1
  173. package/dist/types/integrity/assertion/types.d.ts +8 -69
  174. package/dist/types/integrity/assertion/types.d.ts.map +1 -1
  175. package/dist/types/lib/injection-engine/factories/defineMenuHint.d.ts.map +1 -1
  176. package/dist/types/lib/injection-engine/skillToolDescriptors.d.ts +4 -2
  177. package/dist/types/lib/injection-engine/skillToolDescriptors.d.ts.map +1 -1
  178. package/dist/types/lib/mcp/mcpClient.d.ts.map +1 -1
  179. package/dist/types/lib/mcp/mockMcpClient.d.ts +8 -4
  180. package/dist/types/lib/mcp/mockMcpClient.d.ts.map +1 -1
  181. package/dist/types/lib/mcp/toolResult.d.ts +9 -0
  182. package/dist/types/lib/mcp/toolResult.d.ts.map +1 -0
  183. package/dist/types/lib/mcp/types.d.ts +15 -0
  184. package/dist/types/lib/mcp/types.d.ts.map +1 -1
  185. package/dist/types/lib/semantics/check.d.ts +7 -1
  186. package/dist/types/lib/semantics/check.d.ts.map +1 -1
  187. package/dist/types/lib/semantics/cli.d.ts.map +1 -1
  188. package/dist/types/lib/semantics/projection.d.ts +16 -0
  189. package/dist/types/lib/semantics/projection.d.ts.map +1 -0
  190. package/dist/types/lib/time-travel/index.d.ts +1 -1
  191. package/dist/types/lib/time-travel/index.d.ts.map +1 -1
  192. package/dist/types/lib/time-travel/receipt.d.ts +5 -0
  193. package/dist/types/lib/time-travel/receipt.d.ts.map +1 -1
  194. package/dist/types/lib/time-travel/requestMeasurement.d.ts +34 -0
  195. package/dist/types/lib/time-travel/requestMeasurement.d.ts.map +1 -0
  196. package/dist/types/lib/time-travel/servedView.d.ts.map +1 -1
  197. package/package.json +6 -2
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyInputResponse = exports.readAwaitingInput = exports.stampInputRequest = exports.validateInputDeclaration = exports.InputRequestError = void 0;
4
+ const own = (o, k) => Object.prototype.hasOwnProperty.call(o, k);
5
+ function object(value) {
6
+ return (typeof value === 'object' &&
7
+ value !== null &&
8
+ !Array.isArray(value) &&
9
+ (Object.getPrototypeOf(value) === Object.prototype || Object.getPrototypeOf(value) === null));
10
+ }
11
+ function nonempty(value) {
12
+ return typeof value === 'string' && value.trim().length > 0 && value.length <= 4096;
13
+ }
14
+ function jsonValue(value, seen = new Set(), depth = 0) {
15
+ if (depth > 32)
16
+ return false;
17
+ if (value === null || typeof value === 'string' || typeof value === 'boolean')
18
+ return true;
19
+ if (typeof value === 'number')
20
+ return Number.isFinite(value);
21
+ if (!Array.isArray(value) && !object(value))
22
+ return false;
23
+ if (seen.has(value))
24
+ return false;
25
+ seen.add(value);
26
+ const valid = Object.values(value).every((child) => jsonValue(child, seen, depth + 1));
27
+ seen.delete(value);
28
+ return valid;
29
+ }
30
+ function fail(reason) {
31
+ throw new InputRequestError(reason);
32
+ }
33
+ /** A malformed or stale data reply; no value was consumed and the ask remains live. */
34
+ class InputRequestError extends TypeError {
35
+ code = 'ERR_INPUT_REQUEST_INVALID';
36
+ constructor(reason) {
37
+ super(`[input request] ${reason}. No input was accepted.`);
38
+ this.name = 'InputRequestError';
39
+ }
40
+ }
41
+ exports.InputRequestError = InputRequestError;
42
+ function validateValues(fields, raw) {
43
+ if (!object(raw))
44
+ fail('values must be an object');
45
+ const values = {};
46
+ for (const [id, value] of Object.entries(raw)) {
47
+ const field = fields.find((f) => f.id === id);
48
+ if (!field)
49
+ fail('values contain an undeclared field');
50
+ if (typeof value !== field.type ||
51
+ (typeof value === 'number' && !Number.isFinite(value)) ||
52
+ (typeof value === 'string' && (value.length > 4096 || value.trim().length === 0)) ||
53
+ (field.enum !== undefined && !field.enum.includes(value))) {
54
+ fail('a value does not satisfy its declared field type or choices');
55
+ }
56
+ Object.defineProperty(values, id, {
57
+ value,
58
+ enumerable: true,
59
+ writable: true,
60
+ configurable: true,
61
+ });
62
+ }
63
+ return values;
64
+ }
65
+ /** One validation owner, shared by the declaration and durable-pause readers. */
66
+ function validateInputDeclaration(raw) {
67
+ if (!object(raw) ||
68
+ !nonempty(raw.id) ||
69
+ !nonempty(raw.question) ||
70
+ !Array.isArray(raw.fields) ||
71
+ raw.fields.length < 1 ||
72
+ raw.fields.length > 32) {
73
+ fail('declare an id, question and between one and 32 fields');
74
+ }
75
+ if (Object.keys(raw).some((k) => !['id', 'question', 'fields', 'supplied', 'context'].includes(k)))
76
+ fail('unknown declaration field');
77
+ const ids = new Set();
78
+ const fields = raw.fields.map((field) => {
79
+ if (!object(field) ||
80
+ !nonempty(field.id) ||
81
+ ids.has(field.id) ||
82
+ typeof field.type !== 'string' ||
83
+ !['string', 'number', 'boolean'].includes(String(field.type)) ||
84
+ (field.required !== undefined && typeof field.required !== 'boolean') ||
85
+ (field.description !== undefined && !nonempty(field.description)) ||
86
+ Object.keys(field).some((k) => !['id', 'type', 'required', 'enum', 'description'].includes(k)))
87
+ fail('invalid or duplicate input field');
88
+ ids.add(field.id);
89
+ const copy = { ...field };
90
+ if (field.enum !== undefined) {
91
+ if (!Array.isArray(field.enum) || field.enum.length === 0 || field.enum.length > 100)
92
+ fail('enum must contain between one and 100 choices');
93
+ for (const value of field.enum)
94
+ validateValues([{ ...copy, enum: undefined }], { [field.id]: value });
95
+ }
96
+ return {
97
+ id: copy.id,
98
+ type: copy.type,
99
+ ...(copy.required !== undefined && { required: copy.required }),
100
+ ...(copy.description !== undefined && { description: copy.description }),
101
+ ...(copy.enum !== undefined && { enum: [...copy.enum] }),
102
+ };
103
+ });
104
+ const supplied = validateValues(fields, raw.supplied ?? {});
105
+ let context;
106
+ if (raw.context !== undefined) {
107
+ if (!object(raw.context) || !jsonValue(raw.context))
108
+ fail('context must be a JSON object');
109
+ const json = JSON.stringify(raw.context, (_key, value) => {
110
+ if (value === undefined ||
111
+ typeof value === 'function' ||
112
+ typeof value === 'symbol' ||
113
+ typeof value === 'bigint' ||
114
+ (typeof value === 'number' && !Number.isFinite(value)))
115
+ fail('context must contain JSON values');
116
+ return value;
117
+ });
118
+ if (json.length > 16384)
119
+ fail('context exceeds 16384 characters');
120
+ context = JSON.parse(json);
121
+ }
122
+ return {
123
+ id: raw.id,
124
+ question: raw.question,
125
+ fields,
126
+ ...(raw.supplied !== undefined && { supplied }),
127
+ ...(context !== undefined && { context }),
128
+ };
129
+ }
130
+ exports.validateInputDeclaration = validateInputDeclaration;
131
+ /** Runtime-only stamping: a model cannot choose its saved skill or original request. */
132
+ function stampInputRequest(declaration, requestId, origin) {
133
+ const clean = validateInputDeclaration(declaration);
134
+ const supplied = { ...clean.supplied };
135
+ return {
136
+ ...clean,
137
+ status: 'awaiting_input',
138
+ requestId,
139
+ supplied,
140
+ origins: Object.fromEntries(Object.keys(supplied).map((k) => [k, 'declaration'])),
141
+ missing: clean.fields
142
+ .filter((f) => f.required !== false && !own(supplied, f.id))
143
+ .map((f) => f.id),
144
+ origin: JSON.parse(JSON.stringify(origin)),
145
+ };
146
+ }
147
+ exports.stampInputRequest = stampInputRequest;
148
+ /** Read only an explicitly declared, well-shaped input pause; never assistant prose. */
149
+ function readAwaitingInput(pauseData) {
150
+ if (!object(pauseData) || !own(pauseData, 'awaitingInput'))
151
+ return undefined;
152
+ const value = pauseData.awaitingInput;
153
+ if (!object(value) ||
154
+ value.status !== 'awaiting_input' ||
155
+ !nonempty(value.requestId) ||
156
+ !object(value.origin) ||
157
+ typeof value.origin.originalRequest !== 'string' ||
158
+ !nonempty(value.origin.toolCallId))
159
+ fail('malformed stored input request');
160
+ const clean = validateInputDeclaration({
161
+ id: value.id,
162
+ question: value.question,
163
+ fields: value.fields,
164
+ supplied: value.supplied,
165
+ ...(value.context !== undefined && { context: value.context }),
166
+ });
167
+ const origins = value.origins;
168
+ if (!object(origins) ||
169
+ Object.keys(clean.supplied ?? {}).some((k) => !['declaration', 'response'].includes(String(origins[k]))))
170
+ fail('malformed input origins');
171
+ return JSON.parse(JSON.stringify({ ...value, ...clean }));
172
+ }
173
+ exports.readAwaitingInput = readAwaitingInput;
174
+ /** Accept typed fields, or explicit cancellation, without coercing free text. */
175
+ function applyInputResponse(waiting, raw) {
176
+ if (!object(raw) || raw.requestId !== waiting.requestId)
177
+ fail('response names a different input request');
178
+ if (raw.cancel === true) {
179
+ if (Object.keys(raw).some((k) => !['requestId', 'cancel'].includes(k)))
180
+ fail('cancellation cannot carry values');
181
+ return { requestId: waiting.requestId, cancel: true };
182
+ }
183
+ if (Object.keys(raw).some((k) => !['requestId', 'values'].includes(k)))
184
+ fail('unknown response field');
185
+ const values = validateValues(waiting.fields, raw.values);
186
+ if (Object.keys(values).length === 0)
187
+ fail('supply at least one field or cancel explicitly');
188
+ const supplied = { ...waiting.supplied, ...values };
189
+ return {
190
+ ...waiting,
191
+ supplied,
192
+ origins: {
193
+ ...waiting.origins,
194
+ ...Object.fromEntries(Object.keys(values).map((k) => [k, 'response'])),
195
+ },
196
+ missing: waiting.fields
197
+ .filter((f) => f.required !== false && !own(supplied, f.id))
198
+ .map((f) => f.id),
199
+ };
200
+ }
201
+ exports.applyInputResponse = applyInputResponse;
202
+ //# 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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"}
@@ -17,13 +17,29 @@
17
17
  * the tool API clean (tools are pure-ish) while still supporting pause.
18
18
  */
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.askHuman = exports.isPauseRequest = exports.pauseHere = exports.PauseRequest = exports.PauseAnswerRequiredError = exports.DecisionRequiredError = exports.StaleDecisionError = exports.pauseDemandsDecision = exports.assertDecisionIsNotStale = exports.isAskPause = exports.isCheckInPause = exports.isPaused = void 0;
20
+ exports.askHuman = exports.isPauseRequest = exports.pauseHere = exports.PauseRequest = exports.PauseAnswerRequiredError = exports.DecisionRequiredError = exports.StaleDecisionError = exports.pauseDemandsDecision = exports.assertDecisionIsNotStale = exports.isAskPause = exports.isCheckInPause = exports.requestInput = exports.isInputPause = exports.isPaused = void 0;
21
21
  const askComponent_js_1 = require("./askComponent.js");
22
+ const inputRequest_js_1 = require("./inputRequest.js");
22
23
  /** Type guard — discriminates `RunnerPauseOutcome` from a normal `TOut`. */
23
24
  function isPaused(result) {
24
25
  return (typeof result === 'object' && result !== null && result.paused === true);
25
26
  }
26
27
  exports.isPaused = isPaused;
28
+ /** A missing-input pause, distinct from every consent gate. */
29
+ function isInputPause(result) {
30
+ return isPaused(result) && result.awaitingInput !== undefined;
31
+ }
32
+ exports.isInputPause = isInputPause;
33
+ /** Collect declared fields using a dedicated tool. The query itself runs afterwards. */
34
+ function requestInput(declaration) {
35
+ const inputRequest = (0, inputRequest_js_1.validateInputDeclaration)(declaration);
36
+ if (!inputRequest.fields.some((field) => field.required !== false &&
37
+ !Object.prototype.hasOwnProperty.call(inputRequest.supplied ?? {}, field.id))) {
38
+ throw new inputRequest_js_1.InputRequestError('no required fields are missing; continue without requesting input');
39
+ }
40
+ return pauseHere({ question: inputRequest.question, inputRequest });
41
+ }
42
+ exports.requestInput = requestInput;
27
43
  /**
28
44
  * Type guard — is this a check-in pause (evidence-carrying human consent),
29
45
  * 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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"}
@@ -258,24 +258,26 @@ class ToolSessionTier {
258
258
  * Called from `Agent.run`/`resume` at a terminal that is NOT a pause — and
259
259
  * deliberately not from a `finally`, which also runs on the two pause shapes.
260
260
  *
261
- * **`runId` is optional, and the Agent omits it.** A `'run'` scope means
261
+ * **`runId` is optional for unhosted callers.** A `'run'` scope means
262
262
  * "release this when the TURN that opened it ends", and a turn is not a
263
263
  * runId: a pause and its resume are one turn across two runs (`resume()`
264
264
  * builds a fresh executor with a fresh id). Filtering on the id would leave
265
265
  * every session a paused turn had opened alive forever — the failure would
266
266
  * look like nothing at all, because the run answered fine.
267
267
  *
268
- * Firing all of them is exactly right under the runner's own
269
- * ONE-IN-FLIGHT-RUN-PER-AGENT invariant: at a terminal there is no other turn
270
- * whose sessions these could be. An ABANDONED pause is the interesting case
271
- * and it lands the right way round too — the next completed turn releases
272
- * what the abandoned one left holding.
268
+ * Hosted agents use `fireSessionRuns` instead: one runner can retain pauses
269
+ * for several conversations even though only one run executes at a time.
270
+ * A session terminal must never close another conversation's resources.
273
271
  *
274
272
  * Pass an id where a caller really does mean one specific run.
275
273
  */
276
274
  fireRun(runId) {
277
275
  return this.fire((r) => r.scope === 'run' && (runId === undefined || r.origin.runId === runId), 'run-end').then(() => undefined);
278
276
  }
277
+ /** End run resources for one hosting conversation across pause/resume run IDs. */
278
+ fireSessionRuns(sessionId) {
279
+ return this.fire((r) => r.scope === 'run' && r.origin.sessionId === sessionId, 'run-end');
280
+ }
279
281
  /**
280
282
  * Fire the `'session'` registrations for one hosting session — or, with no
281
283
  * `sessionId`, every `'session'` registration there is.
@@ -355,7 +357,7 @@ class ToolSessionTier {
355
357
  ...base,
356
358
  kind: 'closed',
357
359
  durationMs: this.now() - startedAt,
358
- });
360
+ }, registration.origin);
359
361
  }
360
362
  catch (err) {
361
363
  // Law 5: swallowed at the caller, never silent on the wire.
@@ -365,7 +367,7 @@ class ToolSessionTier {
365
367
  durationMs: this.now() - startedAt,
366
368
  error: err instanceof Error ? err.message : String(err),
367
369
  ...(err instanceof Error && { errorClass: err.constructor?.name ?? err.name }),
368
- });
370
+ }, registration.origin);
369
371
  }
370
372
  }
371
373
  }
@@ -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":"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"}
@@ -0,0 +1,44 @@
1
+ /** Declared datasets -> scope-bound artifacts. No transport, row discovery or domain vocabulary. */
2
+ import type { Tool } from '../core/tools.js';
3
+ import type { ToolArtifactPutInput, ToolArtifacts } from './capability.js';
4
+ import type { ArtifactMeta } from './types.js';
5
+ /** Producer-owned payloads. A source is an optional artifact, not an inferred fact. */
6
+ export interface DatasetArtifactInput {
7
+ readonly key: string;
8
+ readonly artifact: ToolArtifactPutInput;
9
+ readonly source?: ToolArtifactPutInput;
10
+ }
11
+ /** A failed write or a ticket no longer held is never advertised as a stored payload. */
12
+ export type DatasetArtifactReceipt = {
13
+ readonly status: 'stored';
14
+ readonly meta: ArtifactMeta;
15
+ } | {
16
+ readonly status: 'unavailable';
17
+ readonly reason: 'store-unavailable' | 'missing-or-expired';
18
+ };
19
+ export interface DatasetPublication {
20
+ readonly key: string;
21
+ readonly artifact: DatasetArtifactReceipt;
22
+ readonly source?: DatasetArtifactReceipt;
23
+ }
24
+ /** Projection owns field meanings, coverage envelopes and inline policy; receipts contain no rows. */
25
+ export interface DatasetResultPlan<TProjected = unknown> {
26
+ readonly datasets: readonly DatasetArtifactInput[];
27
+ project(publications: readonly DatasetPublication[]): TProjected | Promise<TProjected>;
28
+ }
29
+ export interface DatasetResultAdapter<TArgs = Record<string, unknown>, TResult = unknown, TProjected = unknown> {
30
+ /** Undefined is an intentional pass-through (for example a declared absence). */
31
+ describe(result: TResult, args: TArgs): DatasetResultPlan<TProjected> | undefined | Promise<DatasetResultPlan<TProjected> | undefined>;
32
+ }
33
+ /**
34
+ * Adapt any local, HTTP-backed or MCP Tool using the SAME already-bound execution capability.
35
+ * Claim-check: the host configures storage; the model carries tickets between tools. No UI required.
36
+ * No store: pass through without calling the adapter; the host's normal result policy still applies.
37
+ * Writes are independent, not a transaction. A failed source does not hide otherwise readable data;
38
+ * its unavailable receipt must remain explicit in the producer's projection. Recheck tickets after
39
+ * the batch because a later put can evict an earlier one. Expiry after publication remains possible.
40
+ * This stages materialized payloads; it does not add remote handles, streaming or query pushdown.
41
+ */
42
+ export declare function withDatasetArtifacts<TArgs, TResult, TProjected>(tool: Tool<TArgs, TResult>, adapter: DatasetResultAdapter<TArgs, TResult, TProjected>): Tool<TArgs, TResult | TProjected>;
43
+ /** The same staging step for an existing tool pipeline that already owns execution and projection. */
44
+ export declare function stageDatasetArtifacts(datasets: readonly DatasetArtifactInput[], artifacts: ToolArtifacts): Promise<readonly DatasetPublication[]>;
@@ -0,0 +1,114 @@
1
+ import { projectionSemanticsIssues, snapshotProjectionSemantics, } from '../lib/semantics/projection.js';
2
+ /**
3
+ * Adapt any local, HTTP-backed or MCP Tool using the SAME already-bound execution capability.
4
+ * Claim-check: the host configures storage; the model carries tickets between tools. No UI required.
5
+ * No store: pass through without calling the adapter; the host's normal result policy still applies.
6
+ * Writes are independent, not a transaction. A failed source does not hide otherwise readable data;
7
+ * its unavailable receipt must remain explicit in the producer's projection. Recheck tickets after
8
+ * the batch because a later put can evict an earlier one. Expiry after publication remains possible.
9
+ * This stages materialized payloads; it does not add remote handles, streaming or query pushdown.
10
+ */
11
+ export function withDatasetArtifacts(tool, adapter) {
12
+ return {
13
+ ...tool,
14
+ async execute(args, ctx) {
15
+ const result = await tool.execute(args, ctx);
16
+ if (!ctx.hasArtifacts)
17
+ return result;
18
+ const semantics = snapshotProjectionSemantics(result);
19
+ const plan = await adapter.describe(result, args);
20
+ if (plan === undefined) {
21
+ const issues = projectionSemanticsIssues(semantics, result);
22
+ if (issues.length)
23
+ throw new Error(issues[0].message);
24
+ return result;
25
+ }
26
+ if (!plan || typeof plan.project !== 'function') {
27
+ throw new TypeError('A dataset result plan requires a project function.');
28
+ }
29
+ const projected = await plan.project(await stageDatasetArtifacts(plan.datasets, ctx.artifacts));
30
+ const issues = projectionSemanticsIssues(semantics, projected);
31
+ if (issues.length)
32
+ throw new Error(issues[0].message);
33
+ return projected;
34
+ },
35
+ };
36
+ }
37
+ /** The same staging step for an existing tool pipeline that already owns execution and projection. */
38
+ export async function stageDatasetArtifacts(datasets, artifacts) {
39
+ assertInputs(datasets);
40
+ const publications = [];
41
+ for (const entry of datasets) {
42
+ const source = entry.source ? await put(artifacts, entry.source) : undefined;
43
+ const parentRefs = source?.status === 'stored'
44
+ ? [...(entry.artifact.parentRefs ?? []), source.meta.ref]
45
+ : entry.artifact.parentRefs;
46
+ const artifact = await put(artifacts, { ...entry.artifact, ...(parentRefs && { parentRefs }) });
47
+ publications.push({ key: entry.key, artifact, ...(source && { source }) });
48
+ }
49
+ const held = [];
50
+ for (const publication of publications) {
51
+ const artifact = await current(artifacts, publication.artifact);
52
+ const source = publication.source ? await current(artifacts, publication.source) : undefined;
53
+ held.push({ key: publication.key, artifact, ...(source && { source }) });
54
+ }
55
+ return held;
56
+ }
57
+ async function put(artifacts, input) {
58
+ try {
59
+ return { status: 'stored', meta: await artifacts.put(input) };
60
+ }
61
+ catch {
62
+ // Store exceptions may contain connection strings. The existing artifact event records the refusal.
63
+ return { status: 'unavailable', reason: 'store-unavailable' };
64
+ }
65
+ }
66
+ async function current(artifacts, receipt) {
67
+ if (receipt.status !== 'stored')
68
+ return receipt;
69
+ try {
70
+ const meta = await artifacts.head(receipt.meta.ref);
71
+ return meta
72
+ ? { status: 'stored', meta }
73
+ : { status: 'unavailable', reason: 'missing-or-expired' };
74
+ }
75
+ catch {
76
+ return { status: 'unavailable', reason: 'store-unavailable' };
77
+ }
78
+ }
79
+ /** Validate declaration shape before any writes. Payload serialization and parent proofs belong to the store. */
80
+ function assertInputs(datasets) {
81
+ if (!Array.isArray(datasets)) {
82
+ throw new TypeError('Dataset declarations must be an array.');
83
+ }
84
+ const keys = new Set();
85
+ for (const entry of datasets) {
86
+ if (!entry || typeof entry.key !== 'string' || entry.key.trim() === '' || keys.has(entry.key)) {
87
+ throw new TypeError('Dataset keys must be nonempty and unique within one result.');
88
+ }
89
+ keys.add(entry.key);
90
+ for (const input of [entry.artifact, ...(entry.source === undefined ? [] : [entry.source])]) {
91
+ if (!input ||
92
+ typeof input !== 'object' ||
93
+ Array.isArray(input) ||
94
+ typeof input.kind !== 'string' ||
95
+ !input.kind.trim() ||
96
+ typeof input.mediaType !== 'string' ||
97
+ !input.mediaType.trim() ||
98
+ !Object.prototype.hasOwnProperty.call(input, 'data')) {
99
+ throw new TypeError('Each dataset/source artifact requires kind, mediaType and data.');
100
+ }
101
+ if (input.parentRefs !== undefined) {
102
+ if (!Array.isArray(input.parentRefs)) {
103
+ throw new TypeError('Dataset/source parentRefs must be an array of strings.');
104
+ }
105
+ for (const ref of input.parentRefs) {
106
+ if (typeof ref !== 'string') {
107
+ throw new TypeError('Dataset/source parentRefs must be an array of strings.');
108
+ }
109
+ }
110
+ }
111
+ }
112
+ }
113
+ }
114
+ //# sourceMappingURL=datasetResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datasetResult.js","sourceRoot":"","sources":["../../../src/artifacts/datasetResult.ts"],"names":[],"mappings":"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"}
@@ -24,3 +24,4 @@ export { PRESENT_TOOL_NAME, presentArtifact, type PresentOutcome, type PresentSn
24
24
  export { recordingPutInput, RECORDING_ARTIFACT_KIND, RECORDING_MEDIA_TYPE, CHART_WALK_ARTIFACT_KIND, chartWalkPutInput, UnserializableRecordingError, type ChartWalkMintFacts, type RecordingMintFacts, } from './recordingArtifact.js';
25
25
  export { artifactStoreConformance, formatArtifactStoreReport, runArtifactStoreCase, runArtifactStoreConformance, type ArtifactConformanceKit, type ArtifactStoreCase, type ArtifactStoreCaseName, type ArtifactStoreHarness, type ArtifactStoreHarnessHook, type ArtifactStoreMember, type ArtifactStoreOutcome, type ArtifactStoreReport, } from './conformance/index.js';
26
26
  export { assertArtifactPlacement, isPlacedToolResult, placedResultKind, placedToolResult, type ArtifactPlacement, type PlacedToolResult, } from './placement.js';
27
+ export { withDatasetArtifacts, stageDatasetArtifacts, type DatasetArtifactInput, type DatasetArtifactReceipt, type DatasetPublication, type DatasetResultAdapter, type DatasetResultPlan, } from './datasetResult.js';
@@ -27,4 +27,5 @@ export { recordingPutInput, RECORDING_ARTIFACT_KIND, RECORDING_MEDIA_TYPE, CHART
27
27
  // fail. See conformance/README.md.
28
28
  export { artifactStoreConformance, formatArtifactStoreReport, runArtifactStoreCase, runArtifactStoreConformance, } from './conformance/index.js';
29
29
  export { assertArtifactPlacement, isPlacedToolResult, placedResultKind, placedToolResult, } from './placement.js';
30
+ export { withDatasetArtifacts, stageDatasetArtifacts, } from './datasetResult.js';
30
31
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/artifacts/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,GAetB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAElF,OAAO,EACL,iBAAiB,EACjB,oCAAoC,GAGrC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,aAAa,EACb,2BAA2B,GAE5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EACf,4BAA4B,GAG7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAA2B,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,YAAY,EAA4B,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,GAId,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,aAAa,EACb,qBAAqB,GAQtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,sBAAsB,GAIvB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,iBAAiB,EACjB,eAAe,GAIhB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,iBAAiB,EACjB,4BAA4B,GAG7B,MAAM,wBAAwB,CAAC;AAChC,4EAA4E;AAC5E,+EAA+E;AAC/E,6EAA6E;AAC7E,mCAAmC;AACnC,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,oBAAoB,EACpB,2BAA2B,GAS5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,GAGjB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/artifacts/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,GAetB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAElF,OAAO,EACL,iBAAiB,EACjB,oCAAoC,GAGrC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,aAAa,EACb,2BAA2B,GAE5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EACf,4BAA4B,GAG7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAA2B,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,YAAY,EAA4B,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,GAId,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,aAAa,EACb,qBAAqB,GAQtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,sBAAsB,GAIvB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,iBAAiB,EACjB,eAAe,GAIhB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,iBAAiB,EACjB,4BAA4B,GAG7B,MAAM,wBAAwB,CAAC;AAChC,4EAA4E;AAC5E,+EAA+E;AAC/E,6EAA6E;AAC7E,mCAAmC;AACnC,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,oBAAoB,EACpB,2BAA2B,GAS5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,GAGjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GAMtB,MAAM,oBAAoB,CAAC"}
@@ -829,7 +829,7 @@ export declare class Agent extends RunnerBase<AgentInput, AgentOutput> {
829
829
  * Fired for the TURN, not for `currentRunContext.runId` — `resume()` mints a
830
830
  * fresh run id, so a pause and its resume are one turn across two runs, and
831
831
  * filtering on the id would leave everything a paused turn opened alive
832
- * forever. See `ToolSessionTier.fireRun`.
832
+ * forever. Hosted turns are scoped to their session, preserving other pauses. See `ToolSessionTier.fireRun`.
833
833
  *
834
834
  * @param outcome what `run()`/`resume()` is about to return, or about to throw.
835
835
  */
@@ -1040,7 +1040,7 @@ export declare class Agent extends RunnerBase<AgentInput, AgentOutput> {
1040
1040
  * hardcodes `runId: 'consumer-scope'`, and a teardown event stamped that way
1041
1041
  * cannot be joined to the run that OPENED the session — the exact
1042
1042
  * unjoinability 9.4.0 spent a release fixing for credential events. So the
1043
- * meta comes from `currentRunContext`, with a STATED pseudo-stage, the same
1043
+ * meta comes from the registration-time run context, with a STATED pseudo-stage, the same
1044
1044
  * move as the `'<stageId>#paused'` stamp at the pause boundary.
1045
1045
  */
1046
1046
  private emitToolSessionReport;