@moltzap/client 2026.812.0 → 2026.902.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 (392) hide show
  1. package/LICENSE +202 -21
  2. package/NOTICE +19 -0
  3. package/README.md +50 -0
  4. package/bin/moltzapd +9 -0
  5. package/dist/client-runtime.d.ts +10 -0
  6. package/dist/client-runtime.d.ts.map +1 -0
  7. package/dist/client-runtime.js +218 -0
  8. package/dist/client-runtime.js.map +1 -0
  9. package/dist/contract.d.ts +338 -0
  10. package/dist/contract.d.ts.map +1 -0
  11. package/dist/contract.js +213 -0
  12. package/dist/contract.js.map +1 -0
  13. package/dist/contract.types-check.d.ts +99 -0
  14. package/dist/contract.types-check.d.ts.map +1 -0
  15. package/dist/contract.types-check.js +7 -0
  16. package/dist/contract.types-check.js.map +1 -0
  17. package/dist/daemon/configuration.d.ts +46 -0
  18. package/dist/daemon/configuration.d.ts.map +1 -0
  19. package/dist/daemon/configuration.js +69 -0
  20. package/dist/daemon/configuration.js.map +1 -0
  21. package/dist/daemon/management.d.ts +23 -0
  22. package/dist/daemon/management.d.ts.map +1 -0
  23. package/dist/daemon/management.js +489 -0
  24. package/dist/daemon/management.js.map +1 -0
  25. package/dist/daemon/registration.d.ts +72 -0
  26. package/dist/daemon/registration.d.ts.map +1 -0
  27. package/dist/daemon/registration.js +109 -0
  28. package/dist/daemon/registration.js.map +1 -0
  29. package/dist/daemon/runtime/activation.d.ts +95 -0
  30. package/dist/daemon/runtime/activation.d.ts.map +1 -0
  31. package/dist/daemon/runtime/activation.js +99 -0
  32. package/dist/daemon/runtime/activation.js.map +1 -0
  33. package/dist/daemon/runtime/controller.d.ts +34 -0
  34. package/dist/daemon/runtime/controller.d.ts.map +1 -0
  35. package/dist/daemon/runtime/controller.js +106 -0
  36. package/dist/daemon/runtime/controller.js.map +1 -0
  37. package/dist/daemon/runtime/history-export.d.ts +23 -0
  38. package/dist/daemon/runtime/history-export.d.ts.map +1 -0
  39. package/dist/daemon/runtime/history-export.js +47 -0
  40. package/dist/daemon/runtime/history-export.js.map +1 -0
  41. package/dist/daemon/runtime/index.d.ts +24 -0
  42. package/dist/daemon/runtime/index.d.ts.map +1 -0
  43. package/dist/daemon/runtime/index.js +65 -0
  44. package/dist/daemon/runtime/index.js.map +1 -0
  45. package/dist/daemon/runtime/protocol.d.ts +63 -0
  46. package/dist/daemon/runtime/protocol.d.ts.map +1 -0
  47. package/dist/daemon/runtime/protocol.js +133 -0
  48. package/dist/daemon/runtime/protocol.js.map +1 -0
  49. package/dist/endpoint/addressing/index.d.ts +39 -0
  50. package/dist/endpoint/addressing/index.d.ts.map +1 -0
  51. package/dist/endpoint/addressing/index.js +114 -0
  52. package/dist/endpoint/addressing/index.js.map +1 -0
  53. package/dist/endpoint/engine-dissemination.d.ts +11 -0
  54. package/dist/endpoint/engine-dissemination.d.ts.map +1 -0
  55. package/dist/endpoint/engine-dissemination.js +71 -0
  56. package/dist/endpoint/engine-dissemination.js.map +1 -0
  57. package/dist/endpoint/engine-durability.d.ts +69 -0
  58. package/dist/endpoint/engine-durability.d.ts.map +1 -0
  59. package/dist/endpoint/engine-durability.js +210 -0
  60. package/dist/endpoint/engine-durability.js.map +1 -0
  61. package/dist/endpoint/engine-send.d.ts +50 -0
  62. package/dist/endpoint/engine-send.d.ts.map +1 -0
  63. package/dist/endpoint/engine-send.js +422 -0
  64. package/dist/endpoint/engine-send.js.map +1 -0
  65. package/dist/endpoint/engine-types.d.ts +132 -0
  66. package/dist/endpoint/engine-types.d.ts.map +1 -0
  67. package/dist/endpoint/engine-types.js +13 -0
  68. package/dist/endpoint/engine-types.js.map +1 -0
  69. package/dist/endpoint/engine.d.ts +14 -0
  70. package/dist/endpoint/engine.d.ts.map +1 -0
  71. package/dist/endpoint/engine.js +280 -0
  72. package/dist/endpoint/engine.js.map +1 -0
  73. package/dist/endpoint/protocol/evidence.d.ts +37 -0
  74. package/dist/endpoint/protocol/evidence.d.ts.map +1 -0
  75. package/dist/endpoint/protocol/evidence.js +80 -0
  76. package/dist/endpoint/protocol/evidence.js.map +1 -0
  77. package/dist/endpoint/protocol/index.d.ts +26 -0
  78. package/dist/endpoint/protocol/index.d.ts.map +1 -0
  79. package/dist/endpoint/protocol/index.js +543 -0
  80. package/dist/endpoint/protocol/index.js.map +1 -0
  81. package/dist/endpoint/recovery/barrier.d.ts +23 -0
  82. package/dist/endpoint/recovery/barrier.d.ts.map +1 -0
  83. package/dist/endpoint/recovery/barrier.js +47 -0
  84. package/dist/endpoint/recovery/barrier.js.map +1 -0
  85. package/dist/endpoint/recovery/index.d.ts +29 -0
  86. package/dist/endpoint/recovery/index.d.ts.map +1 -0
  87. package/dist/endpoint/recovery/index.js +489 -0
  88. package/dist/endpoint/recovery/index.js.map +1 -0
  89. package/dist/endpoint/recovery/reanchor/empty.d.ts +22 -0
  90. package/dist/endpoint/recovery/reanchor/empty.d.ts.map +1 -0
  91. package/dist/endpoint/recovery/reanchor/empty.js +163 -0
  92. package/dist/endpoint/recovery/reanchor/empty.js.map +1 -0
  93. package/dist/endpoint/recovery/reanchor/index.d.ts +30 -0
  94. package/dist/endpoint/recovery/reanchor/index.d.ts.map +1 -0
  95. package/dist/endpoint/recovery/reanchor/index.js +479 -0
  96. package/dist/endpoint/recovery/reanchor/index.js.map +1 -0
  97. package/dist/endpoint/recovery/state.d.ts +130 -0
  98. package/dist/endpoint/recovery/state.d.ts.map +1 -0
  99. package/dist/endpoint/recovery/state.js +296 -0
  100. package/dist/endpoint/recovery/state.js.map +1 -0
  101. package/dist/endpoint/recovery/store-evidence.d.ts +17 -0
  102. package/dist/endpoint/recovery/store-evidence.d.ts.map +1 -0
  103. package/dist/endpoint/recovery/store-evidence.js +79 -0
  104. package/dist/endpoint/recovery/store-evidence.js.map +1 -0
  105. package/dist/endpoint/recovery/store.d.ts +56 -0
  106. package/dist/endpoint/recovery/store.d.ts.map +1 -0
  107. package/dist/endpoint/recovery/store.js +499 -0
  108. package/dist/endpoint/recovery/store.js.map +1 -0
  109. package/dist/endpoint/representation-canonical.d.ts +17 -0
  110. package/dist/endpoint/representation-canonical.d.ts.map +1 -0
  111. package/dist/endpoint/representation-canonical.js +48 -0
  112. package/dist/endpoint/representation-canonical.js.map +1 -0
  113. package/dist/endpoint/representation-codec.d.ts +51 -0
  114. package/dist/endpoint/representation-codec.d.ts.map +1 -0
  115. package/dist/endpoint/representation-codec.js +159 -0
  116. package/dist/endpoint/representation-codec.js.map +1 -0
  117. package/dist/endpoint/representation-schemas.d.ts +1831 -0
  118. package/dist/endpoint/representation-schemas.d.ts.map +1 -0
  119. package/dist/endpoint/representation-schemas.js +195 -0
  120. package/dist/endpoint/representation-schemas.js.map +1 -0
  121. package/dist/endpoint/representation-verification.d.ts +79 -0
  122. package/dist/endpoint/representation-verification.d.ts.map +1 -0
  123. package/dist/endpoint/representation-verification.js +420 -0
  124. package/dist/endpoint/representation-verification.js.map +1 -0
  125. package/dist/endpoint/representation.d.ts +6 -0
  126. package/dist/endpoint/representation.d.ts.map +1 -0
  127. package/dist/endpoint/representation.js +8 -0
  128. package/dist/endpoint/representation.js.map +1 -0
  129. package/dist/endpoint/router-worker/index.d.ts +16 -0
  130. package/dist/endpoint/router-worker/index.d.ts.map +1 -0
  131. package/dist/endpoint/router-worker/index.js +547 -0
  132. package/dist/endpoint/router-worker/index.js.map +1 -0
  133. package/dist/endpoint/router-worker/types.d.ts +183 -0
  134. package/dist/endpoint/router-worker/types.d.ts.map +1 -0
  135. package/dist/endpoint/router-worker/types.js +31 -0
  136. package/dist/endpoint/router-worker/types.js.map +1 -0
  137. package/dist/endpoint/store/anchors.d.ts +83 -0
  138. package/dist/endpoint/store/anchors.d.ts.map +1 -0
  139. package/dist/endpoint/store/anchors.js +471 -0
  140. package/dist/endpoint/store/anchors.js.map +1 -0
  141. package/dist/endpoint/store/database/index.d.ts +6 -0
  142. package/dist/endpoint/store/database/index.d.ts.map +1 -0
  143. package/dist/endpoint/store/database/index.js +6 -0
  144. package/dist/endpoint/store/database/index.js.map +1 -0
  145. package/dist/endpoint/store/database/schema.d.ts +44 -0
  146. package/dist/endpoint/store/database/schema.d.ts.map +1 -0
  147. package/dist/endpoint/store/database/schema.js +345 -0
  148. package/dist/endpoint/store/database/schema.js.map +1 -0
  149. package/dist/endpoint/store/database/values.d.ts +119 -0
  150. package/dist/endpoint/store/database/values.d.ts.map +1 -0
  151. package/dist/endpoint/store/database/values.js +194 -0
  152. package/dist/endpoint/store/database/values.js.map +1 -0
  153. package/dist/endpoint/store/deliveries.d.ts +38 -0
  154. package/dist/endpoint/store/deliveries.d.ts.map +1 -0
  155. package/dist/endpoint/store/deliveries.js +124 -0
  156. package/dist/endpoint/store/deliveries.js.map +1 -0
  157. package/dist/endpoint/store/dissemination.d.ts +27 -0
  158. package/dist/endpoint/store/dissemination.d.ts.map +1 -0
  159. package/dist/endpoint/store/dissemination.js +139 -0
  160. package/dist/endpoint/store/dissemination.js.map +1 -0
  161. package/dist/endpoint/store/index.d.ts +15 -0
  162. package/dist/endpoint/store/index.d.ts.map +1 -0
  163. package/dist/endpoint/store/index.js +76 -0
  164. package/dist/endpoint/store/index.js.map +1 -0
  165. package/dist/endpoint/store/management.d.ts +42 -0
  166. package/dist/endpoint/store/management.d.ts.map +1 -0
  167. package/dist/endpoint/store/management.js +259 -0
  168. package/dist/endpoint/store/management.js.map +1 -0
  169. package/dist/endpoint/store/outbound.d.ts +62 -0
  170. package/dist/endpoint/store/outbound.d.ts.map +1 -0
  171. package/dist/endpoint/store/outbound.js +278 -0
  172. package/dist/endpoint/store/outbound.js.map +1 -0
  173. package/dist/endpoint/store/records.d.ts +56 -0
  174. package/dist/endpoint/store/records.d.ts.map +1 -0
  175. package/dist/endpoint/store/records.js +352 -0
  176. package/dist/endpoint/store/records.js.map +1 -0
  177. package/dist/endpoint/store/rows/index.d.ts +138 -0
  178. package/dist/endpoint/store/rows/index.d.ts.map +1 -0
  179. package/dist/endpoint/store/rows/index.js +307 -0
  180. package/dist/endpoint/store/rows/index.js.map +1 -0
  181. package/dist/endpoint/store/types.d.ts +223 -0
  182. package/dist/endpoint/store/types.d.ts.map +1 -0
  183. package/dist/endpoint/store/types.js +15 -0
  184. package/dist/endpoint/store/types.js.map +1 -0
  185. package/dist/endpoint/store.d.ts +10 -0
  186. package/dist/endpoint/store.d.ts.map +1 -0
  187. package/dist/endpoint/store.js +6 -0
  188. package/dist/endpoint/store.js.map +1 -0
  189. package/dist/harness-mcp-contract.d.ts +101 -0
  190. package/dist/harness-mcp-contract.d.ts.map +1 -0
  191. package/dist/harness-mcp-contract.js +61 -0
  192. package/dist/harness-mcp-contract.js.map +1 -0
  193. package/dist/{harness-mcp-server.d.ts → harness-mcp-http.d.ts} +9 -8
  194. package/dist/harness-mcp-http.d.ts.map +1 -0
  195. package/dist/{harness-mcp-server.js → harness-mcp-http.js} +38 -60
  196. package/dist/harness-mcp-http.js.map +1 -0
  197. package/dist/harness-mcp-subscription.d.ts +12 -7
  198. package/dist/harness-mcp-subscription.d.ts.map +1 -1
  199. package/dist/harness-mcp-subscription.js +113 -100
  200. package/dist/harness-mcp-subscription.js.map +1 -1
  201. package/dist/harness-mcp-wire.d.ts +24 -49
  202. package/dist/harness-mcp-wire.d.ts.map +1 -1
  203. package/dist/harness-mcp-wire.js +381 -124
  204. package/dist/harness-mcp-wire.js.map +1 -1
  205. package/dist/index.d.ts +4 -10
  206. package/dist/index.d.ts.map +1 -1
  207. package/dist/index.js +6 -10
  208. package/dist/index.js.map +1 -1
  209. package/dist/management-runtime.d.ts +217 -0
  210. package/dist/management-runtime.d.ts.map +1 -0
  211. package/dist/management-runtime.js +127 -0
  212. package/dist/management-runtime.js.map +1 -0
  213. package/dist/server.d.ts +16 -0
  214. package/dist/server.d.ts.map +1 -0
  215. package/dist/server.js +46 -0
  216. package/dist/server.js.map +1 -0
  217. package/dist/server.types-check.d.ts +23 -0
  218. package/dist/server.types-check.d.ts.map +1 -0
  219. package/dist/server.types-check.js +7 -0
  220. package/dist/server.types-check.js.map +1 -0
  221. package/package.json +24 -52
  222. package/dist/agent-client.d.ts +0 -5
  223. package/dist/agent-client.d.ts.map +0 -1
  224. package/dist/agent-client.js +0 -3
  225. package/dist/agent-client.js.map +0 -1
  226. package/dist/auth.d.ts +0 -37
  227. package/dist/auth.d.ts.map +0 -1
  228. package/dist/auth.js +0 -79
  229. package/dist/auth.js.map +0 -1
  230. package/dist/bounded-map.d.ts +0 -32
  231. package/dist/bounded-map.d.ts.map +0 -1
  232. package/dist/bounded-map.js +0 -79
  233. package/dist/bounded-map.js.map +0 -1
  234. package/dist/channel-base/format-cross-conv.d.ts +0 -43
  235. package/dist/channel-base/format-cross-conv.d.ts.map +0 -1
  236. package/dist/channel-base/format-cross-conv.js +0 -65
  237. package/dist/channel-base/format-cross-conv.js.map +0 -1
  238. package/dist/channel-base/format-group-block.d.ts +0 -48
  239. package/dist/channel-base/format-group-block.d.ts.map +0 -1
  240. package/dist/channel-base/format-group-block.js +0 -62
  241. package/dist/channel-base/format-group-block.js.map +0 -1
  242. package/dist/channel-base/index.d.ts +0 -12
  243. package/dist/channel-base/index.d.ts.map +0 -1
  244. package/dist/channel-base/index.js +0 -16
  245. package/dist/channel-base/index.js.map +0 -1
  246. package/dist/channel-core-enrichment.d.ts +0 -38
  247. package/dist/channel-core-enrichment.d.ts.map +0 -1
  248. package/dist/channel-core-enrichment.js +0 -217
  249. package/dist/channel-core-enrichment.js.map +0 -1
  250. package/dist/channel-core-test-support.d.ts +0 -75
  251. package/dist/channel-core-test-support.d.ts.map +0 -1
  252. package/dist/channel-core-test-support.js +0 -74
  253. package/dist/channel-core-test-support.js.map +0 -1
  254. package/dist/channel-core.d.ts +0 -306
  255. package/dist/channel-core.d.ts.map +0 -1
  256. package/dist/channel-core.js +0 -365
  257. package/dist/channel-core.js.map +0 -1
  258. package/dist/config.d.ts +0 -33
  259. package/dist/config.d.ts.map +0 -1
  260. package/dist/config.js +0 -51
  261. package/dist/config.js.map +0 -1
  262. package/dist/config.test-utils.d.ts +0 -24
  263. package/dist/config.test-utils.d.ts.map +0 -1
  264. package/dist/config.test-utils.js +0 -57
  265. package/dist/config.test-utils.js.map +0 -1
  266. package/dist/harness/client-runtime.d.ts +0 -31
  267. package/dist/harness/client-runtime.d.ts.map +0 -1
  268. package/dist/harness/client-runtime.js +0 -121
  269. package/dist/harness/client-runtime.js.map +0 -1
  270. package/dist/harness/index.d.ts +0 -5
  271. package/dist/harness/index.d.ts.map +0 -1
  272. package/dist/harness/index.js +0 -5
  273. package/dist/harness/index.js.map +0 -1
  274. package/dist/harness/runtime.d.ts +0 -301
  275. package/dist/harness/runtime.d.ts.map +0 -1
  276. package/dist/harness/runtime.js +0 -165
  277. package/dist/harness/runtime.js.map +0 -1
  278. package/dist/harness-client.d.ts +0 -47
  279. package/dist/harness-client.d.ts.map +0 -1
  280. package/dist/harness-client.js +0 -76
  281. package/dist/harness-client.js.map +0 -1
  282. package/dist/harness-context-projection.d.ts +0 -35
  283. package/dist/harness-context-projection.d.ts.map +0 -1
  284. package/dist/harness-context-projection.js +0 -123
  285. package/dist/harness-context-projection.js.map +0 -1
  286. package/dist/harness-mcp-server.d.ts.map +0 -1
  287. package/dist/harness-mcp-server.js.map +0 -1
  288. package/dist/local-paths.d.ts +0 -11
  289. package/dist/local-paths.d.ts.map +0 -1
  290. package/dist/local-paths.js +0 -21
  291. package/dist/local-paths.js.map +0 -1
  292. package/dist/message-rendering.d.ts +0 -4
  293. package/dist/message-rendering.d.ts.map +0 -1
  294. package/dist/message-rendering.js +0 -8
  295. package/dist/message-rendering.js.map +0 -1
  296. package/dist/moltzapd-catalog.d.ts +0 -35
  297. package/dist/moltzapd-catalog.d.ts.map +0 -1
  298. package/dist/moltzapd-catalog.js +0 -117
  299. package/dist/moltzapd-catalog.js.map +0 -1
  300. package/dist/moltzapd-child-ipc.d.ts +0 -26
  301. package/dist/moltzapd-child-ipc.d.ts.map +0 -1
  302. package/dist/moltzapd-child-ipc.js +0 -31
  303. package/dist/moltzapd-child-ipc.js.map +0 -1
  304. package/dist/moltzapd-child.d.ts +0 -55
  305. package/dist/moltzapd-child.d.ts.map +0 -1
  306. package/dist/moltzapd-child.js +0 -225
  307. package/dist/moltzapd-child.js.map +0 -1
  308. package/dist/moltzapd-main.d.ts +0 -3
  309. package/dist/moltzapd-main.d.ts.map +0 -1
  310. package/dist/moltzapd-main.js +0 -18
  311. package/dist/moltzapd-main.js.map +0 -1
  312. package/dist/moltzapd-registration.d.ts +0 -40
  313. package/dist/moltzapd-registration.d.ts.map +0 -1
  314. package/dist/moltzapd-registration.js +0 -59
  315. package/dist/moltzapd-registration.js.map +0 -1
  316. package/dist/moltzapd.d.ts +0 -85
  317. package/dist/moltzapd.d.ts.map +0 -1
  318. package/dist/moltzapd.js +0 -150
  319. package/dist/moltzapd.js.map +0 -1
  320. package/dist/notification/__tests__/subscribe-signatures.types-check.d.ts +0 -53
  321. package/dist/notification/__tests__/subscribe-signatures.types-check.d.ts.map +0 -1
  322. package/dist/notification/__tests__/subscribe-signatures.types-check.js +0 -29
  323. package/dist/notification/__tests__/subscribe-signatures.types-check.js.map +0 -1
  324. package/dist/notification/errors.d.ts +0 -41
  325. package/dist/notification/errors.d.ts.map +0 -1
  326. package/dist/notification/errors.js +0 -24
  327. package/dist/notification/errors.js.map +0 -1
  328. package/dist/notification/index.d.ts +0 -6
  329. package/dist/notification/index.d.ts.map +0 -1
  330. package/dist/notification/index.js +0 -6
  331. package/dist/notification/index.js.map +0 -1
  332. package/dist/notification/stream.d.ts +0 -75
  333. package/dist/notification/stream.d.ts.map +0 -1
  334. package/dist/notification/stream.js +0 -30
  335. package/dist/notification/stream.js.map +0 -1
  336. package/dist/notification/trace.d.ts +0 -10
  337. package/dist/notification/trace.d.ts.map +0 -1
  338. package/dist/notification/trace.js +0 -34
  339. package/dist/notification/trace.js.map +0 -1
  340. package/dist/pagination.d.ts +0 -52
  341. package/dist/pagination.d.ts.map +0 -1
  342. package/dist/pagination.js +0 -51
  343. package/dist/pagination.js.map +0 -1
  344. package/dist/presentation/index.d.ts +0 -3
  345. package/dist/presentation/index.d.ts.map +0 -1
  346. package/dist/presentation/index.js +0 -3
  347. package/dist/presentation/index.js.map +0 -1
  348. package/dist/presentation/state.d.ts +0 -77
  349. package/dist/presentation/state.d.ts.map +0 -1
  350. package/dist/presentation/state.js +0 -211
  351. package/dist/presentation/state.js.map +0 -1
  352. package/dist/profile.d.ts +0 -106
  353. package/dist/profile.d.ts.map +0 -1
  354. package/dist/profile.js +0 -171
  355. package/dist/profile.js.map +0 -1
  356. package/dist/service-event-trace.d.ts +0 -15
  357. package/dist/service-event-trace.d.ts.map +0 -1
  358. package/dist/service-event-trace.js +0 -35
  359. package/dist/service-event-trace.js.map +0 -1
  360. package/dist/service.d.ts +0 -228
  361. package/dist/service.d.ts.map +0 -1
  362. package/dist/service.js +0 -485
  363. package/dist/service.js.map +0 -1
  364. package/dist/test-utils/channel-service-fixture.d.ts +0 -53
  365. package/dist/test-utils/channel-service-fixture.d.ts.map +0 -1
  366. package/dist/test-utils/channel-service-fixture.js +0 -178
  367. package/dist/test-utils/channel-service-fixture.js.map +0 -1
  368. package/dist/test-utils/fake-service.d.ts +0 -82
  369. package/dist/test-utils/fake-service.d.ts.map +0 -1
  370. package/dist/test-utils/fake-service.js +0 -108
  371. package/dist/test-utils/fake-service.js.map +0 -1
  372. package/dist/test-utils/harness.d.ts +0 -27
  373. package/dist/test-utils/harness.d.ts.map +0 -1
  374. package/dist/test-utils/harness.js +0 -33
  375. package/dist/test-utils/harness.js.map +0 -1
  376. package/dist/test-utils/ids.d.ts +0 -21
  377. package/dist/test-utils/ids.d.ts.map +0 -1
  378. package/dist/test-utils/ids.js +0 -68
  379. package/dist/test-utils/ids.js.map +0 -1
  380. package/dist/test-utils/index.d.ts +0 -56
  381. package/dist/test-utils/index.d.ts.map +0 -1
  382. package/dist/test-utils/index.js +0 -67
  383. package/dist/test-utils/index.js.map +0 -1
  384. package/dist/test-utils/process/reserve-port.d.ts +0 -20
  385. package/dist/test-utils/process/reserve-port.d.ts.map +0 -1
  386. package/dist/test-utils/process/reserve-port.js +0 -41
  387. package/dist/test-utils/process/reserve-port.js.map +0 -1
  388. package/dist/test-utils/standalone-provisioning.d.ts +0 -22
  389. package/dist/test-utils/standalone-provisioning.d.ts.map +0 -1
  390. package/dist/test-utils/standalone-provisioning.js +0 -17
  391. package/dist/test-utils/standalone-provisioning.js.map +0 -1
  392. package/dist/tsconfig.tsbuildinfo +0 -1
