@animalabs/agent-framework 0.22.2 → 0.23.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 (997) hide show
  1. package/README.md +108 -4
  2. package/dist/src/agent.d.ts +108 -17
  3. package/dist/src/agent.d.ts.map +1 -1
  4. package/dist/src/agent.js +207 -67
  5. package/dist/src/agent.js.map +1 -1
  6. package/dist/src/api/mcp-server-core.js +1 -1
  7. package/dist/src/api/mcp-server-core.js.map +1 -1
  8. package/dist/src/api/server.d.ts.map +1 -1
  9. package/dist/src/api/server.js +5 -1
  10. package/dist/src/api/server.js.map +1 -1
  11. package/dist/src/api/types.d.ts +1 -1
  12. package/dist/src/api/types.d.ts.map +1 -1
  13. package/dist/src/branch-names.d.ts +14 -0
  14. package/dist/src/branch-names.d.ts.map +1 -0
  15. package/dist/src/branch-names.js +22 -0
  16. package/dist/src/branch-names.js.map +1 -0
  17. package/dist/src/closest-names.d.ts +28 -0
  18. package/dist/src/closest-names.d.ts.map +1 -0
  19. package/dist/src/closest-names.js +98 -0
  20. package/dist/src/closest-names.js.map +1 -0
  21. package/dist/src/code-execution/index.d.ts +1 -1
  22. package/dist/src/code-execution/index.d.ts.map +1 -1
  23. package/dist/src/code-execution/index.js.map +1 -1
  24. package/dist/src/code-execution/py-runner.d.ts +50 -7
  25. package/dist/src/code-execution/py-runner.d.ts.map +1 -1
  26. package/dist/src/code-execution/py-runner.js +258 -90
  27. package/dist/src/code-execution/py-runner.js.map +1 -1
  28. package/dist/src/code-execution/runtime-py.d.ts +3 -2
  29. package/dist/src/code-execution/runtime-py.d.ts.map +1 -1
  30. package/dist/src/code-execution/runtime-py.js +94 -8
  31. package/dist/src/code-execution/runtime-py.js.map +1 -1
  32. package/dist/src/code-execution/tool-definition.d.ts +17 -1
  33. package/dist/src/code-execution/tool-definition.d.ts.map +1 -1
  34. package/dist/src/code-execution/tool-definition.js +72 -6
  35. package/dist/src/code-execution/tool-definition.js.map +1 -1
  36. package/dist/src/config-checks.d.ts +28 -0
  37. package/dist/src/config-checks.d.ts.map +1 -0
  38. package/dist/src/config-checks.js +56 -0
  39. package/dist/src/config-checks.js.map +1 -0
  40. package/dist/src/deadline-timer.d.ts +21 -0
  41. package/dist/src/deadline-timer.d.ts.map +1 -0
  42. package/dist/src/deadline-timer.js +43 -0
  43. package/dist/src/deadline-timer.js.map +1 -0
  44. package/dist/src/error-message.d.ts +30 -0
  45. package/dist/src/error-message.d.ts.map +1 -0
  46. package/dist/src/error-message.js +50 -0
  47. package/dist/src/error-message.js.map +1 -0
  48. package/dist/src/framework.d.ts +1529 -165
  49. package/dist/src/framework.d.ts.map +1 -1
  50. package/dist/src/framework.js +8264 -1939
  51. package/dist/src/framework.js.map +1 -1
  52. package/dist/src/gate/event-gate.d.ts +8 -0
  53. package/dist/src/gate/event-gate.d.ts.map +1 -1
  54. package/dist/src/gate/event-gate.js +36 -5
  55. package/dist/src/gate/event-gate.js.map +1 -1
  56. package/dist/src/held-writes.d.ts +16 -0
  57. package/dist/src/held-writes.d.ts.map +1 -0
  58. package/dist/src/held-writes.js +56 -0
  59. package/dist/src/held-writes.js.map +1 -0
  60. package/dist/src/index.d.ts +10 -4
  61. package/dist/src/index.d.ts.map +1 -1
  62. package/dist/src/index.js +11 -5
  63. package/dist/src/index.js.map +1 -1
  64. package/dist/src/mcpl/capability-grant.d.ts +4 -0
  65. package/dist/src/mcpl/capability-grant.d.ts.map +1 -1
  66. package/dist/src/mcpl/capability-grant.js +1 -1
  67. package/dist/src/mcpl/capability-grant.js.map +1 -1
  68. package/dist/src/mcpl/channel-registry.d.ts +233 -18
  69. package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
  70. package/dist/src/mcpl/channel-registry.js +975 -386
  71. package/dist/src/mcpl/channel-registry.js.map +1 -1
  72. package/dist/src/mcpl/checkpoint-manager.d.ts +21 -1
  73. package/dist/src/mcpl/checkpoint-manager.d.ts.map +1 -1
  74. package/dist/src/mcpl/checkpoint-manager.js +91 -30
  75. package/dist/src/mcpl/checkpoint-manager.js.map +1 -1
  76. package/dist/src/mcpl/conversation-router.d.ts +19 -3
  77. package/dist/src/mcpl/conversation-router.d.ts.map +1 -1
  78. package/dist/src/mcpl/conversation-router.js +23 -8
  79. package/dist/src/mcpl/conversation-router.js.map +1 -1
  80. package/dist/src/mcpl/convert-block.d.ts +20 -0
  81. package/dist/src/mcpl/convert-block.d.ts.map +1 -0
  82. package/dist/src/mcpl/convert-block.js +88 -0
  83. package/dist/src/mcpl/convert-block.js.map +1 -0
  84. package/dist/src/mcpl/errors.d.ts +13 -0
  85. package/dist/src/mcpl/errors.d.ts.map +1 -1
  86. package/dist/src/mcpl/errors.js +28 -0
  87. package/dist/src/mcpl/errors.js.map +1 -1
  88. package/dist/src/mcpl/hook-orchestrator.d.ts +23 -0
  89. package/dist/src/mcpl/hook-orchestrator.d.ts.map +1 -1
  90. package/dist/src/mcpl/hook-orchestrator.js +83 -72
  91. package/dist/src/mcpl/hook-orchestrator.js.map +1 -1
  92. package/dist/src/mcpl/inbound-source.d.ts +114 -0
  93. package/dist/src/mcpl/inbound-source.d.ts.map +1 -0
  94. package/dist/src/mcpl/inbound-source.js +83 -0
  95. package/dist/src/mcpl/inbound-source.js.map +1 -0
  96. package/dist/src/mcpl/index.d.ts +7 -1
  97. package/dist/src/mcpl/index.d.ts.map +1 -1
  98. package/dist/src/mcpl/index.js +5 -1
  99. package/dist/src/mcpl/index.js.map +1 -1
  100. package/dist/src/mcpl/inference-router.d.ts +19 -13
  101. package/dist/src/mcpl/inference-router.d.ts.map +1 -1
  102. package/dist/src/mcpl/inference-router.js +155 -87
  103. package/dist/src/mcpl/inference-router.js.map +1 -1
  104. package/dist/src/mcpl/log-value.d.ts +7 -0
  105. package/dist/src/mcpl/log-value.d.ts.map +1 -1
  106. package/dist/src/mcpl/log-value.js +9 -0
  107. package/dist/src/mcpl/log-value.js.map +1 -1
  108. package/dist/src/mcpl/modern-connection.d.ts +227 -0
  109. package/dist/src/mcpl/modern-connection.d.ts.map +1 -0
  110. package/dist/src/mcpl/modern-connection.js +1088 -0
  111. package/dist/src/mcpl/modern-connection.js.map +1 -0
  112. package/dist/src/mcpl/prefix-rule.d.ts +18 -0
  113. package/dist/src/mcpl/prefix-rule.d.ts.map +1 -0
  114. package/dist/src/mcpl/prefix-rule.js +25 -0
  115. package/dist/src/mcpl/prefix-rule.js.map +1 -0
  116. package/dist/src/mcpl/protocol-family.d.ts +179 -0
  117. package/dist/src/mcpl/protocol-family.d.ts.map +1 -0
  118. package/dist/src/mcpl/protocol-family.js +697 -0
  119. package/dist/src/mcpl/protocol-family.js.map +1 -0
  120. package/dist/src/mcpl/push-coalescer.d.ts +58 -17
  121. package/dist/src/mcpl/push-coalescer.d.ts.map +1 -1
  122. package/dist/src/mcpl/push-coalescer.js +93 -32
  123. package/dist/src/mcpl/push-coalescer.js.map +1 -1
  124. package/dist/src/mcpl/push-handler.d.ts +16 -9
  125. package/dist/src/mcpl/push-handler.d.ts.map +1 -1
  126. package/dist/src/mcpl/push-handler.js +18 -83
  127. package/dist/src/mcpl/push-handler.js.map +1 -1
  128. package/dist/src/mcpl/reference-fetcher.d.ts +76 -13
  129. package/dist/src/mcpl/reference-fetcher.d.ts.map +1 -1
  130. package/dist/src/mcpl/reference-fetcher.js +275 -66
  131. package/dist/src/mcpl/reference-fetcher.js.map +1 -1
  132. package/dist/src/mcpl/references.d.ts +98 -18
  133. package/dist/src/mcpl/references.d.ts.map +1 -1
  134. package/dist/src/mcpl/references.js +170 -32
  135. package/dist/src/mcpl/references.js.map +1 -1
  136. package/dist/src/mcpl/server-connection.d.ts +406 -31
  137. package/dist/src/mcpl/server-connection.d.ts.map +1 -1
  138. package/dist/src/mcpl/server-connection.js +1331 -272
  139. package/dist/src/mcpl/server-connection.js.map +1 -1
  140. package/dist/src/mcpl/server-registry.d.ts +35 -6
  141. package/dist/src/mcpl/server-registry.d.ts.map +1 -1
  142. package/dist/src/mcpl/server-registry.js +63 -13
  143. package/dist/src/mcpl/server-registry.js.map +1 -1
  144. package/dist/src/mcpl/skip-reply-wake.d.ts +36 -0
  145. package/dist/src/mcpl/skip-reply-wake.d.ts.map +1 -0
  146. package/dist/src/mcpl/skip-reply-wake.js +55 -0
  147. package/dist/src/mcpl/skip-reply-wake.js.map +1 -0
  148. package/dist/src/mcpl/tool-result-normalize.d.ts +54 -0
  149. package/dist/src/mcpl/tool-result-normalize.d.ts.map +1 -0
  150. package/dist/src/mcpl/tool-result-normalize.js +232 -0
  151. package/dist/src/mcpl/tool-result-normalize.js.map +1 -0
  152. package/dist/src/mcpl/transport.d.ts +104 -12
  153. package/dist/src/mcpl/transport.d.ts.map +1 -1
  154. package/dist/src/mcpl/transport.js +315 -85
  155. package/dist/src/mcpl/transport.js.map +1 -1
  156. package/dist/src/mcpl/types.d.ts +76 -19
  157. package/dist/src/mcpl/types.d.ts.map +1 -1
  158. package/dist/src/mcpl/types.js.map +1 -1
  159. package/dist/src/mcpl/visible-content.d.ts +16 -0
  160. package/dist/src/mcpl/visible-content.d.ts.map +1 -1
  161. package/dist/src/mcpl/visible-content.js +26 -0
  162. package/dist/src/mcpl/visible-content.js.map +1 -1
  163. package/dist/src/module-registry.d.ts +34 -6
  164. package/dist/src/module-registry.d.ts.map +1 -1
  165. package/dist/src/module-registry.js +119 -31
  166. package/dist/src/module-registry.js.map +1 -1
  167. package/dist/src/modules/api/index.d.ts +1 -1
  168. package/dist/src/modules/api/index.d.ts.map +1 -1
  169. package/dist/src/modules/api/index.js +3 -2
  170. package/dist/src/modules/api/index.js.map +1 -1
  171. package/dist/src/modules/discord/discord-js-client.d.ts +43 -2
  172. package/dist/src/modules/discord/discord-js-client.d.ts.map +1 -1
  173. package/dist/src/modules/discord/discord-js-client.js +286 -67
  174. package/dist/src/modules/discord/discord-js-client.js.map +1 -1
  175. package/dist/src/modules/discord/index.d.ts +53 -5
  176. package/dist/src/modules/discord/index.d.ts.map +1 -1
  177. package/dist/src/modules/discord/index.js +712 -186
  178. package/dist/src/modules/discord/index.js.map +1 -1
  179. package/dist/src/modules/discord/refusal.d.ts +14 -0
  180. package/dist/src/modules/discord/refusal.d.ts.map +1 -0
  181. package/dist/src/modules/discord/refusal.js +14 -0
  182. package/dist/src/modules/discord/refusal.js.map +1 -0
  183. package/dist/src/modules/discord/types.d.ts +27 -4
  184. package/dist/src/modules/discord/types.d.ts.map +1 -1
  185. package/dist/src/modules/health/index.d.ts.map +1 -1
  186. package/dist/src/modules/health/index.js +8 -3
  187. package/dist/src/modules/health/index.js.map +1 -1
  188. package/dist/src/modules/history/index.d.ts +3 -1
  189. package/dist/src/modules/history/index.d.ts.map +1 -1
  190. package/dist/src/modules/history/index.js +359 -127
  191. package/dist/src/modules/history/index.js.map +1 -1
  192. package/dist/src/modules/history/semantic.d.ts +28 -1
  193. package/dist/src/modules/history/semantic.d.ts.map +1 -1
  194. package/dist/src/modules/history/semantic.js +177 -32
  195. package/dist/src/modules/history/semantic.js.map +1 -1
  196. package/dist/src/modules/index.d.ts +1 -1
  197. package/dist/src/modules/index.d.ts.map +1 -1
  198. package/dist/src/modules/index.js +1 -1
  199. package/dist/src/modules/index.js.map +1 -1
  200. package/dist/src/modules/unknown-tool.d.ts +10 -0
  201. package/dist/src/modules/unknown-tool.d.ts.map +1 -0
  202. package/dist/src/modules/unknown-tool.js +17 -0
  203. package/dist/src/modules/unknown-tool.js.map +1 -0
  204. package/dist/src/modules/workspace/disk-agreement.d.ts +57 -4
  205. package/dist/src/modules/workspace/disk-agreement.d.ts.map +1 -1
  206. package/dist/src/modules/workspace/disk-agreement.js +75 -7
  207. package/dist/src/modules/workspace/disk-agreement.js.map +1 -1
  208. package/dist/src/modules/workspace/effects.d.ts +66 -7
  209. package/dist/src/modules/workspace/effects.d.ts.map +1 -1
  210. package/dist/src/modules/workspace/effects.js +303 -46
  211. package/dist/src/modules/workspace/effects.js.map +1 -1
  212. package/dist/src/modules/workspace/index.d.ts +313 -45
  213. package/dist/src/modules/workspace/index.d.ts.map +1 -1
  214. package/dist/src/modules/workspace/index.js +1404 -304
  215. package/dist/src/modules/workspace/index.js.map +1 -1
  216. package/dist/src/modules/workspace/observe.d.ts +315 -16
  217. package/dist/src/modules/workspace/observe.d.ts.map +1 -1
  218. package/dist/src/modules/workspace/observe.js +727 -37
  219. package/dist/src/modules/workspace/observe.js.map +1 -1
  220. package/dist/src/modules/workspace/reconcile.d.ts +58 -7
  221. package/dist/src/modules/workspace/reconcile.d.ts.map +1 -1
  222. package/dist/src/modules/workspace/reconcile.js +521 -56
  223. package/dist/src/modules/workspace/reconcile.js.map +1 -1
  224. package/dist/src/modules/workspace/types.d.ts +28 -5
  225. package/dist/src/modules/workspace/types.d.ts.map +1 -1
  226. package/dist/src/modules/workspace/types.js.map +1 -1
  227. package/dist/src/modules/workspace/watcher.d.ts +49 -2
  228. package/dist/src/modules/workspace/watcher.d.ts.map +1 -1
  229. package/dist/src/modules/workspace/watcher.js +158 -29
  230. package/dist/src/modules/workspace/watcher.js.map +1 -1
  231. package/dist/src/prose-drafts.d.ts +240 -0
  232. package/dist/src/prose-drafts.d.ts.map +1 -0
  233. package/dist/src/prose-drafts.js +362 -0
  234. package/dist/src/prose-drafts.js.map +1 -0
  235. package/dist/src/prose-segments.d.ts +21 -2
  236. package/dist/src/prose-segments.d.ts.map +1 -1
  237. package/dist/src/prose-segments.js +46 -9
  238. package/dist/src/prose-segments.js.map +1 -1
  239. package/dist/src/recovery/offline-branch.d.ts +1 -0
  240. package/dist/src/recovery/offline-branch.d.ts.map +1 -1
  241. package/dist/src/recovery/offline-branch.js +3 -1
  242. package/dist/src/recovery/offline-branch.js.map +1 -1
  243. package/dist/src/safe-slice.d.ts +5 -1
  244. package/dist/src/safe-slice.d.ts.map +1 -1
  245. package/dist/src/safe-slice.js +9 -1
  246. package/dist/src/safe-slice.js.map +1 -1
  247. package/dist/src/silent-heartbeat.d.ts +112 -39
  248. package/dist/src/silent-heartbeat.d.ts.map +1 -1
  249. package/dist/src/silent-heartbeat.js +100 -29
  250. package/dist/src/silent-heartbeat.js.map +1 -1
  251. package/dist/src/tool-args.d.ts +40 -0
  252. package/dist/src/tool-args.d.ts.map +1 -0
  253. package/dist/src/tool-args.js +207 -0
  254. package/dist/src/tool-args.js.map +1 -0
  255. package/dist/src/tool-image-ledger.d.ts +87 -19
  256. package/dist/src/tool-image-ledger.d.ts.map +1 -1
  257. package/dist/src/tool-image-ledger.js +135 -32
  258. package/dist/src/tool-image-ledger.js.map +1 -1
  259. package/dist/src/tool-presentation.d.ts +9 -0
  260. package/dist/src/tool-presentation.d.ts.map +1 -1
  261. package/dist/src/tool-presentation.js +266 -62
  262. package/dist/src/tool-presentation.js.map +1 -1
  263. package/dist/src/tool-result-guard.d.ts.map +1 -1
  264. package/dist/src/tool-result-guard.js +7 -10
  265. package/dist/src/tool-result-guard.js.map +1 -1
  266. package/dist/src/tool-result-history.d.ts +32 -3
  267. package/dist/src/tool-result-history.d.ts.map +1 -1
  268. package/dist/src/tool-result-history.js +106 -19
  269. package/dist/src/tool-result-history.js.map +1 -1
  270. package/dist/src/tune-out/coordinator.d.ts +25 -1
  271. package/dist/src/tune-out/coordinator.d.ts.map +1 -1
  272. package/dist/src/tune-out/coordinator.js +260 -65
  273. package/dist/src/tune-out/coordinator.js.map +1 -1
  274. package/dist/src/types/agent.d.ts +44 -22
  275. package/dist/src/types/agent.d.ts.map +1 -1
  276. package/dist/src/types/events.d.ts +25 -0
  277. package/dist/src/types/events.d.ts.map +1 -1
  278. package/dist/src/types/framework.d.ts +38 -7
  279. package/dist/src/types/framework.d.ts.map +1 -1
  280. package/dist/src/types/inference-log.d.ts +1 -1
  281. package/dist/src/types/inference-log.d.ts.map +1 -1
  282. package/dist/src/types/module.d.ts +77 -14
  283. package/dist/src/types/module.d.ts.map +1 -1
  284. package/dist/src/types/trace.d.ts +97 -8
  285. package/dist/src/types/trace.d.ts.map +1 -1
  286. package/dist/src/usage/usage-tracker.d.ts +5 -0
  287. package/dist/src/usage/usage-tracker.d.ts.map +1 -1
  288. package/dist/src/usage/usage-tracker.js +35 -8
  289. package/dist/src/usage/usage-tracker.js.map +1 -1
  290. package/package.json +5 -4
  291. package/src/agent.ts +257 -72
  292. package/src/api/mcp-server-core.ts +1 -1
  293. package/src/api/server.ts +4 -1
  294. package/src/api/types.ts +1 -1
  295. package/src/branch-names.ts +19 -0
  296. package/src/closest-names.ts +94 -0
  297. package/src/code-execution/index.ts +1 -0
  298. package/src/code-execution/py-runner.ts +304 -93
  299. package/src/code-execution/runtime-py.ts +94 -8
  300. package/src/code-execution/tool-definition.ts +85 -7
  301. package/src/config-checks.ts +50 -0
  302. package/src/deadline-timer.ts +44 -0
  303. package/src/error-message.ts +48 -0
  304. package/src/framework.ts +8625 -1984
  305. package/src/gate/event-gate.ts +38 -5
  306. package/src/held-writes.ts +59 -0
  307. package/src/index.ts +29 -5
  308. package/src/mcpl/capability-grant.ts +1 -1
  309. package/src/mcpl/channel-registry.ts +1095 -411
  310. package/src/mcpl/checkpoint-manager.ts +104 -29
  311. package/src/mcpl/conversation-router.ts +28 -8
  312. package/src/mcpl/convert-block.ts +105 -0
  313. package/src/mcpl/errors.ts +28 -0
  314. package/src/mcpl/hook-orchestrator.ts +84 -77
  315. package/src/mcpl/inbound-source.ts +156 -0
  316. package/src/mcpl/index.ts +23 -1
  317. package/src/mcpl/inference-router.ts +179 -103
  318. package/src/mcpl/log-value.ts +10 -0
  319. package/src/mcpl/modern-connection.ts +1182 -0
  320. package/src/mcpl/prefix-rule.ts +32 -0
  321. package/src/mcpl/protocol-family.ts +691 -0
  322. package/src/mcpl/push-coalescer.ts +110 -36
  323. package/src/mcpl/push-handler.ts +20 -90
  324. package/src/mcpl/reference-fetcher.ts +318 -67
  325. package/src/mcpl/references.ts +183 -34
  326. package/src/mcpl/server-connection.ts +1404 -280
  327. package/src/mcpl/server-registry.ts +63 -14
  328. package/src/mcpl/skip-reply-wake.ts +73 -0
  329. package/src/mcpl/tool-result-normalize.ts +294 -0
  330. package/src/mcpl/transport.ts +320 -76
  331. package/src/mcpl/types.ts +77 -19
  332. package/src/mcpl/visible-content.ts +28 -0
  333. package/src/module-registry.ts +126 -36
  334. package/src/modules/api/index.ts +3 -2
  335. package/src/modules/discord/discord-js-client.ts +306 -74
  336. package/src/modules/discord/index.ts +737 -201
  337. package/src/modules/discord/refusal.ts +13 -0
  338. package/src/modules/discord/types.ts +27 -6
  339. package/src/modules/health/index.ts +8 -3
  340. package/src/modules/history/index.ts +410 -120
  341. package/src/modules/history/semantic.ts +189 -32
  342. package/src/modules/index.ts +1 -1
  343. package/src/modules/unknown-tool.ts +16 -0
  344. package/src/modules/workspace/disk-agreement.ts +97 -8
  345. package/src/modules/workspace/effects.ts +291 -36
  346. package/src/modules/workspace/index.ts +1469 -321
  347. package/src/modules/workspace/observe.ts +784 -41
  348. package/src/modules/workspace/reconcile.ts +619 -64
  349. package/src/modules/workspace/types.ts +28 -5
  350. package/src/modules/workspace/watcher.ts +154 -30
  351. package/src/prose-drafts.ts +481 -0
  352. package/src/prose-segments.ts +51 -8
  353. package/src/recovery/offline-branch.ts +4 -1
  354. package/src/safe-slice.ts +9 -1
  355. package/src/silent-heartbeat.ts +184 -59
  356. package/src/tool-args.ts +213 -0
  357. package/src/tool-image-ledger.ts +153 -34
  358. package/src/tool-presentation.ts +233 -42
  359. package/src/tool-result-guard.ts +7 -8
  360. package/src/tool-result-history.ts +124 -20
  361. package/src/tune-out/coordinator.ts +259 -65
  362. package/src/types/agent.ts +44 -24
  363. package/src/types/events.ts +25 -0
  364. package/src/types/framework.ts +38 -7
  365. package/src/types/inference-log.ts +1 -1
  366. package/src/types/module.ts +79 -14
  367. package/src/types/trace.ts +103 -8
  368. package/src/usage/usage-tracker.ts +32 -8
  369. package/dist/test/activation-request-sanitize.test.d.ts +0 -2
  370. package/dist/test/activation-request-sanitize.test.d.ts.map +0 -1
  371. package/dist/test/activation-request-sanitize.test.js +0 -89
  372. package/dist/test/activation-request-sanitize.test.js.map +0 -1
  373. package/dist/test/agent-cache-ttl.test.d.ts +0 -2
  374. package/dist/test/agent-cache-ttl.test.d.ts.map +0 -1
  375. package/dist/test/agent-cache-ttl.test.js +0 -41
  376. package/dist/test/agent-cache-ttl.test.js.map +0 -1
  377. package/dist/test/agent-runtime-settings.test.d.ts +0 -2
  378. package/dist/test/agent-runtime-settings.test.d.ts.map +0 -1
  379. package/dist/test/agent-runtime-settings.test.js +0 -1598
  380. package/dist/test/agent-runtime-settings.test.js.map +0 -1
  381. package/dist/test/api-admin-gate.test.d.ts +0 -2
  382. package/dist/test/api-admin-gate.test.d.ts.map +0 -1
  383. package/dist/test/api-admin-gate.test.js +0 -116
  384. package/dist/test/api-admin-gate.test.js.map +0 -1
  385. package/dist/test/assistant-persist-refusal.test.d.ts +0 -2
  386. package/dist/test/assistant-persist-refusal.test.d.ts.map +0 -1
  387. package/dist/test/assistant-persist-refusal.test.js +0 -63
  388. package/dist/test/assistant-persist-refusal.test.js.map +0 -1
  389. package/dist/test/batched-wake-locus.test.d.ts +0 -2
  390. package/dist/test/batched-wake-locus.test.d.ts.map +0 -1
  391. package/dist/test/batched-wake-locus.test.js +0 -166
  392. package/dist/test/batched-wake-locus.test.js.map +0 -1
  393. package/dist/test/busy-agent-scheduler.test.d.ts +0 -2
  394. package/dist/test/busy-agent-scheduler.test.d.ts.map +0 -1
  395. package/dist/test/busy-agent-scheduler.test.js +0 -92
  396. package/dist/test/busy-agent-scheduler.test.js.map +0 -1
  397. package/dist/test/channel-incoming-targeting.test.d.ts +0 -2
  398. package/dist/test/channel-incoming-targeting.test.d.ts.map +0 -1
  399. package/dist/test/channel-incoming-targeting.test.js +0 -81
  400. package/dist/test/channel-incoming-targeting.test.js.map +0 -1
  401. package/dist/test/channel-label-history.test.d.ts +0 -2
  402. package/dist/test/channel-label-history.test.d.ts.map +0 -1
  403. package/dist/test/channel-label-history.test.js +0 -424
  404. package/dist/test/channel-label-history.test.js.map +0 -1
  405. package/dist/test/channel-lifecycle-provenance.test.d.ts +0 -2
  406. package/dist/test/channel-lifecycle-provenance.test.d.ts.map +0 -1
  407. package/dist/test/channel-lifecycle-provenance.test.js +0 -47
  408. package/dist/test/channel-lifecycle-provenance.test.js.map +0 -1
  409. package/dist/test/channel-registry-routing.test.d.ts +0 -2
  410. package/dist/test/channel-registry-routing.test.d.ts.map +0 -1
  411. package/dist/test/channel-registry-routing.test.js +0 -446
  412. package/dist/test/channel-registry-routing.test.js.map +0 -1
  413. package/dist/test/channel-registry-typing.test.d.ts +0 -2
  414. package/dist/test/channel-registry-typing.test.d.ts.map +0 -1
  415. package/dist/test/channel-registry-typing.test.js +0 -91
  416. package/dist/test/channel-registry-typing.test.js.map +0 -1
  417. package/dist/test/channels-changed-respond-first.test.d.ts +0 -2
  418. package/dist/test/channels-changed-respond-first.test.d.ts.map +0 -1
  419. package/dist/test/channels-changed-respond-first.test.js +0 -74
  420. package/dist/test/channels-changed-respond-first.test.js.map +0 -1
  421. package/dist/test/checkpoint-attribution.test.d.ts +0 -2
  422. package/dist/test/checkpoint-attribution.test.d.ts.map +0 -1
  423. package/dist/test/checkpoint-attribution.test.js +0 -200
  424. package/dist/test/checkpoint-attribution.test.js.map +0 -1
  425. package/dist/test/code-execution.test.d.ts +0 -11
  426. package/dist/test/code-execution.test.d.ts.map +0 -1
  427. package/dist/test/code-execution.test.js +0 -1272
  428. package/dist/test/code-execution.test.js.map +0 -1
  429. package/dist/test/component-defaults.test.d.ts +0 -2
  430. package/dist/test/component-defaults.test.d.ts.map +0 -1
  431. package/dist/test/component-defaults.test.js +0 -54
  432. package/dist/test/component-defaults.test.js.map +0 -1
  433. package/dist/test/conversation-fork-injection-scoping.test.d.ts +0 -2
  434. package/dist/test/conversation-fork-injection-scoping.test.d.ts.map +0 -1
  435. package/dist/test/conversation-fork-injection-scoping.test.js +0 -200
  436. package/dist/test/conversation-fork-injection-scoping.test.js.map +0 -1
  437. package/dist/test/conversation-router.test.d.ts +0 -2
  438. package/dist/test/conversation-router.test.d.ts.map +0 -1
  439. package/dist/test/conversation-router.test.js +0 -174
  440. package/dist/test/conversation-router.test.js.map +0 -1
  441. package/dist/test/conversation-routing.test.d.ts +0 -7
  442. package/dist/test/conversation-routing.test.d.ts.map +0 -1
  443. package/dist/test/conversation-routing.test.js +0 -621
  444. package/dist/test/conversation-routing.test.js.map +0 -1
  445. package/dist/test/deferred-wake-integrity.test.d.ts +0 -29
  446. package/dist/test/deferred-wake-integrity.test.d.ts.map +0 -1
  447. package/dist/test/deferred-wake-integrity.test.js +0 -320
  448. package/dist/test/deferred-wake-integrity.test.js.map +0 -1
  449. package/dist/test/discord-awareness-outbox.test.d.ts +0 -2
  450. package/dist/test/discord-awareness-outbox.test.d.ts.map +0 -1
  451. package/dist/test/discord-awareness-outbox.test.js +0 -371
  452. package/dist/test/discord-awareness-outbox.test.js.map +0 -1
  453. package/dist/test/discord-history-delete-window.test.d.ts +0 -2
  454. package/dist/test/discord-history-delete-window.test.d.ts.map +0 -1
  455. package/dist/test/discord-history-delete-window.test.js +0 -81
  456. package/dist/test/discord-history-delete-window.test.js.map +0 -1
  457. package/dist/test/discord-history-sync.test.d.ts +0 -2
  458. package/dist/test/discord-history-sync.test.d.ts.map +0 -1
  459. package/dist/test/discord-history-sync.test.js +0 -56
  460. package/dist/test/discord-history-sync.test.js.map +0 -1
  461. package/dist/test/discord-typing-keepalive.test.d.ts +0 -2
  462. package/dist/test/discord-typing-keepalive.test.d.ts.map +0 -1
  463. package/dist/test/discord-typing-keepalive.test.js +0 -77
  464. package/dist/test/discord-typing-keepalive.test.js.map +0 -1
  465. package/dist/test/ephemeral-settle.test.d.ts +0 -2
  466. package/dist/test/ephemeral-settle.test.d.ts.map +0 -1
  467. package/dist/test/ephemeral-settle.test.js +0 -354
  468. package/dist/test/ephemeral-settle.test.js.map +0 -1
  469. package/dist/test/event-gate-passthrough.test.d.ts +0 -15
  470. package/dist/test/event-gate-passthrough.test.d.ts.map +0 -1
  471. package/dist/test/event-gate-passthrough.test.js +0 -289
  472. package/dist/test/event-gate-passthrough.test.js.map +0 -1
  473. package/dist/test/event-gate-policy-mutation.test.d.ts +0 -2
  474. package/dist/test/event-gate-policy-mutation.test.d.ts.map +0 -1
  475. package/dist/test/event-gate-policy-mutation.test.js +0 -137
  476. package/dist/test/event-gate-policy-mutation.test.js.map +0 -1
  477. package/dist/test/event-gate-rate-limit.test.d.ts +0 -2
  478. package/dist/test/event-gate-rate-limit.test.d.ts.map +0 -1
  479. package/dist/test/event-gate-rate-limit.test.js +0 -627
  480. package/dist/test/event-gate-rate-limit.test.js.map +0 -1
  481. package/dist/test/event-gate-script.test.d.ts +0 -2
  482. package/dist/test/event-gate-script.test.d.ts.map +0 -1
  483. package/dist/test/event-gate-script.test.js +0 -95
  484. package/dist/test/event-gate-script.test.js.map +0 -1
  485. package/dist/test/event-gate-selfwake.test.d.ts +0 -15
  486. package/dist/test/event-gate-selfwake.test.d.ts.map +0 -1
  487. package/dist/test/event-gate-selfwake.test.js +0 -125
  488. package/dist/test/event-gate-selfwake.test.js.map +0 -1
  489. package/dist/test/event-gate-tags.test.d.ts +0 -2
  490. package/dist/test/event-gate-tags.test.d.ts.map +0 -1
  491. package/dist/test/event-gate-tags.test.js +0 -76
  492. package/dist/test/event-gate-tags.test.js.map +0 -1
  493. package/dist/test/event-gate.test.d.ts +0 -2
  494. package/dist/test/event-gate.test.d.ts.map +0 -1
  495. package/dist/test/event-gate.test.js +0 -919
  496. package/dist/test/event-gate.test.js.map +0 -1
  497. package/dist/test/explicit-prose-routing.test.d.ts +0 -11
  498. package/dist/test/explicit-prose-routing.test.d.ts.map +0 -1
  499. package/dist/test/explicit-prose-routing.test.js +0 -1715
  500. package/dist/test/explicit-prose-routing.test.js.map +0 -1
  501. package/dist/test/framework.test.d.ts +0 -5
  502. package/dist/test/framework.test.d.ts.map +0 -1
  503. package/dist/test/framework.test.js +0 -1048
  504. package/dist/test/framework.test.js.map +0 -1
  505. package/dist/test/gather-context-timeout.test.d.ts +0 -2
  506. package/dist/test/gather-context-timeout.test.d.ts.map +0 -1
  507. package/dist/test/gather-context-timeout.test.js +0 -120
  508. package/dist/test/gather-context-timeout.test.js.map +0 -1
  509. package/dist/test/health-snapshot.test.d.ts +0 -2
  510. package/dist/test/health-snapshot.test.d.ts.map +0 -1
  511. package/dist/test/health-snapshot.test.js +0 -74
  512. package/dist/test/health-snapshot.test.js.map +0 -1
  513. package/dist/test/helpers/coalescing-fixture.d.ts +0 -74
  514. package/dist/test/helpers/coalescing-fixture.d.ts.map +0 -1
  515. package/dist/test/helpers/coalescing-fixture.js +0 -152
  516. package/dist/test/helpers/coalescing-fixture.js.map +0 -1
  517. package/dist/test/helpers/coalescing-kill-child.d.ts +0 -2
  518. package/dist/test/helpers/coalescing-kill-child.d.ts.map +0 -1
  519. package/dist/test/helpers/coalescing-kill-child.js +0 -24
  520. package/dist/test/helpers/coalescing-kill-child.js.map +0 -1
  521. package/dist/test/helpers/mock-membrane.d.ts +0 -53
  522. package/dist/test/helpers/mock-membrane.d.ts.map +0 -1
  523. package/dist/test/helpers/mock-membrane.js +0 -168
  524. package/dist/test/helpers/mock-membrane.js.map +0 -1
  525. package/dist/test/helpers/pytc-stop-rows.d.ts +0 -11
  526. package/dist/test/helpers/pytc-stop-rows.d.ts.map +0 -1
  527. package/dist/test/helpers/pytc-stop-rows.js +0 -143
  528. package/dist/test/helpers/pytc-stop-rows.js.map +0 -1
  529. package/dist/test/helpers/quiesce-crash-child.d.ts +0 -2
  530. package/dist/test/helpers/quiesce-crash-child.d.ts.map +0 -1
  531. package/dist/test/helpers/quiesce-crash-child.js +0 -156
  532. package/dist/test/helpers/quiesce-crash-child.js.map +0 -1
  533. package/dist/test/hide-then-turn.test.d.ts +0 -2
  534. package/dist/test/hide-then-turn.test.d.ts.map +0 -1
  535. package/dist/test/hide-then-turn.test.js +0 -101
  536. package/dist/test/hide-then-turn.test.js.map +0 -1
  537. package/dist/test/history-module-overview.test.d.ts +0 -2
  538. package/dist/test/history-module-overview.test.d.ts.map +0 -1
  539. package/dist/test/history-module-overview.test.js +0 -711
  540. package/dist/test/history-module-overview.test.js.map +0 -1
  541. package/dist/test/history-module-realstore.test.d.ts +0 -2
  542. package/dist/test/history-module-realstore.test.d.ts.map +0 -1
  543. package/dist/test/history-module-realstore.test.js +0 -363
  544. package/dist/test/history-module-realstore.test.js.map +0 -1
  545. package/dist/test/history-module-semantic.test.d.ts +0 -2
  546. package/dist/test/history-module-semantic.test.d.ts.map +0 -1
  547. package/dist/test/history-module-semantic.test.js +0 -213
  548. package/dist/test/history-module-semantic.test.js.map +0 -1
  549. package/dist/test/history-module-ux.test.d.ts +0 -2
  550. package/dist/test/history-module-ux.test.d.ts.map +0 -1
  551. package/dist/test/history-module-ux.test.js +0 -304
  552. package/dist/test/history-module-ux.test.js.map +0 -1
  553. package/dist/test/history-module.test.d.ts +0 -2
  554. package/dist/test/history-module.test.d.ts.map +0 -1
  555. package/dist/test/history-module.test.js +0 -619
  556. package/dist/test/history-module.test.js.map +0 -1
  557. package/dist/test/history-semantic-review-findings.test.d.ts +0 -2
  558. package/dist/test/history-semantic-review-findings.test.d.ts.map +0 -1
  559. package/dist/test/history-semantic-review-findings.test.js +0 -338
  560. package/dist/test/history-semantic-review-findings.test.js.map +0 -1
  561. package/dist/test/history-semantic-sync-converges.test.d.ts +0 -2
  562. package/dist/test/history-semantic-sync-converges.test.d.ts.map +0 -1
  563. package/dist/test/history-semantic-sync-converges.test.js +0 -109
  564. package/dist/test/history-semantic-sync-converges.test.js.map +0 -1
  565. package/dist/test/host-quiesce.test.d.ts +0 -2
  566. package/dist/test/host-quiesce.test.d.ts.map +0 -1
  567. package/dist/test/host-quiesce.test.js +0 -988
  568. package/dist/test/host-quiesce.test.js.map +0 -1
  569. package/dist/test/inference-exhaustion-rewind.test.d.ts +0 -2
  570. package/dist/test/inference-exhaustion-rewind.test.d.ts.map +0 -1
  571. package/dist/test/inference-exhaustion-rewind.test.js +0 -387
  572. package/dist/test/inference-exhaustion-rewind.test.js.map +0 -1
  573. package/dist/test/inference-failure-bounds.test.d.ts +0 -2
  574. package/dist/test/inference-failure-bounds.test.d.ts.map +0 -1
  575. package/dist/test/inference-failure-bounds.test.js +0 -1202
  576. package/dist/test/inference-failure-bounds.test.js.map +0 -1
  577. package/dist/test/inference-failure-observability.test.d.ts +0 -2
  578. package/dist/test/inference-failure-observability.test.d.ts.map +0 -1
  579. package/dist/test/inference-failure-observability.test.js +0 -84
  580. package/dist/test/inference-failure-observability.test.js.map +0 -1
  581. package/dist/test/journal-tool.test.d.ts +0 -2
  582. package/dist/test/journal-tool.test.d.ts.map +0 -1
  583. package/dist/test/journal-tool.test.js +0 -33
  584. package/dist/test/journal-tool.test.js.map +0 -1
  585. package/dist/test/kv-unified-open-flight-retry.test.d.ts +0 -2
  586. package/dist/test/kv-unified-open-flight-retry.test.d.ts.map +0 -1
  587. package/dist/test/kv-unified-open-flight-retry.test.js +0 -189
  588. package/dist/test/kv-unified-open-flight-retry.test.js.map +0 -1
  589. package/dist/test/kv-unified-wiring.test.d.ts +0 -2
  590. package/dist/test/kv-unified-wiring.test.d.ts.map +0 -1
  591. package/dist/test/kv-unified-wiring.test.js +0 -95
  592. package/dist/test/kv-unified-wiring.test.js.map +0 -1
  593. package/dist/test/late-events-after-stop.test.d.ts +0 -2
  594. package/dist/test/late-events-after-stop.test.d.ts.map +0 -1
  595. package/dist/test/late-events-after-stop.test.js +0 -122
  596. package/dist/test/late-events-after-stop.test.js.map +0 -1
  597. package/dist/test/liveness-watchdog.test.d.ts +0 -2
  598. package/dist/test/liveness-watchdog.test.d.ts.map +0 -1
  599. package/dist/test/liveness-watchdog.test.js +0 -94
  600. package/dist/test/liveness-watchdog.test.js.map +0 -1
  601. package/dist/test/machine-close-provenance.test.d.ts +0 -2
  602. package/dist/test/machine-close-provenance.test.d.ts.map +0 -1
  603. package/dist/test/machine-close-provenance.test.js +0 -116
  604. package/dist/test/machine-close-provenance.test.js.map +0 -1
  605. package/dist/test/maintenance-timer.test.d.ts +0 -2
  606. package/dist/test/maintenance-timer.test.d.ts.map +0 -1
  607. package/dist/test/maintenance-timer.test.js +0 -1827
  608. package/dist/test/maintenance-timer.test.js.map +0 -1
  609. package/dist/test/mcp-server-bin.test.d.ts +0 -2
  610. package/dist/test/mcp-server-bin.test.d.ts.map +0 -1
  611. package/dist/test/mcp-server-bin.test.js +0 -142
  612. package/dist/test/mcp-server-bin.test.js.map +0 -1
  613. package/dist/test/mcpl-access-provider.test.d.ts +0 -2
  614. package/dist/test/mcpl-access-provider.test.d.ts.map +0 -1
  615. package/dist/test/mcpl-access-provider.test.js +0 -20
  616. package/dist/test/mcpl-access-provider.test.js.map +0 -1
  617. package/dist/test/mcpl-awareness-barrier.test.d.ts +0 -2
  618. package/dist/test/mcpl-awareness-barrier.test.d.ts.map +0 -1
  619. package/dist/test/mcpl-awareness-barrier.test.js +0 -769
  620. package/dist/test/mcpl-awareness-barrier.test.js.map +0 -1
  621. package/dist/test/mcpl-capability-grant.test.d.ts +0 -10
  622. package/dist/test/mcpl-capability-grant.test.d.ts.map +0 -1
  623. package/dist/test/mcpl-capability-grant.test.js +0 -111
  624. package/dist/test/mcpl-capability-grant.test.js.map +0 -1
  625. package/dist/test/mcpl-capability-scoping.test.d.ts +0 -2
  626. package/dist/test/mcpl-capability-scoping.test.d.ts.map +0 -1
  627. package/dist/test/mcpl-capability-scoping.test.js +0 -266
  628. package/dist/test/mcpl-capability-scoping.test.js.map +0 -1
  629. package/dist/test/mcpl-child-env.test.d.ts +0 -2
  630. package/dist/test/mcpl-child-env.test.d.ts.map +0 -1
  631. package/dist/test/mcpl-child-env.test.js +0 -158
  632. package/dist/test/mcpl-child-env.test.js.map +0 -1
  633. package/dist/test/mcpl-coalesced-content-parity.test.d.ts +0 -2
  634. package/dist/test/mcpl-coalesced-content-parity.test.d.ts.map +0 -1
  635. package/dist/test/mcpl-coalesced-content-parity.test.js +0 -532
  636. package/dist/test/mcpl-coalesced-content-parity.test.js.map +0 -1
  637. package/dist/test/mcpl-coalescing.test.d.ts +0 -2
  638. package/dist/test/mcpl-coalescing.test.d.ts.map +0 -1
  639. package/dist/test/mcpl-coalescing.test.js +0 -1125
  640. package/dist/test/mcpl-coalescing.test.js.map +0 -1
  641. package/dist/test/mcpl-config-diagnostics.test.d.ts +0 -2
  642. package/dist/test/mcpl-config-diagnostics.test.d.ts.map +0 -1
  643. package/dist/test/mcpl-config-diagnostics.test.js +0 -452
  644. package/dist/test/mcpl-config-diagnostics.test.js.map +0 -1
  645. package/dist/test/mcpl-empty-content.test.d.ts +0 -2
  646. package/dist/test/mcpl-empty-content.test.d.ts.map +0 -1
  647. package/dist/test/mcpl-empty-content.test.js +0 -368
  648. package/dist/test/mcpl-empty-content.test.js.map +0 -1
  649. package/dist/test/mcpl-gate-roundtrip.test.d.ts +0 -2
  650. package/dist/test/mcpl-gate-roundtrip.test.d.ts.map +0 -1
  651. package/dist/test/mcpl-gate-roundtrip.test.js +0 -285
  652. package/dist/test/mcpl-gate-roundtrip.test.js.map +0 -1
  653. package/dist/test/mcpl-list-status.test.d.ts +0 -2
  654. package/dist/test/mcpl-list-status.test.d.ts.map +0 -1
  655. package/dist/test/mcpl-list-status.test.js +0 -82
  656. package/dist/test/mcpl-list-status.test.js.map +0 -1
  657. package/dist/test/mcpl-manifest-changed.test.d.ts +0 -2
  658. package/dist/test/mcpl-manifest-changed.test.d.ts.map +0 -1
  659. package/dist/test/mcpl-manifest-changed.test.js +0 -178
  660. package/dist/test/mcpl-manifest-changed.test.js.map +0 -1
  661. package/dist/test/mcpl-push-convert.test.d.ts +0 -2
  662. package/dist/test/mcpl-push-convert.test.d.ts.map +0 -1
  663. package/dist/test/mcpl-push-convert.test.js +0 -42
  664. package/dist/test/mcpl-push-convert.test.js.map +0 -1
  665. package/dist/test/mcpl-reconnect-events.test.d.ts +0 -2
  666. package/dist/test/mcpl-reconnect-events.test.d.ts.map +0 -1
  667. package/dist/test/mcpl-reconnect-events.test.js +0 -144
  668. package/dist/test/mcpl-reconnect-events.test.js.map +0 -1
  669. package/dist/test/mcpl-reconnect-reregistration.test.d.ts +0 -2
  670. package/dist/test/mcpl-reconnect-reregistration.test.d.ts.map +0 -1
  671. package/dist/test/mcpl-reconnect-reregistration.test.js +0 -238
  672. package/dist/test/mcpl-reconnect-reregistration.test.js.map +0 -1
  673. package/dist/test/mcpl-reference-fetcher.test.d.ts +0 -2
  674. package/dist/test/mcpl-reference-fetcher.test.d.ts.map +0 -1
  675. package/dist/test/mcpl-reference-fetcher.test.js +0 -427
  676. package/dist/test/mcpl-reference-fetcher.test.js.map +0 -1
  677. package/dist/test/mcpl-reference-fields.test.d.ts +0 -2
  678. package/dist/test/mcpl-reference-fields.test.d.ts.map +0 -1
  679. package/dist/test/mcpl-reference-fields.test.js +0 -149
  680. package/dist/test/mcpl-reference-fields.test.js.map +0 -1
  681. package/dist/test/mcpl-rejection-log-lines.test.d.ts +0 -2
  682. package/dist/test/mcpl-rejection-log-lines.test.d.ts.map +0 -1
  683. package/dist/test/mcpl-rejection-log-lines.test.js +0 -349
  684. package/dist/test/mcpl-rejection-log-lines.test.js.map +0 -1
  685. package/dist/test/mcpl-request-timeout.test.d.ts +0 -2
  686. package/dist/test/mcpl-request-timeout.test.d.ts.map +0 -1
  687. package/dist/test/mcpl-request-timeout.test.js +0 -138
  688. package/dist/test/mcpl-request-timeout.test.js.map +0 -1
  689. package/dist/test/mcpl-runtime-lifecycle.test.d.ts +0 -7
  690. package/dist/test/mcpl-runtime-lifecycle.test.d.ts.map +0 -1
  691. package/dist/test/mcpl-runtime-lifecycle.test.js +0 -142
  692. package/dist/test/mcpl-runtime-lifecycle.test.js.map +0 -1
  693. package/dist/test/mcpl-stderr-tail.test.d.ts +0 -2
  694. package/dist/test/mcpl-stderr-tail.test.d.ts.map +0 -1
  695. package/dist/test/mcpl-stderr-tail.test.js +0 -210
  696. package/dist/test/mcpl-stderr-tail.test.js.map +0 -1
  697. package/dist/test/mcpl-tool-class-listing.test.d.ts +0 -2
  698. package/dist/test/mcpl-tool-class-listing.test.d.ts.map +0 -1
  699. package/dist/test/mcpl-tool-class-listing.test.js +0 -147
  700. package/dist/test/mcpl-tool-class-listing.test.js.map +0 -1
  701. package/dist/test/mcpl-tool-classes.test.d.ts +0 -7
  702. package/dist/test/mcpl-tool-classes.test.d.ts.map +0 -1
  703. package/dist/test/mcpl-tool-classes.test.js +0 -80
  704. package/dist/test/mcpl-tool-classes.test.js.map +0 -1
  705. package/dist/test/mcpl-tool-lifecycle-e2e.test.d.ts +0 -2
  706. package/dist/test/mcpl-tool-lifecycle-e2e.test.d.ts.map +0 -1
  707. package/dist/test/mcpl-tool-lifecycle-e2e.test.js +0 -237
  708. package/dist/test/mcpl-tool-lifecycle-e2e.test.js.map +0 -1
  709. package/dist/test/mcpl-tool-lifecycle-emitter.test.d.ts +0 -11
  710. package/dist/test/mcpl-tool-lifecycle-emitter.test.d.ts.map +0 -1
  711. package/dist/test/mcpl-tool-lifecycle-emitter.test.js +0 -412
  712. package/dist/test/mcpl-tool-lifecycle-emitter.test.js.map +0 -1
  713. package/dist/test/mcpl-tool-lifecycle-script.test.d.ts +0 -2
  714. package/dist/test/mcpl-tool-lifecycle-script.test.d.ts.map +0 -1
  715. package/dist/test/mcpl-tool-lifecycle-script.test.js +0 -288
  716. package/dist/test/mcpl-tool-lifecycle-script.test.js.map +0 -1
  717. package/dist/test/mcpl-tool-lifecycle.test.d.ts +0 -11
  718. package/dist/test/mcpl-tool-lifecycle.test.d.ts.map +0 -1
  719. package/dist/test/mcpl-tool-lifecycle.test.js +0 -270
  720. package/dist/test/mcpl-tool-lifecycle.test.js.map +0 -1
  721. package/dist/test/mcpl-transport-close.test.d.ts +0 -2
  722. package/dist/test/mcpl-transport-close.test.d.ts.map +0 -1
  723. package/dist/test/mcpl-transport-close.test.js +0 -373
  724. package/dist/test/mcpl-transport-close.test.js.map +0 -1
  725. package/dist/test/mcpl-transport-spawn.test.d.ts +0 -2
  726. package/dist/test/mcpl-transport-spawn.test.d.ts.map +0 -1
  727. package/dist/test/mcpl-transport-spawn.test.js +0 -58
  728. package/dist/test/mcpl-transport-spawn.test.js.map +0 -1
  729. package/dist/test/mcpl-ws-transport.test.d.ts +0 -2
  730. package/dist/test/mcpl-ws-transport.test.d.ts.map +0 -1
  731. package/dist/test/mcpl-ws-transport.test.js +0 -259
  732. package/dist/test/mcpl-ws-transport.test.js.map +0 -1
  733. package/dist/test/module-context-integration.test.d.ts +0 -18
  734. package/dist/test/module-context-integration.test.d.ts.map +0 -1
  735. package/dist/test/module-context-integration.test.js +0 -181
  736. package/dist/test/module-context-integration.test.js.map +0 -1
  737. package/dist/test/offline-recovery-branch.test.d.ts +0 -2
  738. package/dist/test/offline-recovery-branch.test.d.ts.map +0 -1
  739. package/dist/test/offline-recovery-branch.test.js +0 -570
  740. package/dist/test/offline-recovery-branch.test.js.map +0 -1
  741. package/dist/test/operator-surgery.test.d.ts +0 -2
  742. package/dist/test/operator-surgery.test.d.ts.map +0 -1
  743. package/dist/test/operator-surgery.test.js +0 -595
  744. package/dist/test/operator-surgery.test.js.map +0 -1
  745. package/dist/test/ops-alert.test.d.ts +0 -2
  746. package/dist/test/ops-alert.test.d.ts.map +0 -1
  747. package/dist/test/ops-alert.test.js +0 -153
  748. package/dist/test/ops-alert.test.js.map +0 -1
  749. package/dist/test/overbudget-drain-breaker.test.d.ts +0 -2
  750. package/dist/test/overbudget-drain-breaker.test.d.ts.map +0 -1
  751. package/dist/test/overbudget-drain-breaker.test.js +0 -198
  752. package/dist/test/overbudget-drain-breaker.test.js.map +0 -1
  753. package/dist/test/pack-installs-alone.test.d.ts +0 -2
  754. package/dist/test/pack-installs-alone.test.d.ts.map +0 -1
  755. package/dist/test/pack-installs-alone.test.js +0 -284
  756. package/dist/test/pack-installs-alone.test.js.map +0 -1
  757. package/dist/test/per-agent-delivery.test.d.ts +0 -2
  758. package/dist/test/per-agent-delivery.test.d.ts.map +0 -1
  759. package/dist/test/per-agent-delivery.test.js +0 -108
  760. package/dist/test/per-agent-delivery.test.js.map +0 -1
  761. package/dist/test/physical-window-restart.test.d.ts +0 -16
  762. package/dist/test/physical-window-restart.test.d.ts.map +0 -1
  763. package/dist/test/physical-window-restart.test.js +0 -487
  764. package/dist/test/physical-window-restart.test.js.map +0 -1
  765. package/dist/test/placed-reaction-baseline.test.d.ts +0 -2
  766. package/dist/test/placed-reaction-baseline.test.d.ts.map +0 -1
  767. package/dist/test/placed-reaction-baseline.test.js +0 -312
  768. package/dist/test/placed-reaction-baseline.test.js.map +0 -1
  769. package/dist/test/present-while-acting.test.d.ts +0 -19
  770. package/dist/test/present-while-acting.test.d.ts.map +0 -1
  771. package/dist/test/present-while-acting.test.js +0 -1649
  772. package/dist/test/present-while-acting.test.js.map +0 -1
  773. package/dist/test/prose-segments.test.d.ts +0 -2
  774. package/dist/test/prose-segments.test.d.ts.map +0 -1
  775. package/dist/test/prose-segments.test.js +0 -52
  776. package/dist/test/prose-segments.test.js.map +0 -1
  777. package/dist/test/prose-stream-router.test.d.ts +0 -2
  778. package/dist/test/prose-stream-router.test.d.ts.map +0 -1
  779. package/dist/test/prose-stream-router.test.js +0 -171
  780. package/dist/test/prose-stream-router.test.js.map +0 -1
  781. package/dist/test/provider-acceleration-cooldown.test.d.ts +0 -2
  782. package/dist/test/provider-acceleration-cooldown.test.d.ts.map +0 -1
  783. package/dist/test/provider-acceleration-cooldown.test.js +0 -435
  784. package/dist/test/provider-acceleration-cooldown.test.js.map +0 -1
  785. package/dist/test/provider-waits.test.d.ts +0 -2
  786. package/dist/test/provider-waits.test.d.ts.map +0 -1
  787. package/dist/test/provider-waits.test.js +0 -2259
  788. package/dist/test/provider-waits.test.js.map +0 -1
  789. package/dist/test/puppet-tool-call.test.d.ts +0 -2
  790. package/dist/test/puppet-tool-call.test.d.ts.map +0 -1
  791. package/dist/test/puppet-tool-call.test.js +0 -226
  792. package/dist/test/puppet-tool-call.test.js.map +0 -1
  793. package/dist/test/puppet-turn-reservation.test.d.ts +0 -2
  794. package/dist/test/puppet-turn-reservation.test.d.ts.map +0 -1
  795. package/dist/test/puppet-turn-reservation.test.js +0 -139
  796. package/dist/test/puppet-turn-reservation.test.js.map +0 -1
  797. package/dist/test/reaction-baseline-platform.test.d.ts +0 -2
  798. package/dist/test/reaction-baseline-platform.test.d.ts.map +0 -1
  799. package/dist/test/reaction-baseline-platform.test.js +0 -124
  800. package/dist/test/reaction-baseline-platform.test.js.map +0 -1
  801. package/dist/test/record-journal.test.d.ts +0 -6
  802. package/dist/test/record-journal.test.d.ts.map +0 -1
  803. package/dist/test/record-journal.test.js +0 -269
  804. package/dist/test/record-journal.test.js.map +0 -1
  805. package/dist/test/refusal-reaction-baseline.test.d.ts +0 -2
  806. package/dist/test/refusal-reaction-baseline.test.d.ts.map +0 -1
  807. package/dist/test/refusal-reaction-baseline.test.js +0 -81
  808. package/dist/test/refusal-reaction-baseline.test.js.map +0 -1
  809. package/dist/test/refusal-rewind.test.d.ts +0 -2
  810. package/dist/test/refusal-rewind.test.d.ts.map +0 -1
  811. package/dist/test/refusal-rewind.test.js +0 -117
  812. package/dist/test/refusal-rewind.test.js.map +0 -1
  813. package/dist/test/refusal-single-call.test.d.ts +0 -2
  814. package/dist/test/refusal-single-call.test.d.ts.map +0 -1
  815. package/dist/test/refusal-single-call.test.js +0 -177
  816. package/dist/test/refusal-single-call.test.js.map +0 -1
  817. package/dist/test/release-bump.test.d.ts +0 -2
  818. package/dist/test/release-bump.test.d.ts.map +0 -1
  819. package/dist/test/release-bump.test.js +0 -248
  820. package/dist/test/release-bump.test.js.map +0 -1
  821. package/dist/test/release-changelog.test.d.ts +0 -2
  822. package/dist/test/release-changelog.test.d.ts.map +0 -1
  823. package/dist/test/release-changelog.test.js +0 -159
  824. package/dist/test/release-changelog.test.js.map +0 -1
  825. package/dist/test/release-holds.test.d.ts +0 -2
  826. package/dist/test/release-holds.test.d.ts.map +0 -1
  827. package/dist/test/release-holds.test.js +0 -456
  828. package/dist/test/release-holds.test.js.map +0 -1
  829. package/dist/test/same-round-think-policy.test.d.ts +0 -2
  830. package/dist/test/same-round-think-policy.test.d.ts.map +0 -1
  831. package/dist/test/same-round-think-policy.test.js +0 -853
  832. package/dist/test/same-round-think-policy.test.js.map +0 -1
  833. package/dist/test/save-recent-image.test.d.ts +0 -26
  834. package/dist/test/save-recent-image.test.d.ts.map +0 -1
  835. package/dist/test/save-recent-image.test.js +0 -974
  836. package/dist/test/save-recent-image.test.js.map +0 -1
  837. package/dist/test/shutdown-errors.test.d.ts +0 -2
  838. package/dist/test/shutdown-errors.test.d.ts.map +0 -1
  839. package/dist/test/shutdown-errors.test.js +0 -662
  840. package/dist/test/shutdown-errors.test.js.map +0 -1
  841. package/dist/test/silent-heartbeat-rows.test.d.ts +0 -2
  842. package/dist/test/silent-heartbeat-rows.test.d.ts.map +0 -1
  843. package/dist/test/silent-heartbeat-rows.test.js +0 -451
  844. package/dist/test/silent-heartbeat-rows.test.js.map +0 -1
  845. package/dist/test/silent-heartbeat.test.d.ts +0 -2
  846. package/dist/test/silent-heartbeat.test.d.ts.map +0 -1
  847. package/dist/test/silent-heartbeat.test.js +0 -165
  848. package/dist/test/silent-heartbeat.test.js.map +0 -1
  849. package/dist/test/state-scaling-e2e.test.d.ts +0 -22
  850. package/dist/test/state-scaling-e2e.test.d.ts.map +0 -1
  851. package/dist/test/state-scaling-e2e.test.js +0 -206
  852. package/dist/test/state-scaling-e2e.test.js.map +0 -1
  853. package/dist/test/state-scaling.test.d.ts +0 -12
  854. package/dist/test/state-scaling.test.d.ts.map +0 -1
  855. package/dist/test/state-scaling.test.js +0 -251
  856. package/dist/test/state-scaling.test.js.map +0 -1
  857. package/dist/test/stop-with-host-operations.test.d.ts +0 -20
  858. package/dist/test/stop-with-host-operations.test.d.ts.map +0 -1
  859. package/dist/test/stop-with-host-operations.test.js +0 -1174
  860. package/dist/test/stop-with-host-operations.test.js.map +0 -1
  861. package/dist/test/stop-with-work-in-flight.test.d.ts +0 -23
  862. package/dist/test/stop-with-work-in-flight.test.d.ts.map +0 -1
  863. package/dist/test/stop-with-work-in-flight.test.js +0 -784
  864. package/dist/test/stop-with-work-in-flight.test.js.map +0 -1
  865. package/dist/test/surgery-marks-receipt.test.d.ts +0 -2
  866. package/dist/test/surgery-marks-receipt.test.d.ts.map +0 -1
  867. package/dist/test/surgery-marks-receipt.test.js +0 -540
  868. package/dist/test/surgery-marks-receipt.test.js.map +0 -1
  869. package/dist/test/thinking-token-stamp.test.d.ts +0 -12
  870. package/dist/test/thinking-token-stamp.test.d.ts.map +0 -1
  871. package/dist/test/thinking-token-stamp.test.js +0 -129
  872. package/dist/test/thinking-token-stamp.test.js.map +0 -1
  873. package/dist/test/timezone.test.d.ts +0 -2
  874. package/dist/test/timezone.test.d.ts.map +0 -1
  875. package/dist/test/timezone.test.js +0 -18
  876. package/dist/test/timezone.test.js.map +0 -1
  877. package/dist/test/tool-batch-hook.test.d.ts +0 -8
  878. package/dist/test/tool-batch-hook.test.d.ts.map +0 -1
  879. package/dist/test/tool-batch-hook.test.js +0 -275
  880. package/dist/test/tool-batch-hook.test.js.map +0 -1
  881. package/dist/test/tool-policy.test.d.ts +0 -2
  882. package/dist/test/tool-policy.test.d.ts.map +0 -1
  883. package/dist/test/tool-policy.test.js +0 -51
  884. package/dist/test/tool-policy.test.js.map +0 -1
  885. package/dist/test/tool-presentation.test.d.ts +0 -2
  886. package/dist/test/tool-presentation.test.d.ts.map +0 -1
  887. package/dist/test/tool-presentation.test.js +0 -268
  888. package/dist/test/tool-presentation.test.js.map +0 -1
  889. package/dist/test/tool-result-content.test.d.ts +0 -2
  890. package/dist/test/tool-result-content.test.d.ts.map +0 -1
  891. package/dist/test/tool-result-content.test.js +0 -37
  892. package/dist/test/tool-result-content.test.js.map +0 -1
  893. package/dist/test/tool-result-guard.test.d.ts +0 -2
  894. package/dist/test/tool-result-guard.test.d.ts.map +0 -1
  895. package/dist/test/tool-result-guard.test.js +0 -3729
  896. package/dist/test/tool-result-guard.test.js.map +0 -1
  897. package/dist/test/tool-result-history.test.d.ts +0 -7
  898. package/dist/test/tool-result-history.test.d.ts.map +0 -1
  899. package/dist/test/tool-result-history.test.js +0 -156
  900. package/dist/test/tool-result-history.test.js.map +0 -1
  901. package/dist/test/tool-result-spill.test.d.ts +0 -13
  902. package/dist/test/tool-result-spill.test.d.ts.map +0 -1
  903. package/dist/test/tool-result-spill.test.js +0 -586
  904. package/dist/test/tool-result-spill.test.js.map +0 -1
  905. package/dist/test/tool-wrapper-prose-guard-integration.test.d.ts +0 -2
  906. package/dist/test/tool-wrapper-prose-guard-integration.test.d.ts.map +0 -1
  907. package/dist/test/tool-wrapper-prose-guard-integration.test.js +0 -485
  908. package/dist/test/tool-wrapper-prose-guard-integration.test.js.map +0 -1
  909. package/dist/test/tool-wrapper-prose-guard.test.d.ts +0 -2
  910. package/dist/test/tool-wrapper-prose-guard.test.d.ts.map +0 -1
  911. package/dist/test/tool-wrapper-prose-guard.test.js +0 -34
  912. package/dist/test/tool-wrapper-prose-guard.test.js.map +0 -1
  913. package/dist/test/tools-observe-parser-conformance.test.d.ts +0 -2
  914. package/dist/test/tools-observe-parser-conformance.test.d.ts.map +0 -1
  915. package/dist/test/tools-observe-parser-conformance.test.js +0 -129
  916. package/dist/test/tools-observe-parser-conformance.test.js.map +0 -1
  917. package/dist/test/trunk-channel-routing.test.d.ts +0 -19
  918. package/dist/test/trunk-channel-routing.test.d.ts.map +0 -1
  919. package/dist/test/trunk-channel-routing.test.js +0 -652
  920. package/dist/test/trunk-channel-routing.test.js.map +0 -1
  921. package/dist/test/tune-out-e2e.test.d.ts +0 -2
  922. package/dist/test/tune-out-e2e.test.d.ts.map +0 -1
  923. package/dist/test/tune-out-e2e.test.js +0 -142
  924. package/dist/test/tune-out-e2e.test.js.map +0 -1
  925. package/dist/test/tune-out-gate-composition.test.d.ts +0 -2
  926. package/dist/test/tune-out-gate-composition.test.d.ts.map +0 -1
  927. package/dist/test/tune-out-gate-composition.test.js +0 -221
  928. package/dist/test/tune-out-gate-composition.test.js.map +0 -1
  929. package/dist/test/tune-out-lifecycle.test.d.ts +0 -2
  930. package/dist/test/tune-out-lifecycle.test.d.ts.map +0 -1
  931. package/dist/test/tune-out-lifecycle.test.js +0 -121
  932. package/dist/test/tune-out-lifecycle.test.js.map +0 -1
  933. package/dist/test/turn-trigger-provenance.test.d.ts +0 -2
  934. package/dist/test/turn-trigger-provenance.test.d.ts.map +0 -1
  935. package/dist/test/turn-trigger-provenance.test.js +0 -137
  936. package/dist/test/turn-trigger-provenance.test.js.map +0 -1
  937. package/dist/test/unconvertible-tool-result.test.d.ts +0 -2
  938. package/dist/test/unconvertible-tool-result.test.d.ts.map +0 -1
  939. package/dist/test/unconvertible-tool-result.test.js +0 -358
  940. package/dist/test/unconvertible-tool-result.test.js.map +0 -1
  941. package/dist/test/unsent-compiles.test.d.ts +0 -2
  942. package/dist/test/unsent-compiles.test.d.ts.map +0 -1
  943. package/dist/test/unsent-compiles.test.js +0 -139
  944. package/dist/test/unsent-compiles.test.js.map +0 -1
  945. package/dist/test/usage-accounting.test.d.ts +0 -2
  946. package/dist/test/usage-accounting.test.d.ts.map +0 -1
  947. package/dist/test/usage-accounting.test.js +0 -13
  948. package/dist/test/usage-accounting.test.js.map +0 -1
  949. package/dist/test/usage-tracker.test.d.ts +0 -2
  950. package/dist/test/usage-tracker.test.d.ts.map +0 -1
  951. package/dist/test/usage-tracker.test.js +0 -129
  952. package/dist/test/usage-tracker.test.js.map +0 -1
  953. package/dist/test/utils-surface.test.d.ts +0 -2
  954. package/dist/test/utils-surface.test.d.ts.map +0 -1
  955. package/dist/test/utils-surface.test.js +0 -145
  956. package/dist/test/utils-surface.test.js.map +0 -1
  957. package/dist/test/workspace-branch-continuation.test.d.ts +0 -15
  958. package/dist/test/workspace-branch-continuation.test.d.ts.map +0 -1
  959. package/dist/test/workspace-branch-continuation.test.js +0 -183
  960. package/dist/test/workspace-branch-continuation.test.js.map +0 -1
  961. package/dist/test/workspace-materialize-freshness.test.d.ts +0 -16
  962. package/dist/test/workspace-materialize-freshness.test.d.ts.map +0 -1
  963. package/dist/test/workspace-materialize-freshness.test.js +0 -252
  964. package/dist/test/workspace-materialize-freshness.test.js.map +0 -1
  965. package/dist/test/workspace-path-containment.test.d.ts +0 -19
  966. package/dist/test/workspace-path-containment.test.d.ts.map +0 -1
  967. package/dist/test/workspace-path-containment.test.js +0 -91
  968. package/dist/test/workspace-path-containment.test.js.map +0 -1
  969. package/dist/test/workspace-read-file-from-disk.test.d.ts +0 -17
  970. package/dist/test/workspace-read-file-from-disk.test.d.ts.map +0 -1
  971. package/dist/test/workspace-read-file-from-disk.test.js +0 -174
  972. package/dist/test/workspace-read-file-from-disk.test.js.map +0 -1
  973. package/dist/test/workspace-read-image.test.d.ts +0 -2
  974. package/dist/test/workspace-read-image.test.d.ts.map +0 -1
  975. package/dist/test/workspace-read-image.test.js +0 -597
  976. package/dist/test/workspace-read-image.test.js.map +0 -1
  977. package/dist/test/workspace-read-text.test.d.ts +0 -2
  978. package/dist/test/workspace-read-text.test.d.ts.map +0 -1
  979. package/dist/test/workspace-read-text.test.js +0 -101
  980. package/dist/test/workspace-read-text.test.js.map +0 -1
  981. package/dist/test/workspace-restore-order.test.d.ts +0 -16
  982. package/dist/test/workspace-restore-order.test.d.ts.map +0 -1
  983. package/dist/test/workspace-restore-order.test.js +0 -140
  984. package/dist/test/workspace-restore-order.test.js.map +0 -1
  985. package/dist/test/workspace-three-way.test.d.ts +0 -12
  986. package/dist/test/workspace-three-way.test.d.ts.map +0 -1
  987. package/dist/test/workspace-three-way.test.js +0 -4094
  988. package/dist/test/workspace-three-way.test.js.map +0 -1
  989. package/dist/test/workspace-watcher.test.d.ts +0 -2
  990. package/dist/test/workspace-watcher.test.d.ts.map +0 -1
  991. package/dist/test/workspace-watcher.test.js +0 -281
  992. package/dist/test/workspace-watcher.test.js.map +0 -1
  993. package/dist/test/xml-round-persist.test.d.ts +0 -19
  994. package/dist/test/xml-round-persist.test.d.ts.map +0 -1
  995. package/dist/test/xml-round-persist.test.js +0 -235
  996. package/dist/test/xml-round-persist.test.js.map +0 -1
  997. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel-label-history.test.js","sourceRoot":"","sources":["../../test/channel-label-history.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=channel-lifecycle-provenance.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel-lifecycle-provenance.test.d.ts","sourceRoot":"","sources":["../../test/channel-lifecycle-provenance.test.ts"],"names":[],"mappings":""}
