@animalabs/agent-framework 0.23.1 → 0.24.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 (338) hide show
  1. package/README.md +212 -42
  2. package/dist/src/agent.d.ts +60 -9
  3. package/dist/src/agent.d.ts.map +1 -1
  4. package/dist/src/agent.js +92 -12
  5. package/dist/src/agent.js.map +1 -1
  6. package/dist/src/api/server.d.ts.map +1 -1
  7. package/dist/src/api/server.js +14 -12
  8. package/dist/src/api/server.js.map +1 -1
  9. package/dist/src/code-execution/engine.d.ts +177 -0
  10. package/dist/src/code-execution/engine.d.ts.map +1 -0
  11. package/dist/src/code-execution/engine.js +494 -0
  12. package/dist/src/code-execution/engine.js.map +1 -0
  13. package/dist/src/code-execution/index.d.ts +5 -10
  14. package/dist/src/code-execution/index.d.ts.map +1 -1
  15. package/dist/src/code-execution/index.js +5 -9
  16. package/dist/src/code-execution/index.js.map +1 -1
  17. package/dist/src/code-execution/isolate/calls.d.ts +114 -0
  18. package/dist/src/code-execution/isolate/calls.d.ts.map +1 -0
  19. package/dist/src/code-execution/isolate/calls.js +145 -0
  20. package/dist/src/code-execution/isolate/calls.js.map +1 -0
  21. package/dist/src/code-execution/isolate/child-entry.d.ts +2 -0
  22. package/dist/src/code-execution/isolate/child-entry.d.ts.map +1 -0
  23. package/dist/src/code-execution/isolate/child-entry.js +5 -0
  24. package/dist/src/code-execution/isolate/child-entry.js.map +1 -0
  25. package/dist/src/code-execution/isolate/child-main.d.ts +26 -0
  26. package/dist/src/code-execution/isolate/child-main.d.ts.map +1 -0
  27. package/dist/src/code-execution/isolate/child-main.js +132 -0
  28. package/dist/src/code-execution/isolate/child-main.js.map +1 -0
  29. package/dist/src/code-execution/isolate/child.d.ts +44 -0
  30. package/dist/src/code-execution/isolate/child.d.ts.map +1 -0
  31. package/dist/src/code-execution/isolate/child.js +315 -0
  32. package/dist/src/code-execution/isolate/child.js.map +1 -0
  33. package/dist/src/code-execution/isolate/frames.d.ts +80 -0
  34. package/dist/src/code-execution/isolate/frames.d.ts.map +1 -0
  35. package/dist/src/code-execution/isolate/frames.js +210 -0
  36. package/dist/src/code-execution/isolate/frames.js.map +1 -0
  37. package/dist/src/code-execution/isolate/output.d.ts +68 -0
  38. package/dist/src/code-execution/isolate/output.d.ts.map +1 -0
  39. package/dist/src/code-execution/isolate/output.js +143 -0
  40. package/dist/src/code-execution/isolate/output.js.map +1 -0
  41. package/dist/src/code-execution/isolate/prelude.d.ts +109 -0
  42. package/dist/src/code-execution/isolate/prelude.d.ts.map +1 -0
  43. package/dist/src/code-execution/isolate/prelude.js +401 -0
  44. package/dist/src/code-execution/isolate/prelude.js.map +1 -0
  45. package/dist/src/code-execution/isolate/protocol.d.ts +151 -0
  46. package/dist/src/code-execution/isolate/protocol.d.ts.map +1 -0
  47. package/dist/src/code-execution/isolate/protocol.js +150 -0
  48. package/dist/src/code-execution/isolate/protocol.js.map +1 -0
  49. package/dist/src/code-execution/isolate/render.d.ts +57 -0
  50. package/dist/src/code-execution/isolate/render.d.ts.map +1 -0
  51. package/dist/src/code-execution/isolate/render.js +214 -0
  52. package/dist/src/code-execution/isolate/render.js.map +1 -0
  53. package/dist/src/code-execution/isolate/runner.d.ts +250 -0
  54. package/dist/src/code-execution/isolate/runner.d.ts.map +1 -0
  55. package/dist/src/code-execution/isolate/runner.js +854 -0
  56. package/dist/src/code-execution/isolate/runner.js.map +1 -0
  57. package/dist/src/code-execution/isolate/scripts.d.ts +175 -0
  58. package/dist/src/code-execution/isolate/scripts.d.ts.map +1 -0
  59. package/dist/src/code-execution/isolate/scripts.js +357 -0
  60. package/dist/src/code-execution/isolate/scripts.js.map +1 -0
  61. package/dist/src/code-execution/quickjs.wasm +0 -0
  62. package/dist/src/code-execution/tool-definition.d.ts +93 -43
  63. package/dist/src/code-execution/tool-definition.d.ts.map +1 -1
  64. package/dist/src/code-execution/tool-definition.js +176 -142
  65. package/dist/src/code-execution/tool-definition.js.map +1 -1
  66. package/dist/src/deadline-timer.d.ts +3 -0
  67. package/dist/src/deadline-timer.d.ts.map +1 -1
  68. package/dist/src/deadline-timer.js +1 -1
  69. package/dist/src/deadline-timer.js.map +1 -1
  70. package/dist/src/framework.d.ts +1036 -440
  71. package/dist/src/framework.d.ts.map +1 -1
  72. package/dist/src/framework.js +4131 -2228
  73. package/dist/src/framework.js.map +1 -1
  74. package/dist/src/gate/event-gate.d.ts +28 -1
  75. package/dist/src/gate/event-gate.d.ts.map +1 -1
  76. package/dist/src/gate/event-gate.js +88 -10
  77. package/dist/src/gate/event-gate.js.map +1 -1
  78. package/dist/src/held-writes.d.ts +16 -3
  79. package/dist/src/held-writes.d.ts.map +1 -1
  80. package/dist/src/held-writes.js +16 -3
  81. package/dist/src/held-writes.js.map +1 -1
  82. package/dist/src/index.d.ts +6 -6
  83. package/dist/src/index.d.ts.map +1 -1
  84. package/dist/src/index.js +9 -8
  85. package/dist/src/index.js.map +1 -1
  86. package/dist/src/mcpl/channel-registry.d.ts +471 -75
  87. package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
  88. package/dist/src/mcpl/channel-registry.js +1673 -337
  89. package/dist/src/mcpl/channel-registry.js.map +1 -1
  90. package/dist/src/mcpl/conversation-router.d.ts +12 -7
  91. package/dist/src/mcpl/conversation-router.d.ts.map +1 -1
  92. package/dist/src/mcpl/conversation-router.js +12 -7
  93. package/dist/src/mcpl/conversation-router.js.map +1 -1
  94. package/dist/src/mcpl/convert-block.d.ts.map +1 -1
  95. package/dist/src/mcpl/convert-block.js +9 -5
  96. package/dist/src/mcpl/convert-block.js.map +1 -1
  97. package/dist/src/mcpl/inbound-source.d.ts +50 -0
  98. package/dist/src/mcpl/inbound-source.d.ts.map +1 -1
  99. package/dist/src/mcpl/inbound-source.js +130 -0
  100. package/dist/src/mcpl/inbound-source.js.map +1 -1
  101. package/dist/src/mcpl/index.d.ts +2 -1
  102. package/dist/src/mcpl/index.d.ts.map +1 -1
  103. package/dist/src/mcpl/index.js +3 -2
  104. package/dist/src/mcpl/index.js.map +1 -1
  105. package/dist/src/mcpl/log-value.d.ts +6 -0
  106. package/dist/src/mcpl/log-value.d.ts.map +1 -1
  107. package/dist/src/mcpl/log-value.js +8 -0
  108. package/dist/src/mcpl/log-value.js.map +1 -1
  109. package/dist/src/mcpl/modern-connection.d.ts +15 -6
  110. package/dist/src/mcpl/modern-connection.d.ts.map +1 -1
  111. package/dist/src/mcpl/modern-connection.js +168 -53
  112. package/dist/src/mcpl/modern-connection.js.map +1 -1
  113. package/dist/src/mcpl/prose-grammar.d.ts +4 -5
  114. package/dist/src/mcpl/prose-grammar.d.ts.map +1 -1
  115. package/dist/src/mcpl/prose-grammar.js +4 -5
  116. package/dist/src/mcpl/prose-grammar.js.map +1 -1
  117. package/dist/src/mcpl/protocol-family.d.ts +97 -10
  118. package/dist/src/mcpl/protocol-family.d.ts.map +1 -1
  119. package/dist/src/mcpl/protocol-family.js +173 -16
  120. package/dist/src/mcpl/protocol-family.js.map +1 -1
  121. package/dist/src/mcpl/push-coalescer.d.ts +132 -14
  122. package/dist/src/mcpl/push-coalescer.d.ts.map +1 -1
  123. package/dist/src/mcpl/push-coalescer.js +227 -50
  124. package/dist/src/mcpl/push-coalescer.js.map +1 -1
  125. package/dist/src/mcpl/push-handler.d.ts +6 -1
  126. package/dist/src/mcpl/push-handler.d.ts.map +1 -1
  127. package/dist/src/mcpl/push-handler.js +4 -1
  128. package/dist/src/mcpl/push-handler.js.map +1 -1
  129. package/dist/src/mcpl/reference-fetcher.d.ts +2 -2
  130. package/dist/src/mcpl/reference-fetcher.d.ts.map +1 -1
  131. package/dist/src/mcpl/reference-fetcher.js +4 -4
  132. package/dist/src/mcpl/reference-fetcher.js.map +1 -1
  133. package/dist/src/mcpl/server-connection.d.ts +50 -21
  134. package/dist/src/mcpl/server-connection.d.ts.map +1 -1
  135. package/dist/src/mcpl/server-connection.js +158 -74
  136. package/dist/src/mcpl/server-connection.js.map +1 -1
  137. package/dist/src/mcpl/tags.d.ts +24 -0
  138. package/dist/src/mcpl/tags.d.ts.map +1 -1
  139. package/dist/src/mcpl/tags.js +33 -0
  140. package/dist/src/mcpl/tags.js.map +1 -1
  141. package/dist/src/mcpl/tool-result-normalize.d.ts +2 -1
  142. package/dist/src/mcpl/tool-result-normalize.d.ts.map +1 -1
  143. package/dist/src/mcpl/tool-result-normalize.js.map +1 -1
  144. package/dist/src/mcpl/transport.d.ts +55 -7
  145. package/dist/src/mcpl/transport.d.ts.map +1 -1
  146. package/dist/src/mcpl/transport.js +163 -34
  147. package/dist/src/mcpl/transport.js.map +1 -1
  148. package/dist/src/mcpl/types.d.ts +22 -6
  149. package/dist/src/mcpl/types.d.ts.map +1 -1
  150. package/dist/src/mcpl/types.js.map +1 -1
  151. package/dist/src/module-registry.d.ts +4 -2
  152. package/dist/src/module-registry.d.ts.map +1 -1
  153. package/dist/src/module-registry.js +100 -13
  154. package/dist/src/module-registry.js.map +1 -1
  155. package/dist/src/modules/discord/index.d.ts.map +1 -1
  156. package/dist/src/modules/discord/index.js +8 -13
  157. package/dist/src/modules/discord/index.js.map +1 -1
  158. package/dist/src/modules/history/index.d.ts.map +1 -1
  159. package/dist/src/modules/history/index.js +27 -4
  160. package/dist/src/modules/history/index.js.map +1 -1
  161. package/dist/src/modules/history/semantic.d.ts +15 -3
  162. package/dist/src/modules/history/semantic.d.ts.map +1 -1
  163. package/dist/src/modules/history/semantic.js +27 -5
  164. package/dist/src/modules/history/semantic.js.map +1 -1
  165. package/dist/src/modules/index.d.ts +1 -1
  166. package/dist/src/modules/index.d.ts.map +1 -1
  167. package/dist/src/modules/index.js.map +1 -1
  168. package/dist/src/modules/unknown-tool.d.ts +4 -1
  169. package/dist/src/modules/unknown-tool.d.ts.map +1 -1
  170. package/dist/src/modules/unknown-tool.js +4 -1
  171. package/dist/src/modules/unknown-tool.js.map +1 -1
  172. package/dist/src/modules/workspace/branch-intent.d.ts +3 -1
  173. package/dist/src/modules/workspace/branch-intent.d.ts.map +1 -1
  174. package/dist/src/modules/workspace/branch-intent.js +3 -1
  175. package/dist/src/modules/workspace/branch-intent.js.map +1 -1
  176. package/dist/src/modules/workspace/edit-plan.d.ts +265 -0
  177. package/dist/src/modules/workspace/edit-plan.d.ts.map +1 -0
  178. package/dist/src/modules/workspace/edit-plan.js +794 -0
  179. package/dist/src/modules/workspace/edit-plan.js.map +1 -0
  180. package/dist/src/modules/workspace/edit-text.d.ts +117 -0
  181. package/dist/src/modules/workspace/edit-text.d.ts.map +1 -0
  182. package/dist/src/modules/workspace/edit-text.js +584 -0
  183. package/dist/src/modules/workspace/edit-text.js.map +1 -0
  184. package/dist/src/modules/workspace/effects.d.ts +5 -4
  185. package/dist/src/modules/workspace/effects.d.ts.map +1 -1
  186. package/dist/src/modules/workspace/effects.js +78 -25
  187. package/dist/src/modules/workspace/effects.js.map +1 -1
  188. package/dist/src/modules/workspace/index.d.ts +484 -61
  189. package/dist/src/modules/workspace/index.d.ts.map +1 -1
  190. package/dist/src/modules/workspace/index.js +2173 -645
  191. package/dist/src/modules/workspace/index.js.map +1 -1
  192. package/dist/src/modules/workspace/observe.d.ts +213 -38
  193. package/dist/src/modules/workspace/observe.d.ts.map +1 -1
  194. package/dist/src/modules/workspace/observe.js +416 -36
  195. package/dist/src/modules/workspace/observe.js.map +1 -1
  196. package/dist/src/modules/workspace/reconcile.d.ts.map +1 -1
  197. package/dist/src/modules/workspace/reconcile.js +15 -8
  198. package/dist/src/modules/workspace/reconcile.js.map +1 -1
  199. package/dist/src/modules/workspace/text.d.ts +32 -0
  200. package/dist/src/modules/workspace/text.d.ts.map +1 -0
  201. package/dist/src/modules/workspace/text.js +67 -0
  202. package/dist/src/modules/workspace/text.js.map +1 -0
  203. package/dist/src/modules/workspace/types.d.ts +210 -6
  204. package/dist/src/modules/workspace/types.d.ts.map +1 -1
  205. package/dist/src/modules/workspace/types.js.map +1 -1
  206. package/dist/src/modules/workspace/watcher.d.ts +3 -2
  207. package/dist/src/modules/workspace/watcher.d.ts.map +1 -1
  208. package/dist/src/modules/workspace/watcher.js.map +1 -1
  209. package/dist/src/operator-log.d.ts +52 -24
  210. package/dist/src/operator-log.d.ts.map +1 -1
  211. package/dist/src/operator-log.js.map +1 -1
  212. package/dist/src/recovery/discord-awareness-outbox.d.ts +496 -72
  213. package/dist/src/recovery/discord-awareness-outbox.d.ts.map +1 -1
  214. package/dist/src/recovery/discord-awareness-outbox.js +1196 -289
  215. package/dist/src/recovery/discord-awareness-outbox.js.map +1 -1
  216. package/dist/src/recovery/offline-branch.d.ts +26 -1
  217. package/dist/src/recovery/offline-branch.d.ts.map +1 -1
  218. package/dist/src/recovery/offline-branch.js +164 -39
  219. package/dist/src/recovery/offline-branch.js.map +1 -1
  220. package/dist/src/recovery/recover-cli.js +23 -4
  221. package/dist/src/recovery/recover-cli.js.map +1 -1
  222. package/dist/src/send-tools.d.ts +11 -0
  223. package/dist/src/send-tools.d.ts.map +1 -0
  224. package/dist/src/send-tools.js +11 -0
  225. package/dist/src/send-tools.js.map +1 -0
  226. package/dist/src/tool-result-guard.d.ts +4 -3
  227. package/dist/src/tool-result-guard.d.ts.map +1 -1
  228. package/dist/src/tool-result-guard.js +5 -4
  229. package/dist/src/tool-result-guard.js.map +1 -1
  230. package/dist/src/tool-result-history.d.ts +1 -1
  231. package/dist/src/tool-result-history.js +1 -1
  232. package/dist/src/tune-out/coordinator.d.ts +21 -0
  233. package/dist/src/tune-out/coordinator.d.ts.map +1 -1
  234. package/dist/src/tune-out/coordinator.js +139 -37
  235. package/dist/src/tune-out/coordinator.js.map +1 -1
  236. package/dist/src/types/agent.d.ts +4 -0
  237. package/dist/src/types/agent.d.ts.map +1 -1
  238. package/dist/src/types/events.d.ts +62 -9
  239. package/dist/src/types/events.d.ts.map +1 -1
  240. package/dist/src/types/framework.d.ts +62 -58
  241. package/dist/src/types/framework.d.ts.map +1 -1
  242. package/dist/src/types/module.d.ts +40 -8
  243. package/dist/src/types/module.d.ts.map +1 -1
  244. package/dist/src/types/trace.d.ts +111 -10
  245. package/dist/src/types/trace.d.ts.map +1 -1
  246. package/dist/src/usage/types.d.ts +16 -0
  247. package/dist/src/usage/types.d.ts.map +1 -1
  248. package/dist/src/usage/usage-tracker.d.ts +14 -1
  249. package/dist/src/usage/usage-tracker.d.ts.map +1 -1
  250. package/dist/src/usage/usage-tracker.js +81 -41
  251. package/dist/src/usage/usage-tracker.js.map +1 -1
  252. package/package.json +6 -5
  253. package/src/agent.ts +93 -12
  254. package/src/api/server.ts +14 -12
  255. package/src/code-execution/engine.ts +595 -0
  256. package/src/code-execution/index.ts +5 -17
  257. package/src/code-execution/isolate/calls.ts +199 -0
  258. package/src/code-execution/isolate/child-entry.ts +5 -0
  259. package/src/code-execution/isolate/child-main.ts +132 -0
  260. package/src/code-execution/isolate/child.ts +327 -0
  261. package/src/code-execution/isolate/frames.ts +209 -0
  262. package/src/code-execution/isolate/output.ts +161 -0
  263. package/src/code-execution/isolate/prelude.ts +409 -0
  264. package/src/code-execution/isolate/protocol.ts +240 -0
  265. package/src/code-execution/isolate/render.ts +230 -0
  266. package/src/code-execution/isolate/runner.ts +911 -0
  267. package/src/code-execution/isolate/scripts.ts +479 -0
  268. package/src/code-execution/quickjs.wasm +0 -0
  269. package/src/code-execution/quickjs.wasm.LICENSES +149 -0
  270. package/src/code-execution/tool-definition.ts +236 -167
  271. package/src/deadline-timer.ts +1 -1
  272. package/src/framework.ts +4507 -2406
  273. package/src/gate/event-gate.ts +78 -11
  274. package/src/held-writes.ts +17 -3
  275. package/src/index.ts +30 -22
  276. package/src/mcpl/channel-registry.ts +1825 -368
  277. package/src/mcpl/conversation-router.ts +12 -7
  278. package/src/mcpl/convert-block.ts +9 -5
  279. package/src/mcpl/inbound-source.ts +131 -0
  280. package/src/mcpl/index.ts +4 -2
  281. package/src/mcpl/log-value.ts +9 -0
  282. package/src/mcpl/modern-connection.ts +162 -53
  283. package/src/mcpl/prose-grammar.ts +4 -5
  284. package/src/mcpl/protocol-family.ts +199 -21
  285. package/src/mcpl/push-coalescer.ts +306 -62
  286. package/src/mcpl/push-handler.ts +10 -2
  287. package/src/mcpl/reference-fetcher.ts +4 -4
  288. package/src/mcpl/server-connection.ts +180 -79
  289. package/src/mcpl/tags.ts +36 -0
  290. package/src/mcpl/tool-result-normalize.ts +2 -1
  291. package/src/mcpl/transport.ts +162 -33
  292. package/src/mcpl/types.ts +23 -6
  293. package/src/module-registry.ts +92 -13
  294. package/src/modules/discord/index.ts +8 -13
  295. package/src/modules/history/index.ts +25 -3
  296. package/src/modules/history/semantic.ts +29 -6
  297. package/src/modules/index.ts +1 -0
  298. package/src/modules/unknown-tool.ts +4 -1
  299. package/src/modules/workspace/branch-intent.ts +3 -1
  300. package/src/modules/workspace/edit-plan.ts +954 -0
  301. package/src/modules/workspace/edit-text.ts +618 -0
  302. package/src/modules/workspace/effects.ts +70 -19
  303. package/src/modules/workspace/index.ts +2247 -642
  304. package/src/modules/workspace/observe.ts +465 -56
  305. package/src/modules/workspace/reconcile.ts +14 -7
  306. package/src/modules/workspace/text.ts +68 -0
  307. package/src/modules/workspace/types.ts +211 -6
  308. package/src/modules/workspace/watcher.ts +3 -2
  309. package/src/operator-log.ts +47 -19
  310. package/src/recovery/discord-awareness-outbox.ts +1500 -356
  311. package/src/recovery/offline-branch.ts +189 -55
  312. package/src/recovery/recover-cli.ts +25 -4
  313. package/src/send-tools.ts +11 -0
  314. package/src/tool-result-guard.ts +6 -5
  315. package/src/tool-result-history.ts +1 -1
  316. package/src/tune-out/coordinator.ts +163 -42
  317. package/src/types/agent.ts +4 -0
  318. package/src/types/events.ts +62 -9
  319. package/src/types/framework.ts +62 -58
  320. package/src/types/module.ts +40 -8
  321. package/src/types/trace.ts +121 -15
  322. package/src/usage/types.ts +16 -0
  323. package/src/usage/usage-tracker.ts +86 -43
  324. package/dist/src/code-execution/py-runner.d.ts +0 -191
  325. package/dist/src/code-execution/py-runner.d.ts.map +0 -1
  326. package/dist/src/code-execution/py-runner.js +0 -655
  327. package/dist/src/code-execution/py-runner.js.map +0 -1
  328. package/dist/src/code-execution/runtime-py.d.ts +0 -50
  329. package/dist/src/code-execution/runtime-py.d.ts.map +0 -1
  330. package/dist/src/code-execution/runtime-py.js +0 -677
  331. package/dist/src/code-execution/runtime-py.js.map +0 -1
  332. package/dist/src/mcpl/prose-stream-router.d.ts +0 -88
  333. package/dist/src/mcpl/prose-stream-router.d.ts.map +0 -1
  334. package/dist/src/mcpl/prose-stream-router.js +0 -291
  335. package/dist/src/mcpl/prose-stream-router.js.map +0 -1
  336. package/src/code-execution/py-runner.ts +0 -791
  337. package/src/code-execution/runtime-py.ts +0 -677
  338. package/src/mcpl/prose-stream-router.ts +0 -268
