@namzu/sdk 53.2.2 → 55.0.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 (278) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/dist/agents/QueryAgent.d.ts.map +1 -1
  3. package/dist/agents/QueryAgent.js +1 -0
  4. package/dist/agents/QueryAgent.js.map +1 -1
  5. package/dist/compaction/context-breakdown.d.ts +85 -0
  6. package/dist/compaction/context-breakdown.d.ts.map +1 -0
  7. package/dist/compaction/context-breakdown.js +149 -0
  8. package/dist/compaction/context-breakdown.js.map +1 -0
  9. package/dist/compaction/extractor.d.ts.map +1 -1
  10. package/dist/compaction/extractor.js +5 -1
  11. package/dist/compaction/extractor.js.map +1 -1
  12. package/dist/compaction/managers/structured.d.ts.map +1 -1
  13. package/dist/compaction/managers/structured.js +5 -0
  14. package/dist/compaction/managers/structured.js.map +1 -1
  15. package/dist/compaction/manual.d.ts.map +1 -1
  16. package/dist/compaction/manual.js +6 -0
  17. package/dist/compaction/manual.js.map +1 -1
  18. package/dist/compaction/serializer.d.ts +6 -0
  19. package/dist/compaction/serializer.d.ts.map +1 -1
  20. package/dist/compaction/serializer.js +21 -3
  21. package/dist/compaction/serializer.js.map +1 -1
  22. package/dist/compaction/token-estimate.d.ts +2 -0
  23. package/dist/compaction/token-estimate.d.ts.map +1 -1
  24. package/dist/compaction/token-estimate.js +4 -0
  25. package/dist/compaction/token-estimate.js.map +1 -1
  26. package/dist/compaction/verifier.d.ts.map +1 -1
  27. package/dist/compaction/verifier.js +27 -6
  28. package/dist/compaction/verifier.js.map +1 -1
  29. package/dist/constants/compaction/index.d.ts +1 -0
  30. package/dist/constants/compaction/index.d.ts.map +1 -1
  31. package/dist/constants/compaction/index.js +1 -0
  32. package/dist/constants/compaction/index.js.map +1 -1
  33. package/dist/manager/resident/proposal.d.ts +2 -2
  34. package/dist/manager/resident/store.d.ts +4 -4
  35. package/dist/prompt/coding-agent-doctrine.d.ts +3 -3
  36. package/dist/prompt/coding-agent-doctrine.d.ts.map +1 -1
  37. package/dist/prompt/coding-agent-doctrine.js +18 -20
  38. package/dist/prompt/coding-agent-doctrine.js.map +1 -1
  39. package/dist/public-runtime.d.ts +8 -3
  40. package/dist/public-runtime.d.ts.map +1 -1
  41. package/dist/public-runtime.js +7 -2
  42. package/dist/public-runtime.js.map +1 -1
  43. package/dist/runtime/cache-clock.d.ts +39 -0
  44. package/dist/runtime/cache-clock.d.ts.map +1 -0
  45. package/dist/runtime/cache-clock.js +48 -0
  46. package/dist/runtime/cache-clock.js.map +1 -0
  47. package/dist/runtime/query/checkpoint.d.ts +12 -2
  48. package/dist/runtime/query/checkpoint.d.ts.map +1 -1
  49. package/dist/runtime/query/checkpoint.js +42 -8
  50. package/dist/runtime/query/checkpoint.js.map +1 -1
  51. package/dist/runtime/query/compact-session.d.ts +37 -2
  52. package/dist/runtime/query/compact-session.d.ts.map +1 -1
  53. package/dist/runtime/query/compact-session.js +77 -3
  54. package/dist/runtime/query/compact-session.js.map +1 -1
  55. package/dist/runtime/query/executor/tool-call-admission.d.ts.map +1 -1
  56. package/dist/runtime/query/executor/tool-call-admission.js +3 -0
  57. package/dist/runtime/query/executor/tool-call-admission.js.map +1 -1
  58. package/dist/runtime/query/executor.d.ts +39 -1
  59. package/dist/runtime/query/executor.d.ts.map +1 -1
  60. package/dist/runtime/query/executor.js +115 -7
  61. package/dist/runtime/query/executor.js.map +1 -1
  62. package/dist/runtime/query/index.d.ts +18 -0
  63. package/dist/runtime/query/index.d.ts.map +1 -1
  64. package/dist/runtime/query/index.js +20 -1
  65. package/dist/runtime/query/index.js.map +1 -1
  66. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  67. package/dist/runtime/query/iteration/index.js +25 -8
  68. package/dist/runtime/query/iteration/index.js.map +1 -1
  69. package/dist/runtime/query/iteration/phases/context.d.ts +24 -2
  70. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  71. package/dist/runtime/query/iteration/phases/context.js +22 -22
  72. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  73. package/dist/runtime/query/iteration/phases/per-call-review.d.ts +78 -0
  74. package/dist/runtime/query/iteration/phases/per-call-review.d.ts.map +1 -0
  75. package/dist/runtime/query/iteration/phases/per-call-review.js +494 -0
  76. package/dist/runtime/query/iteration/phases/per-call-review.js.map +1 -0
  77. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  78. package/dist/runtime/query/iteration/phases/tool-review.js +129 -62
  79. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  80. package/dist/runtime/query/iteration/step-context.d.ts +14 -0
  81. package/dist/runtime/query/iteration/step-context.d.ts.map +1 -1
  82. package/dist/runtime/query/iteration/step-context.js +29 -0
  83. package/dist/runtime/query/iteration/step-context.js.map +1 -1
  84. package/dist/runtime/query/iteration/step-shaping.d.ts.map +1 -1
  85. package/dist/runtime/query/iteration/step-shaping.js +6 -2
  86. package/dist/runtime/query/iteration/step-shaping.js.map +1 -1
  87. package/dist/runtime/query/prepare-turn.d.ts.map +1 -1
  88. package/dist/runtime/query/prepare-turn.js +16 -3
  89. package/dist/runtime/query/prepare-turn.js.map +1 -1
  90. package/dist/runtime/query/project-instructions.d.ts +24 -5
  91. package/dist/runtime/query/project-instructions.d.ts.map +1 -1
  92. package/dist/runtime/query/project-instructions.js +107 -35
  93. package/dist/runtime/query/project-instructions.js.map +1 -1
  94. package/dist/runtime/query/prompt.d.ts +6 -0
  95. package/dist/runtime/query/prompt.d.ts.map +1 -1
  96. package/dist/runtime/query/prompt.js +10 -49
  97. package/dist/runtime/query/prompt.js.map +1 -1
  98. package/dist/runtime/query/resume-pending.d.ts +8 -0
  99. package/dist/runtime/query/resume-pending.d.ts.map +1 -1
  100. package/dist/runtime/query/resume-pending.js +101 -0
  101. package/dist/runtime/query/resume-pending.js.map +1 -1
  102. package/dist/runtime/query/review-policy.d.ts +18 -0
  103. package/dist/runtime/query/review-policy.d.ts.map +1 -1
  104. package/dist/runtime/query/review-policy.js +10 -0
  105. package/dist/runtime/query/review-policy.js.map +1 -1
  106. package/dist/runtime/query/steering.d.ts +55 -56
  107. package/dist/runtime/query/steering.d.ts.map +1 -1
  108. package/dist/runtime/query/steering.js +78 -72
  109. package/dist/runtime/query/steering.js.map +1 -1
  110. package/dist/store/budget/disk.js +4 -1
  111. package/dist/store/budget/disk.js.map +1 -1
  112. package/dist/tools/admit-facts.d.ts.map +1 -1
  113. package/dist/tools/admit-facts.js +6 -0
  114. package/dist/tools/admit-facts.js.map +1 -1
  115. package/dist/tools/builtins/bash.d.ts +8 -0
  116. package/dist/tools/builtins/bash.d.ts.map +1 -1
  117. package/dist/tools/builtins/bash.js +36 -27
  118. package/dist/tools/builtins/bash.js.map +1 -1
  119. package/dist/tools/builtins/browser.d.ts.map +1 -1
  120. package/dist/tools/builtins/browser.js +38 -12
  121. package/dist/tools/builtins/browser.js.map +1 -1
  122. package/dist/tools/builtins/edit-apply.d.ts +7 -4
  123. package/dist/tools/builtins/edit-apply.d.ts.map +1 -1
  124. package/dist/tools/builtins/edit-apply.js +3 -0
  125. package/dist/tools/builtins/edit-apply.js.map +1 -1
  126. package/dist/tools/builtins/edit.d.ts.map +1 -1
  127. package/dist/tools/builtins/edit.js +31 -11
  128. package/dist/tools/builtins/edit.js.map +1 -1
  129. package/dist/tools/builtins/exit-semantics.d.ts +31 -0
  130. package/dist/tools/builtins/exit-semantics.d.ts.map +1 -0
  131. package/dist/tools/builtins/exit-semantics.js +198 -0
  132. package/dist/tools/builtins/exit-semantics.js.map +1 -0
  133. package/dist/tools/builtins/job.js +1 -1
  134. package/dist/tools/builtins/job.js.map +1 -1
  135. package/dist/tools/builtins/skill.js +1 -1
  136. package/dist/tools/builtins/skill.js.map +1 -1
  137. package/dist/tools/builtins/structuredOutput.js +1 -1
  138. package/dist/tools/builtins/structuredOutput.js.map +1 -1
  139. package/dist/tools/builtins/verify-outputs.js +1 -1
  140. package/dist/tools/builtins/verify-outputs.js.map +1 -1
  141. package/dist/tools/builtins/write-file.js +11 -6
  142. package/dist/tools/builtins/write-file.js.map +1 -1
  143. package/dist/tools/coordinator/ask-user-question.d.ts +6 -0
  144. package/dist/tools/coordinator/ask-user-question.d.ts.map +1 -1
  145. package/dist/tools/coordinator/ask-user-question.js +6 -1
  146. package/dist/tools/coordinator/ask-user-question.js.map +1 -1
  147. package/dist/tools/coordinator/index.d.ts.map +1 -1
  148. package/dist/tools/coordinator/index.js +10 -3
  149. package/dist/tools/coordinator/index.js.map +1 -1
  150. package/dist/tools/memory/delete.js +1 -1
  151. package/dist/tools/memory/delete.js.map +1 -1
  152. package/dist/tools/memory/read.js +1 -1
  153. package/dist/tools/memory/read.js.map +1 -1
  154. package/dist/tools/memory/save.d.ts.map +1 -1
  155. package/dist/tools/memory/save.js +4 -3
  156. package/dist/tools/memory/save.js.map +1 -1
  157. package/dist/tools/memory/search.js +1 -1
  158. package/dist/tools/memory/search.js.map +1 -1
  159. package/dist/tools/memory/update.js +1 -1
  160. package/dist/tools/memory/update.js.map +1 -1
  161. package/dist/tools/schedules/loop-tool.d.ts.map +1 -1
  162. package/dist/tools/schedules/loop-tool.js +4 -2
  163. package/dist/tools/schedules/loop-tool.js.map +1 -1
  164. package/dist/tools/schedules/schedule-tool.js +2 -2
  165. package/dist/tools/schedules/schedule-tool.js.map +1 -1
  166. package/dist/tools/task/create.js +1 -1
  167. package/dist/tools/task/create.js.map +1 -1
  168. package/dist/tools/untrusted-envelope.js +1 -1
  169. package/dist/tools/untrusted-envelope.js.map +1 -1
  170. package/dist/toolsets/manager.d.ts.map +1 -1
  171. package/dist/toolsets/manager.js +6 -1
  172. package/dist/toolsets/manager.js.map +1 -1
  173. package/dist/turn/evidence-query.d.ts.map +1 -1
  174. package/dist/turn/evidence-query.js +16 -1
  175. package/dist/turn/evidence-query.js.map +1 -1
  176. package/dist/turn/evidence-recall.js +1 -1
  177. package/dist/turn/evidence-recall.js.map +1 -1
  178. package/dist/types/agent/base.d.ts +7 -0
  179. package/dist/types/agent/base.d.ts.map +1 -1
  180. package/dist/types/common/index.d.ts +19 -0
  181. package/dist/types/common/index.d.ts.map +1 -1
  182. package/dist/types/common/index.js +9 -0
  183. package/dist/types/common/index.js.map +1 -1
  184. package/dist/types/hitl/index.d.ts +66 -0
  185. package/dist/types/hitl/index.d.ts.map +1 -1
  186. package/dist/types/hitl/index.js.map +1 -1
  187. package/dist/types/message/index.d.ts +8 -0
  188. package/dist/types/message/index.d.ts.map +1 -1
  189. package/dist/types/message/index.js +12 -2
  190. package/dist/types/message/index.js.map +1 -1
  191. package/dist/types/message/notice-frame.d.ts +41 -0
  192. package/dist/types/message/notice-frame.d.ts.map +1 -0
  193. package/dist/types/message/notice-frame.js +65 -0
  194. package/dist/types/message/notice-frame.js.map +1 -0
  195. package/dist/types/provider/chat.d.ts +8 -0
  196. package/dist/types/provider/chat.d.ts.map +1 -1
  197. package/dist/types/provider/config.d.ts +6 -0
  198. package/dist/types/provider/config.d.ts.map +1 -1
  199. package/dist/types/session/checkpoint.d.ts +52 -0
  200. package/dist/types/session/checkpoint.d.ts.map +1 -1
  201. package/dist/types/session/checkpoint.js +5 -0
  202. package/dist/types/session/checkpoint.js.map +1 -1
  203. package/dist/types/session/events.d.ts +9 -0
  204. package/dist/types/session/events.d.ts.map +1 -1
  205. package/dist/types/session/events.js.map +1 -1
  206. package/dist/types/session/records.d.ts +181 -6
  207. package/dist/types/session/records.d.ts.map +1 -1
  208. package/dist/types/session/records.js +1 -1
  209. package/dist/types/session/records.js.map +1 -1
  210. package/dist/types/tool/presentation.d.ts +17 -1
  211. package/dist/types/tool/presentation.d.ts.map +1 -1
  212. package/package.json +1 -1
  213. package/src/agents/QueryAgent.ts +1 -0
  214. package/src/compaction/context-breakdown.ts +228 -0
  215. package/src/compaction/extractor.ts +8 -1
  216. package/src/compaction/managers/structured.ts +3 -0
  217. package/src/compaction/manual.ts +5 -0
  218. package/src/compaction/serializer.ts +28 -3
  219. package/src/compaction/token-estimate.ts +5 -0
  220. package/src/compaction/verifier.ts +32 -6
  221. package/src/constants/compaction/index.ts +1 -0
  222. package/src/prompt/coding-agent-doctrine.ts +18 -20
  223. package/src/public-runtime.ts +24 -2
  224. package/src/runtime/cache-clock.ts +67 -0
  225. package/src/runtime/query/checkpoint.ts +49 -8
  226. package/src/runtime/query/compact-session.ts +101 -3
  227. package/src/runtime/query/executor/tool-call-admission.ts +3 -0
  228. package/src/runtime/query/executor.ts +165 -15
  229. package/src/runtime/query/index.ts +45 -1
  230. package/src/runtime/query/iteration/index.ts +27 -6
  231. package/src/runtime/query/iteration/phases/context.ts +37 -11
  232. package/src/runtime/query/iteration/phases/per-call-review.ts +598 -0
  233. package/src/runtime/query/iteration/phases/tool-review.ts +168 -83
  234. package/src/runtime/query/iteration/step-context.ts +29 -0
  235. package/src/runtime/query/iteration/step-shaping.ts +6 -2
  236. package/src/runtime/query/prepare-turn.ts +18 -1
  237. package/src/runtime/query/project-instructions.ts +119 -38
  238. package/src/runtime/query/prompt.ts +11 -54
  239. package/src/runtime/query/resume-pending.ts +131 -0
  240. package/src/runtime/query/review-policy.ts +28 -0
  241. package/src/runtime/query/steering.ts +100 -96
  242. package/src/store/budget/disk.ts +4 -1
  243. package/src/tools/admit-facts.ts +6 -0
  244. package/src/tools/builtins/bash.ts +38 -28
  245. package/src/tools/builtins/browser.ts +38 -12
  246. package/src/tools/builtins/edit-apply.ts +12 -2
  247. package/src/tools/builtins/edit.ts +38 -12
  248. package/src/tools/builtins/exit-semantics.ts +198 -0
  249. package/src/tools/builtins/job.ts +1 -1
  250. package/src/tools/builtins/skill.ts +1 -1
  251. package/src/tools/builtins/structuredOutput.ts +1 -1
  252. package/src/tools/builtins/verify-outputs.ts +1 -1
  253. package/src/tools/builtins/write-file.ts +11 -6
  254. package/src/tools/coordinator/ask-user-question.ts +12 -1
  255. package/src/tools/coordinator/index.ts +10 -3
  256. package/src/tools/memory/delete.ts +1 -1
  257. package/src/tools/memory/read.ts +1 -1
  258. package/src/tools/memory/save.ts +4 -3
  259. package/src/tools/memory/search.ts +1 -1
  260. package/src/tools/memory/update.ts +1 -1
  261. package/src/tools/schedules/loop-tool.ts +4 -2
  262. package/src/tools/schedules/schedule-tool.ts +2 -2
  263. package/src/tools/task/create.ts +1 -1
  264. package/src/tools/untrusted-envelope.ts +1 -1
  265. package/src/toolsets/manager.ts +6 -1
  266. package/src/turn/evidence-query.ts +19 -1
  267. package/src/turn/evidence-recall.ts +1 -1
  268. package/src/types/agent/base.ts +8 -0
  269. package/src/types/common/index.ts +27 -0
  270. package/src/types/hitl/index.ts +67 -0
  271. package/src/types/message/index.ts +20 -2
  272. package/src/types/message/notice-frame.ts +88 -0
  273. package/src/types/provider/chat.ts +8 -0
  274. package/src/types/provider/config.ts +6 -0
  275. package/src/types/session/checkpoint.ts +5 -0
  276. package/src/types/session/events.ts +6 -0
  277. package/src/types/session/records.ts +1 -1
  278. package/src/types/tool/presentation.ts +16 -0