@@ -1,47 +0,0 @@
1
- import { test } from 'node:test';
2
- import assert from 'node:assert/strict';
3
- import { ChannelRegistry } from '../src/mcpl/channel-registry.js';
4
- /**
5
- * Desired-state provenance: a server upgrading its descriptor to
6
- * initiallyOpen may lift a pure default ('default-closed' = nobody ever
7
- * decided), but must never override a real decision (agent-tool,
8
- * invitation-declined). Regression for the eidoverse-worlds case where a
9
- * resident's world channel stayed shadow-closed forever because the default
10
- * predated the server declaring its bootstrap preference.
11
- */
12
- function makeRegistry() {
13
- const serverRegistry = {
14
- getServer: (_id) => ({ sendChannelsPublish: async () => ({ delivered: true }) }),
15
- };
16
- const registry = new ChannelRegistry(serverRegistry, {}, () => { }, () => { });
17
- const r = registry;
18
- return { registry, r };
19
- }
20
- const ch = (initiallyOpen) => ({
21
- id: 'world:commons', type: 'world', label: 'eidoverse — commons', direction: 'bidirectional', initiallyOpen,
22
- });
23
- test('default-closed is lifted when the server later declares initiallyOpen', () => {
24
- const { r } = makeRegistry();
25
- // first registration: server said nothing → default-closed
26
- r.ensureInitialDesiredState('eidoverse', ch(undefined));
27
- assert.equal(r.getDesiredState('eidoverse', 'world:commons'), 'closed');
28
- // server upgrades its descriptor: bootstrap preference lifts the pure default
29
- r.ensureInitialDesiredState('eidoverse', ch(true));
30
- assert.equal(r.getDesiredState('eidoverse', 'world:commons'), 'open');
31
- });
32
- test('an agent decision to close is never overridden by initiallyOpen', () => {
33
- const { r } = makeRegistry();
34
- r.ensureInitialDesiredState('eidoverse', ch(true));
35
- assert.equal(r.getDesiredState('eidoverse', 'world:commons'), 'open');
36
- // the agent deliberately closes their door
37
- r.setDesiredState('eidoverse', 'world:commons', 'closed', 'agent-tool');
38
- // server keeps declaring initiallyOpen — the decision sticks
39
- r.ensureInitialDesiredState('eidoverse', ch(true));
40
- assert.equal(r.getDesiredState('eidoverse', 'world:commons'), 'closed');
41
- });
42
- test('initiallyOpen at first sight registers open with server-bootstrap provenance', () => {
43
- const { r } = makeRegistry();
44
- r.ensureInitialDesiredState('eidoverse', ch(true));
45
- assert.equal(r.getDesiredState('eidoverse', 'world:commons'), 'open');
46
- });
47
- //# sourceMappingURL=channel-lifecycle-provenance.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel-lifecycle-provenance.test.js","sourceRoot":"","sources":["../../test/channel-lifecycle-provenance.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAIlE;;;;;;;GAOG;AAEH,SAAS,YAAY;IACnB,MAAM,cAAc,GAAG;QACrB,SAAS,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,EAAE,mBAAmB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;KACxD,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,eAAe,CAClC,cAAc,EACd,EAAuB,EACvB,GAAG,EAAE,GAAE,CAAC,EACR,GAAG,EAAE,GAAE,CAAC,CACT,CAAC;IACF,MAAM,CAAC,GAAG,QAIT,CAAC;IACF,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,EAAE,GAAG,CAAC,aAAuB,EAAE,EAAE,CAAC,CAAC;IACvC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,qBAAqB,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa;CAC5G,CAAC,CAAC;AAEH,IAAI,CAAC,uEAAuE,EAAE,GAAG,EAAE;IACjF,MAAM,EAAE,CAAC,EAAE,GAAG,YAAY,EAAE,CAAC;IAC7B,2DAA2D;IAC3D,CAAC,CAAC,yBAAyB,CAAC,WAAW,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACxD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,QAAQ,CAAC,CAAC;IACxE,8EAA8E;IAC9E,CAAC,CAAC,yBAAyB,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;AACxE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iEAAiE,EAAE,GAAG,EAAE;IAC3E,MAAM,EAAE,CAAC,EAAE,GAAG,YAAY,EAAE,CAAC;IAC7B,CAAC,CAAC,yBAAyB,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;IACtE,2CAA2C;IAC3C,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IACxE,6DAA6D;IAC7D,CAAC,CAAC,yBAAyB,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC1E,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8EAA8E,EAAE,GAAG,EAAE;IACxF,MAAM,EAAE,CAAC,EAAE,GAAG,YAAY,EAAE,CAAC;IAC7B,CAAC,CAAC,yBAAyB,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;AACxE,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=channel-registry-routing.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel-registry-routing.test.d.ts","sourceRoot":"","sources":["../../test/channel-registry-routing.test.ts"],"names":[],"mappings":""}
@@ -1,446 +0,0 @@
1
- import { CapabilityGrant, ALL_CAPABILITY_PATHS } from '../src/mcpl/capability-grant.js';
2
- import { test } from 'node:test';
3
- import assert from 'node:assert/strict';
4
- import { ChannelRegistry } from '../src/mcpl/channel-registry.js';
5
- import { parseProsePrefix } from '../src/mcpl/prose-grammar.js';
6
- /**
7
- * Build a registry with a mock server whose publish result is configurable,
8
- * plus capture arrays for route-failure notifications and emitted traces.
9
- */
10
- function makeRegistry(publishResult, homeChannelResolver, activeChannelResolver, onChannelAutoOpened) {
11
- const failures = [];
12
- const traces = [];
13
- const publishCalls = [];
14
- const openCalls = [];
15
- const closeCalls = [];
16
- let failOpens = false;
17
- const mockServer = {
18
- // Post-policy state: full grant, so tests exercise delivery, not §5.3 denial.
19
- grant: new CapabilityGrant(new Set(ALL_CAPABILITY_PATHS), []),
20
- sendChannelsPublish: async (params) => {
21
- publishCalls.push(params);
22
- return publishResult;
23
- },
24
- sendChannelsOpen: async (params) => {
25
- if (failOpens)
26
- throw new Error('open refused by server');
27
- openCalls.push(params);
28
- return {};
29
- },
30
- sendChannelsClose: async (params) => {
31
- closeCalls.push(params);
32
- return {};
33
- },
34
- };
35
- const serverRegistry = {
36
- getServer: (_id) => mockServer,
37
- };
38
- const registry = new ChannelRegistry(serverRegistry, {}, () => { }, (e) => { traces.push(e); }, {
39
- onRouteFailure: (info) => { failures.push(info); },
40
- homeChannelResolver,
41
- activeChannelResolver,
42
- onChannelAutoOpened,
43
- });
44
- // findChannelEntry is private; reach it the same way the typing test reaches
45
- // the channels map — a test-only cast, not part of the public surface.
46
- const lookup = (channelId) => registry.findChannelEntry(channelId);
47
- return {
48
- registry, failures, traces, publishCalls, openCalls, closeCalls, lookup,
49
- setFailOpens: (v) => { failOpens = v; },
50
- };
51
- }
52
- function incoming(channelId, text, channelName) {
53
- return {
54
- messages: [{
55
- channelId,
56
- messageId: 'm1',
57
- author: { id: 'u1', name: 'Antra' },
58
- timestamp: '2026-05-30T00:00:00.000Z',
59
- content: [{ type: 'text', text }],
60
- metadata: channelName ? { channelName } : undefined,
61
- }],
62
- };
63
- }
64
- /** §14.5: channels/incoming no longer mints unknown channels — seed the
65
- * registered state a conforming server would have created via
66
- * channels/register before feeding incoming traffic. */
67
- function seedRegistered(registry, serverId, ...ids) {
68
- const map = registry.channels;
69
- for (const id of ids) {
70
- if (!map.has(`${serverId}:${id}`)) {
71
- map.set(`${serverId}:${id}`, { serverId, descriptor: { id, type: serverId, label: id }, open: false });
72
- }
73
- }
74
- }
75
- test('handleIncoming REJECTS an unknown channel instead of minting it (§14.5)', async () => {
76
- const { registry, traces, lookup } = makeRegistry({ delivered: true });
77
- // Channel "post-boot-ch" was never registered via channels/register|changed.
78
- assert.equal(lookup('post-boot-ch'), undefined);
79
- registry.handleIncoming('discord', incoming('post-boot-ch', 'hi', '#cairn'));
80
- // §14.5: the unknown channel is NOT minted, the message is rejected with
81
- // a diagnostic, and the locus never becomes routable — a server cannot
82
- // self-attest a channel identity by messaging it into existence.
83
- assert.equal(lookup('post-boot-ch'), undefined, 'unknown channel must not be registered by its first message');
84
- assert.ok(traces.some(t => t.type === 'mcpl:channel-incoming-rejected'));
85
- assert.equal(registry.resolveLocus('cairn'), null, 'a rejected message must not establish a locus');
86
- });
87
- test('routeSpeech surfaces a failure when the server reports delivered:false', async () => {
88
- const { registry, failures, traces } = makeRegistry({ delivered: false });
89
- seedRegistered(registry, 'discord', 'ch-x');
90
- registry.handleIncoming('discord', incoming('ch-x', 'hi'));
91
- const res = await registry.routeSpeech('cairn', 'undeliverable reply', registry.resolveLocus('cairn'));
92
- assert.equal(res, null, 'a non-delivered send must not report success');
93
- assert.equal(failures.length, 1, 'onRouteFailure should fire');
94
- assert.equal(failures[0].channelId, 'ch-x');
95
- assert.match(failures[0].reason, /delivered:false/);
96
- assert.ok(traces.some(t => t.type === 'mcpl:speech-route-failed'));
97
- });
98
- test('routeSpeech routes a conversation fork to its HOME channel, not the global last-inbound (item 3)', async () => {
99
- // Two channels are live. chanA registered first; then a message arrives on
100
- // chanB, flipping the process-global defaultPublishChannel to chanB. A fork
101
- // bound to chanA must still publish to chanA.
102
- const homes = { 'conversation-chanA-g1': 'chanA' };
103
- const { registry, publishCalls } = makeRegistry({ delivered: true }, (agentName) => homes[agentName]);
104
- seedRegistered(registry, 'discord', 'chanA');
105
- registry.handleIncoming('discord', incoming('chanA', 'hi from A'));
106
- seedRegistered(registry, 'discord', 'chanB');
107
- registry.handleIncoming('discord', incoming('chanB', 'hi from B'));
108
- // Global locus is now chanB.
109
- assert.equal(registry.getDefaultPublishChannel(), 'chanB');
110
- const res = await registry.routeSpeech('conversation-chanA-g1', 'reply for A', registry.resolveLocus('conversation-chanA-g1'));
111
- assert.deepEqual(res, { delivered: true, channelId: 'chanA' }, 'fork must route to its home channel, not the global last-inbound');
112
- assert.equal(publishCalls.at(-1)?.channelId, 'chanA');
113
- });
114
- test('routeSpeech falls back to the global locus for the trunk agent (no home)', async () => {
115
- // The trunk/primary agent has no home entry; it correctly uses the global
116
- // most-recent-inbound channel.
117
- const { registry, publishCalls } = makeRegistry({ delivered: true }, () => undefined);
118
- seedRegistered(registry, 'discord', 'chanA');
119
- registry.handleIncoming('discord', incoming('chanA', 'hi from A'));
120
- seedRegistered(registry, 'discord', 'chanB');
121
- registry.handleIncoming('discord', incoming('chanB', 'hi from B'));
122
- const res = await registry.routeSpeech('trunk', 'heartbeat reply', registry.resolveLocus('trunk'));
123
- assert.deepEqual(res, { delivered: true, channelId: 'chanB' });
124
- assert.equal(publishCalls.at(-1)?.channelId, 'chanB');
125
- });
126
- test('buildChannelContext advertises the fork home as defaultOutgoing (item 3)', () => {
127
- const homes = { 'conversation-chanA-g1': 'chanA' };
128
- const { registry } = makeRegistry({ delivered: true }, (agentName) => homes[agentName]);
129
- seedRegistered(registry, 'discord', 'chanA');
130
- registry.handleIncoming('discord', incoming('chanA', 'hi from A'));
131
- seedRegistered(registry, 'discord', 'chanB');
132
- registry.handleIncoming('discord', incoming('chanB', 'hi from B'));
133
- // The fork is told chanA (where its speech actually lands)...
134
- const forkCtx = registry.buildChannelContext('conversation-chanA-g1');
135
- assert.equal(forkCtx?.defaultOutgoing?.channelId, 'chanA');
136
- // ...while the trunk agent (no home) is told the global default.
137
- const trunkCtx = registry.buildChannelContext('trunk');
138
- assert.equal(trunkCtx?.defaultOutgoing?.channelId, 'chanB');
139
- });
140
- test('routeSpeech surfaces a failure when there is no locus at all', async () => {
141
- const { registry, failures } = makeRegistry({ delivered: true });
142
- // No handleIncoming → defaultPublishChannel is null.
143
- const res = await registry.routeSpeech('cairn', 'into the void', registry.resolveLocus('cairn'));
144
- assert.equal(res, null);
145
- assert.equal(failures.length, 1);
146
- assert.equal(failures[0].channelId, null);
147
- assert.match(failures[0].reason, /no locus/);
148
- });
149
- // ── item-3 redux: single TRUNK agents route to the turn's triggering channel ──
150
- test('routeSpeech routes a TRUNK agent to its ACTIVE triggering channel, not the global last-inbound (item-3 redux)', async () => {
151
- // The exact live repro: scout (a single trunk agent) is answering channel A
152
- // when a message arrives on channel B, flipping the process-global
153
- // defaultPublishChannel to B. The reply must still land in A. Forks (home)
154
- // don't exist here — connectome-host never spawns them — so the ONLY thing
155
- // keeping A's answer in A is the active-triggering-channel resolver.
156
- const active = { scout: 'chanA' };
157
- const { registry, publishCalls } = makeRegistry({ delivered: true }, () => undefined, // no fork homes (trunk-only, connectome-host mode)
158
- (agentName) => active[agentName]);
159
- seedRegistered(registry, 'discord', 'chanA');
160
- registry.handleIncoming('discord', incoming('chanA', 'A: sleep && date'));
161
- seedRegistered(registry, 'discord', 'chanB');
162
- registry.handleIncoming('discord', incoming('chanB', 'B: unrelated')); // flips global to chanB
163
- assert.equal(registry.getDefaultPublishChannel(), 'chanB');
164
- const res = await registry.routeSpeech('scout', 'the date is ...', registry.resolveLocus('scout'));
165
- assert.deepEqual(res, { delivered: true, channelId: 'chanA' }, 'trunk reply must go to the channel that triggered the turn, not the global last-inbound');
166
- assert.equal(publishCalls.at(-1)?.channelId, 'chanA');
167
- });
168
- test('routeSpeech precedence: fork HOME wins over the active triggering channel', async () => {
169
- // A fork bound to chanA must route home even if its live turn was (somehow)
170
- // triggered from chanB — home is the strongest signal and must not regress.
171
- const { registry, publishCalls } = makeRegistry({ delivered: true }, (n) => (n === 'conversation-chanA-g1' ? 'chanA' : undefined), () => 'chanB');
172
- seedRegistered(registry, 'discord', 'chanA');
173
- registry.handleIncoming('discord', incoming('chanA', 'hi'));
174
- seedRegistered(registry, 'discord', 'chanB');
175
- registry.handleIncoming('discord', incoming('chanB', 'hi'));
176
- const res = await registry.routeSpeech('conversation-chanA-g1', 'reply', registry.resolveLocus('conversation-chanA-g1'));
177
- assert.deepEqual(res, { delivered: true, channelId: 'chanA' });
178
- assert.equal(publishCalls.at(-1)?.channelId, 'chanA');
179
- });
180
- test('buildChannelContext advertises the active triggering channel as defaultOutgoing (item-3 redux)', () => {
181
- const active = { scout: 'chanA' };
182
- const { registry } = makeRegistry({ delivered: true }, () => undefined, (n) => active[n]);
183
- seedRegistered(registry, 'discord', 'chanA');
184
- registry.handleIncoming('discord', incoming('chanA', 'hi from A'));
185
- seedRegistered(registry, 'discord', 'chanB');
186
- registry.handleIncoming('discord', incoming('chanB', 'hi from B')); // global → chanB
187
- // The trunk is TOLD chanA (where its speech will actually land), matching
188
- // what routeSpeech resolves — not the global chanB.
189
- const ctx = registry.buildChannelContext('scout');
190
- assert.equal(ctx?.defaultOutgoing?.channelId, 'chanA');
191
- });
192
- test('ensureChannelRegistered keeps a DM closed while making its one-shot reply routable', async () => {
193
- // A Discord DM arrives via push/event (channel closed), so it is never
194
- // registered and never updates defaultPublishChannel — routeSpeech would drop
195
- // the reply. Registering it on inbound makes it a publishable locus; the
196
- // active resolver (the woken turn's DM) then targets it.
197
- const dm = 'discord:dm:42';
198
- const active = { scout: dm };
199
- const { registry, publishCalls, lookup, traces } = makeRegistry({ delivered: true }, () => undefined, (n) => active[n]);
200
- // No prior handleIncoming for the DM — it only ever came as a push event.
201
- assert.equal(lookup(dm), undefined);
202
- assert.equal(registry.getDefaultPublishChannel(), null);
203
- registry.ensureChannelRegistered('discord', dm, 'DM with Antra');
204
- const entry = lookup(dm);
205
- assert.ok(entry, 'the DM channel should be registered');
206
- assert.equal(entry.serverId, 'discord');
207
- assert.equal(entry.open, false, 'one-shot reachability is not a subscription');
208
- assert.ok(traces.some((t) => t.type === 'mcpl:channel-lazy-registered'));
209
- const res = await registry.routeSpeech('scout', 'replying in the DM', registry.resolveLocus('scout'));
210
- assert.deepEqual(res, { delivered: true, channelId: dm }, 'the DM reply must route back to the DM channel, not the global locus');
211
- assert.equal(publishCalls.at(-1)?.channelId, dm);
212
- });
213
- test('ensureChannelRegistered is idempotent and does not reopen a closed channel', () => {
214
- const { registry, lookup } = makeRegistry({ delivered: true });
215
- registry.ensureChannelRegistered('discord', 'discord:guild:7', '#cairn');
216
- const first = lookup('discord:guild:7');
217
- assert.ok(first);
218
- // Force it closed, then re-ensure — a direct push must not mutate lifecycle.
219
- first.open = false;
220
- registry.ensureChannelRegistered('discord', 'discord:guild:7', '#cairn');
221
- const second = lookup('discord:guild:7');
222
- assert.equal(second, first, 'must reuse the same entry');
223
- assert.equal(second.open, false, 'a direct push must not mutate lifecycle');
224
- });
225
- // ---------------------------------------------------------------------------
226
- // Channel-lifecycle invariants (2026-07-22): sending into a closed channel is
227
- // not a thing — delivery opens it; subscribed ⇒ open at any discovery time.
228
- // ---------------------------------------------------------------------------
229
- test('routeSpeech into a closed locus opens the channel first, then delivers', async () => {
230
- const { registry, publishCalls, openCalls, lookup } = makeRegistry({ delivered: true });
231
- // A DM-shaped situation: the channel is registered but closed.
232
- seedRegistered(registry, 'discord', 'dm-alice');
233
- registry.handleIncoming('discord', incoming('dm-alice', 'hello?'));
234
- lookup('dm-alice').open = false;
235
- const res = await registry.routeSpeech('sol', 'a reply meant for the DM', 'dm-alice');
236
- assert.deepEqual(res, { delivered: true, channelId: 'dm-alice' });
237
- assert.equal(openCalls.length, 1, 'delivery into a closed channel must open it');
238
- assert.equal(openCalls[0].channelId, 'dm-alice');
239
- assert.equal(lookup('dm-alice').open, true, 'live state flips open');
240
- assert.equal(registry.getDesiredState('discord', 'dm-alice'), 'open', 'durable desired state records the engagement');
241
- assert.equal(publishCalls.at(-1)?.channelId, 'dm-alice');
242
- });
243
- test('routeSpeech does NOT deliver when the open-on-delivery fails', async () => {
244
- const { registry, failures, publishCalls, lookup, setFailOpens } = makeRegistry({ delivered: true });
245
- seedRegistered(registry, 'discord', 'dm-alice');
246
- registry.handleIncoming('discord', incoming('dm-alice', 'hello?'));
247
- lookup('dm-alice').open = false;
248
- const publishesBefore = publishCalls.length;
249
- setFailOpens(true);
250
- const res = await registry.routeSpeech('sol', 'must not go out', 'dm-alice');
251
- assert.equal(res, null, 'no delivery into a channel that could not be opened');
252
- assert.equal(publishCalls.length, publishesBefore, 'publish must not be attempted');
253
- assert.equal(failures.length, 1);
254
- assert.match(failures[0].reason, /closed and open failed/);
255
- });
256
- test('routeSpeech with an omitted locus fails loudly as a routing bug', async () => {
257
- const { registry, failures } = makeRegistry({ delivered: true });
258
- seedRegistered(registry, 'discord', 'ch-y');
259
- registry.handleIncoming('discord', incoming('ch-y', 'hi'));
260
- const res = await registry.routeSpeech('cairn', 'who knows where');
261
- assert.equal(res, null);
262
- assert.equal(failures.length, 1);
263
- assert.match(failures[0].reason, /routing bug/);
264
- });
265
- test('subscription allow-list opens channels discovered AFTER bootstrap (subscribed => open)', async () => {
266
- const { registry, openCalls } = makeRegistry({ delivered: true });
267
- registry.setSubscriptionPolicy('discord', ['late-chan', '111222333']);
268
- // Post-bootstrap discovery via channels/changed — the path that used to
269
- // leave subscribed channels closed.
270
- await registry.handleChanged('discord', {
271
- added: [
272
- { id: 'late-chan', type: 'discord', label: '#late', direction: 'bidirectional' },
273
- { id: 'discord:guild:111222333', type: 'discord', label: '#by-raw-id',
274
- direction: 'bidirectional', address: { guildId: 'guild', channelId: '111222333' } },
275
- { id: 'unrelated', type: 'discord', label: '#unrelated', direction: 'bidirectional' },
276
- ],
277
- });
278
- assert.equal(registry.getDesiredState('discord', 'late-chan'), 'open');
279
- assert.equal(registry.getDesiredState('discord', 'discord:guild:111222333'), 'open', 'allow-list matches raw server-internal ids too');
280
- assert.equal(registry.getDesiredState('discord', 'unrelated'), 'closed');
281
- assert.ok(openCalls.some(c => c.channelId === 'late-chan'));
282
- assert.ok(openCalls.some(c => c.channelId === 'discord:guild:111222333'));
283
- assert.ok(!openCalls.some(c => c.channelId === 'unrelated'));
284
- });
285
- test("policy 'auto' opens every post-bootstrap discovery", async () => {
286
- const { registry, openCalls } = makeRegistry({ delivered: true });
287
- registry.setSubscriptionPolicy('discord', 'auto');
288
- await registry.handleChanged('discord', {
289
- added: [{ id: 'brand-new', type: 'discord', label: '#new', direction: 'bidirectional' }],
290
- });
291
- assert.equal(registry.getDesiredState('discord', 'brand-new'), 'open');
292
- assert.ok(openCalls.some(c => c.channelId === 'brand-new'));
293
- });
294
- test('an agent decision to stay closed sticks — policy does not override channel_decline/close', async () => {
295
- const { registry, openCalls } = makeRegistry({ delivered: true });
296
- registry.setSubscriptionPolicy('discord', 'auto');
297
- // Simulate a real prior decision recorded as agent-sourced desired state.
298
- registry.setDesiredState('discord', 'declined-chan', 'closed', 'agent-tool');
299
- await registry.handleChanged('discord', {
300
- added: [{ id: 'declined-chan', type: 'discord', label: '#declined', direction: 'bidirectional' }],
301
- });
302
- assert.equal(registry.getDesiredState('discord', 'declined-chan'), 'closed', 'agent decisions outrank subscription policy');
303
- assert.ok(!openCalls.some(c => c.channelId === 'declined-chan'));
304
- });
305
- test('openIfClosedForSend resolves raw server-internal ids and opens the channel', async () => {
306
- const { registry, openCalls, lookup } = makeRegistry({ delivered: true });
307
- await registry.handleChanged('discord', {
308
- added: [{ id: 'discord:dm:444555', type: 'discord', label: 'DM: Alice',
309
- direction: 'bidirectional', address: { guildId: 'dm', channelId: '444555' } }],
310
- });
311
- assert.equal(lookup('discord:dm:444555').open, false, 'DM registers closed');
312
- const { status } = await registry.openIfClosedForSend('444555', 'discord');
313
- assert.equal(status, 'opened');
314
- assert.equal(lookup('discord:dm:444555').open, true);
315
- assert.ok(openCalls.some(c => c.channelId === 'discord:dm:444555'));
316
- });
317
- test('policy admissions are announced to the agent exactly once, as one batch', async () => {
318
- const autoOpened = [];
319
- const { registry } = makeRegistry({ delivered: true }, undefined, undefined, (info) => autoOpened.push(info));
320
- registry.setSubscriptionPolicy('discord', ['chan-1', 'chan-2']);
321
- const added = {
322
- added: [
323
- { id: 'chan-1', type: 'discord', label: '#one', direction: 'bidirectional' },
324
- { id: 'chan-2', type: 'discord', label: '#two', direction: 'bidirectional' },
325
- { id: 'chan-3', type: 'discord', label: '#three', direction: 'bidirectional' },
326
- ],
327
- };
328
- await registry.handleChanged('discord', added);
329
- assert.equal(autoOpened.length, 1, 'one batched notice per reconcile pass');
330
- assert.equal(autoOpened[0].source, 'subscription-policy');
331
- assert.deepEqual(autoOpened[0].channels.map(c => c.channelId).sort(), ['chan-1', 'chan-2']);
332
- // Same channels registering again (reboot / re-register): no re-announcement.
333
- await registry.handleChanged('discord', added);
334
- assert.equal(autoOpened.length, 1, 'a durable decision is never re-announced');
335
- });
336
- test('opened-by-delivery is announced to the delivering agent', async () => {
337
- const autoOpened = [];
338
- const { registry, lookup } = makeRegistry({ delivered: true }, undefined, undefined, (info) => autoOpened.push(info));
339
- seedRegistered(registry, 'discord', 'dm-alice');
340
- registry.handleIncoming('discord', incoming('dm-alice', 'hello?'));
341
- lookup('dm-alice').open = false;
342
- await registry.routeSpeech('sol', 'reply', 'dm-alice');
343
- assert.equal(autoOpened.length, 1);
344
- assert.equal(autoOpened[0].source, 'opened-by-delivery');
345
- assert.equal(autoOpened[0].conversationId, 'sol');
346
- assert.deepEqual(autoOpened[0].channels.map(c => c.channelId), ['dm-alice']);
347
- });
348
- test('resolveProseTarget matches the name segment of suffixed labels (#fable vs "#fable (guild)")', async () => {
349
- const { registry } = makeRegistry({ delivered: true });
350
- await registry.handleChanged('discord', {
351
- added: [
352
- { id: 'discord:g1:100', type: 'discord', label: "#fable (antra's server)", direction: 'bidirectional' },
353
- { id: 'discord:g1:101', type: 'discord', label: '#ops (Connectome)', direction: 'bidirectional' },
354
- ],
355
- });
356
- const hit = registry.resolveProseTarget('#fable');
357
- assert.ok('channelId' in hit && hit.channelId === 'discord:g1:100', 'suffix-blind name match resolves');
358
- // Same name in two guilds = honest ambiguity with full labels.
359
- await registry.handleChanged('discord', {
360
- added: [{ id: 'discord:g2:200', type: 'discord', label: '#fable (Connectome)', direction: 'bidirectional' }],
361
- });
362
- const amb = registry.resolveProseTarget('#fable');
363
- assert.ok('error' in amb && amb.candidates.length === 2, 'cross-guild name collision errors with candidates');
364
- // No match offers near-candidates instead of a dead end.
365
- const miss = registry.resolveProseTarget('#fabl');
366
- assert.ok('error' in miss && (miss.candidates?.length ?? 0) >= 1, 'near-candidates on no-match');
367
- });
368
- test('DM prose targets resolve people-first: @name, prefix-lenient names, and <@id> mention tokens', async () => {
369
- const { registry } = makeRegistry({ delivered: true });
370
- await registry.handleChanged('discord', {
371
- added: [
372
- { id: 'discord:dm:555', type: 'discord', label: 'DM: antra', direction: 'bidirectional',
373
- metadata: { channelType: 'dm', recipientName: 'antra', recipientId: '134390790938951680' } },
374
- { id: 'discord:dm:556', type: 'discord', label: 'DM: laria', direction: 'bidirectional',
375
- metadata: { channelType: 'dm', recipientName: 'laria', recipientId: '628555451356676097' } },
376
- ],
377
- });
378
- const exact = registry.resolveProseTarget('@antra');
379
- assert.ok('channelId' in exact && exact.channelId === 'discord:dm:555', 'exact recipient name');
380
- const lenient = registry.resolveProseTarget('@antra_tessera');
381
- assert.ok('channelId' in lenient && lenient.channelId === 'discord:dm:555', 'handle resolves against display-name prefix');
382
- const token = registry.resolveProseTarget('<@134390790938951680>');
383
- assert.ok('channelId' in token && token.channelId === 'discord:dm:555', 'mention token by recipientId');
384
- const missing = registry.resolveProseTarget('@nobody');
385
- assert.ok('error' in missing && /send_dm/.test(missing.error), 'no-match points at send_dm');
386
- assert.ok('error' in missing && (missing.candidates?.length ?? 0) === 2, 'lists known DMs by name');
387
- });
388
- test('proseTargetFor: one whitespace-free token per channel that resolves back to it', async () => {
389
- const { registry } = makeRegistry({ delivered: true });
390
- await registry.handleChanged('discord', {
391
- added: [
392
- { id: 'discord:dm:555', type: 'discord', label: 'DM: antra', direction: 'bidirectional',
393
- metadata: { channelType: 'dm', recipientName: 'antra', recipientId: '134390790938951680' } },
394
- // A DM known only by its label (no metadata): still "@name".
395
- { id: 'discord:dm:557', type: 'discord', label: 'DM: _reim0n', direction: 'bidirectional' },
396
- { id: 'discord:g1:100', type: 'discord', label: "#fable (antra's server)", direction: 'bidirectional' },
397
- { id: 'discord:g1:101', type: 'discord', label: '#ops', direction: 'bidirectional' },
398
- // Same name in two guilds: "#lobby" is ambiguous, the full labels have spaces → the id.
399
- { id: 'discord:g1:102', type: 'discord', label: '#lobby (antra\'s server)', direction: 'bidirectional' },
400
- { id: 'discord:g2:200', type: 'discord', label: '#lobby (Connectome)', direction: 'bidirectional' },
401
- ],
402
- });
403
- const expected = {
404
- 'discord:dm:555': '@antra',
405
- 'discord:dm:557': '@_reim0n',
406
- 'discord:g1:100': '#fable',
407
- 'discord:g1:101': '#ops',
408
- 'discord:g1:102': 'discord:g1:102',
409
- 'discord:g2:200': 'discord:g2:200',
410
- };
411
- for (const [id, want] of Object.entries(expected)) {
412
- const t = registry.proseTargetFor(id);
413
- assert.equal(t, want, `target for ${id}`);
414
- // The property that matters: the grammar reads it whole, and it routes back here.
415
- assert.equal(parseProsePrefix(`>>${t} hello`).target, t, `${t} parses as one target`);
416
- const r = registry.resolveProseTarget(t);
417
- assert.ok('channelId' in r && r.channelId === id, `${t} resolves to ${id}`);
418
- }
419
- assert.equal(registry.proseTargetFor('discord:nowhere'), undefined, 'unregistered → undefined');
420
- });
421
- test('proseTargetFor: no token when none is safe (shared id across servers, whitespace-only options)', async () => {
422
- const { registry } = makeRegistry({ delivered: true });
423
- // The same channel id registered by two connections: a resolved target names a
424
- // channel by id alone, so either server's reply could leave through the other.
425
- await registry.handleChanged('discord-a', {
426
- added: [{ id: 'chan:7', type: 'discord', label: '#shared-a', direction: 'bidirectional' }],
427
- });
428
- await registry.handleChanged('discord-b', {
429
- added: [{ id: 'chan:7', type: 'discord', label: '#shared-b', direction: 'bidirectional' }],
430
- });
431
- assert.equal(registry.proseTargetFor('chan:7', 'discord-a'), undefined);
432
- assert.equal(registry.proseTargetFor('chan:7', 'discord-b'), undefined);
433
- assert.equal(registry.proseTargetFor('chan:7'), undefined);
434
- // An id with whitespace and a label with whitespace: nothing parses as one target.
435
- await registry.handleChanged('discord-a', {
436
- added: [{ id: 'thread 42', type: 'discord', label: 'thread 42', direction: 'bidirectional' }],
437
- });
438
- assert.equal(registry.proseTargetFor('thread 42', 'discord-a'), undefined);
439
- // serverId is honoured: a channel registered only on discord-a isn't named for discord-b.
440
- await registry.handleChanged('discord-a', {
441
- added: [{ id: 'chan:8', type: 'discord', label: '#only-a', direction: 'bidirectional' }],
442
- });
443
- assert.equal(registry.proseTargetFor('chan:8', 'discord-a'), '#only-a');
444
- assert.equal(registry.proseTargetFor('chan:8', 'discord-b'), undefined);
445
- });
446
- //# sourceMappingURL=channel-registry-routing.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel-registry-routing.test.js","sourceRoot":"","sources":["../../test/channel-registry-routing.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=channel-registry-typing.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel-registry-typing.test.d.ts","sourceRoot":"","sources":["../../test/channel-registry-typing.test.ts"],"names":[],"mappings":""}