@@ -4,9 +4,12 @@ function usage() {
4
4
  return `Usage:
5
5
  agent-framework-recover --store <path> --agent <name> <anchor> [options]
6
6
 
7
- Creates and activates a Chronicle recovery branch while the normal host is down,
8
- then queues Discord reactions for addressable messages removed from awareness.
9
- Message content is never compiled or written to the recovery outbox.
7
+ Creates and activates a Chronicle recovery branch while the normal host is
8
+ down. The recovery is local to the resident: by default no Discord reaction is
9
+ placed. --marks chooses to mark removed Discord messages with an awareness
10
+ reaction (queued here, delivered when the host and its Discord MCPL server
11
+ next connect). Message content is never compiled or written to the awareness
12
+ ledger.
10
13
 
11
14
  Options:
12
15
  --message-id <id|link> Last Discord message the agent should still see
@@ -17,6 +20,10 @@ Options:
17
20
  --branch <name> Recovery branch name (generated by default)
18
21
  --namespace <namespace> Context namespace (default: agents/<agent>)
19
22
  --discord-server <id> Override/inject the Discord MCPL server id
23
+ --marks <none|addressed|all>
24
+ Awareness marks on removed Discord messages
25
+ (default none; addressed = mentions, replies to
26
+ the bot and DMs; all = every addressable message)
20
27
  --outbox <path> Override the branch-independent outbox path
21
28
  --emoji <emoji> Marker reaction (default: 💤)
22
29
  --dry-run Inspect counts/addresses without writing
@@ -25,7 +32,7 @@ Options:
25
32
  The agent host must be stopped before running this command.`;
26
33
  }
