@xrkseek/harness 0.5.10 → 0.5.12

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 (220) hide show
  1. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts +4 -3
  2. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts.map +1 -1
  3. package/node_modules/@xrkseek/core-agent-loop/dist/index.js +27 -50
  4. package/node_modules/@xrkseek/core-agent-loop/dist/index.js.map +1 -1
  5. package/node_modules/@xrkseek/core-agent-loop/dist/settle-batch.d.ts +11 -3
  6. package/node_modules/@xrkseek/core-agent-loop/dist/settle-batch.d.ts.map +1 -1
  7. package/node_modules/@xrkseek/core-agent-loop/dist/settle-batch.js +23 -8
  8. package/node_modules/@xrkseek/core-agent-loop/dist/settle-batch.js.map +1 -1
  9. package/node_modules/@xrkseek/core-session/dist/sqlite-store.d.ts.map +1 -1
  10. package/node_modules/@xrkseek/core-session/dist/sqlite-store.js +27 -1
  11. package/node_modules/@xrkseek/core-session/dist/sqlite-store.js.map +1 -1
  12. package/node_modules/@xrkseek/core-tools/dist/index.d.ts +1 -1
  13. package/node_modules/@xrkseek/core-tools/dist/index.d.ts.map +1 -1
  14. package/node_modules/@xrkseek/core-tools/dist/index.js +1 -1
  15. package/node_modules/@xrkseek/core-tools/dist/index.js.map +1 -1
  16. package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.d.ts +9 -0
  17. package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.d.ts.map +1 -1
  18. package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.js +47 -18
  19. package/node_modules/@xrkseek/core-tools/dist/subagent-prompt.js.map +1 -1
  20. package/node_modules/@xrkseek/exec-fs/dist/index.d.ts +9 -1
  21. package/node_modules/@xrkseek/exec-fs/dist/index.d.ts.map +1 -1
  22. package/node_modules/@xrkseek/exec-fs/dist/index.js +18 -13
  23. package/node_modules/@xrkseek/exec-fs/dist/index.js.map +1 -1
  24. package/node_modules/@xrkseek/exec-fs/dist/paths.d.ts +11 -0
  25. package/node_modules/@xrkseek/exec-fs/dist/paths.d.ts.map +1 -1
  26. package/node_modules/@xrkseek/exec-fs/dist/paths.js +40 -0
  27. package/node_modules/@xrkseek/exec-fs/dist/paths.js.map +1 -1
  28. package/node_modules/@xrkseek/exec-memory/dist/index.d.ts +2 -2
  29. package/node_modules/@xrkseek/exec-memory/dist/index.d.ts.map +1 -1
  30. package/node_modules/@xrkseek/exec-memory/dist/index.js +2 -2
  31. package/node_modules/@xrkseek/exec-memory/dist/index.js.map +1 -1
  32. package/node_modules/@xrkseek/exec-memory/dist/store.d.ts +18 -0
  33. package/node_modules/@xrkseek/exec-memory/dist/store.d.ts.map +1 -1
  34. package/node_modules/@xrkseek/exec-memory/dist/store.js +108 -7
  35. package/node_modules/@xrkseek/exec-memory/dist/store.js.map +1 -1
  36. package/node_modules/@xrkseek/exec-memory/dist/tools.d.ts.map +1 -1
  37. package/node_modules/@xrkseek/exec-memory/dist/tools.js +17 -1
  38. package/node_modules/@xrkseek/exec-memory/dist/tools.js.map +1 -1
  39. package/node_modules/@xrkseek/exec-memory/dist/write-path.d.ts +2 -0
  40. package/node_modules/@xrkseek/exec-memory/dist/write-path.d.ts.map +1 -1
  41. package/node_modules/@xrkseek/exec-memory/dist/write-path.js +28 -3
  42. package/node_modules/@xrkseek/exec-memory/dist/write-path.js.map +1 -1
  43. package/node_modules/@xrkseek/exec-sandbox/dist/resolve.d.ts +7 -4
  44. package/node_modules/@xrkseek/exec-sandbox/dist/resolve.d.ts.map +1 -1
  45. package/node_modules/@xrkseek/exec-sandbox/dist/resolve.js +4 -0
  46. package/node_modules/@xrkseek/exec-sandbox/dist/resolve.js.map +1 -1
  47. package/node_modules/@xrkseek/exec-sandbox/dist/service.d.ts +7 -0
  48. package/node_modules/@xrkseek/exec-sandbox/dist/service.d.ts.map +1 -1
  49. package/node_modules/@xrkseek/exec-sandbox/dist/service.js +18 -8
  50. package/node_modules/@xrkseek/exec-sandbox/dist/service.js.map +1 -1
  51. package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts +16 -0
  52. package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts.map +1 -1
  53. package/node_modules/@xrkseek/preset-harness/dist/preset.js +13 -2
  54. package/node_modules/@xrkseek/preset-harness/dist/preset.js.map +1 -1
  55. package/node_modules/@xrkseek/preset-harness/dist/tsconfig.tsbuildinfo +1 -1
  56. package/node_modules/@xrkseek/preset-minimal/dist/tsconfig.tsbuildinfo +1 -1
  57. package/node_modules/@xrkseek/preset-server/dist/preset.d.ts.map +1 -1
  58. package/node_modules/@xrkseek/preset-server/dist/preset.js +7 -1
  59. package/node_modules/@xrkseek/preset-server/dist/preset.js.map +1 -1
  60. package/node_modules/@xrkseek/preset-server/dist/tsconfig.tsbuildinfo +1 -1
  61. package/node_modules/@xrkseek/server-face/dist/adapt/history-paginate.d.ts +6 -0
  62. package/node_modules/@xrkseek/server-face/dist/adapt/history-paginate.d.ts.map +1 -1
  63. package/node_modules/@xrkseek/server-face/dist/adapt/history-paginate.js +28 -1
  64. package/node_modules/@xrkseek/server-face/dist/adapt/history-paginate.js.map +1 -1
  65. package/node_modules/@xrkseek/server-face/dist/adapt/index.d.ts +1 -1
  66. package/node_modules/@xrkseek/server-face/dist/adapt/index.d.ts.map +1 -1
  67. package/node_modules/@xrkseek/server-face/dist/adapt/index.js +1 -1
  68. package/node_modules/@xrkseek/server-face/dist/adapt/index.js.map +1 -1
  69. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.d.ts +5 -0
  70. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.d.ts.map +1 -1
  71. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.js +16 -0
  72. package/node_modules/@xrkseek/server-face/dist/adapt/model-route.js.map +1 -1
  73. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.d.ts +32 -0
  74. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.d.ts.map +1 -1
  75. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.js +87 -0
  76. package/node_modules/@xrkseek/server-face/dist/adapt/subagent-notice.js.map +1 -1
  77. package/node_modules/@xrkseek/server-face/dist/adapt/wire-ids.d.ts +11 -0
  78. package/node_modules/@xrkseek/server-face/dist/adapt/wire-ids.d.ts.map +1 -1
  79. package/node_modules/@xrkseek/server-face/dist/adapt/wire-ids.js +19 -0
  80. package/node_modules/@xrkseek/server-face/dist/adapt/wire-ids.js.map +1 -1
  81. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.d.ts +138 -0
  82. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.d.ts.map +1 -0
  83. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.js +636 -0
  84. package/node_modules/@xrkseek/server-face/dist/agent-roster-store.js.map +1 -0
  85. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.d.ts +12 -0
  86. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.d.ts.map +1 -0
  87. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.js +152 -0
  88. package/node_modules/@xrkseek/server-face/dist/agent-roster-tools.js.map +1 -0
  89. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.d.ts +6 -0
  90. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.d.ts.map +1 -1
  91. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.js +61 -0
  92. package/node_modules/@xrkseek/server-face/dist/agent-team-roles.js.map +1 -1
  93. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.d.ts +6 -0
  94. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.d.ts.map +1 -0
  95. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.js +43 -0
  96. package/node_modules/@xrkseek/server-face/dist/capture-member-playbook.js.map +1 -0
  97. package/node_modules/@xrkseek/server-face/dist/collab-board.d.ts +41 -0
  98. package/node_modules/@xrkseek/server-face/dist/collab-board.d.ts.map +1 -0
  99. package/node_modules/@xrkseek/server-face/dist/collab-board.js +79 -0
  100. package/node_modules/@xrkseek/server-face/dist/collab-board.js.map +1 -0
  101. package/node_modules/@xrkseek/server-face/dist/context.d.ts +4 -0
  102. package/node_modules/@xrkseek/server-face/dist/context.d.ts.map +1 -1
  103. package/node_modules/@xrkseek/server-face/dist/dispatch.d.ts.map +1 -1
  104. package/node_modules/@xrkseek/server-face/dist/dispatch.js +19 -0
  105. package/node_modules/@xrkseek/server-face/dist/dispatch.js.map +1 -1
  106. package/node_modules/@xrkseek/server-face/dist/fork-cut.d.ts +3 -2
  107. package/node_modules/@xrkseek/server-face/dist/fork-cut.d.ts.map +1 -1
  108. package/node_modules/@xrkseek/server-face/dist/fork-cut.js +58 -20
  109. package/node_modules/@xrkseek/server-face/dist/fork-cut.js.map +1 -1
  110. package/node_modules/@xrkseek/server-face/dist/handlers/session.d.ts.map +1 -1
  111. package/node_modules/@xrkseek/server-face/dist/handlers/session.js +56 -20
  112. package/node_modules/@xrkseek/server-face/dist/handlers/session.js.map +1 -1
  113. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.d.ts.map +1 -1
  114. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.js +5 -0
  115. package/node_modules/@xrkseek/server-face/dist/handlers/subagent.js.map +1 -1
  116. package/node_modules/@xrkseek/server-face/dist/handlers/team.d.ts +11 -0
  117. package/node_modules/@xrkseek/server-face/dist/handlers/team.d.ts.map +1 -0
  118. package/node_modules/@xrkseek/server-face/dist/handlers/team.js +280 -0
  119. package/node_modules/@xrkseek/server-face/dist/handlers/team.js.map +1 -0
  120. package/node_modules/@xrkseek/server-face/dist/index.d.ts +6 -0
  121. package/node_modules/@xrkseek/server-face/dist/index.d.ts.map +1 -1
  122. package/node_modules/@xrkseek/server-face/dist/index.js +6 -0
  123. package/node_modules/@xrkseek/server-face/dist/index.js.map +1 -1
  124. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts +11 -1
  125. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts.map +1 -1
  126. package/node_modules/@xrkseek/server-face/dist/model-catalog.js +27 -1
  127. package/node_modules/@xrkseek/server-face/dist/model-catalog.js.map +1 -1
  128. package/node_modules/@xrkseek/server-face/dist/presence-dressing.d.ts +26 -0
  129. package/node_modules/@xrkseek/server-face/dist/presence-dressing.d.ts.map +1 -0
  130. package/node_modules/@xrkseek/server-face/dist/presence-dressing.js +84 -0
  131. package/node_modules/@xrkseek/server-face/dist/presence-dressing.js.map +1 -0
  132. package/node_modules/@xrkseek/server-face/dist/presence-tools.d.ts.map +1 -1
  133. package/node_modules/@xrkseek/server-face/dist/presence-tools.js +19 -6
  134. package/node_modules/@xrkseek/server-face/dist/presence-tools.js.map +1 -1
  135. package/node_modules/@xrkseek/server-face/dist/presets-catalog.d.ts +16 -0
  136. package/node_modules/@xrkseek/server-face/dist/presets-catalog.d.ts.map +1 -1
  137. package/node_modules/@xrkseek/server-face/dist/presets-catalog.js +5 -0
  138. package/node_modules/@xrkseek/server-face/dist/presets-catalog.js.map +1 -1
  139. package/node_modules/@xrkseek/server-face/dist/projections/index.d.ts +1 -1
  140. package/node_modules/@xrkseek/server-face/dist/projections/index.d.ts.map +1 -1
  141. package/node_modules/@xrkseek/server-face/dist/projections/index.js +1 -1
  142. package/node_modules/@xrkseek/server-face/dist/projections/index.js.map +1 -1
  143. package/node_modules/@xrkseek/server-face/dist/projections/registry.d.ts +2 -2
  144. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.d.ts +23 -5
  145. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.d.ts.map +1 -1
  146. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.js +36 -18
  147. package/node_modules/@xrkseek/server-face/dist/projections/units/turn-outline.js.map +1 -1
  148. package/node_modules/@xrkseek/server-face/dist/runtime.d.ts.map +1 -1
  149. package/node_modules/@xrkseek/server-face/dist/runtime.js +21 -0
  150. package/node_modules/@xrkseek/server-face/dist/runtime.js.map +1 -1
  151. package/node_modules/@xrkseek/server-face/dist/session-model-store.d.ts +2 -0
  152. package/node_modules/@xrkseek/server-face/dist/session-model-store.d.ts.map +1 -1
  153. package/node_modules/@xrkseek/server-face/dist/session-model-store.js +14 -0
  154. package/node_modules/@xrkseek/server-face/dist/session-model-store.js.map +1 -1
  155. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts +50 -0
  156. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts.map +1 -1
  157. package/node_modules/@xrkseek/server-face/dist/session-status.js +71 -8
  158. package/node_modules/@xrkseek/server-face/dist/session-status.js.map +1 -1
  159. package/node_modules/@xrkseek/server-face/dist/session-thread-message.d.ts +17 -0
  160. package/node_modules/@xrkseek/server-face/dist/session-thread-message.d.ts.map +1 -0
  161. package/node_modules/@xrkseek/server-face/dist/session-thread-message.js +34 -0
  162. package/node_modules/@xrkseek/server-face/dist/session-thread-message.js.map +1 -0
  163. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.d.ts +17 -0
  164. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.d.ts.map +1 -0
  165. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.js +34 -0
  166. package/node_modules/@xrkseek/server-face/dist/session-thread-publish.js.map +1 -0
  167. package/node_modules/@xrkseek/server-face/dist/session-thread-store.d.ts +40 -0
  168. package/node_modules/@xrkseek/server-face/dist/session-thread-store.d.ts.map +1 -0
  169. package/node_modules/@xrkseek/server-face/dist/session-thread-store.js +217 -0
  170. package/node_modules/@xrkseek/server-face/dist/session-thread-store.js.map +1 -0
  171. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.d.ts +27 -0
  172. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.d.ts.map +1 -0
  173. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.js +375 -0
  174. package/node_modules/@xrkseek/server-face/dist/session-thread-tools.js.map +1 -0
  175. package/node_modules/@xrkseek/server-face/dist/settings-document.d.ts.map +1 -1
  176. package/node_modules/@xrkseek/server-face/dist/settings-document.js +45 -11
  177. package/node_modules/@xrkseek/server-face/dist/settings-document.js.map +1 -1
  178. package/node_modules/@xrkseek/server-face/dist/settings-schemas.d.ts.map +1 -1
  179. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js +23 -10
  180. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js.map +1 -1
  181. package/node_modules/@xrkseek/server-face/dist/subagent-registry.d.ts +25 -0
  182. package/node_modules/@xrkseek/server-face/dist/subagent-registry.d.ts.map +1 -1
  183. package/node_modules/@xrkseek/server-face/dist/subagent-registry.js +65 -13
  184. package/node_modules/@xrkseek/server-face/dist/subagent-registry.js.map +1 -1
  185. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts +21 -0
  186. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts.map +1 -1
  187. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js +149 -37
  188. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js.map +1 -1
  189. package/node_modules/@xrkseek/server-face/dist/types.d.ts +9 -0
  190. package/node_modules/@xrkseek/server-face/dist/types.d.ts.map +1 -1
  191. package/node_modules/@xrkseek/server-face/dist/wire/paths.d.ts.map +1 -1
  192. package/node_modules/@xrkseek/server-face/dist/wire/paths.js +2 -0
  193. package/node_modules/@xrkseek/server-face/dist/wire/paths.js.map +1 -1
  194. package/node_modules/@xrkseek/server-face/dist/workspace-face.d.ts.map +1 -1
  195. package/node_modules/@xrkseek/server-face/dist/workspace-face.js +7 -0
  196. package/node_modules/@xrkseek/server-face/dist/workspace-face.js.map +1 -1
  197. package/node_modules/@xrkseek/server-host/dist/agent-cache.d.ts +5 -1
  198. package/node_modules/@xrkseek/server-host/dist/agent-cache.d.ts.map +1 -1
  199. package/node_modules/@xrkseek/server-host/dist/agent-cache.js +29 -3
  200. package/node_modules/@xrkseek/server-host/dist/agent-cache.js.map +1 -1
  201. package/node_modules/@xrkseek/server-host/dist/index.d.ts +27 -0
  202. package/node_modules/@xrkseek/server-host/dist/index.d.ts.map +1 -1
  203. package/node_modules/@xrkseek/server-host/dist/index.js +112 -8
  204. package/node_modules/@xrkseek/server-host/dist/index.js.map +1 -1
  205. package/node_modules/@xrkseek/server-http/dist/static.d.ts.map +1 -1
  206. package/node_modules/@xrkseek/server-http/dist/static.js +45 -5
  207. package/node_modules/@xrkseek/server-http/dist/static.js.map +1 -1
  208. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.d.ts +8 -0
  209. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.d.ts.map +1 -1
  210. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.js +6 -2
  211. package/node_modules/@xrkseek/workspace/dist/ecosystem-instructions.js.map +1 -1
  212. package/node_modules/@xrkseek/workspace/dist/index.d.ts +16 -0
  213. package/node_modules/@xrkseek/workspace/dist/index.d.ts.map +1 -1
  214. package/node_modules/@xrkseek/workspace/dist/index.js +17 -8
  215. package/node_modules/@xrkseek/workspace/dist/index.js.map +1 -1
  216. package/node_modules/@xrkseek/workspace/dist/skills.d.ts +1 -1
  217. package/node_modules/@xrkseek/workspace/dist/skills.d.ts.map +1 -1
  218. package/node_modules/@xrkseek/workspace/dist/skills.js +1 -1
  219. package/node_modules/@xrkseek/workspace/dist/skills.js.map +1 -1
  220. package/package.json +1 -1
