@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
@@ -1 +1 @@
1
- {"version":3,"file":"discord-awareness-outbox.js","sourceRoot":"","sources":["../../../src/recovery/discord-awareness-outbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discord-awareness-outbox.js","sourceRoot":"","sources":["../../../src/recovery/discord-awareness-outbox.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { type DiscordAwarenessRef } from './discord-awareness-outbox.js';
1
+ import type { SurgeryMarkerReceipt } from '../operator-log.js';
2
+ import { type DiscordAwarenessMarks, type DiscordAwarenessRef } from './discord-awareness-outbox.js';
2
3
  export interface OfflineRecoveryBranchOptions {
3
4
  storePath: string;
4
5
  agentName: string;
@@ -21,8 +22,14 @@ export interface OfflineRecoveryBranchOptions {
21
22
  namespace?: string;
22
23
  /** Use for old message records that do not carry metadata.serverId. */
23
24
  discordServerId?: string;
25
+ /** The awareness ledger (default: under the store). */
24
26
  outboxPath?: string;
25
27
  emoji?: string;
28
+ /**
29
+ * Awareness marks on the removed Discord messages: an explicit publication
30
+ * choice, `none` by default. The recovery itself stays local either way.
31
+ */
32
+ marks?: DiscordAwarenessMarks;
26
33
  dryRun?: boolean;
27
34
  }
28
35
  export interface OfflineRecoveryBranchResult {
@@ -31,9 +38,27 @@ export interface OfflineRecoveryBranchResult {
31
38
  targetBranch: string;
32
39
  messagesRemoved: number;
33
40
  messagesSuppressed: number;
41
+ /** Removed messages that carry a Discord address. */
42
+ discordAddressable: number;
43
+ /** The publication scope recorded for this recovery. */
44
+ marksScope: 'none' | 'addressed' | 'all';
45
+ /** Marks queued for delivery (planned, for a dry run); not delivered. */
34
46
  discordMarkersQueued: number;
47
+ /** What became of the marks once the branch was made (absent on a dry
48
+ * run): scheduling only, never Discord acceptance. */
49
+ markers?: SurgeryMarkerReceipt;
50
+ /** The refs that will be marked (empty unless marks were chosen). */
35
51
  refs: DiscordAwarenessRef[];
52
+ /** Removed addressable messages the marks choice leaves unmarked (outside
53
+ * its scope); `markers` says whether the chosen ones are scheduled. */
54
+ unmarked: number;
55
+ /** Authorized refs (marks.refs) this recovery does not remove. */
56
+ notRemoved: number;
57
+ /** The awareness ledger the batch is recorded in. */
36
58
  outboxPath: string;
59
+ /** Set when a suppression-only batch's resume record couldn't be closed:
60
+ * what of it is left, as the host's surgeries report it. */
61
+ suppressionRecord?: string;
37
62
  }
38
63
  /**
39
64
  * Create a safe Chronicle branch while the normal agent host is stopped.
@@ -1 +1 @@
1
- {"version":3,"file":"offline-branch.d.ts","sourceRoot":"","sources":["../../../src/recovery/offline-branch.ts"],"names":[],"mappings":"AAIA,OAAO,EAKL,KAAK,mBAAmB,EACzB,MAAM,+BAA+B,CAAC;AAEvC,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,wEAAwE;IACxE,cAAc,CAAC,EAAE,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvE,sHAAsH;IACtH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,mBAAmB,EAAE,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,2BAA2B,CAAC,CA+KtC"}
1
+ {"version":3,"file":"offline-branch.d.ts","sourceRoot":"","sources":["../../../src/recovery/offline-branch.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAI/D,OAAO,EAQL,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAEzB,MAAM,+BAA+B,CAAC;AAEvC,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,wEAAwE;IACxE,cAAc,CAAC,EAAE,KAAK,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvE,sHAAsH;IACtH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,KAAK,CAAC,EAAE,qBAAqB,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,qDAAqD;IACrD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,wDAAwD;IACxD,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,KAAK,CAAC;IACzC,yEAAyE;IACzE,oBAAoB,EAAE,MAAM,CAAC;IAC7B;2DACuD;IACvD,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,qEAAqE;IACrE,IAAI,EAAE,mBAAmB,EAAE,CAAC;IAC5B;4EACwE;IACxE,QAAQ,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB;iEAC6D;IAC7D,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,2BAA2B,CAAC,CAqRtC"}
@@ -2,7 +2,7 @@ import { JsStore } from '@animalabs/chronicle';
2
2
  import { ContextManager, continuesBody } from '@animalabs/context-manager';
3
3
  import { removeStoredInterval } from '../stored-removal.js';
4
4
  import { firstFreeBranchName } from '../branch-names.js';
5
- import { DEFAULT_DISCORD_AWARENESS_EMOJI, DiscordAwarenessOutbox, defaultDiscordAwarenessOutboxPath, extractDiscordAwarenessRefs, } from './discord-awareness-outbox.js';
5
+ import { DEFAULT_DISCORD_AWARENESS_EMOJI, DiscordAwarenessOutbox, boundDiscordAwarenessText, defaultDiscordAwarenessOutboxPath, checkedDiscordAwarenessMarks, extractDiscordAwarenessRefs, selectDiscordAwarenessRefs, } from './discord-awareness-outbox.js';
6
6
  /**
7
7
  * Create a safe Chronicle branch while the normal agent host is stopped.
8
8
  *
@@ -21,6 +21,10 @@ export async function createOfflineRecoveryBranch(options) {
21
21
  if (count !== undefined && (!Number.isFinite(count) || count < 1)) {
22
22
  throw new Error('messages must be a positive integer');
23
23
  }
24
+ // The marks choice is checked as the live methods check it, before the
25
+ // store is opened: a malformed one would otherwise mark every removed
26
+ // message.
27
+ const marks = checkedDiscordAwarenessMarks(options.marks);
24
28
  const store = JsStore.openOrCreate({ path: options.storePath });
25
29
  let contextManager = null;
26
30
  try {
@@ -35,7 +39,7 @@ export async function createOfflineRecoveryBranch(options) {
35
39
  let target;
36
40
  let targetIndex;
37
41
  let removedCount;
38
- let refs;
42
+ let carriers;
39
43
  if (options.messageId) {
40
44
  // Search backward in bounded windows: recovery anchors are normally near
41
45
  // the tail, and even a very large Chronicle is never materialized all at
@@ -49,7 +53,7 @@ export async function createOfflineRecoveryBranch(options) {
49
53
  target = located.message;
50
54
  targetIndex = located.index;
51
55
  removedCount = total - located.index - 1;
52
- refs = collectDiscordRefs(contextManager, located.index + 1, total, options.discordServerId);
56
+ carriers = collectDiscordCarriers(contextManager, located.index + 1, total);
53
57
  }
54
58
  else if (options.contextId) {
55
59
  const located = findInternalMessageFromTail(contextManager, total, options.contextId.trim());
@@ -59,7 +63,7 @@ export async function createOfflineRecoveryBranch(options) {
59
63
  target = located.message;
60
64
  targetIndex = located.index;
61
65
  removedCount = total - located.index - 1;
62
- refs = collectDiscordRefs(contextManager, located.index + 1, total, options.discordServerId);
66
+ carriers = collectDiscordCarriers(contextManager, located.index + 1, total);
63
67
  }
64
68
  else {
65
69
  // Count mode remains for compatibility. Read only the target plus suffix,
@@ -75,10 +79,10 @@ export async function createOfflineRecoveryBranch(options) {
75
79
  target = countTarget;
76
80
  targetIndex = total - count - 1;
77
81
  removedCount = count;
78
- refs = extractDiscordAwarenessRefs(discarded, options.discordServerId);
82
+ carriers = discarded.map(addressingOnly);
79
83
  }
80
84
  validateAnchorBoundary(contextManager, targetIndex, total, target);
81
- const suppression = buildSuppressionPlan(contextManager, targetIndex, options.suppressMessageIds ?? [], options.suppressRanges ?? [], options.discordServerId);
85
+ const suppression = buildSuppressionPlan(contextManager, targetIndex, options.suppressMessageIds ?? [], options.suppressRanges ?? []);
82
86
  validateRemovalIntegrity(contextManager, total, [
83
87
  ...(removedCount > 0 ? [{
84
88
  start: targetIndex + 1,
@@ -88,7 +92,10 @@ export async function createOfflineRecoveryBranch(options) {
88
92
  }] : []),
89
93
  ...suppression.intervals,
90
94
  ]);
91
- refs = dedupeDiscordRefs([...refs, ...suppression.refs]);
95
+ carriers = [...carriers, ...suppression.carriers];
96
+ const addressable = extractDiscordAwarenessRefs(carriers, options.discordServerId).length;
97
+ const selection = selectDiscordAwarenessRefs(carriers, marks, options.discordServerId);
98
+ const refs = selection.refs;
92
99
  const sourceBranch = store.currentBranch().name;
93
100
  const held = new Set(store.listBranches().map((branch) => branch.name));
94
101
  const targetBranch = options.branchName
@@ -96,6 +103,10 @@ export async function createOfflineRecoveryBranch(options) {
96
103
  if (targetBranch === sourceBranch) {
97
104
  throw new Error('Recovery branch name must differ from the active source branch');
98
105
  }
106
+ // A known collision is refused before anything is prepared.
107
+ if (store.listBranches().some((branch) => branch.name === targetBranch)) {
108
+ throw new Error(`Recovery branch ${targetBranch} already exists; choose another --branch`);
109
+ }
99
110
  const outboxPath = options.outboxPath
100
111
  ?? defaultDiscordAwarenessOutboxPath(options.storePath);
101
112
  const result = {
@@ -104,32 +115,43 @@ export async function createOfflineRecoveryBranch(options) {
104
115
  targetBranch,
105
116
  messagesRemoved: removedCount,
106
117
  messagesSuppressed: suppression.messageCount,
118
+ discordAddressable: addressable,
119
+ marksScope: marks === 'none' ? 'none' : marks.scope,
107
120
  discordMarkersQueued: refs.length,
108
121
  refs,
122
+ unmarked: selection.unmarked,
123
+ notRemoved: selection.notRemoved,
109
124
  outboxPath,
110
125
  };
111
126
  if (options.dryRun)
112
127
  return result;
113
- const outbox = new DiscordAwarenessOutbox(outboxPath);
114
- const batch = outbox.prepare({
128
+ // The host is stopped, so this process is the ledger's only writer.
129
+ const outbox = new DiscordAwarenessOutbox(outboxPath, { store });
130
+ const batch = await outbox.prepare({
115
131
  agentName: options.agentName,
116
132
  sourceBranch,
117
133
  targetBranch,
118
134
  refs,
135
+ scope: marks === 'none' ? 'none' : marks.scope,
136
+ unmarked: selection.unmarked,
137
+ notRemoved: selection.notRemoved,
119
138
  emoji: options.emoji ?? DEFAULT_DISCORD_AWARENESS_EMOJI,
120
139
  // Merely seeing targetBranch active does not prove branch-local
121
- // suppressions finished. Only the recovery operation may activate this
122
- // batch after every removal below succeeds.
123
- activationPolicy: suppression.intervals.length > 0 ? 'explicit' : 'target-branch',
140
+ // suppressions finished: a start on it applies them again while the
141
+ // batch is prepared. Only the recovery may activate it, after every
142
+ // removal below succeeds.
124
143
  suppressionIntervals: suppression.intervals.map((interval) => ({
125
144
  fromId: String(interval.fromId),
126
145
  toId: String(interval.toId),
127
146
  })),
128
147
  });
129
- // branchAt uses the target message's origin sequence. No message content is
130
- // compiled or submitted to Membrane during this operation.
131
- const createdBranch = contextManager.branchAt(target.id, targetBranch);
148
+ let createdBranch;
132
149
  try {
150
+ // branchAt uses the target message's origin sequence. No message
151
+ // content is compiled or submitted to Membrane during this operation.
152
+ // Creating the branch is part of the body: a failure here settles the
153
+ // batch like a failed switch or redaction.
154
+ createdBranch = contextManager.branchAt(target.id, targetBranch);
133
155
  await contextManager.switchBranch(createdBranch);
134
156
  // Each interval is removed by its messages' ids, so the order doesn't
135
157
  // change the result. removeStoredInterval takes a single message outside
@@ -138,19 +160,113 @@ export async function createOfflineRecoveryBranch(options) {
138
160
  for (const interval of [...suppression.intervals].reverse()) {
139
161
  removeStoredInterval(contextManager, interval.fromId, interval.toId);
140
162
  }
141
- if (batch)
142
- outbox.activate(batch.id);
143
163
  }
144
164
  catch (error) {
145
165
  // A partially suppressed branch is not safe to boot into. Preserve it
146
- // for diagnosis, but leave Chronicle on the untouched source branch and
147
- // keep the explicit outbox batch non-deliverable.
148
- if (store.currentBranch().name === createdBranch) {
149
- await contextManager.switchBranch(sourceBranch);
166
+ // for diagnosis, but put Chronicle back on the untouched source branch.
167
+ // Once the source is confirmed, the batch is retired (discard syncs the
168
+ // restored state before it records that): its surgery never happened.
169
+ // If it can't be confirmed, the batch stays prepared as the body's
170
+ // record: a start on its target branch finishes a suppression's
171
+ // removals, since its body is in effect there, and a start retires the
172
+ // batch, none of its marks sent. The error says which, and names the
173
+ // branch.
174
+ const failure = error instanceof Error ? error.message : String(error);
175
+ let restore = '';
176
+ try {
177
+ if (store.currentBranch().name !== sourceBranch)
178
+ await contextManager.switchBranch(sourceBranch);
179
+ }
180
+ catch (restoreError) {
181
+ restore = `; restoring ${sourceBranch} failed: ${boundDiscordAwarenessText(restoreError instanceof Error ? restoreError.message : String(restoreError))}`;
182
+ }
183
+ const sourceConfirmed = store.currentBranch().name === sourceBranch;
184
+ let retire = '';
185
+ // A batch with marks never sends them once kept: the recovery, run
186
+ // again, chooses them again.
187
+ const redo = batch && batch.refs.length > 0
188
+ ? '. To apply its marks, run the recovery again onto a new --branch, choosing them again' : '';
189
+ if (batch) {
190
+ if (!sourceConfirmed) {
191
+ // The recovery starts from the store's current branch, which this
192
+ // one couldn't put back: a run from there would start from the fork.
193
+ const redoFromSource = batch.refs.length > 0
194
+ ? `. To apply its marks, redo it from ${sourceBranch}, choosing them again: the recovery starts from the ` +
195
+ `store's current branch, which isn't ${sourceBranch} now, so start the host, switch to ${sourceBranch} ` +
196
+ 'through the host API\'s branch.switch, stop the host, and run the recovery again onto a new --branch'
197
+ : '';
198
+ retire = `; awareness batch ${batch.id} kept, since the source branch could not be confirmed: ` +
199
+ (suppression.intervals.length > 0
200
+ ? `a start on ${targetBranch} finishes its removals and retires it`
201
+ : 'the next start retires it') + `, none of its marks sent${redoFromSource}`;
202
+ }
203
+ else {
204
+ try {
205
+ await outbox.discard(batch.id);
206
+ retire = `; awareness batch ${batch.id} retired, none of its marks sent${redo}`;
207
+ }
208
+ catch (discardError) {
209
+ // None of its marks is ever sent: a start retires it. A write that
210
+ // fails leaves the batch as it was, prepared, as in the host's
211
+ // retireAfterRestore. A suppression's removals stay pending for
212
+ // its target branch: a start on a branch with that name finishes
213
+ // them.
214
+ const detail = boundDiscordAwarenessText(discardError instanceof Error ? discardError.message : String(discardError));
215
+ const kept = `; awareness batch ${batch.id} could not be retired (${detail}); it stays prepared, none of ` +
216
+ 'its marks to be sent';
217
+ if (suppression.intervals.length === 0) {
218
+ retire = `${kept}, until the next start retires it${redo}`;
219
+ }
220
+ else {
221
+ let forked = true;
222
+ try {
223
+ forked = store.listBranches().some((branch) => branch.name === targetBranch);
224
+ }
225
+ catch { /* unknown: say what a start on an existing branch would do */ }
226
+ retire = `${kept}. Its removals stay pending for ${targetBranch}: a start on a branch with that ` +
227
+ 'name would finish them there and retire the batch' + (forked
228
+ ? `, and ${targetBranch} is kept, so delete it unless you want that, through the host API's ` +
229
+ 'branch.delete once the host runs'
230
+ : '') + redo;
231
+ }
232
+ }
233
+ }
150
234
  }