@@ -4,8 +4,9 @@ import { DECLINED_TOOL_CALL_FEEDBACK } from '../../declined.js';
4
4
  import { awaitProjectInstructionCallback, replaceProjectInstructionSnapshot, } from '../../project-instructions.js';
5
5
  import { attachRepeatNotice } from '../../repeat-call.js';
6
6
  import { isReviewExempt } from '../../review-policy.js';
7
- import { attachNotice, attachSteering, formatJobNote, formatMonitorNote } from '../../steering.js';
7
+ import { formatJobNote, formatMonitorNote, takeNoticeMessage, takeSteeringMessage, } from '../../steering.js';
8
8
  import { awaitDecisionDurably } from './context.js';
9
+ import { PerCallReview } from './per-call-review.js';
9
10
  /** Why an escalated call cannot be waved through by the rule that would otherwise allow it. */
10
11
  function escalationReason(escalation) {
11
12
  if (escalation?.unfinishedCheck !== undefined) {
@@ -150,9 +151,9 @@ export async function* runToolReview(ctx, response, iterationNum) {
150
151
  /** Set only where a person's No is known, so a policy refusal never lands in it. */
151
152
  let declines;
152
153
  /** Executes the batch, answering every call, and appends the results. */
153
- const settleBatch = async (denials) => {
154
+ const settleBatch = async (denials, review) => {
154
155
  const startedAt = Date.now();
155
- const batch = await ctx.toolExecutor.executeBatch(response, withRepeatRefusals(denials), undefined, preparedBatch, declines);
156
+ const batch = await ctx.toolExecutor.executeBatch(response, withRepeatRefusals(denials), undefined, preparedBatch, declines, review);
156
157
  toolMs += Date.now() - startedAt;
157
158
  executed = batch.results;
158
159
  // Registry receipts are ordered by actual completion, include nested
@@ -183,29 +184,37 @@ export async function* runToolReview(ctx, response, iterationNum) {
183
184
  if (notice)
184
185
  notices.push(notice);
185
186
  }
186
- // Guidance the host queued while this batch was running rides out on
187
- // the last result. This is the only legal slot for it: a `tool_use`
188
- // block must be answered by a `tool_result` with the same id, so a
189
- // user message wedged between them is rejected by the provider. Same
190
- // delivery a denial already uses, without the refusal.
187
+ // What the host or the kernel queued while this batch was running reaches
188
+ // the model as messages of their own right after the batch. A tool result
189
+ // stays what the tool returned: instructions written into it read as tool
190
+ // output, and a `tool_use` block still gets its `tool_result` first.
191
191
  let jobNoticeDelivered = false;
192
192
  let monitorNoticeDelivered = false;
193
- for (const msg of attachRepeatNotice(attachNotice(attachNotice(attachSteering(batch.messages, ctx.steering, ctx.onSteeringDelivered), ctx.jobNotices, formatJobNote,
193
+ for (const msg of attachRepeatNotice(batch.messages, notices)) {
194
+ ctx.recorder.pushMessage(msg);
195
+ }
196
+ const steering = takeSteeringMessage(batch.messages, ctx.steering, ctx.onSteeringDelivered);
197
+ if (steering)
198
+ ctx.recorder.pushMessage(steering);
199
+ const jobNotice = takeNoticeMessage(batch.messages, ctx.jobNotices, formatJobNote,
194
200
  // The exits that text accounts for have now been read, so the
195
201
  // record of them stops being pending work. Left standing, it
196
202
  // buys the model a turn the next time any job queues a notice.
197
203
  () => {
198
204
  ctx.awaitedJobs?.noticesDelivered();
199
205
  jobNoticeDelivered = true;
200
- }), ctx.monitorNotices, formatMonitorNote,
206
+ });
207
+ if (jobNotice)
208
+ ctx.recorder.pushMessage(jobNotice);
209
+ const monitorNotice = takeNoticeMessage(batch.messages, ctx.monitorNotices, formatMonitorNote,
201
210
  // Same rule for what a monitor said: read here, so a turn holding
202
211
  // itself open for the monitor does not spend a turn re-reading it.
203
212
  () => {
204
213
  ctx.awaitedJobs?.monitorNoticesDelivered();
205
214
  monitorNoticeDelivered = true;
206
- }), notices)) {
207
- ctx.recorder.pushMessage(msg);
208
- }
215
+ });
216
+ if (monitorNotice)
217
+ ctx.recorder.pushMessage(monitorNotice);
209
218
  if (jobNoticeDelivered)
210
219
  ctx.onJobNoticeDelivered?.();
211
220
  if (monitorNoticeDelivered)
@@ -232,9 +241,9 @@ export async function* runToolReview(ctx, response, iterationNum) {
232
241
  }
233
242
  };
234
243
  /** Stream recorded starts and progress while execution itself remains pending. */
235
- const settle = async function* (denials) {
244
+ const settle = async function* (denials, review) {
236
245
  if (!ctx.onPendingEvents) {
237
- await settleBatch(denials);
246
+ await settleBatch(denials, review);
238
247
  return;
239
248
  }
240
249
  const wakeup = () => {
@@ -249,7 +258,7 @@ export async function* runToolReview(ctx, response, iterationNum) {
249
258
  const unsubscribe = ctx.onPendingEvents(() => wake.notify());
250
259
  // Start the captured batch before yielding. Live observation must not
251
260
  // create a new mutation window before execution validates its payload.
252
- const execution = settleBatch(denials).then(() => {
261
+ const execution = settleBatch(denials, review).then(() => {
253
262
  settled = { ok: true };
254
263
  wake.notify();
255
264
  }, (error) => {
@@ -609,21 +618,6 @@ export async function* runToolReview(ctx, response, iterationNum) {
609
618
  return finish('rejected');
610
619
  }
611
620
  }
612
- const reviewCheckpoint = await ctx.checkpointMgr.create(ctx.recorder, iterationNum);
613
- await ctx.emitEvent({
614
- type: 'tool_review_requested',
615
- turnId: ctx.recorder.turnId,
616
- toolCalls: toolCallSummaries,
617
- iteration: iterationNum,
618
- });
619
- yield* ctx.drainPending();
620
- const reviewDecision = await awaitDecisionDurably(ctx, reviewCheckpoint, {
621
- type: 'tool_review',
622
- sessionId: ctx.recorder.sessionId,
623
- turnId: ctx.recorder.turnId,
624
- checkpointId: reviewCheckpoint.id,
625
- toolCalls: toolCallSummaries,
626
- });
627
621
  /**
628
622
  * The escalations this decision lets through, on the record, and the
629
623
  * escapes it did not confirm, refused.
@@ -634,8 +628,8 @@ export async function* runToolReview(ctx, response, iterationNum) {
634
628
  * the escape. Refusing it here, beside the executor that would honour it,
635
629
  * makes that hold for every policy rather than for the shipped one only.
636
630
  */
637
- const settleEscalations = async (denials, confirmed) => {
638
- for (const tc of escalated()) {
631
+ const settleEscalations = async (denials, confirmed, only) => {
632
+ for (const tc of only ? only.filter((call) => call.escalation !== undefined) : escalated()) {
639
633
  const denied = denials.get(tc.id);
640
634
  if (denied !== undefined) {
641
635
  // A crossing that was asked about and refused is on the record
@@ -715,6 +709,99 @@ export async function* runToolReview(ctx, response, iterationNum) {
715
709
  }
716
710
  }
717
711
  };
712
+ /**
713
+ * The record of calls approved without anyone being asked: by a skill's
714
+ * `allowed-tools`, or by a `pre_tool_use` hook's `allow`. Only a call that
715
+ * carried the mark counts: a policy that lists an unmarked id has not been
716
+ * given a skill's or a hook's word for it.
717
+ */
718
+ const recordGrantAudits = async (decision, calls) => {
719
+ if (decision.action !== 'approve_tools')
720
+ return;
721
+ if (decision.skillGranted) {
722
+ const listed = new Set(decision.skillGranted);
723
+ for (const tc of calls) {
724
+ if (!listed.has(tc.id) || !tc.skillGrant || gateDenied.has(tc.id))
725
+ continue;
726
+ await ctx.recorder.recordAudit({
727
+ what: { action: 'tool_call', tool: tc.name },
728
+ outcome: 'approved',
729
+ reason: `pre-approved by the allowed-tools of skill "${tc.skillGrant.skill}" for this turn; nobody was asked`,
730
+ });
731
+ }
732
+ }
733
+ if (decision.hookGranted) {
734
+ const listed = new Set(decision.hookGranted);
735
+ for (const tc of calls) {
736
+ if (!listed.has(tc.id) || !tc.hookGrant || gateDenied.has(tc.id))
737
+ continue;
738
+ await ctx.recorder.recordAudit({
739
+ what: { action: 'tool_call', tool: tc.name },
740
+ outcome: 'approved',
741
+ reason: `pre-approved by a pre_tool_use hook${tc.hookGrant.reason ? ` (${tc.hookGrant.reason})` : ''}; nobody was asked`,
742
+ });
743
+ }
744
+ }
745
+ };
746
+ // Opt-in: ask about one call at a time while the batch runs. Everything
747
+ // above has already run on the batch as a whole, because those checks are
748
+ // about the calls and not about who answers.
749
+ if (ctx.perCallReview) {
750
+ const reviewedIds = new Set(toolCallSummaries.map((tc) => tc.id));
751
+ const walk = new PerCallReview({
752
+ ctx,
753
+ iteration: iterationNum,
754
+ toolCalls,
755
+ summaries: () => toolCallSummaries,
756
+ gateDenied,
757
+ reviewAllowed,
758
+ unreviewedIds: new Set(preparedBatch ? toolCalls.filter((tc) => !reviewedIds.has(tc.id)).map((tc) => tc.id) : []),
759
+ settleEscalations,
760
+ recordGrantAudits,
761
+ evaluateGate: (tc) => ctx.verificationGate?.evaluate({
762
+ toolName: tc.name,
763
+ toolInput: tc.input,
764
+ toolDef: ctx.tools.get(tc.name),
765
+ ...dialectFor(tc.name),
766
+ ...sourceFor(tc.name),
767
+ }).decision,
768
+ });
769
+ try {
770
+ await walk.askTogetherFirst();
771
+ const denials = new Map([...gateDenied, ...walk.denials]);
772
+ if (walk.declines.size > 0)
773
+ declines = walk.declines;
774
+ yield* settle(denials, walk);
775
+ yield* ctx.drainPending();
776
+ if (walk.endsTurn) {
777
+ // Every call is answered by now. The turn stops the way an
778
+ // interrupt stops it, so nothing downstream reads the stop as a
779
+ // result the model should react to.
780
+ ctx.recorder.setStopReason('cancelled');
781
+ ctx.recorder.markCancelled();
782
+ return finish('stop');
783
+ }
784
+ return finish(denials.size + walk.refusedCount >= toolCalls.length ? 'rejected' : 'executed');
785
+ }
786
+ finally {
787
+ walk.dispose();
788
+ }
789
+ }
790
+ const reviewCheckpoint = await ctx.checkpointMgr.create(ctx.recorder, iterationNum);
791
+ await ctx.emitEvent({
792
+ type: 'tool_review_requested',
793
+ turnId: ctx.recorder.turnId,
794
+ toolCalls: toolCallSummaries,
795
+ iteration: iterationNum,
796
+ });
797
+ yield* ctx.drainPending();
798
+ const reviewDecision = await awaitDecisionDurably(ctx, reviewCheckpoint, {
799
+ type: 'tool_review',
800
+ sessionId: ctx.recorder.sessionId,
801
+ turnId: ctx.recorder.turnId,
802
+ checkpointId: reviewCheckpoint.id,
803
+ toolCalls: toolCallSummaries,
804
+ });
718
805
  switch (reviewDecision.action) {
719
806
  case 'reject_tools': {
720
807
  await ctx.emitEvent({
@@ -733,6 +820,12 @@ export async function* runToolReview(ctx, response, iterationNum) {
733
820
  await settleEscalations(denials, undefined);
734
821
  yield* settle(denials);
735
822
  yield* ctx.drainPending();
823
+ if (reviewDecision.endTurn) {
824
+ // Every call is answered above; the turn then stops as an interrupt does.
825
+ ctx.recorder.setStopReason('cancelled');
826
+ ctx.recorder.markCancelled();
827
+ return finish('stop');
828
+ }
736
829
  return finish('rejected');
737
830
  }
738
831
  case 'modify_tools': {
@@ -843,35 +936,9 @@ export async function* runToolReview(ctx, response, iterationNum) {
843
936
  if (reviewDecision.action === 'approve_tools' && reviewDecision.remember) {
844
937
  ctx.toolGrants?.grant(reviewDecision.remember);
845
938
  }
846
- // A call nobody was asked about, approved because a skill said so,
847
- // is on the record naming that skill. Only a call that carried the
848
- // mark counts: a policy that lists an unmarked id has not been
849
- // given a skill's word for it.
850
- if (reviewDecision.action === 'approve_tools' && reviewDecision.skillGranted) {
851
- const listed = new Set(reviewDecision.skillGranted);
852
- for (const tc of toolCallSummaries) {
853
- if (!listed.has(tc.id) || !tc.skillGrant || gateDenied.has(tc.id))
854
- continue;
855
- await ctx.recorder.recordAudit({
856
- what: { action: 'tool_call', tool: tc.name },
857
- outcome: 'approved',
858
- reason: `pre-approved by the allowed-tools of skill "${tc.skillGrant.skill}" for this turn; nobody was asked`,
859
- });
860
- }
861
- }
862
- // The same for a call a hook's `allow` approved.
863
- if (reviewDecision.action === 'approve_tools' && reviewDecision.hookGranted) {
864
- const listed = new Set(reviewDecision.hookGranted);
865
- for (const tc of toolCallSummaries) {
866
- if (!listed.has(tc.id) || !tc.hookGrant || gateDenied.has(tc.id))
867
- continue;
868
- await ctx.recorder.recordAudit({
869
- what: { action: 'tool_call', tool: tc.name },
870
- outcome: 'approved',
871
- reason: `pre-approved by a pre_tool_use hook${tc.hookGrant.reason ? ` (${tc.hookGrant.reason})` : ''}; nobody was asked`,
872
- });
873
- }
874
- }
939
+ // A call nobody was asked about, approved because a skill or a hook
940
+ // said so, is on the record naming which.
941
+ await recordGrantAudits(reviewDecision, toolCallSummaries);
875
942
  await ctx.emitEvent({
876
943
  type: 'tool_review_completed',
877
944
  turnId: ctx.recorder.turnId,
@@ -1 +1 @@
1
- {"version":3,"file":"tool-review.js","sourceRoot":"","sources":["../../../../../src/runtime/query/iteration/phases/tool-review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-review.js","sourceRoot":"","sources":["../../../../../src/runtime/query/iteration/phases/tool-review.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { Message } from '../../../types/message/index.js';
1
2
  /**
2
3
  * Request-only context, as the model reads it: a runtime-context user
3
4
  * message of kind `step-context`, labelled so the model does not take it
@@ -8,4 +9,17 @@
8
9
  * phase, and `step-shaping` itself.
9
10
  */
10
11
  export declare function stepContextMessage(content: string): import("../../../types/message/index.js").UserMessage;
12
+ /**
13
+ * Put `blocks` in front of the operator's new message when that message is
14
+ * what the model is about to answer, so the request is the last thing it
15
+ * reads and the longest data comes before it. Only the reminders and other
16
+ * request-only context may follow that message: once the turn has an
17
+ * assistant or tool message after it, the blocks stay at the end of the
18
+ * history, where a caching driver ends its breakpoint before them, so the
19
+ * tool loop of a long turn is not re-read at full price on every step.
20
+ *
21
+ * Reminders and notices that follow the operator's message stay where they
22
+ * are: they are short, and the edge after the request is where they are read.
23
+ */
24
+ export declare function placeBeforeLatestOperatorMessage(history: Message[], blocks: readonly Message[]): void;
11
25
  //# sourceMappingURL=step-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"step-context.d.ts","sourceRoot":"","sources":["../../../../src/runtime/query/iteration/step-context.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,yDAKjD"}
1
+ {"version":3,"file":"step-context.d.ts","sourceRoot":"","sources":["../../../../src/runtime/query/iteration/step-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAA;AAG9D;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,yDAKjD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,QAa9F"}
@@ -1,4 +1,5 @@
1
1
  import { createRuntimeContextMessage } from '../../../types/message/index.js';
2
+ import { isOperatorUserMessage } from '../steering.js';
2
3
  /**
3
4
  * Request-only context, as the model reads it: a runtime-context user
4
5
  * message of kind `step-context`, labelled so the model does not take it
@@ -11,4 +12,32 @@ import { createRuntimeContextMessage } from '../../../types/message/index.js';
11
12
  export function stepContextMessage(content) {
12
13
  return createRuntimeContextMessage(`Current step context (runtime-generated; not a new user request):\n${content}`, 'step-context');
13
14
  }
15
+ /**
16
+ * Put `blocks` in front of the operator's new message when that message is
17
+ * what the model is about to answer, so the request is the last thing it
18
+ * reads and the longest data comes before it. Only the reminders and other
19
+ * request-only context may follow that message: once the turn has an
20
+ * assistant or tool message after it, the blocks stay at the end of the
21
+ * history, where a caching driver ends its breakpoint before them, so the
22
+ * tool loop of a long turn is not re-read at full price on every step.
23
+ *
24
+ * Reminders and notices that follow the operator's message stay where they
25
+ * are: they are short, and the edge after the request is where they are read.
26
+ */
27
+ export function placeBeforeLatestOperatorMessage(history, blocks) {
28
+ if (blocks.length === 0)
29
+ return;
30
+ let at = history.length;
31
+ for (let i = history.length - 1; i >= 0; i--) {
32
+ const message = history[i];
33
+ if (isOperatorUserMessage(message)) {
34
+ at = i;
35
+ break;
36
+ }
37
+ // A reply or a tool result after the message: the model has moved on.
38
+ if (message.role === 'assistant' || message.role === 'tool')
39
+ break;
40
+ }
41
+ history.splice(at, 0, ...blocks);
42
+ }
14
43
  //# sourceMappingURL=step-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"step-context.js","sourceRoot":"","sources":["../../../../src/runtime/query/iteration/step-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAA;AAE7E;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IACjD,OAAO,2BAA2B,CACjC,sEAAsE,OAAO,EAAE,EAC/E,cAAc,CACd,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"step-context.js","sourceRoot":"","sources":["../../../../src/runtime/query/iteration/step-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAA;AAE7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAEtD;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IACjD,OAAO,2BAA2B,CACjC,sEAAsE,OAAO,EAAE,EAC/E,cAAc,CACd,CAAA;AACF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gCAAgC,CAAC,OAAkB,EAAE,MAA0B;IAC9F,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAM;IAC/B,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAA;IACvB,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAY,CAAA;QACrC,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;YACpC,EAAE,GAAG,CAAC,CAAA;YACN,MAAK;QACN,CAAC;QACD,sEAAsE;QACtE,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;YAAE,MAAK;IACnE,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,CAAA;AACjC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"step-shaping.d.ts","sourceRoot":"","sources":["../../../../src/runtime/query/iteration/step-shaping.ts"],"names":[],"mappings":"AAKA,OAAO,EACN,KAAK,OAAO,EACZ,KAAK,WAAW,EAEhB,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,KAAK,EACX,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,QAAQ,EACR,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAI3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEtD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAA;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,WAAW,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,KAAK,EAAE,MAAM,SAAS,UAAU,EAAE,CAAA;IAC3C,uEAAuE;IACvE,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAA;CACtC;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAA;AAE7B,4GAA4G;AAC5G,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,OAAO,EAAE,EACnB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,iBAAiB,GACzB,IAAI,CAmBN;AAED,wBAAgB,WAAW,CAC1B,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,iBAAiB,GACzB,kBAAkB,CA+CpB;AAED,0FAA0F;AAC1F,wBAAsB,UAAU,CAC/B,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAU/B;AAED,iGAAiG;AACjG,wBAAsB,WAAW,CAChC,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC;IACV,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,SAAS,KAAK,EAAE,CAAA;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAC,CAuGD;AAED,wBAAsB,kBAAkB,CACvC,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,GAAG,SAAS,GACvB,OAAO,CAAC,IAAI,CAAC,CAYf"}
1
+ {"version":3,"file":"step-shaping.d.ts","sourceRoot":"","sources":["../../../../src/runtime/query/iteration/step-shaping.ts"],"names":[],"mappings":"AAKA,OAAO,EACN,KAAK,OAAO,EACZ,KAAK,WAAW,EAEhB,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,KAAK,EACX,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,QAAQ,EACR,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAI3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAoC,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAExF;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAA;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,WAAW,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,KAAK,EAAE,MAAM,SAAS,UAAU,EAAE,CAAA;IAC3C,uEAAuE;IACvE,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAA;CACtC;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAA;AAE7B,4GAA4G;AAC5G,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,OAAO,EAAE,EACnB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,iBAAiB,GACzB,IAAI,CAuBN;AAED,wBAAgB,WAAW,CAC1B,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,iBAAiB,GACzB,kBAAkB,CA+CpB;AAED,0FAA0F;AAC1F,wBAAsB,UAAU,CAC/B,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAU/B;AAED,iGAAiG;AACjG,wBAAsB,WAAW,CAChC,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,MAAM,GAChB,OAAO,CAAC;IACV,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,SAAS,KAAK,EAAE,CAAA;IACzB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAC,CAuGD;AAED,wBAAsB,kBAAkB,CACvC,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,MAAM,GAAG,SAAS,GACvB,OAAO,CAAC,IAAI,CAAC,CAYf"}
@@ -7,7 +7,7 @@ import { createSystemMessage, } from '../../../types/message/index.js';
7
7
  import { toErrorMessage } from '../../../utils/error.js';
8
8
  import { createCallbackInference } from '../callback-inference.js';
9
9
  import { measureContext } from './phases/compaction.js';
10
- import { stepContextMessage } from './step-context.js';
10
+ import { placeBeforeLatestOperatorMessage, stepContextMessage } from './step-context.js';
11
11
  export { stepContextMessage };
12
12
  /** Derived after request projection; never accumulates in canonical history or replaces operator intent. */
13
13
  export function appendWorkContext(shaping, messages, stepNumber, prepared) {
@@ -18,6 +18,7 @@ export function appendWorkContext(shaping, messages, stepNumber, prepared) {
18
18
  ].filter((content) => Boolean(content));
19
19
  if (contributions.length === 0)
20
20
  return;
21
+ const placed = [];
21
22
  let room = stepContext(shaping, stepNumber, prepared).contextBudget?.remainingTokens ?? 0;
22
23
  // Leave room for the actual task; admit whole contributions, never dangling partial references.
23
24
  if (room < 1_500)
@@ -29,9 +30,12 @@ export function appendWorkContext(shaping, messages, stepNumber, prepared) {
29
30
  const tokens = estimateMessageTokens(message);
30
31
  if (tokens > Math.min(2_000, room - 1_000))
31
32
  continue;
32
- messages.push(message);
33
+ placed.push(message);
33
34
  room -= tokens;
34
35
  }
36
+ // Per-turn data goes in front of the operator's new message while that is
37
+ // what the model is answering, like the other blocks of request-only data.
38
+ placeBeforeLatestOperatorMessage(messages, placed);
35
39
  }
36
40
  export function stepContext(shaping, stepNumber, prepared) {
37
41
  const { ctx, latestUserMessage, steps } = shaping;
@@ -1 +1 @@
1
- {"version":3,"file":"step-shaping.js","sourceRoot":"","sources":["../../../../src/runtime/query/iteration/step-shaping.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"step-shaping.js","sourceRoot":"","sources":["../../../../src/runtime/query/iteration/step-shaping.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-turn.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/prepare-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepare-turn.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/prepare-turn.ts"],"names":[],"mappings":"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"}