@@ -100,7 +100,8 @@ export interface RunTurnInput {
100
100
  readonly now?: () => number;
101
101
  /**
102
102
  * How to settle multiple tool calls in one step.
103
- * Default `parallel`: call-barrier → concurrent settle → ordered results.
103
+ * Default `parallel`: call-barrier → concurrent settle → result as each
104
+ * body finishes; next LLM step still waits for the batch.
104
105
  * Use `serial` for strict one-at-a-time (e.g. heavy write tools).
105
106
  */
106
107
  readonly toolSettle?: ToolSettleMode;
@@ -145,8 +146,8 @@ export interface RunTurnInput {
145
146
  }) => void | Promise<void>;
146
147
  /**
147
148
  * Face cross-session `@session` prepare: rewrite mention tokens and return
148
- * zero-or-more context rows to append immediately after the human message
149
- * (and after mid-turn steers). Omit → no prepare.
149
+ * zero-or-more context rows to append immediately after the human message.
150
+ * Omit → no prepare.
150
151
  */
151
152
  readonly prepareUserContent?: (ctx: {
152
153
  readonly content: MessageContent;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { scheduler } from "node:timers/promises";
2
- import { assertModelVisible, assertToolCallsSettled, assertAssistantToolCallAdjacency, deriveMessages, durableModelHistory, ensureDurableImageOffloads, estimateRequestTokens, promotePendingSteers, pruneOversizedToolResults, repairOpenTurnEvents, settleDanglingTools, DEFAULT_COMPACTION_BUFFER_TOKENS, DEFAULT_COMPACTION_KEEP_TOKENS, DEFAULT_MAX_REQUEST_IMAGE_BYTES, DEFAULT_SOFT_BUDGET_COMPACT_ATTEMPTS, resolveSoftBudgetCeiling, resolveCompactionStrategy, readSessionEvents } from "@xrkseek/core-session";
2
+ import { assertModelVisible, assertToolCallsSettled, assertAssistantToolCallAdjacency, deriveMessages, durableModelHistory, ensureDurableImageOffloads, estimateRequestTokens, pruneOversizedToolResults, promotePendingSteers, repairOpenTurnEvents, settleDanglingTools, DEFAULT_COMPACTION_BUFFER_TOKENS, DEFAULT_COMPACTION_KEEP_TOKENS, DEFAULT_MAX_REQUEST_IMAGE_BYTES, DEFAULT_SOFT_BUDGET_COMPACT_ATTEMPTS, resolveSoftBudgetCeiling, resolveCompactionStrategy, readSessionEvents } from "@xrkseek/core-session";
3
3
  import { assembleThreeLayers, isMetadataOnlyUserMessage, noteTimeContextInjected, parseTimeContextRefreshMs, shouldRefreshTimeContext, } from "@xrkseek/core-system-prompt";
4
4
  import { materializeTools, } from "@xrkseek/core-tools";
5
5
  import { finalizeLlmChatResponse, ContextOverflowError, isContextOverflowError, isEmptyResponseError, isIncompleteToolCallError, isLlmError, isProviderFinishError, isUnsupportedReasoningEffortError, UnsupportedContentError, } from "@xrkseek/llm";
@@ -432,46 +432,26 @@ export async function runTurn(input) {
432
432
  if (input.signal?.aborted) {
433
433
  throw new DOMException("aborted", "AbortError");
434
434
  }
435
- steps += 1;
436
- // Step-boundary steer (session-delivery): claim pending steers before
437
- // the next model request so mid-turn redirects do not wait for turn end.
438
- // Queues stay pending until continueTurn / drain idle.
439
- if (steps > 1) {
440
- const steers = promotePendingSteers(input.store, input.sessionId, {
435
+ // After the first step's tools settle, claim pending steers (not
436
+ // queues) so the next `chat()` sees them. Skip the opening step —
437
+ // `continueTurn({ text })` must not steal inbox steers into that
438
+ // request. Queues wait for drain idle.
439
+ if (steps > 0) {
440
+ const steered = promotePendingSteers(input.store, input.sessionId, {
441
441
  now,
442
442
  });
443
- if (steers) {
444
- let steerContent = steers.content;
445
- let steerContexts = [];
446
- if (input.prepareUserContent) {
447
- const prepared = await input.prepareUserContent({
448
- content: steers.content,
449
- text: steers.text,
450
- ...(input.signal ? { signal: input.signal } : {}),
451
- });
452
- steerContent = prepared.content;
453
- steerContexts = prepared.contexts;
454
- }
443
+ if (steered) {
455
444
  append(input.store, input.sessionId, {
456
445
  type: "user/message",
457
446
  ts: now(),
458
447
  turnId,
459
448
  messageId: newUserMessageId(),
460
- content: steerContent,
449
+ content: steered.content,
461
450
  source: { kind: "user" },
462
451
  });
463
- for (const ctx of steerContexts) {
464
- append(input.store, input.sessionId, {
465
- type: "user/message",
466
- ts: now(),
467
- turnId,
468
- messageId: newUserMessageId(),
469
- content: ctx.content,
470
- ...(ctx.source ? { source: ctx.source } : {}),
471
- });
472
- }
473
452
  }
474
453
  }
454
+ steps += 1;
475
455
  commitPendingPlanMode(input.store, input.sessionId, now);
476
456
  const stepId = id("step");
477
457
  activeStepId = stepId;
@@ -834,25 +814,10 @@ export async function runTurn(input) {
834
814
  if (input.beforeTools) {
835
815
  await input.beforeTools();
836
816
  }
837
- const { outcomes, aborted: settleAborted } = await settleToolBatch({
838
- calls,
839
- registry: input.tools,
840
- materialization: table,
841
- mode: input.toolSettle ?? "parallel",
842
- ...(input.signal ? { signal: input.signal } : {}),
843
- ...(input.pipeline ? { pipeline: input.pipeline } : {}),
844
- ...(input.maxParallelToolCalls !== undefined
845
- ? { maxParallel: input.maxParallelToolCalls }
846
- : {}),
847
- ...(toolMaxRetries > 0 ? { maxRetries: toolMaxRetries } : {}),
848
- });
849
- // Barrier 2: tool side-events then tool/result in call order.
850
- for (let i = 0; i < calls.length; i++) {
851
- const outcome = outcomes[i];
817
+ const publishSettledTool = (outcome, callIndex) => {
852
818
  for (const te of outcome.toolEvents) {
853
819
  if (!TOOL_EMITTABLE_EVENT_TYPES.includes(te.type))
854
820
  continue;
855
- // Turn/call identity is Host-owned; tool payloads carry only data.
856
821
  const payload = te.type === "deliverables/presented"
857
822
  ? {
858
823
  ...(te.payload && typeof te.payload === "object"
@@ -900,7 +865,7 @@ export async function runTurn(input) {
900
865
  stepId,
901
866
  result: settledResult,
902
867
  });
903
- const call = calls[i];
868
+ const call = calls[callIndex];
904
869
  turnFileDiffs.push(...fileDiffsFromToolPresenters({
905
870
  name: settledResult.name,
906
871
  args: call.arguments,
@@ -913,9 +878,21 @@ export async function runTurn(input) {
913
878
  toolOk += 1;
914
879
  batchContexts.push(...outcome.additionalContexts);
915
880
  batchSafety.push(...outcome.safetyNotices);
916
- }
917
- // Live Overview / deliverables: same-turn replace as each tool batch settles.
918
- emitWorkspaceChanges();
881
+ emitWorkspaceChanges();
882
+ };
883
+ const { aborted: settleAborted, outcomes } = await settleToolBatch({
884
+ calls,
885
+ registry: input.tools,
886
+ materialization: table,
887
+ mode: input.toolSettle ?? "parallel",
888
+ ...(input.signal ? { signal: input.signal } : {}),
889
+ ...(input.pipeline ? { pipeline: input.pipeline } : {}),
890
+ ...(input.maxParallelToolCalls !== undefined
891
+ ? { maxParallel: input.maxParallelToolCalls }
892
+ : {}),
893
+ ...(toolMaxRetries > 0 ? { maxRetries: toolMaxRetries } : {}),
894
+ onOutcome: publishSettledTool,
895
+ });
919
896
  if (settleAborted || input.signal?.aborted) {
920
897
  throw new DOMException("aborted", "AbortError");
921
898
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -6,11 +6,13 @@
6
6
  * - exclusive calls are barriers (drain pool, run alone)
7
7
  * - later calls are reclassified before start (registry hot-reload safe)
8
8
  *
9
- * Innovation vs OpenCode FiberSet (completion-order publish):
9
+ * Innovation vs a completion-order-only scheduler:
10
10
  * 1) append every tool/call (barrier — caller)
11
11
  * 2) settle bodies with exclusive barriers + bounded parallel pools
12
- * 3) append tool/result in **call order** (caller)
13
- * so the durable log stays reconstructible and order-stable.
12
+ * 3) caller may append tool/result as each body finishes (`onOutcome`);
13
+ * the next model step still waits for the whole batch
14
+ * so the durable log is reconstructible (paired by callId) and the shell
15
+ * can paint a finished card while siblings still run.
14
16
  *
15
17
  * Cancel (DSH): already-started calls finish or `ABORTED`; never-started calls
16
18
  * receive synthetic `ABORTED_BEFORE_DISPATCH` outcomes — no throw mid-batch.
@@ -36,6 +38,12 @@ export interface SettleToolBatchInput {
36
38
  * Hang/timeout on web_fetch uses this so the fetch actually runs N times.
37
39
  */
38
40
  readonly maxRetries?: number;
41
+ /**
42
+ * Invoked as soon as one call has a final outcome (completion order).
43
+ * `callIndex` is the index in `calls`. The returned `outcomes` array stays
44
+ * in call order. The next LLM step still waits for this function to return.
45
+ */
46
+ readonly onOutcome?: (outcome: RunToolOutcome, callIndex: number) => void;
39
47
  }
40
48
  export interface SettleToolBatchResult {
41
49
  readonly outcomes: readonly RunToolOutcome[];
@@ -1 +1 @@
1
- {"version":3,"file":"settle-batch.d.ts","sourceRoot":"","sources":["../src/settle-batch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAIL,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAKL,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEnD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,mBAAmB,CAAC;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,oFAAoF;IACpF,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,SAAS,cAAc,EAAE,CAAC;IAC7C,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAqLD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CA0DhC"}
1
+ {"version":3,"file":"settle-batch.d.ts","sourceRoot":"","sources":["../src/settle-batch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAIL,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAKL,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEnD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,mBAAmB,CAAC;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,oFAAoF;IACpF,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3E;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,SAAS,cAAc,EAAE,CAAC;IAC7C,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAmMD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CA+DhC"}
@@ -6,11 +6,13 @@
6
6
  * - exclusive calls are barriers (drain pool, run alone)
7
7
  * - later calls are reclassified before start (registry hot-reload safe)
8
8
  *
9
- * Innovation vs OpenCode FiberSet (completion-order publish):
9
+ * Innovation vs a completion-order-only scheduler:
10
10
  * 1) append every tool/call (barrier — caller)
11
11
  * 2) settle bodies with exclusive barriers + bounded parallel pools
12
- * 3) append tool/result in **call order** (caller)
13
- * so the durable log stays reconstructible and order-stable.
12
+ * 3) caller may append tool/result as each body finishes (`onOutcome`);
13
+ * the next model step still waits for the whole batch
14
+ * so the durable log is reconstructible (paired by callId) and the shell
15
+ * can paint a finished card while siblings still run.
14
16
  *
15
17
  * Cancel (DSH): already-started calls finish or `ABORTED`; never-started calls
16
18
  * receive synthetic `ABORTED_BEFORE_DISPATCH` outcomes — no throw mid-batch.
@@ -70,6 +72,9 @@ async function settleOne(input, call) {
70
72
  ...(input.maxRetries !== undefined ? { maxRetries: input.maxRetries } : {}),
71
73
  });
72
74
  }
75
+ function noteOutcome(input, callIndex, outcome) {
76
+ input.onOutcome?.(outcome, callIndex);
77
+ }
73
78
  function parallelCap(input) {
74
79
  if (typeof input.maxParallel === "number" &&
75
80
  Number.isFinite(input.maxParallel) &&
@@ -82,7 +87,7 @@ function parallelCap(input) {
82
87
  * Run a consecutive parallel-classified group with a rolling pool.
83
88
  * Stops filling when a later call reclassifies as exclusive (left for next group).
84
89
  */
85
- async function settleParallelGroup(input, group) {
90
+ async function settleParallelGroup(input, group, indexOffset) {
86
91
  const cap = parallelCap(input);
87
92
  const outcomes = group.map(() => undefined);
88
93
  const inFlight = new Map();
@@ -98,11 +103,14 @@ async function settleParallelGroup(input, group) {
98
103
  if (isAbortSettlementCode(outcome.result.error?.code)) {
99
104
  aborted = true;
100
105
  }
106
+ noteOutcome(input, indexOffset + index, outcome);
101
107
  return index;
102
108
  }, (err) => {
103
109
  if (isAbortError(err)) {
104
110
  aborted = true;
105
- outcomes[index] = abortedAfterStartOutcome(call);
111
+ const outcome = abortedAfterStartOutcome(call);
112
+ outcomes[index] = outcome;
113
+ noteOutcome(input, indexOffset + index, outcome);
106
114
  return index;
107
115
  }
108
116
  failure ??= err;
@@ -143,7 +151,9 @@ async function settleParallelGroup(input, group) {
143
151
  aborted = true;
144
152
  for (let i = 0; i < group.length; i++) {
145
153
  if (outcomes[i] === undefined) {
146
- outcomes[i] = abortedBeforeDispatchOutcome(group[i]);
154
+ const outcome = abortedBeforeDispatchOutcome(group[i]);
155
+ outcomes[i] = outcome;
156
+ noteOutcome(input, indexOffset + i, outcome);
147
157
  }
148
158
  }
149
159
  return {
@@ -177,7 +187,9 @@ export async function settleToolBatch(input) {
177
187
  for (const call of input.calls) {
178
188
  if (aborted || input.signal?.aborted) {
179
189
  aborted = true;
180
- outcomes.push(abortedBeforeDispatchOutcome(call));
190
+ const outcome = abortedBeforeDispatchOutcome(call);
191
+ outcomes.push(outcome);
192
+ noteOutcome(input, outcomes.length - 1, outcome);
181
193
  continue;
182
194
  }
183
195
  const outcome = await settleOne(input, call);
@@ -185,6 +197,7 @@ export async function settleToolBatch(input) {
185
197
  aborted = true;
186
198
  }
187
199
  outcomes.push(outcome);
200
+ noteOutcome(input, outcomes.length - 1, outcome);
188
201
  }
189
202
  return { outcomes, mode, aborted };
190
203
  }
@@ -196,6 +209,7 @@ export async function settleToolBatch(input) {
196
209
  aborted = true;
197
210
  for (let i = next; i < input.calls.length; i++) {
198
211
  outcomes.push(abortedBeforeDispatchOutcome(input.calls[i]));
212
+ noteOutcome(input, i, outcomes[outcomes.length - 1]);
199
213
  }
200
214
  break;
201
215
  }
@@ -207,11 +221,12 @@ export async function settleToolBatch(input) {
207
221
  aborted = true;
208
222
  }
209
223
  outcomes.push(outcome);
224
+ noteOutcome(input, next, outcome);
210
225
  next += 1;
211
226
  continue;
212
227
  }
213
228
  const group = input.calls.slice(next);
214
- const { outcomes: groupOut, consumed, aborted: groupAborted, } = await settleParallelGroup(input, group);
229
+ const { outcomes: groupOut, consumed, aborted: groupAborted, } = await settleParallelGroup(input, group, next);
215
230
  outcomes.push(...groupOut);
216
231
  next += consumed;
217
232
  if (groupAborted)
@@ -1 +1 @@
1
- {"version":3,"file":"settle-batch.js","sourceRoot":"","sources":["../src/settle-batch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settle-batch.js","sourceRoot":"","sources":["../src/settle-batch.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite-store.d.ts","sourceRoot":"","sources":["../src/sqlite-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAkBtD,OAAO,KAAK,EAAmC,YAAY,EAAE,MAAM,YAAY,CAAC;AAUhF,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,4BAA4B,EAC5B,KAAK,eAAe,GACrB,MAAM,iBAAiB,CAAC;AASzB,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IAC1D,mEAAmE;IACnE,KAAK,IAAI,IAAI,CAAC;IACd,kFAAkF;IAClF,KAAK,IAAI,IAAI,CAAC;IACd;;;OAGG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IACnD;;;;OAIG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,YAAY,EAAE,CAAC;IAC/C;;;;OAIG;IACH,mBAAmB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;CACjE;AAED,MAAM,WAAW,6BAA6B;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AAoBD,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAInD;AAuLD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,6BAAkC,GAC1C,sBAAsB,CA6YxB;AAED,2DAA2D;AAC3D,eAAO,MAAM,mBAAmB,gBAAU,CAAC;AAE3C,qEAAqE;AACrE,eAAO,MAAM,sBAAsB,IAAiB,CAAC"}
1
+ {"version":3,"file":"sqlite-store.d.ts","sourceRoot":"","sources":["../src/sqlite-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAkBtD,OAAO,KAAK,EAAmC,YAAY,EAAE,MAAM,YAAY,CAAC;AAUhF,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,4BAA4B,EAC5B,KAAK,eAAe,GACrB,MAAM,iBAAiB,CAAC;AASzB,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IAC1D,mEAAmE;IACnE,KAAK,IAAI,IAAI,CAAC;IACd,kFAAkF;IAClF,KAAK,IAAI,IAAI,CAAC;IACd;;;OAGG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IACnD;;;;OAIG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,YAAY,EAAE,CAAC;IAC/C;;;;OAIG;IACH,mBAAmB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;CACjE;AAED,MAAM,WAAW,6BAA6B;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;CAC3B;AAmCD,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAInD;AAuLD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,6BAAkC,GAC1C,sBAAsB,CA2ZxB;AAED,2DAA2D;AAC3D,eAAO,MAAM,mBAAmB,gBAAU,CAAC;AAE3C,qEAAqE;AACrE,eAAO,MAAM,sBAAsB,IAAiB,CAAC"}
@@ -19,6 +19,20 @@ const ID_RE = /^[A-Za-z0-9._-]+$/;
19
19
  const SCHEMA_VERSION = SQLITE_SCHEMA_CURRENT;
20
20
  const DB_NAME = "sessions.db";
21
21
  const DEFAULT_MAX_RESIDENT_SESSIONS = 8;
22
+ /**
23
+ * Non-chunk events accumulate in `pending` until one of these forces a flush:
24
+ * - a durability boundary event arrives (`user/message`, `turn/*`,
25
+ * `command/*`, `prompt/*` — user inputs / lifecycle edges that must not
26
+ * be lost on crash; crash repair relies on them to close open turns),
27
+ * - the pending queue crosses this ceiling (model-output bursts inside one
28
+ * very long turn), or
29
+ * - an explicit `flush()` (host drain idle / close / search / evict).
30
+ * Model-interior events (`assistant/*`, `step/*`, `tool/*`, `llm/*`) batch:
31
+ * a crash loses at most this window of model output, and
32
+ * `repairOpenTurnEvents` still closes the turn on reload. User input is
33
+ * never batched, so no user-visible state is lost.
34
+ */
35
+ const MICRO_BATCH_MAX_PENDING = 64;
22
36
  function assertSafeId(id) {
23
37
  if (!ID_RE.test(id)) {
24
38
  throw new Error(`unsafe session id for sqlite store: ${id}`);
@@ -335,9 +349,21 @@ export function createPersistentSessionStore(dir, options = {}) {
335
349
  const persistImmediate = (id, frozen) => {
336
350
  writeRecord(id, frozen);
337
351
  };
352
+ /**
353
+ * Events that must be durable before `append` returns — user input and
354
+ * turn lifecycle edges. Crash repair (`repairOpenTurnEvents`) closes every
355
+ * `turn/start` that never got a `turn/end`, but it can only settle what
356
+ * reached disk; a queued user message would be silently lost, and a missing
357
+ * `turn/start` would open a turn the repair pass cannot see.
358
+ */
359
+ const isDurabilityBoundary = (frozen) => frozen.type === "user/message" ||
360
+ frozen.type === "turn/start" ||
361
+ frozen.type === "turn/end" ||
362
+ frozen.type.startsWith("command/") ||
363
+ frozen.type.startsWith("prompt/");
338
364
  const persistEvent = (id, frozen) => {
339
365
  pending.push({ sessionId: id, event: frozen });
340
- if (frozen.type !== "assistant/chunk") {
366
+ if (isDurabilityBoundary(frozen) || pending.length >= MICRO_BATCH_MAX_PENDING) {
341
367
  flushPending();
342
368
  }
343
369
  };