151
- throw error;
235
+ // A partly suppressed branch is unsafe to start on, unless its batch was
236
+ // kept because the source couldn't be confirmed: a start on it then
237
+ // completes the suppression, as the batch's note says.
238
+ const kept = createdBranch === undefined ? ''
239
+ : suppression.intervals.length === 0 ? `; branch ${createdBranch} is kept for diagnosis`
240
+ : batch && !sourceConfirmed ? `; branch ${createdBranch} is kept: it may be partly suppressed`
241
+ : `; branch ${createdBranch} is kept for diagnosis: it may be partly suppressed, so don't start on it, and ` +
242
+ 'delete it once it has been looked at (the host API\'s branch.delete, once the host runs)';
243
+ if (!restore && !retire && !kept)
244
+ throw error;
245
+ throw new Error(`${failure}${restore}${kept}${retire}`, { cause: error });
152
246
  }
153
- return result;
247
+ // The body change landed. Marker bookkeeping is reported apart from it
248
+ // and never undoes it.
249
+ const facts = {
250
+ scope: (marks === 'none' ? 'none' : marks.scope),
251
+ unmarked: selection.unmarked,
252
+ notRemoved: selection.notRemoved,
253
+ };
254
+ let markers = { ...facts, status: 'none', queued: 0 };
255
+ let suppressionRecord;
256
+ if (batch) {
257
+ const settled = await outbox.settleActivation(batch.id);
258
+ if (batch.refs.length > 0) {
259
+ markers = settled.status === 'queued'
260
+ ? { ...facts, status: 'queued', queued: settled.queued, batchId: batch.id }
261
+ : { ...facts, status: 'not-scheduled', queued: 0, error: settled.error };
262
+ }
263
+ else if (settled.status === 'not-scheduled') {
264
+ // A suppression-only batch carries no marks, and its activation
265
+ // closes the body's resume record: if that failed, say what became of it.
266
+ suppressionRecord = `the resume record (awareness batch ${batch.id}, no marks) could not be closed: ${settled.error}`;
267
+ }
268
+ }
269
+ return { ...result, discordMarkersQueued: markers.queued, markers, ...(suppressionRecord ? { suppressionRecord } : {}) };
154
270
  }