27
34
  function parseArgs(args) {
28
- const options = { dryRun: false, suppressMessageIds: [], suppressRanges: [] };
35
+ const options = { dryRun: false, suppressMessageIds: [], suppressRanges: [], marks: 'none' };
29
36
  for (let i = 0; i < args.length; i++) {
30
37
  const arg = args[i];
31
38
  const value = () => {
@@ -82,6 +89,14 @@ function parseArgs(args) {
82
89
  case '--emoji':
83
90
  options.emoji = value();
84
91
  break;
92
+ case '--marks': {
93
+ const marks = value();
94
+ if (marks !== 'none' && marks !== 'addressed' && marks !== 'all') {
95
+ throw new Error('--marks must be none, addressed or all');
96
+ }
97
+ options.marks = marks;
98
+ break;
99
+ }
85
100
  case '--dry-run':
86
101
  options.dryRun = true;
87
102
  break;
@@ -101,6 +116,9 @@ async function main() {
101
116
  || (!options.messageId && !options.contextId && options.messages === undefined)) {
102
117
  throw new Error(`--store, --agent, and one anchor (--message-id, --context-id, or --messages) are required\n\n${usage()}`);
103
118
  }
119
+ // A CLI choice and its application are the same moment (the host is
120
+ // stopped), so the scope is evaluated now rather than frozen to refs.
121
+ const marks = options.marks === 'none' ? 'none' : { scope: options.marks };
104
122
  const result = await createOfflineRecoveryBranch({
105
123
  storePath: options.storePath,
106
124
  agentName: options.agentName,
@@ -114,6 +132,7 @@ async function main() {
114
132
  discordServerId: options.discordServerId,
115
133
  outboxPath: options.outboxPath,
116
134
  emoji: options.emoji,
135
+ marks,
117
136
  dryRun: options.dryRun,
118
137
  });
119
138
  console.log(JSON.stringify({
@@ -1 +1 @@
1
- {"version":3,"file":"recover-cli.js","sourceRoot":"","sources":["../../../src/recovery/recover-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recover-cli.js","sourceRoot":"","sources":["../../../src/recovery/recover-cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Tools whose call delivers the resident's message to a channel or person,
3
+ * by bare name (an MCPL server's `<prefix>--` stripped). The framework reads
4
+ * a call of one as an explicit send that silences the round's auto-routed
5
+ * prose; the history module's semantic index reads its message argument as
6
+ * what the resident wrote to someone, whether or not it was delivered.
7
+ */
8
+ export declare const SEND_TOOLS: Set<string>;
9
+ /** Strip the `server--` MCPL prefix from a tool name. */
10
+ export declare const bareToolName: (n: string) => string;
11
+ //# sourceMappingURL=send-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send-tools.d.ts","sourceRoot":"","sources":["../../src/send-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,aAA2E,CAAC;AAEnG,yDAAyD;AACzD,eAAO,MAAM,YAAY,MAAO,MAAM,KAAG,MAA8B,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Tools whose call delivers the resident's message to a channel or person,
3
+ * by bare name (an MCPL server's `<prefix>--` stripped). The framework reads
4
+ * a call of one as an explicit send that silences the round's auto-routed
5
+ * prose; the history module's semantic index reads its message argument as
6
+ * what the resident wrote to someone, whether or not it was delivered.
7
+ */
8
+ export const SEND_TOOLS = new Set(['channel_publish', 'send_message', 'reply_message', 'send_dm']);
9
+ /** Strip the `server--` MCPL prefix from a tool name. */
10
+ export const bareToolName = (n) => n.split('--').pop();
11
+ //# sourceMappingURL=send-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send-tools.js","sourceRoot":"","sources":["../../src/send-tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC;AAEnG,yDAAyD;AACzD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAG,CAAC"}
@@ -11,7 +11,7 @@ export declare const TOOL_RESULT_GUARD_AUDIT_STATE = "framework/tool-result-guar
11
11
  * left the stub's branch when the file would have been committed
12
12
  * (`branch_changed`), or because the batch used its deadline before this
13
13
  * write could start (`batch_deadline`); or null when no file is written at all (no writable
14
- * workspace, or the host is stopping). */
14
+ * mount without an include, or the host is stopping). */
15
15
  export type WithheldSpill = {
16
16
  path: string;
17
17
  error?: string;
@@ -194,8 +194,9 @@ export declare class ToolResultGuard {
194
194
  private settle;
195
195
  /**
196
196
  * Turn a withheld batch's notices into stubs that say where each original
197
- * is (agent-framework #277): written to the workspace when a writable mount
198
- * takes it, else kept in the audit record. A stub also keeps the file
197
+ * is (agent-framework #277): written to the workspace when it has a
198
+ * writable mount without an include to take it, else kept in the audit
199
+ * record. A stub also keeps the file
199
200
  * lists its tool marked. Its own unedited placeholder is
200
201
  * the only thing it edits: an operator's later edit, removal or rollback
201
202
  * stands.
@@ -1 +1 @@
1
- {"version":3,"file":"tool-result-guard.d.ts","sourceRoot":"","sources":["../../src/tool-result-guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-result-guard.d.ts","sourceRoot":"","sources":["../../src/tool-result-guard.ts"],"names":[],"mappings":"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"}
@@ -437,8 +437,9 @@ export class ToolResultGuard {
437
437
  }
438
438
  /**
439
439
  * Turn a withheld batch's notices into stubs that say where each original
440
- * is (agent-framework #277): written to the workspace when a writable mount
441
- * takes it, else kept in the audit record. A stub also keeps the file
440
+ * is (agent-framework #277): written to the workspace when it has a
441
+ * writable mount without an include to take it, else kept in the audit
442
+ * record. A stub also keeps the file
442
443
  * lists its tool marked. Its own unedited placeholder is
443
444
  * the only thing it edits: an operator's later edit, removal or rollback
444
445
  * stands.
@@ -544,8 +545,8 @@ export class ToolResultGuard {
544
545
  if (thrown.has(index))
545
546
  return [{ toolUseId: block.toolUseId, error: thrown.get(index) }];
546
547
  const spill = spills.get(index) ?? null;
547
- // No file was written: no writable workspace, or the framework
548
- // was stopping.
548
+ // No file was written: no writable mount without an include,
549
+ // or the framework was stopping.
549
550
  if (spill === null)
550
551
  return [{ toolUseId: block.toolUseId, skipped: 'no_workspace_file' }];
551
552
  if ('skipped' in spill)
@@ -1 +1 @@
1
- {"version":3,"file":"tool-result-guard.js","sourceRoot":"","sources":["../../src/tool-result-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAI9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,MAAM,wBAAwB,GAAG,mEAAmE,CAAC;AAC5G,MAAM,CAAC,MAAM,6BAA6B,GAAG,6BAA6B,CAAC;AA4C3E;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAoB,EAAE,YAAqB,EAAE,IAAa;IAC7F,MAAM,KAAK,GAAG,6BAA6B,6BAA6B,oBAAoB,CAAC;IAC7F,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,YAAY;QAC3C,CAAC,CAAC,WAAW,IAAI,MAAM,KAAK,EAAE;QAC9B,CAAC,CAAC,QAAQ,IAAI,MAAM,KAAK,gEAAgE,CAAC;IAC5F,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,SAAS,IAAI,KAAK;QACxC,CAAC,CAAC,cAAc,MAAM,CAAC,EAAE,CAAC,GAAG;QAC7B,CAAC,CAAC,KAAK,CAAC,UAAU;YAChB,CAAC,CAAC,wDAAwD,KAAK,CAAC,IAAI,4BAA4B;gBAC9F,+BAA+B,MAAM,CAAC,EAAE,CAAC,GAAG;YAC9C,CAAC,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS;gBACzB,CAAC,CAAC,mCAAmC,KAAK,CAAC,IAAI,GAAG;gBAClD,CAAC,CAAC,wCAAwC,KAAK,CAAC,IAAI,kBAAkB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;IAC/F,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,0BAA0B,IAAI,EAAE,CAAC;IAC1E,OAAO,GAAG,wBAAwB,IAAI,KAAK,GAAG,MAAM,EAAE,CAAC;AACzD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAmC,EAAE,QAA4B;IAChG,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAChD,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACnH,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,IAA+B,CAAC;IAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACnH,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACrD,0EAA0E;IAC1E,yEAAyE;IACzE,2DAA2D;IAC3D,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC;IAC1E,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,yEAAyE;IACzE,iDAAiD;IACjD,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC3C,OAAO,GAAG,IAAI,4BAA4B,IAAI,CAAC,MAAM,qBAAqB,KAAK,CAAC,MAAM,GAAG;QACvF,uDAAuD,CAAC;AAC5D,CAAC;AAyBD;;;;;;;;GAQG;AACH,MAAM,OAAO,eAAe;IAeP,SAAS;IACT,EAAE;IACF,UAAU;IAhBrB,OAAO,CAA2B;IAClC,UAAU,GAAG,KAAK,CAAC;IACnB,QAAQ,CAAsB;IACtC,sEAAsE;IACtE,UAAU,GAAG,KAAK,CAAC;IACnB;8CAC0C;IAClC,IAAI,CAA2B;IACvC,kEAAkE;IAC1D,UAAU,CAA4B;IAC9C,0EAA0E;IAClE,kBAAkB,GAAG,CAAC,CAAC;IAE/B,YACmB,SAAiB,EACjB,EAAkB,EAClB,UAAU,GAAG,KAAK;yBAFlB,SAAS;kBACT,EAAE;0BACF,UAAU;IAC1B,CAAC;IAEJ,IAAI,OAAO,KAAc,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACnE,OAAO,CAAC,IAA8B,IAAU,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;IACnE;;;;;;;oFAOgF;IAChF,aAAa,KAAoB,OAAO,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAE/E;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,gBAAgB,CAAI,IAAsB;QAC9C,SAAS,CAAC;YACR,uEAAuE;YACvE,gCAAgC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC;YACxC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,kBAAkB,KAAK,OAAO;gBAAE,SAAS;YAClD,IAAI,CAAC;gBACH,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,yCAAyC,EAAE,KAAK,CAAC,CAAC;YAC7G,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,kBAAkB,KAAK,OAAO;gBAAE,OAAO,MAAM,CAAC;QACzD,CAAC;IACH,CAAC;IAED;wDACoD;IACpD,IAAI,IAAI,KAAc,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7F,WAAW,CAAC,KAA0B,IAAU,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC;IACxE,IAAI,eAAe,KAA0B,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpE,IAAI,UAAU,KAAc,OAAO,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC;IAChE;;iFAE6E;IAC7E,IAAI,mBAAmB,KAAc,OAAO,IAAI,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC;IAE/E;;;2EAGuE;IACvE,IAAI,wBAAwB;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,OAAO,CAAC,CAAC;QACvB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACzC,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;gBAAE,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;;gBAClE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAyB,EAAE,CAAC;oBAC1D,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;wBAAE,MAAM,IAAI,CAAC,CAAC;;wBACnC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;gBAC7C,CAAC;YACD,KAAK,IAAI,wBAAwB,CAAC,MAAM,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED;;;;8DAI0D;IAClD,UAAU,GAAqB,EAAE,CAAC;IAE1C;;kEAE8D;IAC9D,eAAe;QACb,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACrC,IAAI,CAAC;oBACH,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;oBAC1B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBAC7B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBAC1B,CAAC;wBAAS,CAAC;oBACT,IAAI,CAAC,SAAS,CAAC,SAAS;wBAAE,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED;;sCAEkC;IAC1B,SAAS,CAAC,SAAyB;QACzC,IAAI,CAAC,SAAS,CAAC,SAAS;YAAE,OAAO;QACjC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC;QACrE,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC;QAC3D,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAClE,mEAAmE;QACnE,kEAAkE;QAClE,gEAAgE;QAChE,oEAAoE;QACpE,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO;YACzB,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;mBACrE,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,SAAS,CAAC,MAAM,CAAC,aAAa,GAAG,YAAY,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1C,CAAC;QACD,sEAAsE;QACtE,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;IAClC,CAAC;IAEO,MAAM,CAAC,MAA+B;QAC5C,MAAM,OAAO,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC;QAChF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAEO,KAAK,CAAC,MAA+B;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,qBAAqB,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,6BAA6B,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACzB,CAAC;QACD,KAAK,CAAC,iBAAiB,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAEO,OAAO,CAAC,KAAc;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,qEAAqE;QACrE,uEAAuE;QACvE,OAAO,IAAI,CAAC,MAAM,GAAG,MAAM;YACzB,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,EAAE;YACjF,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED;uDACmD;IACnD,YAAY,CACV,OAAuB,EACvB,WAAyB,EACzB,SAA8B,EAC9B,QAAqC;IACrC,iFAAiF;IACjF,SAA6B;QAE7B,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,iEAAiE;YACjE,iEAAiE;YACjE,mEAAmE;YACnE,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS;mBAC/B,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBACxD,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,uEAAuE;QACvE,wEAAwE;QACxE,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;YAC1C,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/G,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uEAAuE;YACvE,+DAA+D;YAC/D,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,6BAA6B,EAAE,KAAK,CAAC,CAAC;QACjG,CAAC;QACD,MAAM,QAAQ,GAAmB,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa;YAClF,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,wBAAwB,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;YAChH,CAAC,CAAC,KAAK,CAAC,CAAC;QACX,uEAAuE;QACvE,oEAAoE;QACpE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;QACvC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACvF,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,IAAI,IAAI,KAAK,SAAS;gBAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,yEAAyE;QACzE,oEAAoE;QACpE,2EAA2E;QAC3E,gEAAgE;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;QACvG,IAAI,CAAC,OAAO,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW;YAC5D,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACjF,0EAA0E;QAC1E,uEAAuE;QACvE,uEAAuE;QACvE,oEAAoE;QACpE,IAAI,CAAC;YACH,sEAAsE;YACtE,uEAAuE;YACvE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;YACxD,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,6BAA6B;gBACpF,+CAA+C,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;0EAEsE;IACtE,iBAAiB,CAAC,OAAqB;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC;QAC7B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;YAAC,OAAO,OAAO,CAAC;QAAC,CAAC;QAClE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3E,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;YACtD,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACjE,CAAC;IAED;;;iEAG6D;IAC7D,OAAO,CAAC,MAAc;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;IAC1F,CAAC;IAGD;sEACkE;IAClE,cAAc,CAAC,QAA6B,EAAE,gBAAgB,GAAG,KAAK;QACpE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,OAAO,QAAQ,CAAC;QAClD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QACtF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO;aAClE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;aAC5E,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAE,KAA8C,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/E,sEAAsE;QACtE,uEAAuE;QACvE,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;QAC7C,IAAI,gBAAgB;YAAE,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QACpD,IAAI,CAAC,SAAS;YAAE,OAAO,QAAQ,CAAC;QAChC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBACrF,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACpF,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;YACjI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACT,CAAC;IAED;;;yEAGqE;IACrE,eAAe;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO;YAClC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE;YAC5C,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED;;;oDAGgD;IAChD,iBAAiB,CAAC,QAAgB;QAChC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAChD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4EAA4E;IAC5E,MAAM;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS;YACpC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAC7F,CAAC;IAED,0EAA0E;IAC1E,QAAQ,CAAC,QAAgB;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,SAAS;YAAE,OAAO,IAAI,CAAC;QACrC,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClE,wEAAwE;QACxE,oEAAoE;QACpE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7E,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;kCAI8B;IACtB,MAAM,CAAC,OAAqB,EAAE,MAA+B,EAAE,KAAc;QACnF,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QACzB,MAAM,SAAS,GAAmB;YAChC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,MAAM;gBACnE,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE;YACnF,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO;oBAC/E,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACrD,CAAC;QACF,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC;YACH,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,+BAA+B,EAAE,KAAK,CAAC,CAAC;QACnG,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,SAAS;gBAAE,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACK,QAAQ,CAAC,OAAqB;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACtD,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC7B,qEAAqE;QACrE,yEAAyE;QACzE,4DAA4D;QAC5D,IAAI,QAAQ,GAAG,QAAQ,CAAC;QACxB,IAAI,CAAC;YAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,QAAQ,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,0EAA0E,CAAC,CAAC;QAC1I,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YACnC,uEAAuE;YACvE,2CAA2C;YAC3C,IAAI,UAAU,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACnD,oEAAoE;gBACpE,kEAAkE;gBAClE,sEAAsE;gBACtE,sEAAsE;gBACtE,mCAAmC;gBACnC,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxD,mEAAmE;gBACnE,kBAAkB;gBAClB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;gBAChD,2DAA2D;gBAC3D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;gBACzC,uDAAuD;gBACvD,IAAI,UAAU,GAAG,KAAK,CAAC;gBACvB,IAAI,aAAa,GAAG,KAAK,CAAC;gBAC1B,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;oBACvD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;wBAAE,SAAS;oBAC3C,qEAAqE;oBACrE,oEAAoE;oBACpE,+DAA+D;oBAC/D,gEAAgE;oBAChE,mEAAmE;oBACnE,mEAAmE;oBACnE,mEAAmE;oBACnE,+DAA+D;oBAC/D,IAAI,UAAU,IAAI,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;wBAClE,UAAU,GAAG,IAAI,CAAC;wBAClB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;wBACjD,SAAS;oBACX,CAAC;oBACD,kEAAkE;oBAClE,qEAAqE;oBACrE,MAAM,QAAQ,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACnG,IAAI,KAAK,GAAkB,IAAI,CAAC;oBAChC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBACd,IAAI,CAAC;4BACH,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,aAAa,KAAK,IAAI,KAAK,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;wBAC7H,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,gEAAgE;4BAChE,4CAA4C;4BAC5C,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;4BAC1F,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,mCAAmC;gCAC1F,GAAG,KAAK,CAAC,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;wBAClC,CAAC;oBACH,CAAC;oBACD,kEAAkE;oBAClE,oEAAoE;oBACpE,iEAAiE;oBACjE,mEAAmE;oBACnE,mDAAmD;oBACnD,IAAI,KAAK,IAAI,SAAS,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,gBAAgB;wBAAE,UAAU,GAAG,IAAI,CAAC;oBACzF,+DAA+D;oBAC/D,4DAA4D;oBAC5D,IAAI,KAAK,IAAI,SAAS,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,gBAAgB,IAAI,CAAC,aAAa,EAAE,CAAC;wBACxF,aAAa,GAAG,IAAI,CAAC;wBACrB,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,UAAU,OAAO,CAAC,EAAE,2GAA2G,CAAC,CAAC;oBAC5L,CAAC;oBACD,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBACD,MAAM,SAAS,GAAmB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa;oBACnG,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;oBAClH,CAAC,CAAC,KAAK,CAAC,CAAC;gBACX,IAAI,CAAC;oBACH,IAAI,CAAC,MAAM,CAAC;wBACV,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM;wBAClG,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAwC,EAAE;4BACtF,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;gCAAE,OAAO,EAAE,CAAC;4BAC5C,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;gCAAE,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAE,EAAE,CAAC,CAAC;4BAC1F,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;4BACxC,+DAA+D;4BAC/D,gBAAgB;4BAChB,IAAI,KAAK,KAAK,IAAI;gCAAE,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC;4BAC1F,IAAI,SAAS,IAAI,KAAK;gCAAE,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;4BACxF,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI;oCACpD,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oCAC5D,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBAClE,CAAC,CAAC;qBACH,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,gEAAgE;oBAChE,sDAAsD;oBACtD,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,UAAU,OAAO,CAAC,EAAE,sCAAsC,EAAE,KAAK,CAAC,CAAC;gBAC9H,CAAC;gBACD,MAAM,IAAI,GAAmB;oBAC3B,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,cAAc;wBAC9E,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE;oBACnF,SAAS,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;oBACnH,aAAa,EAAE,OAAO,CAAC,SAAS;iBACjC,CAAC;gBACF,IAAI,CAAC;oBACH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,UAAU,OAAO,CAAC,EAAE,8BAA8B,EAAE,KAAK,CAAC,CAAC;gBACtH,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3B,UAAU,GAAG,IAAI,CAAC;gBAClB,IAAI,CAAC;oBACH,8DAA8D;oBAC9D,8BAA8B;oBAC9B,IAAI,CAAC,IAAI,CAAC,SAAS;wBAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;oBACrD,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,UAAU,OAAO,CAAC,EAAE,wCAAwC,EAAE,KAAK,CAAC,CAAC;gBAChI,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,UAAU,OAAO,CAAC,EAAE,uCAAuC,EAAE,KAAK,CAAC,CAAC;YAC/H,CAAC;oBAAS,CAAC;gBACT,kEAAkE;gBAClE,kDAAkD;gBAClD,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,IAAI,CAAC;wBACH,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBACtC,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,6CAA6C,EAAE,KAAK,CAAC,CAAC;oBACjH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACtB,KAAK,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE;YACpB,IAAI,IAAI,CAAC,UAAU,KAAK,GAAG;gBAAE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YACzD,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAEO,oBAAoB,CAAC,SAAyB;QACpD,IAAI,SAAS,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAC1C,SAAS,CAAC,aAAa,GAAG,SAAS,CAAC;QACtC,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,SAAoB;QACtC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"tool-result-guard.js","sourceRoot":"","sources":["../../src/tool-result-guard.ts"],"names":[],"mappings":"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"}
@@ -45,7 +45,7 @@ export interface HistorySerializeOptions {
45
45
  }
46
46
  /**
47
47
  * House-safe default inline cap (chars) for tool results, error results, and
48
- * background-script wake payloads (issue #89: a resident should never eat a
48
+ * script wake payloads (issue #89: a resident should never eat a
49
49
  * 42k blob they didn't ask for). Durable per-residence value comes from
50
50
  * `FrameworkConfig.toolResultInlineMaxChars`; a per-agent value from
51
51
  * agent_settings `tool_result_inline_max_chars`.
@@ -21,7 +21,7 @@ import { NON_STRING_TEXT_PLACEHOLDER } from './mcpl/visible-content.js';
21
21
  import { formatToolImagePlaceholder, toolResultCutAt } from './tool-image-ledger.js';
22
22
  /**
23
23
  * House-safe default inline cap (chars) for tool results, error results, and
24
- * background-script wake payloads (issue #89: a resident should never eat a
24
+ * script wake payloads (issue #89: a resident should never eat a
25
25
  * 42k blob they didn't ask for). Durable per-residence value comes from
26
26
  * `FrameworkConfig.toolResultInlineMaxChars`; a per-agent value from
27
27
  * agent_settings `tool_result_inline_max_chars`.
@@ -24,6 +24,12 @@ export declare const TUNE_OUT_DEFAULTS: {
24
24
  readonly backlogCap: 200;
25
25
  readonly maxWakes: 5;
26
26
  };
27
+ /**
28
+ * tune_out's refusal of a channel already tuned out: its settings, then what
29
+ * its transport is now where the repeat tried to open it again (`transport`,
30
+ * from the framework's dispatch), then how to change the settings.
31
+ */
32
+ export declare function alreadyTunedOutText(channelId: string, p: TuneOutParams, transport?: string): string;
27
33
  export interface TuneOutFrameworkHooks {
28
34
  /** Deliver a message into an agent's window (per-agent seam). */
29
35
  addMessage: (participant: string, content: ContentBlock[], metadata?: Record<string, unknown>, forAgent?: string) => string;
@@ -35,6 +41,20 @@ export interface TuneOutFrameworkHooks {
35
41
  primaryName: () => string | null;
36
42
  /** Read the primary's stored messages (shared slot, unfiltered). */
37
43
  getStoredMessages: () => StoredMessage[];
44
+ /**
45
+ * Messages admitted for the primary but not yet in its store (deferred
46
+ * while a turn was alive), oldest first. A cancel reads them too, so a
47
+ * message held mid-turn is in the backlog it belongs to (#232 gap 7).
48
+ */
49
+ getDeferredMessages?: () => Array<Pick<StoredMessage, 'participant' | 'content' | 'metadata'>>;
50
+ /**
51
+ * The most characters of text every reader of the residents' shared slot
52
+ * is shown whole in one message: the smallest of their strategies'
53
+ * per-message caps (`maxMessageTokens`) at four characters a token, or
54
+ * undefined when none has such a cap. A cancel's dump is one message in
55
+ * that slot, so it holds as many backlog lines as fit.
56
+ */
57
+ residentMessageChars?: () => number | undefined;
38
58
  /** Current chronicle head sequence (window anchor for new epochs). */
39
59
  currentSequence: () => number;
40
60
  /** Move the subconscious window anchor (never forward past active epochs). */
@@ -86,6 +106,7 @@ export declare class TuneOutCoordinator {
86
106
  } | {
87
107
  ok: false;
88
108
  error: string;
109
+ alreadyTunedOut?: true;
89
110
  };
90
111
  /**
91
112
  * End a tune-out: durable flip, system-framed backlog dump into the
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/tune-out/coordinator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/tune-out/coordinator.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,34 @@ export const TUNE_OUT_DEFAULTS = {
28
28
  const WAKE_COALESCE_MS = 2_000;
29
29
  /** How long after an end time whose cancel threw the cancel is tried again. */
30
30
  const EXPIRY_RETRY_MS = 60_000;
31
+ /** Ends a backlog line cut to fit in one of the residents' messages. */
32
+ const CUT_MARK = " [cut to fit; the whole message is in the channel's history]";
33
+ /**
34
+ * tune_out's refusal of a channel already tuned out: its settings, then what
35
+ * its transport is now where the repeat tried to open it again (`transport`,
36
+ * from the framework's dispatch), then how to change the settings.
37
+ */
38
+ export function alreadyTunedOutText(channelId, p, transport) {
39
+ // A duration so long its end is past what a Date can hold has no time to show.
40
+ const expires = p.expiresAtMs !== undefined ? new Date(p.expiresAtMs) : undefined;
41
+ const until = expires && Number.isFinite(expires.getTime())
42
+ ? `, until ${expires.toISOString().replace(/\.\d+Z$/, 'Z')}`
43
+ : '';
44
+ // A thrown error's words may end without a stop.
45
+ const now = transport === undefined ? '' : /[.!?]$/.test(transport) ? `${transport} ` : `${transport}. `;
46
+ return `Nothing changed${transport !== undefined ? ' in the tune-out' : ''}: ${JSON.stringify(channelId)} is already `
47
+ + `tuned out, with cadenceSeconds ${p.cadenceSeconds}, backlogCap ${p.backlogCap} and maxWakes ${p.maxWakes}${until}. `
48
+ + now
49
+ + 'To change those, cancel it first with tune_out mode "cancel", which delivers its backlog to you now, then call '
50
+ + 'tune_out again with the new settings.';
51
+ }
52
+ /** The first `length` code units of `text`, one fewer where the last would be
53
+ * the first half of a surrogate pair. */
54
+ function prefixOf(text, length) {
55
+ const cut = text.slice(0, Math.max(0, length));
56
+ const last = cut.charCodeAt(cut.length - 1);
57
+ return last >= 0xd800 && last <= 0xdbff ? cut.slice(0, -1) : cut;
58
+ }
31
59
  /** What a thrown value says, without throwing: an Error's message, or the
32
60
  * value as text, which String() can't give for an object with no prototype. */
33
61
  function thrownReason(error) {
@@ -152,21 +180,8 @@ export class TuneOutCoordinator {
152
180
  };
153
181
  }
154
182
  const current = this.channelRegistry.getTuneOutState(serverId, channelId);
155
- if (current) {
156
- const p = current.params;
157
- // A duration so long its end is past what a Date can hold has no time to show.
158
- const expires = p.expiresAtMs !== undefined ? new Date(p.expiresAtMs) : undefined;
159
- const until = expires && Number.isFinite(expires.getTime())
160
- ? `, until ${expires.toISOString().replace(/\.\d+Z$/, 'Z')}`
161
- : '';
162
- return {
163
- ok: false,
164
- error: `Nothing changed: ${JSON.stringify(channelId)} is already tuned out, with cadenceSeconds `
165
- + `${p.cadenceSeconds}, backlogCap ${p.backlogCap} and maxWakes ${p.maxWakes}${until}. To change those, `
166
- + 'cancel it first with tune_out mode "cancel", which delivers its backlog to you now, then call tune_out '
167
- + 'again with the new settings.',
168
- };
169
- }
183
+ if (current)
184
+ return { ok: false, error: alreadyTunedOutText(channelId, current.params), alreadyTunedOut: true };
170
185
  // A tool's input reaches here as the model wrote it, and the store can't
171
186
  // keep a NaN or an Infinity: its append would throw after the registry
172
187
  // had marked the channel tuned out. So each option is read as a number
@@ -245,28 +260,101 @@ export class TuneOutCoordinator {
245
260
  }
246
261
  this.clearTimers(serverId, channelId);
247
262
  this.divertedSinceInvocation.delete(this.key(serverId, channelId));
248
- // Backlog: every message stamped with this epoch, oldest first.
263
+ // Backlog: every message held under this epoch. The stored ones come in
264
+ // store order, then those still in the deferred queue (held mid-turn,
265
+ // not yet written), oldest first. That's arrival order, except when a
266
+ // held message stays queued while a later one is stored: a store write
267
+ // refused at a turn-start flush leaves it queued, and that turn's
268
+ // assembly can then store later coalesced messages directly.
249
269
  const epochId = ended.params.epochId;
250
- const backlog = this.hooks.getStoredMessages().filter((m) => m.metadata?.tuneOut?.epochId === epochId);
251
- const cap = ended.params.backlogCap;
252
- const shown = cap > 0 ? backlog.slice(-cap) : [];
253
- const truncated = backlog.length - shown.length;
254
- const lines = shown.map((m) => {
255
- const author = m.metadata?.author?.name ?? m.participant;
270
+ const ofEpoch = (m) => m.metadata?.tuneOut?.epochId === epochId;
271
+ const held = (this.hooks.getDeferredMessages?.() ?? []).filter(ofEpoch);
272
+ const backlog = [
273
+ ...this.hooks.getStoredMessages().filter(ofEpoch),
274
+ ...held,
275
+ ];
276
+ // Whole messages: a cap below one shows none, where slice(-0.5) would
277
+ // start at 0 and take them all.
278
+ const cap = Math.floor(ended.params.backlogCap);
279
+ const authorOf = (m) => m.metadata?.author?.name ?? m.participant;
280
+ const lineOf = (m) => {
256
281
  const text = m.content
257
282
  .filter((b) => b.type === 'text')
258
283
  .map((b) => b.text)
259
284
  .join('\n');
260
- return `${author}: ${text}`;
261
- });
262
- const attrs = [
263
- `channel="${channelId}"`,
264
- `messages=${backlog.length}`,
265
- ...(truncated > 0 ? [`truncated=${truncated} (oldest; fetch_history covers the rest)`] : []),
285
+ return `${authorOf(m)}: ${text}`;
286
+ };
287
+ const lifecycle = `[Tune-out: ${channelId} cancelled — ${reason}, ${ended.wakeCount} wake${ended.wakeCount === 1 ? '' : 's'}]`;
288
+ const render = (lines, truncated) => {
289
+ const attrs = [
290
+ `channel="${channelId}"`,
291
+ `messages=${backlog.length}`,
292
+ ...(truncated > 0 ? [`truncated=${truncated} (oldest; fetch_history covers the rest)`] : []),
293
+ ];
294
+ return `${lifecycle}\n\n<tuned-out-backlog ${attrs.join(' ')}>\n${lines.join('\n')}\n</tuned-out-backlog>`;
295
+ };
296
+ // The dump is one message in the residents' shared slot, so each
297
+ // resident's strategy cuts it as it cuts any message past its per-message
298
+ // cap: context-manager's AutobiographicalStrategy (which connectome-host's
299
+ // FrontdeskStrategy extends) and WindowedPassthroughStrategy count a text
300
+ // block at a token per four characters, rounded up, and keep a message's
301
+ // first cap × 4 characters. Cut there, the dump would lose its newest
302
+ // lines, which would still count as shown. So it holds the newest lines
303
+ // that fit whole in the smallest such room, and those it leaves out, the
304
+ // oldest, count as truncated along with those above backlogCap, so the
305
+ // report is told of them. A newest message too long to fit alone is shown
306
+ // cut to the room left and marked, so the residents still get its head,
307
+ // as they would from a row of its own. When no line fits, whole or cut,
308
+ // the dump shows none; if the room is too small for even that, the
309
+ // residents' strategies cut its frame, the header and tags.
310
+ let shown = cap > 0 ? backlog.slice(-cap) : [];
311
+ let lines = shown.map(lineOf);
312
+ let newestCut = false;
313
+ const room = this.hooks.residentMessageChars?.();
314
+ if (room !== undefined && render(lines, backlog.length - shown.length).length > room) {
315
+ // The dump's length with no line, for the count that showing k lines
316
+ // leaves out: truncated= takes that count's digits, and goes at 0. With
317
+ // the newest k lines whole, the dump is that and the lines, with a
318
+ // newline between each two. While a message is left out, each line kept
319
+ // makes it longer, and they don't all fit, so the fit keeps lines from
320
+ // the newest while the next one fits.
321
+ const frameShowing = (k) => render([], backlog.length - k).length;
322
+ let used = 0;
323
+ let kept = 0;
324
+ while (kept < lines.length) {
325
+ const next = used + lines[lines.length - 1 - kept].length + (kept > 0 ? 1 : 0);
326
+ if (frameShowing(kept + 1) + next > room)
327
+ break;
328
+ used = next;
329
+ kept++;
330
+ }
331
+ // What of the newest line's text fits beside the frame and the mark. A
332
+ // cut shows some of it or none: a room under one character, or one
333
+ // that would split a surrogate pair, leaves the head empty.
334
+ const head = prefixOf(lines.at(-1) ?? '', room - frameShowing(1) - CUT_MARK.length);
335
+ if (kept === 0 && head !== '') {
336
+ lines = [head + CUT_MARK];
337
+ shown = shown.slice(-1);
338
+ newestCut = true;
339
+ }
340
+ else {
341
+ lines = lines.slice(lines.length - kept);
342
+ shown = shown.slice(shown.length - kept);
343
+ }
344
+ }
345
+ const truncated = backlog.length - shown.length;
346
+ // The held messages the dump leaves out, the oldest of them. The
347
+ // subconscious's report covers what the dump leaves out, but its view
348
+ // holds stored rows only, so these go to it with its notice below. So does
349
+ // a held message the dump shows but can't give whole: one whose image or
350
+ // audio its text lines drop, or the newest, cut to fit.
351
+ const heldLeftOut = held.slice(0, Math.max(0, held.length - shown.length));
352
+ const heldForReport = [
353
+ ...heldLeftOut,
354
+ ...held.slice(heldLeftOut.length).filter((m) => m.content.some((b) => b.type !== 'text') || (newestCut && m === shown[0])),
266
355
  ];
267
- const dump = `<tuned-out-backlog ${attrs.join(' ')}>\n${lines.join('\n')}\n</tuned-out-backlog>`;
268
356
  // Host-framed system artifacts — never voiced as anyone.
269
- this.hooks.addMessage('user', [{ type: 'text', text: `[Tune-out: ${channelId} cancelled — ${reason}, ${ended.wakeCount} wake${ended.wakeCount === 1 ? '' : 's'}]\n\n${dump}` }], { system: true, kind: 'tune-out-cancel', channelId, epochId });
357
+ this.hooks.addMessage('user', [{ type: 'text', text: render(lines, truncated) }], { system: true, kind: 'tune-out-cancel', channelId, epochId });
270
358
  // The subconscious's own words, under its own name, verbatim.
271
359
  const subName = this.hooks.subconsciousName();
272
360
  if (subconsciousNote && subName) {
@@ -276,15 +364,29 @@ export class TuneOutCoordinator {
276
364
  if (primary) {
277
365
  this.hooks.requestInference(primary, `tune-out cancelled (${reason})`, 'tune-out');
278
366
  }
279
- // The subconscious gets one cancel turn of its own (unless it initiated
280
- // the cancel — its note already carries its words): the issue's cancel
281
- // shape is dump + a report from the subconscious, and when the cap
282
- // truncated the raw dump, its summary is what covers the tail.
283
- if (source !== 'subconscious' && subName) {
367
+ // The subconscious gets one cancel turn of its own: the issue's cancel
368
+ // shape is dump + a report from the subconscious, and when the dump left
369
+ // messages out, its summary is what covers them. The held messages the
370
+ // dump can't give the resident whole follow the notice, each a row of its
371
+ // own with its own content, as its view can't have them until they're
372
+ // stored. A cancel the subconscious makes itself gets the notice and the
373
+ // turn when some do, since it wrote its note before it could see them,
374
+ // and when it wrote no note and the dump left any message out, since
375
+ // nothing else then covers it. Otherwise its note speaks for what it saw.
376
+ const selfCancel = source === 'subconscious';
377
+ if (subName && (!selfCancel || heldForReport.length > 0 || (!subconsciousNote && truncated > 0))) {
284
378
  const truncNote = truncated > 0
285
- ? ` ${truncated} of ${backlog.length} diverted messages were above the cap and not delivered raw.`
379
+ ? ` ${truncated} of ${backlog.length} diverted messages, the oldest, weren't delivered raw to the resident.`
286
380
  : '';
287
- this.hooks.addMessage('user', [{ type: 'text', text: `[Tune-out cancelled: ${channelId} — ${reason}.${truncNote}]` }], { system: true, kind: 'tune-out-cancel-report', channelId }, subName);
381
+ const heldNote = heldForReport.length > 0
382
+ ? ` Still held at the cancel, so your view may not have them yet: the ${heldForReport.length} message${heldForReport.length === 1 ? '' : 's'} after this one.`
383
+ : '';
384
+ this.hooks.addMessage('user', [{ type: 'text', text: `[Tune-out cancelled: ${channelId} — ${reason}.${truncNote}${heldNote}]` }], { system: true, kind: 'tune-out-cancel-report', channelId }, subName);
385
+ // Each held message is a row of its own, so a per-message cap cuts each
386
+ // one on its own, its author's label included, not the batch's newest.
387
+ for (const m of heldForReport) {
388
+ this.hooks.addMessage('user', [{ type: 'text', text: `${authorOf(m)}:` }, ...m.content], { system: true, kind: 'tune-out-cancel-held', channelId }, subName);
389
+ }
288
390
  this.hooks.requestInference(subName, `tune-out cancelled: ${channelId}`, 'tune-out');
289
391
  }
290
392
  this.hooks.emitTrace({ type: 'tune-out:cancelled', serverId, channelId, epochId, reason, wakeCount: ended.wakeCount });