package/dist/service.js DELETED
@@ -1,485 +0,0 @@
1
- import { agentId as AgentIdSchema, agentsList, } from "@moltzap/protocol/identity";
2
- import { conversationCreatedNotificationDefinition, } from "@moltzap/protocol/conversation";
3
- import { messageReceivedNotificationDefinition, messagesSend, } from "@moltzap/protocol/message";
4
- import { NotConnectedError, isNotificationDeliveryFor, } from "@moltzap/protocol/rpc";
5
- import { BoundedMap } from "./bounded-map.js";
6
- import { Deferred, Effect, Exit, Option, Schema, Scope, Stream } from "effect";
7
- import { MoltZapAgentClient } from "./agent-client.js";
8
- import { loadServiceConfig, } from "./config.js";
9
- import { notificationTraceRecord } from "./notification/trace.js";
10
- import { renderPart } from "./message-rendering.js";
11
- import { appendClientEventTrace } from "./service-event-trace.js";
12
- import { PresentationState, } from "./presentation/index.js";
13
- const CROSS_CONTEXT_TEXT_LIMIT = 120;
14
- const AGENT_LOOKUP_PAGE_SIZE = 100;
15
- const AGENT_LOOKUP_MAX_PAGES = 20;
16
- const decodeAgentId = Schema.decodeUnknownOption(AgentIdSchema);
17
- /**
18
- * Escape `<`, `>`, `&` so sender content can't escape a `<system-reminder>` block.
19
- * @param s Value supplied to the operation.
20
- * @returns The sanitize for system reminder result.
21
- */
22
- export function sanitizeForSystemReminder(s) {
23
- return s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
24
- }
25
- /**
26
- * Format CrossConversationEntry[] as a `&lt;system-reminder>` block. Adapters
27
- * that inline context into prompt text (nanoclaw) and `MoltZapService.getContext`
28
- * share this formatter so sanitization and line shape stay in one place.
29
- * @param entries Value supplied to the operation.
30
- * @param opts Value supplied to the operation.
31
- * @param opts.header Value supplied to the operation.
32
- * @returns The format cross conversation block result.
33
- */
34
- function formatCrossConversationBlock(entries, opts) {
35
- if (entries.length === 0) {
36
- return null;
37
- }
38
- const lines = entries.map((e) => {
39
- const safeSender = sanitizeForSystemReminder(e.senderName);
40
- const safeText = sanitizeForSystemReminder(e.text.slice(0, CROSS_CONTEXT_TEXT_LIMIT));
41
- return `@${safeSender} (${e.minutesAgo}m ago): (${e.count} new) "${safeText}"`;
42
- });
43
- return [
44
- "<system-reminder>",
45
- opts.header,
46
- ...lines,
47
- "</system-reminder>",
48
- ].join("\n");
49
- }
50
- function renderMessageText(message) {
51
- return message.parts.map(renderPart).join(" ");
52
- }
53
- /**
54
- * Per-conversation dedup window. `BoundedMap` evicts the oldest message id
55
- * when a new id arrives at capacity. 1000 × 36 bytes per UUID ≈ 36 KB per
56
- * conversation, which keeps replay protection negligible at the expected
57
- * conversation count.
58
- */
59
- const DEDUP_WINDOW_PER_CONV = 1000;
60
- /**
61
- * Invoke every handler with `arg`, isolating throws so one bad handler
62
- * doesn't abort the remaining fanout.
63
- * @param handlers Value supplied to the operation.
64
- * @param arg Value supplied to the operation.
65
- */
66
- function fanout(handlers, arg) {
67
- for (const h of handlers) {
68
- try {
69
- h(arg);
70
- }
71
- catch (err) {
72
- Effect.runFork(Effect.logError("notification handler threw", err));
73
- }
74
- }
75
- }
76
- /**
77
- * Stateful MoltZap client that manages connection, conversation tracking,
78
- * agent name resolution, and cross-conversation context generation.
79
- *
80
- * API contract: **every fallible method returns `Effect`.** No `*Async`
81
- * Promise siblings — async/await consumers run the Effect at the edge
82
- * with `Effect.runPromise`. Keep this class Effect-only so downstream
83
- * callers compose failures and cancellation explicitly.
84
- */
85
- export class MoltZapService {
86
- client = null;
87
- connectedValue = false;
88
- shutdownCompletion = null;
89
- /**
90
- * Service-owned scope. Opened in `connect()`, owns the
91
- * `subscribeAll → Stream.runForEach` fan-out fiber. Closed in `close()` so
92
- * the fiber terminates with the service.
93
- *
94
- * Held off the public `connect()` signature so callers do not need to
95
- * thread a `Scope` requirement.
96
- */
97
- serviceScope = null;
98
- presentationState = new PresentationState();
99
- /**
100
- * The branded outer and inner keys keep conversation and message ids from
101
- * crossing accidentally while each conversation owns its eviction window.
102
- */
103
- seenMessageIds = new Map();
104
- handlers = {
105
- message: [],
106
- rawNotification: [],
107
- disconnect: [],
108
- };
109
- ownAgentIdValue;
110
- opts;
111
- constructor(opts) {
112
- this.opts = opts;
113
- // The empty HelloOk carries no identity; `ownAgentId` is the client's
114
- // registered/stored id, available before the handshake.
115
- this.ownAgentIdValue = opts.agentId;
116
- }
117
- static fromConfig(config) {
118
- return new MoltZapService(config);
119
- }
120
- static make(profileName) {
121
- return loadServiceConfig(profileName).pipe(Effect.map((config) => MoltZapService.fromConfig(config)));
122
- }
123
- get connected() {
124
- return this.connectedValue;
125
- }
126
- get ownAgentId() {
127
- return this.ownAgentIdValue;
128
- }
129
- /**
130
- * Effect-native: compose via `yield*` or bridge at the edge via `Effect.runPromise`.
131
- * @returns The client result.
132
- */
133
- connect() {
134
- return Effect.gen(function* () {
135
- // A new connection never takes ownership while resources from the
136
- // preceding lifecycle are still closing.
137
- while (this.shutdownCompletion !== null) {
138
- const priorShutdown = this.shutdownCompletion;
139
- yield* Deferred.await(priorShutdown);
140
- if (this.shutdownCompletion === priorShutdown) {
141
- this.shutdownCompletion = null;
142
- }
143
- }
144
- const client = new MoltZapAgentClient({
145
- serverUrl: this.opts.serverUrl,
146
- agentKey: this.opts.agentKey,
147
- // The body doesn't branch on close metadata today; the signature is
148
- // kept explicit so a future disconnect-handler chain can plumb
149
- // code/reason through.
150
- onDisconnect: () => {
151
- this.connectedValue = false;
152
- fanout(this.handlers.disconnect, undefined);
153
- },
154
- });
155
- this.client = client;
156
- // `subscribeAll().pipe(Stream.runForEach, …)` is forked into a
157
- // service-owned scope. The Stream is materialized BEFORE `connect()` so
158
- // subscriptions are registered with the registry pre-handshake (a
159
- // pre-connect-legal operation).
160
- //
161
- // Stream errors of type `NotConnectedError` are surfaced on the
162
- // fiber's failure channel only when the client transitions to
163
- // terminal closed state (close() path); `Effect.catchAll` here
164
- // would swallow them silently, so we route through `Effect.logError`
165
- // before the fiber exits.
166
- const serviceScope = yield* Scope.make();
167
- this.serviceScope = serviceScope;
168
- const fanoutEffect = client.subscribeAll().pipe(Stream.runForEach((notification) => Effect.sync(() => {
169
- this.handleNotification(notification);
170
- })), Effect.catchAll((cause) => Effect.logWarning("MoltZapService notification fan-out terminated", cause)), Effect.asVoid);
171
- yield* Effect.forkIn(fanoutEffect, serviceScope);
172
- const helloOk = yield* client.connect();
173
- this.connectedValue = true;
174
- return helloOk;
175
- }.bind(this));
176
- }
177
- /**
178
- * Returns a lazy teardown effect that resolves after the service's owned
179
- * transports and notification scope close.
180
- *
181
- * @returns Completion of the service-owned cleanup.
182
- * @internal
183
- */
184
- shutdown() {
185
- return Effect.suspend(() => this.beginShutdown());
186
- }
187
- beginShutdown() {
188
- if (this.shutdownCompletion !== null) {
189
- return Deferred.await(this.shutdownCompletion);
190
- }
191
- const shutdownCompletion = Effect.runSync(Deferred.make());
192
- this.shutdownCompletion = shutdownCompletion;
193
- this.connectedValue = false;
194
- const scopeToClose = this.serviceScope;
195
- const clientToClose = this.client;
196
- this.serviceScope = null;
197
- this.client = null;
198
- const closeScope = scopeToClose === null
199
- ? Effect.void
200
- : Scope.close(scopeToClose, Exit.void);
201
- const closeClient = clientToClose === null ? Effect.void : clientToClose.close();
202
- Effect.runSync(this.presentationState.reset());
203
- this.seenMessageIds.clear();
204
- // Handlers are preserved across explicit close()/connect() cycles.
205
- // MoltZapChannelCore subscribes once in its constructor; clearing handlers
206
- // here would silently drop inbound dispatch after the next connect.
207
- return Effect.uninterruptible(Effect.all([closeScope.pipe(Effect.zipRight(closeClient))], {
208
- discard: true,
209
- }).pipe(Effect.ensuring(Deferred.succeed(shutdownCompletion, undefined).pipe(Effect.asVoid))));
210
- }
211
- /**
212
- * Starts service teardown for callers that use the legacy synchronous
213
- * lifecycle boundary.
214
- */
215
- close() {
216
- Effect.runFork(this.beginShutdown());
217
- }
218
- // --- Conversations ---
219
- getConversation(convId) {
220
- return this.presentationState.getConversation(convId);
221
- }
222
- getConversations() {
223
- return this.presentationState.getConversations();
224
- }
225
- // --- Messages ---
226
- getHistory(convId, limit) {
227
- const historyLimit = limit ?? 0;
228
- return this.presentationState.getHistory(convId, historyLimit);
229
- }
230
- // --- Agent Names ---
231
- getAgentName(agentId) {
232
- return this.presentationState.getAgentName(agentId);
233
- }
234
- /**
235
- * Cache-first agent-name lookup. Never fails: falls back to `agentId`
236
- * when the RPC errors or the server has no record. The error path logs
237
- * so ops can see repeated lookup failures; the empty-response path is
238
- * silent (a cold agent is an expected transient state).
239
- * @param agentId Identifier of the agent targeted by the operation.
240
- * @returns The decoded d agent id.
241
- */
242
- resolveAgentName(agentId) {
243
- return Effect.gen(function* () {
244
- const decodedAgentId = Option.getOrUndefined(decodeAgentId(agentId));
245
- if (decodedAgentId === undefined) {
246
- return agentId;
247
- }
248
- const cached = this.presentationState.getAgentName(agentId);
249
- if (cached !== undefined) {
250
- return cached;
251
- }
252
- return yield* this.cacheVisibleAgentNamesForIds(new Set([decodedAgentId])).pipe(Effect.map(() => {
253
- const resolved = this.presentationState.getAgentName(agentId);
254
- return resolved ?? agentId;
255
- }), Effect.catchAll((err) => Effect.logWarning("agent/identity/agents/list failed; falling back to agentId").pipe(Effect.annotateLogs({ agentId, err: String(err) }), Effect.as(agentId))));
256
- }.bind(this));
257
- }
258
- // --- Messaging ---
259
- /**
260
- * Send a text message into a conversation.
261
- *
262
- * ```mermaid
263
- * sequenceDiagram
264
- * participant caller
265
- * participant svc as MoltZapService
266
- * participant ws as MoltZapAgentClient
267
- * participant server
268
- *
269
- * caller->>svc: send(convId, text, opts?)
270
- * svc->>ws: sendRpc(MessagesSend, params)
271
- * Note over ws: stateRef None → fail NotConnectedError; otherwise allocate request id, encode frame
272
- * ws->>server: {jsonrpc, method agent/message/send, id, params}
273
- * Note over ws: Deferred raced against 30s timeout
274
- * server-->>ws: {result, id} or {error, id}
275
- * Note over ws: reader fiber decodes, resolves the Deferred
276
- * ws-->>svc: result or RpcServerError or RpcTimeoutError
277
- * svc-->>caller: Effect.void
278
- * ```
279
- *
280
- * @param conversationId Value supplied to the operation.
281
- * @param text Text to process.
282
- * @returns The send result.
283
- */
284
- send(conversationId, text) {
285
- return Effect.asVoid(this.call(messagesSend.name, {
286
- conversationId,
287
- parts: [{ type: "text", text }],
288
- }));
289
- }
290
- cacheAgentNames(agents) {
291
- return this.presentationState.cacheAgentNames(agents);
292
- }
293
- agentListParams(cursor) {
294
- return cursor === undefined
295
- ? { limit: AGENT_LOOKUP_PAGE_SIZE }
296
- : { limit: AGENT_LOOKUP_PAGE_SIZE, cursor };
297
- }
298
- cacheVisibleAgentNamesForIds(agentIds) {
299
- return Effect.gen(function* () {
300
- const missing = new Set(agentIds);
301
- let cursor = undefined;
302
- for (let page = 0; page < AGENT_LOOKUP_MAX_PAGES; page++) {
303
- const params = this.agentListParams(cursor);
304
- const result = yield* this.call(agentsList.name, params);
305
- yield* this.cacheAgentNames(result.agents);
306
- for (const agent of result.agents) {
307
- missing.delete(agent.id);
308
- }
309
- if (missing.size === 0 || result.nextCursor === undefined) {
310
- return;
311
- }
312
- cursor = result.nextCursor;
313
- }
314
- }.bind(this));
315
- }
316
- findVisibleAgentByName(agentName) {
317
- return Effect.gen(function* () {
318
- let cursor = undefined;
319
- for (let page = 0; page < AGENT_LOOKUP_MAX_PAGES; page++) {
320
- const params = this.agentListParams(cursor);
321
- const result = yield* this.call(agentsList.name, params);
322
- yield* this.cacheAgentNames(result.agents);
323
- const hit = result.agents.find((agent) => agent.name === agentName);
324
- if (hit !== undefined || result.nextCursor === undefined) {
325
- return hit;
326
- }
327
- cursor = result.nextCursor;
328
- }
329
- return undefined;
330
- }.bind(this));
331
- }
332
- // --- Cross-Conversation Context ---
333
- /**
334
- * Generate a system reminder with updates from other conversations.
335
- * Each conversation has its own view of what's "new" — markers are tracked
336
- * per viewing conversation and advanced after notification.
337
- * @param currentConvId Value supplied to the operation.
338
- * @param opts Value supplied to the operation.
339
- * @returns The context options result.
340
- */
341
- getContext(currentConvId, opts) {
342
- const contextOptions = opts ?? {};
343
- const { entries, commit } = this.peekContextEntries(currentConvId, contextOptions);
344
- if (entries.length === 0) {
345
- return null;
346
- }
347
- commit();
348
- return formatCrossConversationBlock(entries, {
349
- header: `Recent updates (you are in conv:${currentConvId}):`,
350
- });
351
- }
352
- /**
353
- * Return recent activity in other conversations without advancing any state.
354
- * Call `commit()` on the result to mark the returned messages as seen so
355
- * subsequent peeks return only what's new. A caller that reads without
356
- * committing can re-peek idempotently.
357
- * @param currentConvId Value supplied to the operation.
358
- * @param opts Value supplied to the operation.
359
- * @param opts.maxConversations Value supplied to the operation.
360
- * @param opts.maxMessagesPerConv Value supplied to the operation.
361
- * @returns The max convs result.
362
- */
363
- peekContextEntries(currentConvId, opts) {
364
- const contextOptions = opts ?? {};
365
- return this.presentationState.peekContextEntries(currentConvId, renderMessageText, contextOptions);
366
- }
367
- /**
368
- * Return all new messages from all other conversations as full transcripts,
369
- * sorted chronologically. Uses the same lastNotified markers as
370
- * peekContextEntries. Call commit() to advance markers.
371
- * @param currentConvId Value supplied to the operation.
372
- * @returns The all messages result.
373
- */
374
- peekFullMessages(currentConvId) {
375
- return this.presentationState.peekFullMessages(currentConvId, renderMessageText);
376
- }
377
- // --- Notifications ---
378
- on(notification, handler) {
379
- this.handlers[notification].push(handler);
380
- }
381
- // --- RPC passthrough ---
382
- /**
383
- * Outbound RPC, typed per method — delegates to the agent client's typed
384
- * `call`. `call("agent/identity/agents/list", payload)` recovers the result and that
385
- * method's tagged-error union; an app-only method does not typecheck.
386
- * @param tag Value supplied to the operation.
387
- * @param payload Value supplied to the operation.
388
- * @param opts Value supplied to the operation.
389
- * @returns The client result.
390
- */
391
- call(tag, payload, opts) {
392
- return Effect.suspend(() => {
393
- const client = this.client;
394
- if (!client) {
395
- return Effect.fail(new NotConnectedError({ message: "Not connected" }));
396
- }
397
- return client.call(tag, payload, opts);
398
- });
399
- }
400
- callDefinition(definition, payload, opts) {
401
- return Effect.suspend(() => {
402
- const client = this.client;
403
- if (!client) {
404
- return Effect.fail(new NotConnectedError({ message: "Not connected" }));
405
- }
406
- return client.callDefinition(definition, payload, opts);
407
- });
408
- }
409
- // --- Internals ---
410
- handleNotification(notification) {
411
- this.recordNotificationTrace(notification);
412
- fanout(this.handlers.rawNotification, notification);
413
- this.dispatchTypedNotification(notification);
414
- }
415
- recordNotificationTrace(notification) {
416
- Effect.runFork(appendClientEventTrace(notificationTraceRecord(notification, this.ownAgentIdValue)));
417
- }
418
- dispatchTypedNotification(notification) {
419
- if (this.dispatchMessageNotification(notification)) {
420
- return;
421
- }
422
- this.dispatchConversationNotification(notification);
423
- }
424
- dispatchMessageNotification(notification) {
425
- if (isNotificationDeliveryFor(notification, messageReceivedNotificationDefinition)) {
426
- this.handleMessageReceivedNotification(notification.params);
427
- return true;
428
- }
429
- return false;
430
- }
431
- dispatchConversationNotification(notification) {
432
- if (isNotificationDeliveryFor(notification, conversationCreatedNotificationDefinition)) {
433
- this.handleConversationCreatedNotification(notification.params);
434
- return true;
435
- }
436
- return false;
437
- }
438
- /**
439
- * Record `messageId` in the per-conversation dedup window. Returns
440
- * `true` when the id is new (caller proceeds), `false` when the id is
441
- * a duplicate within the window (caller drops). On a new id, evicts
442
- * the oldest entry if the window is full.
443
- *
444
- * Bound to the live `agent/message/received` notification path: a single
445
- * server-side broadcast that surfaces the same id twice (network
446
- * replay, dual subscription) is suppressed to one
447
- * `on("message", ...)` event. `agent/message/list` returns raw history
448
- * unfiltered; consumers that combine both feeds dedup themselves.
449
- * @param convId Value supplied to the operation.
450
- * @param msgId Value supplied to the operation.
451
- * @returns The dedup window result.
452
- */
453
- recordMessageIdIfNew(convId, msgId) {
454
- let dedupWindow = this.seenMessageIds.get(convId);
455
- if (dedupWindow === undefined) {
456
- dedupWindow = new BoundedMap(DEDUP_WINDOW_PER_CONV);
457
- this.seenMessageIds.set(convId, dedupWindow);
458
- }
459
- if (dedupWindow.has(msgId)) {
460
- // Replays retain their original FIFO age so repeated delivery cannot
461
- // keep an old id resident forever.
462
- return false;
463
- }
464
- dedupWindow.set(msgId, true);
465
- return true;
466
- }
467
- handleMessageReceivedNotification(notification) {
468
- const msg = notification.message;
469
- const convId = msg.conversationId;
470
- if (!this.recordMessageIdIfNew(convId, msg.id)) {
471
- return;
472
- }
473
- this.presentationState.storeMessage(msg.conversationId, msg);
474
- // Name resolution is driven lazily by channel-core's serialized consumer
475
- // via resolveAgentName(), which populates the presentation name cache on
476
- // first miss and hits it on every subsequent message.
477
- if (msg.senderId !== this.ownAgentIdValue) {
478
- fanout(this.handlers.message, { message: msg });
479
- }
480
- }
481
- handleConversationCreatedNotification(notification) {
482
- this.presentationState.storeConversation(notification);
483
- }
484
- }
485
- //# sourceMappingURL=service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
@@ -1,53 +0,0 @@
1
- /** Test fixture factory for ChannelService-shaped objects. */
2
- import type { Message } from "@moltzap/protocol/message";
3
- import type { ChannelService } from "../channel-core.js";
4
- import type { CrossConversationEntry, CrossConvMessage } from "../service.js";
5
- interface SentReply {
6
- convId: string;
7
- text: string;
8
- }
9
- interface FixtureConversationMeta {
10
- type: string;
11
- name?: string;
12
- participants: string[];
13
- }
14
- /** Fire events on the fixture service. */
15
- export interface ChannelServiceEmit {
16
- message(msg: Message): void;
17
- disconnect(): void;
18
- }
19
- /** Describes channel service state. */
20
- export interface ChannelServiceState {
21
- setConversation(id: string, meta: FixtureConversationMeta): void;
22
- setAgentName(id: string, name: string): void;
23
- setContextEntries(currentConvId: string, entries: CrossConversationEntry[]): void;
24
- setFullMessages(currentConvId: string, messages: CrossConvMessage[]): void;
25
- setResolveAgentNameFailure(agentId: string, err: Error): void;
26
- setConnectResult(result: unknown): void;
27
- readonly sent: readonly SentReply[];
28
- readonly connectCalls: {
29
- count: number;
30
- };
31
- readonly closeCalls: {
32
- count: number;
33
- };
34
- resolveAgentNameCallCount(agentId: string): number;
35
- }
36
- /** Describes fake channel service. */
37
- export interface FakeChannelService {
38
- service: ChannelService;
39
- emit: ChannelServiceEmit;
40
- state: ChannelServiceState;
41
- }
42
- /** Configures create fake channel service. */
43
- export interface CreateFakeChannelServiceOptions {
44
- ownAgentId?: string;
45
- }
46
- /**
47
- * Creates fake channel service.
48
- * @param opts Value supplied to the operation.
49
- * @returns The created fake channel service.
50
- */
51
- export declare function createFakeChannelService(opts?: CreateFakeChannelServiceOptions): FakeChannelService;
52
- export {};
53
- //# sourceMappingURL=channel-service-fixture.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel-service-fixture.d.ts","sourceRoot":"","sources":["../../src/test-utils/channel-service-fixture.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAI9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAO9E,UAAU,SAAS;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAOD,UAAU,uBAAuB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AA+BD,0CAA0C;AAC1C,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IAC5B,UAAU,IAAI,IAAI,CAAC;CACpB;AAED,uCAAuC;AACvC,MAAM,WAAW,mBAAmB;IAClC,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,GAAG,IAAI,CAAC;IACjE,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,iBAAiB,CACf,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,sBAAsB,EAAE,GAChC,IAAI,CAAC;IACR,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;IAC3E,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC;IAC9D,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,SAAS,EAAE,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CACpD;AAED,sCAAsC;AACtC,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,mBAAmB,CAAC;CAC5B;AAED,8CAA8C;AAC9C,MAAM,WAAW,+BAA+B;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAgMD;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,GAAE,+BAAoC,GACzC,kBAAkB,CAOpB"}