155
271
  finally {
156
272
  contextManager?.close();
@@ -245,7 +361,7 @@ function validateRemovalIntegrity(contextManager, total, intervals) {
245
361
  }
246
362
  }
247
363
  }
248
- function buildSuppressionPlan(contextManager, targetIndex, rawMessageIds, rawRanges, forcedServerId) {
364
+ function buildSuppressionPlan(contextManager, targetIndex, rawMessageIds, rawRanges) {
249
365
  const messageIds = rawMessageIds.map(normalizeDiscordMessageId);
250
366
  const ranges = rawRanges.map((range) => ({
251
367
  fromMessageId: normalizeDiscordMessageId(range.fromMessageId),
@@ -256,7 +372,7 @@ function buildSuppressionPlan(contextManager, targetIndex, rawMessageIds, rawRan
256
372
  ...ranges.flatMap((range) => [range.fromMessageId, range.toMessageId]),
257
373
  ]);
258
374
  if (wanted.size === 0)
259
- return { intervals: [], refs: [], messageCount: 0 };
375
+ return { intervals: [], carriers: [], messageCount: 0 };
260
376
  const locations = new Map();
261
377
  for (let offset = 0; offset <= targetIndex; offset += RECOVERY_SCAN_WINDOW) {
262
378
  const messages = contextManager.getMessageWindow(offset, Math.min(RECOVERY_SCAN_WINDOW, targetIndex - offset + 1), { resolveBlobs: false }).messages;
@@ -340,30 +456,39 @@ function buildSuppressionPlan(contextManager, targetIndex, rawMessageIds, rawRan
340
456
  merged.push({ ...interval });
341
457
  }
342
458
  }
343
- const refs = [];
459
+ const carriers = [];
344
460
  for (const interval of merged) {
345
- refs.push(...collectDiscordRefs(contextManager, interval.start, interval.end + 1, forcedServerId));
461
+ carriers.push(...collectDiscordCarriers(contextManager, interval.start, interval.end + 1));
346
462
  }
347
463
  return {
348
464
  intervals: merged,
349
- refs: dedupeDiscordRefs(refs),
465
+ carriers,
350
466
  messageCount: merged.reduce((sum, interval) => sum + interval.end - interval.start + 1, 0),
351
467
  };
352
468
  }
353
- function collectDiscordRefs(contextManager, start, end, forcedServerId) {
354
- const refs = [];
469
+ /**
470
+ * The addressing metadata of removed messages, read in bounded windows: only
471
+ * the Discord address and the MCPL tags (for `addressed` selection) are kept,
472
+ * never content. A sharded message may repeat its metadata across adjacent
473
+ * records; selection dedupes by address.
474
+ */
475
+ function collectDiscordCarriers(contextManager, start, end) {
476
+ const carriers = [];
355
477
  for (let offset = start; offset < end; offset += RECOVERY_SCAN_WINDOW) {
356
478
  const messages = contextManager.getMessageWindow(offset, Math.min(RECOVERY_SCAN_WINDOW, end - offset), { resolveBlobs: false }).messages;
357
- refs.push(...extractDiscordAwarenessRefs(messages, forcedServerId));
479
+ carriers.push(...messages.map(addressingOnly));
358
480
  }
359
- // A sharded message may repeat Discord metadata across adjacent records.
360
- return dedupeDiscordRefs(refs);
481
+ return carriers;
361
482
  }
362
- function dedupeDiscordRefs(refs) {
363
- const deduped = new Map();
364
- for (const ref of refs) {
365
- deduped.set(`${ref.serverId}\0${ref.channelId}\0${ref.messageId}`, ref);
366
- }
367
- return [...deduped.values()];
483
+ function addressingOnly(message) {
484
+ const metadata = message.metadata ?? {};
485
+ return {
486
+ metadata: {
487
+ serverId: metadata.serverId,
488
+ channelId: metadata.channelId,
489
+ messageId: metadata.messageId,
490
+ tags: metadata.tags,
491
+ },
492
+ };
368
493
  }
369
494
  //# sourceMappingURL=offline-branch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"offline-branch.js","sourceRoot":"","sources":["../../../src/recovery/offline-branch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"offline-branch.js","sourceRoot":"","sources":["../../../src/recovery/offline-branch.ts"],"names":[],"mappings":"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"}