actor-ts 0.9.1 → 0.11.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 (1277) hide show
  1. package/CHANGELOG.md +703 -1
  2. package/README.md +294 -269
  3. package/dist/Actor.d.ts +6 -6
  4. package/dist/Actor.d.ts.map +1 -1
  5. package/dist/Actor.js.map +1 -1
  6. package/dist/ActorContext.d.ts +7 -7
  7. package/dist/ActorContext.d.ts.map +1 -1
  8. package/dist/ActorPath.js +8 -8
  9. package/dist/ActorPath.js.map +1 -1
  10. package/dist/ActorRef.d.ts +6 -6
  11. package/dist/ActorRef.d.ts.map +1 -1
  12. package/dist/ActorRef.js.map +1 -1
  13. package/dist/ActorSystem.d.ts +3 -38
  14. package/dist/ActorSystem.d.ts.map +1 -1
  15. package/dist/ActorSystem.js +23 -23
  16. package/dist/ActorSystem.js.map +1 -1
  17. package/dist/ActorSystemOptions.d.ts +91 -0
  18. package/dist/ActorSystemOptions.d.ts.map +1 -0
  19. package/dist/ActorSystemOptions.js +45 -0
  20. package/dist/ActorSystemOptions.js.map +1 -0
  21. package/dist/CoordinatedShutdown.js +3 -3
  22. package/dist/CoordinatedShutdown.js.map +1 -1
  23. package/dist/Logger.d.ts +63 -0
  24. package/dist/Logger.d.ts.map +1 -1
  25. package/dist/Logger.js +146 -0
  26. package/dist/Logger.js.map +1 -1
  27. package/dist/Props.d.ts +13 -13
  28. package/dist/Props.d.ts.map +1 -1
  29. package/dist/Props.js.map +1 -1
  30. package/dist/Router.d.ts +4 -4
  31. package/dist/Router.d.ts.map +1 -1
  32. package/dist/Router.js +4 -4
  33. package/dist/Router.js.map +1 -1
  34. package/dist/Supervision.js +3 -3
  35. package/dist/Supervision.js.map +1 -1
  36. package/dist/cache/CacheExtension.d.ts +7 -0
  37. package/dist/cache/CacheExtension.d.ts.map +1 -1
  38. package/dist/cache/CacheExtension.js +17 -1
  39. package/dist/cache/CacheExtension.js.map +1 -1
  40. package/dist/cache/InMemoryCache.d.ts +39 -0
  41. package/dist/cache/InMemoryCache.d.ts.map +1 -1
  42. package/dist/cache/InMemoryCache.js +99 -20
  43. package/dist/cache/InMemoryCache.js.map +1 -1
  44. package/dist/cache/InMemoryCacheOptions.d.ts +50 -0
  45. package/dist/cache/InMemoryCacheOptions.d.ts.map +1 -0
  46. package/dist/cache/InMemoryCacheOptions.js +51 -0
  47. package/dist/cache/InMemoryCacheOptions.js.map +1 -0
  48. package/dist/cache/MemcachedCache.d.ts +2 -12
  49. package/dist/cache/MemcachedCache.d.ts.map +1 -1
  50. package/dist/cache/MemcachedCache.js +13 -10
  51. package/dist/cache/MemcachedCache.js.map +1 -1
  52. package/dist/cache/MemcachedCacheOptions.d.ts +46 -0
  53. package/dist/cache/MemcachedCacheOptions.d.ts.map +1 -0
  54. package/dist/cache/MemcachedCacheOptions.js +42 -0
  55. package/dist/cache/MemcachedCacheOptions.js.map +1 -0
  56. package/dist/cache/RedisCache.d.ts +2 -22
  57. package/dist/cache/RedisCache.d.ts.map +1 -1
  58. package/dist/cache/RedisCache.js +16 -13
  59. package/dist/cache/RedisCache.js.map +1 -1
  60. package/dist/cache/RedisCacheOptions.d.ts +66 -0
  61. package/dist/cache/RedisCacheOptions.d.ts.map +1 -0
  62. package/dist/cache/RedisCacheOptions.js +62 -0
  63. package/dist/cache/RedisCacheOptions.js.map +1 -0
  64. package/dist/cache/index.d.ts +8 -2
  65. package/dist/cache/index.d.ts.map +1 -1
  66. package/dist/cache/index.js +3 -0
  67. package/dist/cache/index.js.map +1 -1
  68. package/dist/cluster/Cluster.d.ts +7 -66
  69. package/dist/cluster/Cluster.d.ts.map +1 -1
  70. package/dist/cluster/Cluster.js +97 -90
  71. package/dist/cluster/Cluster.js.map +1 -1
  72. package/dist/cluster/ClusterBootstrap.d.ts +6 -84
  73. package/dist/cluster/ClusterBootstrap.d.ts.map +1 -1
  74. package/dist/cluster/ClusterBootstrap.js +37 -23
  75. package/dist/cluster/ClusterBootstrap.js.map +1 -1
  76. package/dist/cluster/ClusterBootstrapOptions.d.ts +158 -0
  77. package/dist/cluster/ClusterBootstrapOptions.d.ts.map +1 -0
  78. package/dist/cluster/ClusterBootstrapOptions.js +121 -0
  79. package/dist/cluster/ClusterBootstrapOptions.js.map +1 -0
  80. package/dist/cluster/ClusterClient.d.ts +21 -31
  81. package/dist/cluster/ClusterClient.d.ts.map +1 -1
  82. package/dist/cluster/ClusterClient.js +34 -20
  83. package/dist/cluster/ClusterClient.js.map +1 -1
  84. package/dist/cluster/ClusterClientOptions.d.ts +76 -0
  85. package/dist/cluster/ClusterClientOptions.d.ts.map +1 -0
  86. package/dist/cluster/ClusterClientOptions.js +61 -0
  87. package/dist/cluster/ClusterClientOptions.js.map +1 -0
  88. package/dist/cluster/ClusterClientReceptionist.d.ts +4 -10
  89. package/dist/cluster/ClusterClientReceptionist.d.ts.map +1 -1
  90. package/dist/cluster/ClusterClientReceptionist.js +17 -13
  91. package/dist/cluster/ClusterClientReceptionist.js.map +1 -1
  92. package/dist/cluster/ClusterClientReceptionistOptions.d.ts +38 -0
  93. package/dist/cluster/ClusterClientReceptionistOptions.d.ts.map +1 -0
  94. package/dist/cluster/ClusterClientReceptionistOptions.js +32 -0
  95. package/dist/cluster/ClusterClientReceptionistOptions.js.map +1 -0
  96. package/dist/cluster/ClusterOptions.d.ts +122 -0
  97. package/dist/cluster/ClusterOptions.d.ts.map +1 -0
  98. package/dist/cluster/ClusterOptions.js +98 -0
  99. package/dist/cluster/ClusterOptions.js.map +1 -0
  100. package/dist/cluster/FailureDetector.d.ts +4 -11
  101. package/dist/cluster/FailureDetector.d.ts.map +1 -1
  102. package/dist/cluster/FailureDetector.js +10 -7
  103. package/dist/cluster/FailureDetector.js.map +1 -1
  104. package/dist/cluster/FailureDetectorOptions.d.ts +49 -0
  105. package/dist/cluster/FailureDetectorOptions.d.ts.map +1 -0
  106. package/dist/cluster/FailureDetectorOptions.js +48 -0
  107. package/dist/cluster/FailureDetectorOptions.js.map +1 -0
  108. package/dist/cluster/Member.js +2 -2
  109. package/dist/cluster/Member.js.map +1 -1
  110. package/dist/cluster/PhiAccrualFailureDetector.d.ts +4 -20
  111. package/dist/cluster/PhiAccrualFailureDetector.d.ts.map +1 -1
  112. package/dist/cluster/PhiAccrualFailureDetector.js +40 -44
  113. package/dist/cluster/PhiAccrualFailureDetector.js.map +1 -1
  114. package/dist/cluster/PhiAccrualOptions.d.ts +64 -0
  115. package/dist/cluster/PhiAccrualOptions.d.ts.map +1 -0
  116. package/dist/cluster/PhiAccrualOptions.js +68 -0
  117. package/dist/cluster/PhiAccrualOptions.js.map +1 -0
  118. package/dist/cluster/Protocol.d.ts +10 -10
  119. package/dist/cluster/Protocol.d.ts.map +1 -1
  120. package/dist/cluster/Protocol.js +1 -1
  121. package/dist/cluster/RefCodec.js +11 -1
  122. package/dist/cluster/RefCodec.js.map +1 -1
  123. package/dist/cluster/RemoteActorRef.d.ts +2 -2
  124. package/dist/cluster/RemoteActorRef.d.ts.map +1 -1
  125. package/dist/cluster/RemoteActorRef.js.map +1 -1
  126. package/dist/cluster/Transport.d.ts +3 -3
  127. package/dist/cluster/Transport.d.ts.map +1 -1
  128. package/dist/cluster/Transport.js +2 -2
  129. package/dist/cluster/Transport.js.map +1 -1
  130. package/dist/cluster/downing/KeepMajority.d.ts +3 -6
  131. package/dist/cluster/downing/KeepMajority.d.ts.map +1 -1
  132. package/dist/cluster/downing/KeepMajority.js +6 -6
  133. package/dist/cluster/downing/KeepMajority.js.map +1 -1
  134. package/dist/cluster/downing/KeepMajorityOptions.d.ts +26 -0
  135. package/dist/cluster/downing/KeepMajorityOptions.d.ts.map +1 -0
  136. package/dist/cluster/downing/KeepMajorityOptions.js +19 -0
  137. package/dist/cluster/downing/KeepMajorityOptions.js.map +1 -0
  138. package/dist/cluster/downing/KeepOldest.d.ts +3 -12
  139. package/dist/cluster/downing/KeepOldest.d.ts.map +1 -1
  140. package/dist/cluster/downing/KeepOldest.js +5 -5
  141. package/dist/cluster/downing/KeepOldest.js.map +1 -1
  142. package/dist/cluster/downing/KeepOldestOptions.d.ts +34 -0
  143. package/dist/cluster/downing/KeepOldestOptions.d.ts.map +1 -0
  144. package/dist/cluster/downing/KeepOldestOptions.js +23 -0
  145. package/dist/cluster/downing/KeepOldestOptions.js.map +1 -0
  146. package/dist/cluster/downing/KeepReferee.d.ts +3 -11
  147. package/dist/cluster/downing/KeepReferee.d.ts.map +1 -1
  148. package/dist/cluster/downing/KeepReferee.js +7 -7
  149. package/dist/cluster/downing/KeepReferee.js.map +1 -1
  150. package/dist/cluster/downing/KeepRefereeOptions.d.ts +41 -0
  151. package/dist/cluster/downing/KeepRefereeOptions.d.ts.map +1 -0
  152. package/dist/cluster/downing/KeepRefereeOptions.js +38 -0
  153. package/dist/cluster/downing/KeepRefereeOptions.js.map +1 -0
  154. package/dist/cluster/downing/LeaseMajority.d.ts +63 -21
  155. package/dist/cluster/downing/LeaseMajority.d.ts.map +1 -1
  156. package/dist/cluster/downing/LeaseMajority.js +142 -17
  157. package/dist/cluster/downing/LeaseMajority.js.map +1 -1
  158. package/dist/cluster/downing/LeaseMajorityOptions.d.ts +55 -0
  159. package/dist/cluster/downing/LeaseMajorityOptions.d.ts.map +1 -0
  160. package/dist/cluster/downing/LeaseMajorityOptions.js +41 -0
  161. package/dist/cluster/downing/LeaseMajorityOptions.js.map +1 -0
  162. package/dist/cluster/downing/StaticQuorum.d.ts +3 -8
  163. package/dist/cluster/downing/StaticQuorum.d.ts.map +1 -1
  164. package/dist/cluster/downing/StaticQuorum.js +7 -8
  165. package/dist/cluster/downing/StaticQuorum.js.map +1 -1
  166. package/dist/cluster/downing/StaticQuorumOptions.d.ts +36 -0
  167. package/dist/cluster/downing/StaticQuorumOptions.d.ts.map +1 -0
  168. package/dist/cluster/downing/StaticQuorumOptions.js +33 -0
  169. package/dist/cluster/downing/StaticQuorumOptions.js.map +1 -0
  170. package/dist/cluster/downing/index.d.ts +10 -5
  171. package/dist/cluster/downing/index.d.ts.map +1 -1
  172. package/dist/cluster/downing/index.js +5 -0
  173. package/dist/cluster/downing/index.js.map +1 -1
  174. package/dist/cluster/index.d.ts +37 -22
  175. package/dist/cluster/index.d.ts.map +1 -1
  176. package/dist/cluster/index.js +17 -6
  177. package/dist/cluster/index.js.map +1 -1
  178. package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts +2 -2
  179. package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts.map +1 -1
  180. package/dist/cluster/pubsub/DistributedPubSubExtension.js +5 -2
  181. package/dist/cluster/pubsub/DistributedPubSubExtension.js.map +1 -1
  182. package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts +6 -10
  183. package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts.map +1 -1
  184. package/dist/cluster/pubsub/DistributedPubSubMediator.js +24 -22
  185. package/dist/cluster/pubsub/DistributedPubSubMediator.js.map +1 -1
  186. package/dist/cluster/pubsub/DistributedPubSubOptions.d.ts +35 -0
  187. package/dist/cluster/pubsub/DistributedPubSubOptions.d.ts.map +1 -0
  188. package/dist/cluster/pubsub/DistributedPubSubOptions.js +33 -0
  189. package/dist/cluster/pubsub/DistributedPubSubOptions.js.map +1 -0
  190. package/dist/cluster/pubsub/Messages.d.ts +5 -5
  191. package/dist/cluster/pubsub/Messages.d.ts.map +1 -1
  192. package/dist/cluster/pubsub/Messages.js +2 -2
  193. package/dist/cluster/pubsub/Messages.js.map +1 -1
  194. package/dist/cluster/pubsub/index.d.ts +3 -2
  195. package/dist/cluster/pubsub/index.d.ts.map +1 -1
  196. package/dist/cluster/pubsub/index.js +2 -1
  197. package/dist/cluster/pubsub/index.js.map +1 -1
  198. package/dist/cluster/router/ClusterRouter.d.ts +12 -32
  199. package/dist/cluster/router/ClusterRouter.d.ts.map +1 -1
  200. package/dist/cluster/router/ClusterRouter.js +10 -9
  201. package/dist/cluster/router/ClusterRouter.js.map +1 -1
  202. package/dist/cluster/router/ClusterRouterOptions.d.ts +70 -0
  203. package/dist/cluster/router/ClusterRouterOptions.d.ts.map +1 -0
  204. package/dist/cluster/router/ClusterRouterOptions.js +59 -0
  205. package/dist/cluster/router/ClusterRouterOptions.js.map +1 -0
  206. package/dist/cluster/router/ConsistentHashing.d.ts +1 -1
  207. package/dist/cluster/router/ConsistentHashing.d.ts.map +1 -1
  208. package/dist/cluster/router/ConsistentHashing.js +16 -16
  209. package/dist/cluster/router/ConsistentHashing.js.map +1 -1
  210. package/dist/cluster/router/index.d.ts +3 -1
  211. package/dist/cluster/router/index.d.ts.map +1 -1
  212. package/dist/cluster/router/index.js +1 -0
  213. package/dist/cluster/router/index.js.map +1 -1
  214. package/dist/cluster/sharding/AllocationStrategy.js +4 -4
  215. package/dist/cluster/sharding/AllocationStrategy.js.map +1 -1
  216. package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts +1 -15
  217. package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts.map +1 -1
  218. package/dist/cluster/sharding/CassandraRememberEntitiesStore.js +35 -2
  219. package/dist/cluster/sharding/CassandraRememberEntitiesStore.js.map +1 -1
  220. package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.d.ts +63 -0
  221. package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.d.ts.map +1 -0
  222. package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.js +63 -0
  223. package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.js.map +1 -0
  224. package/dist/cluster/sharding/ClusterSharding.d.ts +20 -66
  225. package/dist/cluster/sharding/ClusterSharding.d.ts.map +1 -1
  226. package/dist/cluster/sharding/ClusterSharding.js +65 -39
  227. package/dist/cluster/sharding/ClusterSharding.js.map +1 -1
  228. package/dist/cluster/sharding/CoordinatorState.d.ts +1 -1
  229. package/dist/cluster/sharding/CoordinatorState.js +1 -1
  230. package/dist/cluster/sharding/ShardAllocator.js +14 -14
  231. package/dist/cluster/sharding/ShardAllocator.js.map +1 -1
  232. package/dist/cluster/sharding/ShardCoordinator.d.ts +4 -64
  233. package/dist/cluster/sharding/ShardCoordinator.d.ts.map +1 -1
  234. package/dist/cluster/sharding/ShardCoordinator.js +73 -73
  235. package/dist/cluster/sharding/ShardCoordinator.js.map +1 -1
  236. package/dist/cluster/sharding/ShardCoordinatorOptions.d.ts +111 -0
  237. package/dist/cluster/sharding/ShardCoordinatorOptions.d.ts.map +1 -0
  238. package/dist/cluster/sharding/ShardCoordinatorOptions.js +69 -0
  239. package/dist/cluster/sharding/ShardCoordinatorOptions.js.map +1 -0
  240. package/dist/cluster/sharding/ShardRegion.d.ts +11 -42
  241. package/dist/cluster/sharding/ShardRegion.d.ts.map +1 -1
  242. package/dist/cluster/sharding/ShardRegion.js +20 -20
  243. package/dist/cluster/sharding/ShardRegion.js.map +1 -1
  244. package/dist/cluster/sharding/ShardedDaemonProcess.d.ts +2 -22
  245. package/dist/cluster/sharding/ShardedDaemonProcess.d.ts.map +1 -1
  246. package/dist/cluster/sharding/ShardedDaemonProcess.js +20 -15
  247. package/dist/cluster/sharding/ShardedDaemonProcess.js.map +1 -1
  248. package/dist/cluster/sharding/ShardedDaemonProcessOptions.d.ts +57 -0
  249. package/dist/cluster/sharding/ShardedDaemonProcessOptions.d.ts.map +1 -0
  250. package/dist/cluster/sharding/ShardedDaemonProcessOptions.js +47 -0
  251. package/dist/cluster/sharding/ShardedDaemonProcessOptions.js.map +1 -0
  252. package/dist/cluster/sharding/ShardingOptions.d.ts +95 -0
  253. package/dist/cluster/sharding/ShardingOptions.d.ts.map +1 -0
  254. package/dist/cluster/sharding/ShardingOptions.js +92 -0
  255. package/dist/cluster/sharding/ShardingOptions.js.map +1 -0
  256. package/dist/cluster/sharding/ShardingProtocol.d.ts +6 -6
  257. package/dist/cluster/sharding/ShardingProtocol.d.ts.map +1 -1
  258. package/dist/cluster/sharding/StartShardingOptions.d.ts +106 -0
  259. package/dist/cluster/sharding/StartShardingOptions.d.ts.map +1 -0
  260. package/dist/cluster/sharding/StartShardingOptions.js +67 -0
  261. package/dist/cluster/sharding/StartShardingOptions.js.map +1 -0
  262. package/dist/cluster/singleton/ClusterSingleton.d.ts +2 -30
  263. package/dist/cluster/singleton/ClusterSingleton.d.ts.map +1 -1
  264. package/dist/cluster/singleton/ClusterSingleton.js +22 -14
  265. package/dist/cluster/singleton/ClusterSingleton.js.map +1 -1
  266. package/dist/cluster/singleton/ClusterSingletonManager.d.ts +4 -19
  267. package/dist/cluster/singleton/ClusterSingletonManager.d.ts.map +1 -1
  268. package/dist/cluster/singleton/ClusterSingletonManager.js +26 -26
  269. package/dist/cluster/singleton/ClusterSingletonManager.js.map +1 -1
  270. package/dist/cluster/singleton/ClusterSingletonManagerOptions.d.ts +49 -0
  271. package/dist/cluster/singleton/ClusterSingletonManagerOptions.d.ts.map +1 -0
  272. package/dist/cluster/singleton/ClusterSingletonManagerOptions.js +40 -0
  273. package/dist/cluster/singleton/ClusterSingletonManagerOptions.js.map +1 -0
  274. package/dist/cluster/singleton/ClusterSingletonProxy.js +2 -2
  275. package/dist/cluster/singleton/ClusterSingletonProxy.js.map +1 -1
  276. package/dist/cluster/singleton/StartSingletonOptions.d.ts +70 -0
  277. package/dist/cluster/singleton/StartSingletonOptions.d.ts.map +1 -0
  278. package/dist/cluster/singleton/StartSingletonOptions.js +51 -0
  279. package/dist/cluster/singleton/StartSingletonOptions.js.map +1 -0
  280. package/dist/cluster/singleton/index.d.ts +6 -2
  281. package/dist/cluster/singleton/index.d.ts.map +1 -1
  282. package/dist/cluster/singleton/index.js +2 -0
  283. package/dist/cluster/singleton/index.js.map +1 -1
  284. package/dist/config/Config.js +61 -61
  285. package/dist/config/Config.js.map +1 -1
  286. package/dist/config/ConfigKeys.d.ts +5 -0
  287. package/dist/config/ConfigKeys.d.ts.map +1 -1
  288. package/dist/config/ConfigKeys.js +5 -0
  289. package/dist/config/ConfigKeys.js.map +1 -1
  290. package/dist/config/HoconParser.d.ts +2 -2
  291. package/dist/config/HoconParser.d.ts.map +1 -1
  292. package/dist/config/HoconParser.js +77 -77
  293. package/dist/config/HoconParser.js.map +1 -1
  294. package/dist/config/reference.d.ts.map +1 -1
  295. package/dist/config/reference.js +24 -0
  296. package/dist/config/reference.js.map +1 -1
  297. package/dist/coordination/Lease.d.ts +32 -14
  298. package/dist/coordination/Lease.d.ts.map +1 -1
  299. package/dist/coordination/LeaseOptions.d.ts +74 -0
  300. package/dist/coordination/LeaseOptions.d.ts.map +1 -0
  301. package/dist/coordination/LeaseOptions.js +89 -0
  302. package/dist/coordination/LeaseOptions.js.map +1 -0
  303. package/dist/coordination/index.d.ts +5 -2
  304. package/dist/coordination/index.d.ts.map +1 -1
  305. package/dist/coordination/index.js +2 -0
  306. package/dist/coordination/index.js.map +1 -1
  307. package/dist/coordination/leases/InMemoryLease.d.ts +18 -5
  308. package/dist/coordination/leases/InMemoryLease.d.ts.map +1 -1
  309. package/dist/coordination/leases/InMemoryLease.js +36 -22
  310. package/dist/coordination/leases/InMemoryLease.js.map +1 -1
  311. package/dist/coordination/leases/KubernetesLease.d.ts +20 -25
  312. package/dist/coordination/leases/KubernetesLease.d.ts.map +1 -1
  313. package/dist/coordination/leases/KubernetesLease.js +57 -36
  314. package/dist/coordination/leases/KubernetesLease.js.map +1 -1
  315. package/dist/coordination/leases/KubernetesLeaseOptions.d.ts +63 -0
  316. package/dist/coordination/leases/KubernetesLeaseOptions.d.ts.map +1 -0
  317. package/dist/coordination/leases/KubernetesLeaseOptions.js +53 -0
  318. package/dist/coordination/leases/KubernetesLeaseOptions.js.map +1 -0
  319. package/dist/coordination/leases/k8sApi.d.ts +1 -1
  320. package/dist/coordination/leases/k8sApi.js +1 -1
  321. package/dist/crdt/DistributedData.d.ts +14 -34
  322. package/dist/crdt/DistributedData.d.ts.map +1 -1
  323. package/dist/crdt/DistributedData.js +37 -34
  324. package/dist/crdt/DistributedData.js.map +1 -1
  325. package/dist/crdt/DistributedDataOptions.d.ts +56 -0
  326. package/dist/crdt/DistributedDataOptions.d.ts.map +1 -0
  327. package/dist/crdt/DistributedDataOptions.js +38 -0
  328. package/dist/crdt/DistributedDataOptions.js.map +1 -0
  329. package/dist/crdt/GCounter.js +4 -4
  330. package/dist/crdt/GCounter.js.map +1 -1
  331. package/dist/crdt/GCounterMap.js +7 -7
  332. package/dist/crdt/GCounterMap.js.map +1 -1
  333. package/dist/crdt/GSet.js +8 -8
  334. package/dist/crdt/GSet.js.map +1 -1
  335. package/dist/crdt/LWWMap.d.ts +1 -1
  336. package/dist/crdt/LWWMap.js +19 -19
  337. package/dist/crdt/LWWMap.js.map +1 -1
  338. package/dist/crdt/MVRegister.js +16 -16
  339. package/dist/crdt/MVRegister.js.map +1 -1
  340. package/dist/crdt/ORMap.d.ts +2 -2
  341. package/dist/crdt/ORMap.js +18 -18
  342. package/dist/crdt/ORMap.js.map +1 -1
  343. package/dist/crdt/ORSet.js +38 -38
  344. package/dist/crdt/ORSet.js.map +1 -1
  345. package/dist/crdt/index.d.ts +3 -1
  346. package/dist/crdt/index.d.ts.map +1 -1
  347. package/dist/crdt/index.js +1 -0
  348. package/dist/crdt/index.js.map +1 -1
  349. package/dist/delivery/ConsumerController.d.ts +4 -11
  350. package/dist/delivery/ConsumerController.d.ts.map +1 -1
  351. package/dist/delivery/ConsumerController.js +12 -12
  352. package/dist/delivery/ConsumerController.js.map +1 -1
  353. package/dist/delivery/ConsumerControllerOptions.d.ts +32 -0
  354. package/dist/delivery/ConsumerControllerOptions.d.ts.map +1 -0
  355. package/dist/delivery/ConsumerControllerOptions.js +21 -0
  356. package/dist/delivery/ConsumerControllerOptions.js.map +1 -0
  357. package/dist/delivery/Messages.d.ts +2 -2
  358. package/dist/delivery/Messages.d.ts.map +1 -1
  359. package/dist/delivery/ProducerController.d.ts +8 -23
  360. package/dist/delivery/ProducerController.d.ts.map +1 -1
  361. package/dist/delivery/ProducerController.js +30 -27
  362. package/dist/delivery/ProducerController.js.map +1 -1
  363. package/dist/delivery/ProducerControllerOptions.d.ts +56 -0
  364. package/dist/delivery/ProducerControllerOptions.d.ts.map +1 -0
  365. package/dist/delivery/ProducerControllerOptions.js +47 -0
  366. package/dist/delivery/ProducerControllerOptions.js.map +1 -0
  367. package/dist/delivery/ReliableDelivery.d.ts +6 -5
  368. package/dist/delivery/ReliableDelivery.d.ts.map +1 -1
  369. package/dist/delivery/ReliableDelivery.js +6 -6
  370. package/dist/delivery/ReliableDelivery.js.map +1 -1
  371. package/dist/delivery/index.d.ts +6 -3
  372. package/dist/delivery/index.d.ts.map +1 -1
  373. package/dist/delivery/index.js +2 -0
  374. package/dist/delivery/index.js.map +1 -1
  375. package/dist/discovery/AutoDiscoveryOptions.d.ts +78 -0
  376. package/dist/discovery/AutoDiscoveryOptions.d.ts.map +1 -0
  377. package/dist/discovery/AutoDiscoveryOptions.js +45 -0
  378. package/dist/discovery/AutoDiscoveryOptions.js.map +1 -0
  379. package/dist/discovery/ConfigSeedProvider.d.ts +3 -8
  380. package/dist/discovery/ConfigSeedProvider.d.ts.map +1 -1
  381. package/dist/discovery/ConfigSeedProvider.js +8 -6
  382. package/dist/discovery/ConfigSeedProvider.js.map +1 -1
  383. package/dist/discovery/ConfigSeedProviderOptions.d.ts +40 -0
  384. package/dist/discovery/ConfigSeedProviderOptions.d.ts.map +1 -0
  385. package/dist/discovery/ConfigSeedProviderOptions.js +38 -0
  386. package/dist/discovery/ConfigSeedProviderOptions.js.map +1 -0
  387. package/dist/discovery/DnsSeedProvider.d.ts +4 -28
  388. package/dist/discovery/DnsSeedProvider.d.ts.map +1 -1
  389. package/dist/discovery/DnsSeedProvider.js +14 -15
  390. package/dist/discovery/DnsSeedProvider.js.map +1 -1
  391. package/dist/discovery/DnsSeedProviderOptions.d.ts +77 -0
  392. package/dist/discovery/DnsSeedProviderOptions.d.ts.map +1 -0
  393. package/dist/discovery/DnsSeedProviderOptions.js +68 -0
  394. package/dist/discovery/DnsSeedProviderOptions.js.map +1 -0
  395. package/dist/discovery/KubernetesApiSeedProvider.d.ts +3 -14
  396. package/dist/discovery/KubernetesApiSeedProvider.d.ts.map +1 -1
  397. package/dist/discovery/KubernetesApiSeedProvider.js +9 -7
  398. package/dist/discovery/KubernetesApiSeedProvider.js.map +1 -1
  399. package/dist/discovery/KubernetesApiSeedProviderOptions.d.ts +52 -0
  400. package/dist/discovery/KubernetesApiSeedProviderOptions.d.ts.map +1 -0
  401. package/dist/discovery/KubernetesApiSeedProviderOptions.js +52 -0
  402. package/dist/discovery/KubernetesApiSeedProviderOptions.js.map +1 -0
  403. package/dist/discovery/Receptionist.d.ts +3 -6
  404. package/dist/discovery/Receptionist.d.ts.map +1 -1
  405. package/dist/discovery/Receptionist.js +19 -10
  406. package/dist/discovery/Receptionist.js.map +1 -1
  407. package/dist/discovery/ReceptionistMessages.d.ts +2 -2
  408. package/dist/discovery/ReceptionistMessages.d.ts.map +1 -1
  409. package/dist/discovery/ReceptionistMessages.js +1 -1
  410. package/dist/discovery/ReceptionistMessages.js.map +1 -1
  411. package/dist/discovery/ReceptionistOptions.d.ts +36 -0
  412. package/dist/discovery/ReceptionistOptions.d.ts.map +1 -0
  413. package/dist/discovery/ReceptionistOptions.js +34 -0
  414. package/dist/discovery/ReceptionistOptions.js.map +1 -0
  415. package/dist/discovery/ServiceKey.d.ts +2 -2
  416. package/dist/discovery/ServiceKey.d.ts.map +1 -1
  417. package/dist/discovery/ServiceKey.js.map +1 -1
  418. package/dist/discovery/autoDiscovery.d.ts +3 -44
  419. package/dist/discovery/autoDiscovery.d.ts.map +1 -1
  420. package/dist/discovery/autoDiscovery.js +37 -35
  421. package/dist/discovery/autoDiscovery.js.map +1 -1
  422. package/dist/discovery/index.d.ts +11 -6
  423. package/dist/discovery/index.d.ts.map +1 -1
  424. package/dist/discovery/index.js +5 -0
  425. package/dist/discovery/index.js.map +1 -1
  426. package/dist/fsm/FSM.d.ts +1 -1
  427. package/dist/fsm/FSM.js +1 -1
  428. package/dist/http/Html.d.ts +53 -0
  429. package/dist/http/Html.d.ts.map +1 -0
  430. package/dist/http/Html.js +92 -0
  431. package/dist/http/Html.js.map +1 -0
  432. package/dist/http/HttpExtension.d.ts +9 -0
  433. package/dist/http/HttpExtension.d.ts.map +1 -1
  434. package/dist/http/HttpExtension.js +106 -10
  435. package/dist/http/HttpExtension.js.map +1 -1
  436. package/dist/http/Marshalling.js +3 -3
  437. package/dist/http/Marshalling.js.map +1 -1
  438. package/dist/http/MimeTypes.d.ts +15 -0
  439. package/dist/http/MimeTypes.d.ts.map +1 -0
  440. package/dist/http/MimeTypes.js +87 -0
  441. package/dist/http/MimeTypes.js.map +1 -0
  442. package/dist/http/Route.d.ts +153 -4
  443. package/dist/http/Route.d.ts.map +1 -1
  444. package/dist/http/Route.js +170 -9
  445. package/dist/http/Route.js.map +1 -1
  446. package/dist/http/backend/ExpressBackend.d.ts +31 -20
  447. package/dist/http/backend/ExpressBackend.d.ts.map +1 -1
  448. package/dist/http/backend/ExpressBackend.js +199 -34
  449. package/dist/http/backend/ExpressBackend.js.map +1 -1
  450. package/dist/http/backend/ExpressBackendOptions.d.ts +53 -0
  451. package/dist/http/backend/ExpressBackendOptions.d.ts.map +1 -0
  452. package/dist/http/backend/ExpressBackendOptions.js +45 -0
  453. package/dist/http/backend/ExpressBackendOptions.js.map +1 -0
  454. package/dist/http/backend/FastifyBackend.d.ts +13 -1
  455. package/dist/http/backend/FastifyBackend.d.ts.map +1 -1
  456. package/dist/http/backend/FastifyBackend.js +124 -14
  457. package/dist/http/backend/FastifyBackend.js.map +1 -1
  458. package/dist/http/backend/HonoBackend.d.ts +39 -16
  459. package/dist/http/backend/HonoBackend.d.ts.map +1 -1
  460. package/dist/http/backend/HonoBackend.js +269 -35
  461. package/dist/http/backend/HonoBackend.js.map +1 -1
  462. package/dist/http/backend/HonoBackendOptions.d.ts +53 -0
  463. package/dist/http/backend/HonoBackendOptions.d.ts.map +1 -0
  464. package/dist/http/backend/HonoBackendOptions.js +45 -0
  465. package/dist/http/backend/HonoBackendOptions.js.map +1 -0
  466. package/dist/http/backend/HttpServerBackend.d.ts +36 -2
  467. package/dist/http/backend/HttpServerBackend.d.ts.map +1 -1
  468. package/dist/http/cache/IdempotencyKey.d.ts +2 -46
  469. package/dist/http/cache/IdempotencyKey.d.ts.map +1 -1
  470. package/dist/http/cache/IdempotencyKey.js +25 -20
  471. package/dist/http/cache/IdempotencyKey.js.map +1 -1
  472. package/dist/http/cache/IdempotencyOptions.d.ts +84 -0
  473. package/dist/http/cache/IdempotencyOptions.d.ts.map +1 -0
  474. package/dist/http/cache/IdempotencyOptions.js +61 -0
  475. package/dist/http/cache/IdempotencyOptions.js.map +1 -0
  476. package/dist/http/cache/RateLimit.d.ts +13 -32
  477. package/dist/http/cache/RateLimit.d.ts.map +1 -1
  478. package/dist/http/cache/RateLimit.js +42 -8
  479. package/dist/http/cache/RateLimit.js.map +1 -1
  480. package/dist/http/cache/RateLimitOptions.d.ts +80 -0
  481. package/dist/http/cache/RateLimitOptions.d.ts.map +1 -0
  482. package/dist/http/cache/RateLimitOptions.js +61 -0
  483. package/dist/http/cache/RateLimitOptions.js.map +1 -0
  484. package/dist/http/cache/ResponseCache.js +3 -3
  485. package/dist/http/cache/ResponseCache.js.map +1 -1
  486. package/dist/http/cache/index.d.ts +4 -2
  487. package/dist/http/cache/index.d.ts.map +1 -1
  488. package/dist/http/cache/index.js +2 -0
  489. package/dist/http/cache/index.js.map +1 -1
  490. package/dist/http/cookies.d.ts +38 -0
  491. package/dist/http/cookies.d.ts.map +1 -0
  492. package/dist/http/cookies.js +102 -0
  493. package/dist/http/cookies.js.map +1 -0
  494. package/dist/http/index.d.ts +19 -7
  495. package/dist/http/index.d.ts.map +1 -1
  496. package/dist/http/index.js +17 -2
  497. package/dist/http/index.js.map +1 -1
  498. package/dist/http/middleware/BasicAuth.d.ts +5 -0
  499. package/dist/http/middleware/BasicAuth.d.ts.map +1 -0
  500. package/dist/http/middleware/BasicAuth.js +58 -0
  501. package/dist/http/middleware/BasicAuth.js.map +1 -0
  502. package/dist/http/middleware/BasicAuthOptions.d.ts +22 -0
  503. package/dist/http/middleware/BasicAuthOptions.d.ts.map +1 -0
  504. package/dist/http/middleware/BasicAuthOptions.js +19 -0
  505. package/dist/http/middleware/BasicAuthOptions.js.map +1 -0
  506. package/dist/http/middleware/BearerToken.d.ts +44 -0
  507. package/dist/http/middleware/BearerToken.d.ts.map +1 -0
  508. package/dist/http/middleware/BearerToken.js +72 -0
  509. package/dist/http/middleware/BearerToken.js.map +1 -0
  510. package/dist/http/middleware/Cors.d.ts +39 -0
  511. package/dist/http/middleware/Cors.d.ts.map +1 -0
  512. package/dist/http/middleware/Cors.js +164 -0
  513. package/dist/http/middleware/Cors.js.map +1 -0
  514. package/dist/http/middleware/CorsOptions.d.ts +57 -0
  515. package/dist/http/middleware/CorsOptions.d.ts.map +1 -0
  516. package/dist/http/middleware/CorsOptions.js +62 -0
  517. package/dist/http/middleware/CorsOptions.js.map +1 -0
  518. package/dist/http/middleware/Csp.d.ts +13 -0
  519. package/dist/http/middleware/Csp.d.ts.map +1 -0
  520. package/dist/http/middleware/Csp.js +68 -0
  521. package/dist/http/middleware/Csp.js.map +1 -0
  522. package/dist/http/middleware/CspOptions.d.ts +53 -0
  523. package/dist/http/middleware/CspOptions.d.ts.map +1 -0
  524. package/dist/http/middleware/CspOptions.js +24 -0
  525. package/dist/http/middleware/CspOptions.js.map +1 -0
  526. package/dist/http/middleware/Csrf.d.ts +22 -0
  527. package/dist/http/middleware/Csrf.d.ts.map +1 -0
  528. package/dist/http/middleware/Csrf.js +165 -0
  529. package/dist/http/middleware/Csrf.js.map +1 -0
  530. package/dist/http/middleware/CsrfOptions.d.ts +75 -0
  531. package/dist/http/middleware/CsrfOptions.d.ts.map +1 -0
  532. package/dist/http/middleware/CsrfOptions.js +80 -0
  533. package/dist/http/middleware/CsrfOptions.js.map +1 -0
  534. package/dist/http/middleware/Hsts.d.ts +28 -0
  535. package/dist/http/middleware/Hsts.d.ts.map +1 -0
  536. package/dist/http/middleware/Hsts.js +34 -0
  537. package/dist/http/middleware/Hsts.js.map +1 -0
  538. package/dist/http/middleware/HstsOptions.d.ts +44 -0
  539. package/dist/http/middleware/HstsOptions.d.ts.map +1 -0
  540. package/dist/http/middleware/HstsOptions.js +49 -0
  541. package/dist/http/middleware/HstsOptions.js.map +1 -0
  542. package/dist/http/middleware/IpAllowlist.d.ts +45 -0
  543. package/dist/http/middleware/IpAllowlist.d.ts.map +1 -0
  544. package/dist/http/middleware/IpAllowlist.js +148 -0
  545. package/dist/http/middleware/IpAllowlist.js.map +1 -0
  546. package/dist/http/middleware/RequestId.d.ts +5 -0
  547. package/dist/http/middleware/RequestId.d.ts.map +1 -0
  548. package/dist/http/middleware/RequestId.js +24 -0
  549. package/dist/http/middleware/RequestId.js.map +1 -0
  550. package/dist/http/middleware/RequestIdOptions.d.ts +22 -0
  551. package/dist/http/middleware/RequestIdOptions.d.ts.map +1 -0
  552. package/dist/http/middleware/RequestIdOptions.js +19 -0
  553. package/dist/http/middleware/RequestIdOptions.js.map +1 -0
  554. package/dist/http/middleware/SecurityHeaders.d.ts +11 -0
  555. package/dist/http/middleware/SecurityHeaders.d.ts.map +1 -0
  556. package/dist/http/middleware/SecurityHeaders.js +50 -0
  557. package/dist/http/middleware/SecurityHeaders.js.map +1 -0
  558. package/dist/http/middleware/SecurityHeadersOptions.d.ts +44 -0
  559. package/dist/http/middleware/SecurityHeadersOptions.d.ts.map +1 -0
  560. package/dist/http/middleware/SecurityHeadersOptions.js +40 -0
  561. package/dist/http/middleware/SecurityHeadersOptions.js.map +1 -0
  562. package/dist/http/middleware/Timeout.d.ts +13 -0
  563. package/dist/http/middleware/Timeout.d.ts.map +1 -0
  564. package/dist/http/middleware/Timeout.js +29 -0
  565. package/dist/http/middleware/Timeout.js.map +1 -0
  566. package/dist/http/middleware/TimeoutOptions.d.ts +30 -0
  567. package/dist/http/middleware/TimeoutOptions.d.ts.map +1 -0
  568. package/dist/http/middleware/TimeoutOptions.js +30 -0
  569. package/dist/http/middleware/TimeoutOptions.js.map +1 -0
  570. package/dist/http/middleware/headers.d.ts +21 -0
  571. package/dist/http/middleware/headers.d.ts.map +1 -0
  572. package/dist/http/middleware/headers.js +43 -0
  573. package/dist/http/middleware/headers.js.map +1 -0
  574. package/dist/http/middleware/index.d.ts +30 -0
  575. package/dist/http/middleware/index.d.ts.map +1 -0
  576. package/dist/http/middleware/index.js +23 -0
  577. package/dist/http/middleware/index.js.map +1 -0
  578. package/dist/http/static/DirectoryListing.d.ts +16 -0
  579. package/dist/http/static/DirectoryListing.d.ts.map +1 -0
  580. package/dist/http/static/DirectoryListing.js +39 -0
  581. package/dist/http/static/DirectoryListing.js.map +1 -0
  582. package/dist/http/static/StaticFiles.d.ts +11 -0
  583. package/dist/http/static/StaticFiles.d.ts.map +1 -0
  584. package/dist/http/static/StaticFiles.js +202 -0
  585. package/dist/http/static/StaticFiles.js.map +1 -0
  586. package/dist/http/static/StaticFilesOptions.d.ts +76 -0
  587. package/dist/http/static/StaticFilesOptions.d.ts.map +1 -0
  588. package/dist/http/static/StaticFilesOptions.js +83 -0
  589. package/dist/http/static/StaticFilesOptions.js.map +1 -0
  590. package/dist/http/static/fsAccess.d.ts +25 -0
  591. package/dist/http/static/fsAccess.d.ts.map +1 -0
  592. package/dist/http/static/fsAccess.js +42 -0
  593. package/dist/http/static/fsAccess.js.map +1 -0
  594. package/dist/http/static/index.d.ts +7 -0
  595. package/dist/http/static/index.d.ts.map +1 -0
  596. package/dist/http/static/index.js +5 -0
  597. package/dist/http/static/index.js.map +1 -0
  598. package/dist/http/static/staticPath.d.ts +14 -0
  599. package/dist/http/static/staticPath.d.ts.map +1 -0
  600. package/dist/http/static/staticPath.js +67 -0
  601. package/dist/http/static/staticPath.js.map +1 -0
  602. package/dist/http/types.d.ts +33 -3
  603. package/dist/http/types.d.ts.map +1 -1
  604. package/dist/http/types.js +11 -1
  605. package/dist/http/types.js.map +1 -1
  606. package/dist/http/websocket/ConnectionWiring.d.ts +59 -0
  607. package/dist/http/websocket/ConnectionWiring.d.ts.map +1 -0
  608. package/dist/http/websocket/ConnectionWiring.js +165 -0
  609. package/dist/http/websocket/ConnectionWiring.js.map +1 -0
  610. package/dist/http/websocket/SocketAdapter.d.ts +72 -0
  611. package/dist/http/websocket/SocketAdapter.d.ts.map +1 -0
  612. package/dist/http/websocket/SocketAdapter.js +97 -0
  613. package/dist/http/websocket/SocketAdapter.js.map +1 -0
  614. package/dist/http/websocket/WebsocketClientActor.d.ts +68 -0
  615. package/dist/http/websocket/WebsocketClientActor.d.ts.map +1 -0
  616. package/dist/http/websocket/WebsocketClientActor.js +195 -0
  617. package/dist/http/websocket/WebsocketClientActor.js.map +1 -0
  618. package/dist/http/websocket/WebsocketClientOptions.d.ts +82 -0
  619. package/dist/http/websocket/WebsocketClientOptions.d.ts.map +1 -0
  620. package/dist/http/websocket/WebsocketClientOptions.js +82 -0
  621. package/dist/http/websocket/WebsocketClientOptions.js.map +1 -0
  622. package/dist/http/websocket/WebsocketCodec.d.ts +65 -0
  623. package/dist/http/websocket/WebsocketCodec.d.ts.map +1 -0
  624. package/dist/http/websocket/WebsocketCodec.js +82 -0
  625. package/dist/http/websocket/WebsocketCodec.js.map +1 -0
  626. package/dist/http/websocket/WebsocketConnection.d.ts +59 -0
  627. package/dist/http/websocket/WebsocketConnection.d.ts.map +1 -0
  628. package/dist/http/websocket/WebsocketConnection.js +45 -0
  629. package/dist/http/websocket/WebsocketConnection.js.map +1 -0
  630. package/dist/http/websocket/WebsocketConnectionActor.d.ts +51 -0
  631. package/dist/http/websocket/WebsocketConnectionActor.d.ts.map +1 -0
  632. package/dist/http/websocket/WebsocketConnectionActor.js +170 -0
  633. package/dist/http/websocket/WebsocketConnectionActor.js.map +1 -0
  634. package/dist/http/websocket/WebsocketMessages.d.ts +115 -0
  635. package/dist/http/websocket/WebsocketMessages.d.ts.map +1 -0
  636. package/dist/http/websocket/WebsocketMessages.js +41 -0
  637. package/dist/http/websocket/WebsocketMessages.js.map +1 -0
  638. package/dist/http/websocket/WebsocketPolicy.d.ts +51 -0
  639. package/dist/http/websocket/WebsocketPolicy.d.ts.map +1 -0
  640. package/dist/http/websocket/WebsocketPolicy.js +70 -0
  641. package/dist/http/websocket/WebsocketPolicy.js.map +1 -0
  642. package/dist/http/websocket/WebsocketRoute.d.ts +20 -0
  643. package/dist/http/websocket/WebsocketRoute.d.ts.map +1 -0
  644. package/dist/http/websocket/WebsocketRoute.js +72 -0
  645. package/dist/http/websocket/WebsocketRoute.js.map +1 -0
  646. package/dist/http/websocket/WebsocketRouteOptions.d.ts +91 -0
  647. package/dist/http/websocket/WebsocketRouteOptions.d.ts.map +1 -0
  648. package/dist/http/websocket/WebsocketRouteOptions.js +92 -0
  649. package/dist/http/websocket/WebsocketRouteOptions.js.map +1 -0
  650. package/dist/http/websocket/WebsocketServerActor.d.ts +65 -0
  651. package/dist/http/websocket/WebsocketServerActor.d.ts.map +1 -0
  652. package/dist/http/websocket/WebsocketServerActor.js +141 -0
  653. package/dist/http/websocket/WebsocketServerActor.js.map +1 -0
  654. package/dist/http/websocket/index.d.ts +22 -0
  655. package/dist/http/websocket/index.d.ts.map +1 -0
  656. package/dist/http/websocket/index.js +15 -0
  657. package/dist/http/websocket/index.js.map +1 -0
  658. package/dist/http/websocket/matchPattern.d.ts +12 -0
  659. package/dist/http/websocket/matchPattern.d.ts.map +1 -0
  660. package/dist/http/websocket/matchPattern.js +43 -0
  661. package/dist/http/websocket/matchPattern.js.map +1 -0
  662. package/dist/http/websocket/rawResponse.d.ts +15 -0
  663. package/dist/http/websocket/rawResponse.d.ts.map +1 -0
  664. package/dist/http/websocket/rawResponse.js +64 -0
  665. package/dist/http/websocket/rawResponse.js.map +1 -0
  666. package/dist/http/websocket/types.d.ts +70 -0
  667. package/dist/http/websocket/types.d.ts.map +1 -0
  668. package/dist/http/websocket/types.js +81 -0
  669. package/dist/http/websocket/types.js.map +1 -0
  670. package/dist/http/websocket/websocketConstructor.d.ts +34 -0
  671. package/dist/http/websocket/websocketConstructor.d.ts.map +1 -0
  672. package/dist/http/websocket/websocketConstructor.js +38 -0
  673. package/dist/http/websocket/websocketConstructor.js.map +1 -0
  674. package/dist/index.d.ts +31 -28
  675. package/dist/index.d.ts.map +1 -1
  676. package/dist/index.js +18 -13
  677. package/dist/index.js.map +1 -1
  678. package/dist/internal/ActorCell.d.ts +24 -9
  679. package/dist/internal/ActorCell.d.ts.map +1 -1
  680. package/dist/internal/ActorCell.js +66 -36
  681. package/dist/internal/ActorCell.js.map +1 -1
  682. package/dist/internal/LocalActorRef.d.ts +4 -4
  683. package/dist/internal/LocalActorRef.d.ts.map +1 -1
  684. package/dist/internal/LocalActorRef.js.map +1 -1
  685. package/dist/io/broker/AmqpActor.d.ts +26 -21
  686. package/dist/io/broker/AmqpActor.d.ts.map +1 -1
  687. package/dist/io/broker/AmqpActor.js +41 -31
  688. package/dist/io/broker/AmqpActor.js.map +1 -1
  689. package/dist/io/broker/AmqpOptions.d.ts +46 -0
  690. package/dist/io/broker/AmqpOptions.d.ts.map +1 -0
  691. package/dist/io/broker/AmqpOptions.js +45 -0
  692. package/dist/io/broker/AmqpOptions.js.map +1 -0
  693. package/dist/io/broker/BrokerActor.d.ts +34 -24
  694. package/dist/io/broker/BrokerActor.d.ts.map +1 -1
  695. package/dist/io/broker/BrokerActor.js +51 -36
  696. package/dist/io/broker/BrokerActor.js.map +1 -1
  697. package/dist/io/broker/BrokerOptions.d.ts +125 -0
  698. package/dist/io/broker/BrokerOptions.d.ts.map +1 -0
  699. package/dist/io/broker/BrokerOptions.js +151 -0
  700. package/dist/io/broker/BrokerOptions.js.map +1 -0
  701. package/dist/io/broker/GrpcClientActor.d.ts +13 -24
  702. package/dist/io/broker/GrpcClientActor.d.ts.map +1 -1
  703. package/dist/io/broker/GrpcClientActor.js +42 -40
  704. package/dist/io/broker/GrpcClientActor.js.map +1 -1
  705. package/dist/io/broker/GrpcClientOptions.d.ts +53 -0
  706. package/dist/io/broker/GrpcClientOptions.d.ts.map +1 -0
  707. package/dist/io/broker/GrpcClientOptions.js +52 -0
  708. package/dist/io/broker/GrpcClientOptions.js.map +1 -0
  709. package/dist/io/broker/GrpcServerActor.d.ts +6 -27
  710. package/dist/io/broker/GrpcServerActor.d.ts.map +1 -1
  711. package/dist/io/broker/GrpcServerActor.js +30 -30
  712. package/dist/io/broker/GrpcServerActor.js.map +1 -1
  713. package/dist/io/broker/GrpcServerOptions.d.ts +58 -0
  714. package/dist/io/broker/GrpcServerOptions.d.ts.map +1 -0
  715. package/dist/io/broker/GrpcServerOptions.js +44 -0
  716. package/dist/io/broker/GrpcServerOptions.js.map +1 -0
  717. package/dist/io/broker/JetStreamActor.d.ts +27 -47
  718. package/dist/io/broker/JetStreamActor.d.ts.map +1 -1
  719. package/dist/io/broker/JetStreamActor.js +93 -91
  720. package/dist/io/broker/JetStreamActor.js.map +1 -1
  721. package/dist/io/broker/JetStreamOptions.d.ts +69 -0
  722. package/dist/io/broker/JetStreamOptions.d.ts.map +1 -0
  723. package/dist/io/broker/JetStreamOptions.js +65 -0
  724. package/dist/io/broker/JetStreamOptions.js.map +1 -0
  725. package/dist/io/broker/KafkaActor.d.ts +24 -63
  726. package/dist/io/broker/KafkaActor.d.ts.map +1 -1
  727. package/dist/io/broker/KafkaActor.js +76 -62
  728. package/dist/io/broker/KafkaActor.js.map +1 -1
  729. package/dist/io/broker/KafkaOptions.d.ts +87 -0
  730. package/dist/io/broker/KafkaOptions.d.ts.map +1 -0
  731. package/dist/io/broker/KafkaOptions.js +61 -0
  732. package/dist/io/broker/KafkaOptions.js.map +1 -0
  733. package/dist/io/broker/MqttActor.d.ts +178 -116
  734. package/dist/io/broker/MqttActor.d.ts.map +1 -1
  735. package/dist/io/broker/MqttActor.js +373 -147
  736. package/dist/io/broker/MqttActor.js.map +1 -1
  737. package/dist/io/broker/MqttCodec.d.ts +70 -0
  738. package/dist/io/broker/MqttCodec.d.ts.map +1 -0
  739. package/dist/io/broker/MqttCodec.js +98 -0
  740. package/dist/io/broker/MqttCodec.js.map +1 -0
  741. package/dist/io/broker/MqttMessages.d.ts +149 -0
  742. package/dist/io/broker/MqttMessages.d.ts.map +1 -0
  743. package/dist/io/broker/MqttMessages.js +86 -0
  744. package/dist/io/broker/MqttMessages.js.map +1 -0
  745. package/dist/io/broker/MqttOptions.d.ts +109 -0
  746. package/dist/io/broker/MqttOptions.d.ts.map +1 -0
  747. package/dist/io/broker/MqttOptions.js +90 -0
  748. package/dist/io/broker/MqttOptions.js.map +1 -0
  749. package/dist/io/broker/NatsActor.d.ts +12 -25
  750. package/dist/io/broker/NatsActor.d.ts.map +1 -1
  751. package/dist/io/broker/NatsActor.js +36 -34
  752. package/dist/io/broker/NatsActor.js.map +1 -1
  753. package/dist/io/broker/NatsOptions.d.ts +56 -0
  754. package/dist/io/broker/NatsOptions.d.ts.map +1 -0
  755. package/dist/io/broker/NatsOptions.js +52 -0
  756. package/dist/io/broker/NatsOptions.js.map +1 -0
  757. package/dist/io/broker/RedisStreamsActor.d.ts +12 -28
  758. package/dist/io/broker/RedisStreamsActor.d.ts.map +1 -1
  759. package/dist/io/broker/RedisStreamsActor.js +40 -38
  760. package/dist/io/broker/RedisStreamsActor.js.map +1 -1
  761. package/dist/io/broker/RedisStreamsOptions.d.ts +56 -0
  762. package/dist/io/broker/RedisStreamsOptions.d.ts.map +1 -0
  763. package/dist/io/broker/RedisStreamsOptions.js +49 -0
  764. package/dist/io/broker/RedisStreamsOptions.js.map +1 -0
  765. package/dist/io/broker/SseActor.d.ts +12 -19
  766. package/dist/io/broker/SseActor.d.ts.map +1 -1
  767. package/dist/io/broker/SseActor.js +43 -22
  768. package/dist/io/broker/SseActor.js.map +1 -1
  769. package/dist/io/broker/SseOptions.d.ts +43 -0
  770. package/dist/io/broker/SseOptions.d.ts.map +1 -0
  771. package/dist/io/broker/SseOptions.js +40 -0
  772. package/dist/io/broker/SseOptions.js.map +1 -0
  773. package/dist/io/broker/TcpSocketActor.d.ts +12 -25
  774. package/dist/io/broker/TcpSocketActor.d.ts.map +1 -1
  775. package/dist/io/broker/TcpSocketActor.js +35 -24
  776. package/dist/io/broker/TcpSocketActor.js.map +1 -1
  777. package/dist/io/broker/TcpSocketOptions.d.ts +51 -0
  778. package/dist/io/broker/TcpSocketOptions.d.ts.map +1 -0
  779. package/dist/io/broker/TcpSocketOptions.js +45 -0
  780. package/dist/io/broker/TcpSocketOptions.js.map +1 -0
  781. package/dist/io/broker/UdpSocketActor.d.ts +12 -21
  782. package/dist/io/broker/UdpSocketActor.d.ts.map +1 -1
  783. package/dist/io/broker/UdpSocketActor.js +18 -16
  784. package/dist/io/broker/UdpSocketActor.js.map +1 -1
  785. package/dist/io/broker/UdpSocketOptions.d.ts +47 -0
  786. package/dist/io/broker/UdpSocketOptions.d.ts.map +1 -0
  787. package/dist/io/broker/UdpSocketOptions.js +49 -0
  788. package/dist/io/broker/UdpSocketOptions.js.map +1 -0
  789. package/dist/io/broker/index.d.ts +39 -19
  790. package/dist/io/broker/index.d.ts.map +1 -1
  791. package/dist/io/broker/index.js +22 -5
  792. package/dist/io/broker/index.js.map +1 -1
  793. package/dist/mailbox/BoundedMailbox.d.ts +3 -5
  794. package/dist/mailbox/BoundedMailbox.d.ts.map +1 -1
  795. package/dist/mailbox/BoundedMailbox.js +11 -4
  796. package/dist/mailbox/BoundedMailbox.js.map +1 -1
  797. package/dist/mailbox/BoundedMailboxOptions.d.ts +49 -0
  798. package/dist/mailbox/BoundedMailboxOptions.d.ts.map +1 -0
  799. package/dist/mailbox/BoundedMailboxOptions.js +46 -0
  800. package/dist/mailbox/BoundedMailboxOptions.js.map +1 -0
  801. package/dist/mailbox/PriorityMailbox.d.ts +2 -4
  802. package/dist/mailbox/PriorityMailbox.d.ts.map +1 -1
  803. package/dist/mailbox/PriorityMailbox.js +4 -4
  804. package/dist/mailbox/PriorityMailbox.js.map +1 -1
  805. package/dist/mailbox/PriorityMailboxOptions.d.ts +27 -0
  806. package/dist/mailbox/PriorityMailboxOptions.d.ts.map +1 -0
  807. package/dist/mailbox/PriorityMailboxOptions.js +20 -0
  808. package/dist/mailbox/PriorityMailboxOptions.js.map +1 -0
  809. package/dist/mailbox/index.d.ts +6 -2
  810. package/dist/mailbox/index.d.ts.map +1 -1
  811. package/dist/mailbox/index.js +2 -0
  812. package/dist/mailbox/index.js.map +1 -1
  813. package/dist/management/HttpManagement.d.ts +2 -18
  814. package/dist/management/HttpManagement.d.ts.map +1 -1
  815. package/dist/management/HttpManagement.js +38 -11
  816. package/dist/management/HttpManagement.js.map +1 -1
  817. package/dist/management/ManagementRoutesOptions.d.ts +43 -0
  818. package/dist/management/ManagementRoutesOptions.d.ts.map +1 -0
  819. package/dist/management/ManagementRoutesOptions.js +35 -0
  820. package/dist/management/ManagementRoutesOptions.js.map +1 -0
  821. package/dist/management/index.d.ts +2 -1
  822. package/dist/management/index.d.ts.map +1 -1
  823. package/dist/management/index.js +1 -0
  824. package/dist/management/index.js.map +1 -1
  825. package/dist/metrics/Metrics.js +11 -11
  826. package/dist/metrics/Metrics.js.map +1 -1
  827. package/dist/metrics/PromClientAdapter.d.ts +2 -12
  828. package/dist/metrics/PromClientAdapter.d.ts.map +1 -1
  829. package/dist/metrics/PromClientAdapter.js +2 -2
  830. package/dist/metrics/PromClientAdapter.js.map +1 -1
  831. package/dist/metrics/PromClientAdapterOptions.d.ts +46 -0
  832. package/dist/metrics/PromClientAdapterOptions.d.ts.map +1 -0
  833. package/dist/metrics/PromClientAdapterOptions.js +35 -0
  834. package/dist/metrics/PromClientAdapterOptions.js.map +1 -0
  835. package/dist/metrics/PrometheusExporter.js +23 -23
  836. package/dist/metrics/PrometheusExporter.js.map +1 -1
  837. package/dist/metrics/index.d.ts +3 -1
  838. package/dist/metrics/index.d.ts.map +1 -1
  839. package/dist/metrics/index.js +1 -0
  840. package/dist/metrics/index.js.map +1 -1
  841. package/dist/pattern/BackoffPolicy.js +5 -5
  842. package/dist/pattern/BackoffPolicy.js.map +1 -1
  843. package/dist/pattern/CircuitBreaker.d.ts +3 -12
  844. package/dist/pattern/CircuitBreaker.d.ts.map +1 -1
  845. package/dist/pattern/CircuitBreaker.js +13 -16
  846. package/dist/pattern/CircuitBreaker.js.map +1 -1
  847. package/dist/pattern/CircuitBreakerOptions.d.ts +50 -0
  848. package/dist/pattern/CircuitBreakerOptions.d.ts.map +1 -0
  849. package/dist/pattern/CircuitBreakerOptions.js +53 -0
  850. package/dist/pattern/CircuitBreakerOptions.js.map +1 -0
  851. package/dist/pattern/index.d.ts +3 -1
  852. package/dist/pattern/index.d.ts.map +1 -1
  853. package/dist/pattern/index.js +1 -0
  854. package/dist/pattern/index.js.map +1 -1
  855. package/dist/persistence/DurableStateActor.d.ts +4 -9
  856. package/dist/persistence/DurableStateActor.d.ts.map +1 -1
  857. package/dist/persistence/DurableStateActor.js +9 -9
  858. package/dist/persistence/DurableStateActor.js.map +1 -1
  859. package/dist/persistence/DurableStateOptions.d.ts +40 -0
  860. package/dist/persistence/DurableStateOptions.d.ts.map +1 -0
  861. package/dist/persistence/DurableStateOptions.js +36 -0
  862. package/dist/persistence/DurableStateOptions.js.map +1 -0
  863. package/dist/persistence/EventDispatcher.js +3 -3
  864. package/dist/persistence/EventDispatcher.js.map +1 -1
  865. package/dist/persistence/JournalEventBus.js +2 -2
  866. package/dist/persistence/JournalEventBus.js.map +1 -1
  867. package/dist/persistence/PersistenceOptions.d.ts +46 -1
  868. package/dist/persistence/PersistenceOptions.d.ts.map +1 -1
  869. package/dist/persistence/PersistenceOptions.js +1 -1
  870. package/dist/persistence/ReplicatedEventSourcedActor.d.ts +2 -2
  871. package/dist/persistence/ReplicatedEventSourcedActor.d.ts.map +1 -1
  872. package/dist/persistence/ReplicatedEventSourcedActor.js +4 -4
  873. package/dist/persistence/ReplicatedEventSourcedActor.js.map +1 -1
  874. package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.d.ts +32 -0
  875. package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.d.ts.map +1 -0
  876. package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.js +120 -0
  877. package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.js.map +1 -0
  878. package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.d.ts +38 -0
  879. package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.d.ts.map +1 -0
  880. package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.js +38 -0
  881. package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.js.map +1 -0
  882. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts +5 -9
  883. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts.map +1 -1
  884. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js +52 -8
  885. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js.map +1 -1
  886. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.d.ts +83 -0
  887. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.d.ts.map +1 -0
  888. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.js +67 -0
  889. package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.js.map +1 -0
  890. package/dist/persistence/durable-state-stores/PostgresDurableStateStore.d.ts +38 -0
  891. package/dist/persistence/durable-state-stores/PostgresDurableStateStore.d.ts.map +1 -0
  892. package/dist/persistence/durable-state-stores/PostgresDurableStateStore.js +121 -0
  893. package/dist/persistence/durable-state-stores/PostgresDurableStateStore.js.map +1 -0
  894. package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.d.ts +38 -0
  895. package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.d.ts.map +1 -0
  896. package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.js +38 -0
  897. package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.js.map +1 -0
  898. package/dist/persistence/index.d.ts +59 -16
  899. package/dist/persistence/index.d.ts.map +1 -1
  900. package/dist/persistence/index.js +33 -2
  901. package/dist/persistence/index.js.map +1 -1
  902. package/dist/persistence/journals/CassandraClient.d.ts +1 -1
  903. package/dist/persistence/journals/CassandraClient.d.ts.map +1 -1
  904. package/dist/persistence/journals/CassandraJournal.d.ts +1 -48
  905. package/dist/persistence/journals/CassandraJournal.d.ts.map +1 -1
  906. package/dist/persistence/journals/CassandraJournal.js +16 -7
  907. package/dist/persistence/journals/CassandraJournal.js.map +1 -1
  908. package/dist/persistence/journals/CassandraJournalOptions.d.ts +113 -0
  909. package/dist/persistence/journals/CassandraJournalOptions.d.ts.map +1 -0
  910. package/dist/persistence/journals/CassandraJournalOptions.js +101 -0
  911. package/dist/persistence/journals/CassandraJournalOptions.js.map +1 -0
  912. package/dist/persistence/journals/CassandraPlugin.d.ts +1 -16
  913. package/dist/persistence/journals/CassandraPlugin.d.ts.map +1 -1
  914. package/dist/persistence/journals/CassandraPlugin.js +9 -4
  915. package/dist/persistence/journals/CassandraPlugin.js.map +1 -1
  916. package/dist/persistence/journals/CassandraPluginOptions.d.ts +51 -0
  917. package/dist/persistence/journals/CassandraPluginOptions.d.ts.map +1 -0
  918. package/dist/persistence/journals/CassandraPluginOptions.js +37 -0
  919. package/dist/persistence/journals/CassandraPluginOptions.js.map +1 -0
  920. package/dist/persistence/journals/MariaDbClient.d.ts +54 -0
  921. package/dist/persistence/journals/MariaDbClient.d.ts.map +1 -0
  922. package/dist/persistence/journals/MariaDbClient.js +40 -0
  923. package/dist/persistence/journals/MariaDbClient.js.map +1 -0
  924. package/dist/persistence/journals/MariaDbJournal.d.ts +29 -0
  925. package/dist/persistence/journals/MariaDbJournal.d.ts.map +1 -0
  926. package/dist/persistence/journals/MariaDbJournal.js +161 -0
  927. package/dist/persistence/journals/MariaDbJournal.js.map +1 -0
  928. package/dist/persistence/journals/MariaDbJournalOptions.d.ts +43 -0
  929. package/dist/persistence/journals/MariaDbJournalOptions.d.ts.map +1 -0
  930. package/dist/persistence/journals/MariaDbJournalOptions.js +43 -0
  931. package/dist/persistence/journals/MariaDbJournalOptions.js.map +1 -0
  932. package/dist/persistence/journals/MariaDbPlugin.d.ts +27 -0
  933. package/dist/persistence/journals/MariaDbPlugin.d.ts.map +1 -0
  934. package/dist/persistence/journals/MariaDbPlugin.js +30 -0
  935. package/dist/persistence/journals/MariaDbPlugin.js.map +1 -0
  936. package/dist/persistence/journals/MariaDbPluginOptions.d.ts +52 -0
  937. package/dist/persistence/journals/MariaDbPluginOptions.d.ts.map +1 -0
  938. package/dist/persistence/journals/MariaDbPluginOptions.js +38 -0
  939. package/dist/persistence/journals/MariaDbPluginOptions.js.map +1 -0
  940. package/dist/persistence/journals/PostgresClient.d.ts +56 -0
  941. package/dist/persistence/journals/PostgresClient.d.ts.map +1 -0
  942. package/dist/persistence/journals/PostgresClient.js +35 -0
  943. package/dist/persistence/journals/PostgresClient.js.map +1 -0
  944. package/dist/persistence/journals/PostgresJournal.d.ts +41 -0
  945. package/dist/persistence/journals/PostgresJournal.d.ts.map +1 -0
  946. package/dist/persistence/journals/PostgresJournal.js +176 -0
  947. package/dist/persistence/journals/PostgresJournal.js.map +1 -0
  948. package/dist/persistence/journals/PostgresJournalOptions.d.ts +44 -0
  949. package/dist/persistence/journals/PostgresJournalOptions.d.ts.map +1 -0
  950. package/dist/persistence/journals/PostgresJournalOptions.js +44 -0
  951. package/dist/persistence/journals/PostgresJournalOptions.js.map +1 -0
  952. package/dist/persistence/journals/PostgresPlugin.d.ts +32 -0
  953. package/dist/persistence/journals/PostgresPlugin.d.ts.map +1 -0
  954. package/dist/persistence/journals/PostgresPlugin.js +35 -0
  955. package/dist/persistence/journals/PostgresPlugin.js.map +1 -0
  956. package/dist/persistence/journals/PostgresPluginOptions.d.ts +54 -0
  957. package/dist/persistence/journals/PostgresPluginOptions.d.ts.map +1 -0
  958. package/dist/persistence/journals/PostgresPluginOptions.js +39 -0
  959. package/dist/persistence/journals/PostgresPluginOptions.js.map +1 -0
  960. package/dist/persistence/journals/SqliteJournal.d.ts +4 -18
  961. package/dist/persistence/journals/SqliteJournal.d.ts.map +1 -1
  962. package/dist/persistence/journals/SqliteJournal.js +13 -8
  963. package/dist/persistence/journals/SqliteJournal.js.map +1 -1
  964. package/dist/persistence/journals/SqliteJournalOptions.d.ts +41 -0
  965. package/dist/persistence/journals/SqliteJournalOptions.d.ts.map +1 -0
  966. package/dist/persistence/journals/SqliteJournalOptions.js +31 -0
  967. package/dist/persistence/journals/SqliteJournalOptions.js.map +1 -0
  968. package/dist/persistence/migration/MigrationChain.js +3 -3
  969. package/dist/persistence/migration/MigrationChain.js.map +1 -1
  970. package/dist/persistence/migration/SchemaRegistry.js +9 -9
  971. package/dist/persistence/migration/SchemaRegistry.js.map +1 -1
  972. package/dist/persistence/migration/defaultsAdapter.js +10 -10
  973. package/dist/persistence/migration/defaultsAdapter.js.map +1 -1
  974. package/dist/persistence/migration/validatedAdapter.js +4 -4
  975. package/dist/persistence/migration/validatedAdapter.js.map +1 -1
  976. package/dist/persistence/migration/wrapLegacy.js +2 -2
  977. package/dist/persistence/migration/wrapLegacy.js.map +1 -1
  978. package/dist/persistence/object-storage/BodyCodec.d.ts +57 -0
  979. package/dist/persistence/object-storage/BodyCodec.d.ts.map +1 -1
  980. package/dist/persistence/object-storage/BodyCodec.js +88 -22
  981. package/dist/persistence/object-storage/BodyCodec.js.map +1 -1
  982. package/dist/persistence/object-storage/Compression.d.ts +28 -8
  983. package/dist/persistence/object-storage/Compression.d.ts.map +1 -1
  984. package/dist/persistence/object-storage/Compression.js +107 -32
  985. package/dist/persistence/object-storage/Compression.js.map +1 -1
  986. package/dist/persistence/object-storage/Encryption.js +3 -3
  987. package/dist/persistence/object-storage/Encryption.js.map +1 -1
  988. package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts +2 -61
  989. package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts.map +1 -1
  990. package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js +61 -16
  991. package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js.map +1 -1
  992. package/dist/persistence/object-storage/FilesystemObjectStorageOptions.d.ts +51 -0
  993. package/dist/persistence/object-storage/FilesystemObjectStorageOptions.d.ts.map +1 -0
  994. package/dist/persistence/object-storage/FilesystemObjectStorageOptions.js +44 -0
  995. package/dist/persistence/object-storage/FilesystemObjectStorageOptions.js.map +1 -0
  996. package/dist/persistence/object-storage/Integrity.d.ts +43 -0
  997. package/dist/persistence/object-storage/Integrity.d.ts.map +1 -0
  998. package/dist/persistence/object-storage/Integrity.js +66 -0
  999. package/dist/persistence/object-storage/Integrity.js.map +1 -0
  1000. package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts +8 -24
  1001. package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts.map +1 -1
  1002. package/dist/persistence/object-storage/ObjectStoragePlugin.js +39 -29
  1003. package/dist/persistence/object-storage/ObjectStoragePlugin.js.map +1 -1
  1004. package/dist/persistence/object-storage/ObjectStoragePluginOptions.d.ts +72 -0
  1005. package/dist/persistence/object-storage/ObjectStoragePluginOptions.d.ts.map +1 -0
  1006. package/dist/persistence/object-storage/ObjectStoragePluginOptions.js +59 -0
  1007. package/dist/persistence/object-storage/ObjectStoragePluginOptions.js.map +1 -0
  1008. package/dist/persistence/object-storage/PluginConfig.d.ts +5 -2
  1009. package/dist/persistence/object-storage/PluginConfig.d.ts.map +1 -1
  1010. package/dist/persistence/object-storage/PluginConfig.js +8 -0
  1011. package/dist/persistence/object-storage/PluginConfig.js.map +1 -1
  1012. package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts +1 -30
  1013. package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts.map +1 -1
  1014. package/dist/persistence/object-storage/S3ObjectStorageBackend.js +24 -21
  1015. package/dist/persistence/object-storage/S3ObjectStorageBackend.js.map +1 -1
  1016. package/dist/persistence/object-storage/S3ObjectStorageOptions.d.ts +70 -0
  1017. package/dist/persistence/object-storage/S3ObjectStorageOptions.d.ts.map +1 -0
  1018. package/dist/persistence/object-storage/S3ObjectStorageOptions.js +58 -0
  1019. package/dist/persistence/object-storage/S3ObjectStorageOptions.js.map +1 -0
  1020. package/dist/persistence/object-storage/reEncryptionSweep.d.ts +72 -0
  1021. package/dist/persistence/object-storage/reEncryptionSweep.d.ts.map +1 -1
  1022. package/dist/persistence/object-storage/reEncryptionSweep.js +82 -2
  1023. package/dist/persistence/object-storage/reEncryptionSweep.js.map +1 -1
  1024. package/dist/persistence/projection/ProjectionActor.d.ts +4 -24
  1025. package/dist/persistence/projection/ProjectionActor.d.ts.map +1 -1
  1026. package/dist/persistence/projection/ProjectionActor.js +45 -11
  1027. package/dist/persistence/projection/ProjectionActor.js.map +1 -1
  1028. package/dist/persistence/projection/ProjectionOptions.d.ts +109 -0
  1029. package/dist/persistence/projection/ProjectionOptions.d.ts.map +1 -0
  1030. package/dist/persistence/projection/ProjectionOptions.js +108 -0
  1031. package/dist/persistence/projection/ProjectionOptions.js.map +1 -0
  1032. package/dist/persistence/query/CassandraQuery.js +11 -11
  1033. package/dist/persistence/query/CassandraQuery.js.map +1 -1
  1034. package/dist/persistence/query/InMemoryQuery.js +12 -12
  1035. package/dist/persistence/query/InMemoryQuery.js.map +1 -1
  1036. package/dist/persistence/query/PersistenceQuery.js +6 -6
  1037. package/dist/persistence/query/PersistenceQuery.js.map +1 -1
  1038. package/dist/persistence/query/SqliteQuery.js +6 -6
  1039. package/dist/persistence/query/SqliteQuery.js.map +1 -1
  1040. package/dist/persistence/replicated/VectorClock.js +13 -13
  1041. package/dist/persistence/replicated/VectorClock.js.map +1 -1
  1042. package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts +2 -10
  1043. package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts.map +1 -1
  1044. package/dist/persistence/snapshot-stores/CachedSnapshotStore.js +12 -9
  1045. package/dist/persistence/snapshot-stores/CachedSnapshotStore.js.map +1 -1
  1046. package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.d.ts +47 -0
  1047. package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.d.ts.map +1 -0
  1048. package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.js +47 -0
  1049. package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.js.map +1 -0
  1050. package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts +1 -11
  1051. package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts.map +1 -1
  1052. package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js +3 -3
  1053. package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js.map +1 -1
  1054. package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.d.ts +61 -0
  1055. package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.d.ts.map +1 -0
  1056. package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.js +73 -0
  1057. package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.js.map +1 -0
  1058. package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.d.ts +30 -0
  1059. package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.d.ts.map +1 -0
  1060. package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.js +102 -0
  1061. package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.js.map +1 -0
  1062. package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.d.ts +42 -0
  1063. package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.d.ts.map +1 -0
  1064. package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.js +42 -0
  1065. package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.js.map +1 -0
  1066. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts +3 -15
  1067. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts.map +1 -1
  1068. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js +28 -17
  1069. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js.map +1 -1
  1070. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.d.ts +67 -0
  1071. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.d.ts.map +1 -0
  1072. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.js +63 -0
  1073. package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.js.map +1 -0
  1074. package/dist/persistence/snapshot-stores/PostgresSnapshotStore.d.ts +31 -0
  1075. package/dist/persistence/snapshot-stores/PostgresSnapshotStore.d.ts.map +1 -0
  1076. package/dist/persistence/snapshot-stores/PostgresSnapshotStore.js +101 -0
  1077. package/dist/persistence/snapshot-stores/PostgresSnapshotStore.js.map +1 -0
  1078. package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.d.ts +42 -0
  1079. package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.d.ts.map +1 -0
  1080. package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.js +42 -0
  1081. package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.js.map +1 -0
  1082. package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts +1 -14
  1083. package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts.map +1 -1
  1084. package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js +6 -3
  1085. package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js.map +1 -1
  1086. package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.d.ts +40 -0
  1087. package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.d.ts.map +1 -0
  1088. package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.js +31 -0
  1089. package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.js.map +1 -0
  1090. package/dist/persistence/storage/KeyValidator.js +3 -3
  1091. package/dist/persistence/storage/KeyValidator.js.map +1 -1
  1092. package/dist/persistence/storage/SqlIdentifier.d.ts +11 -0
  1093. package/dist/persistence/storage/SqlIdentifier.d.ts.map +1 -0
  1094. package/dist/persistence/storage/SqlIdentifier.js +16 -0
  1095. package/dist/persistence/storage/SqlIdentifier.js.map +1 -0
  1096. package/dist/runtime/detect.d.ts.map +1 -1
  1097. package/dist/runtime/detect.js +7 -7
  1098. package/dist/runtime/detect.js.map +1 -1
  1099. package/dist/runtime/http/BunHonoRunner.d.ts +7 -1
  1100. package/dist/runtime/http/BunHonoRunner.d.ts.map +1 -1
  1101. package/dist/runtime/http/BunHonoRunner.js +22 -0
  1102. package/dist/runtime/http/BunHonoRunner.js.map +1 -1
  1103. package/dist/runtime/http/DenoHonoRunner.d.ts +5 -2
  1104. package/dist/runtime/http/DenoHonoRunner.d.ts.map +1 -1
  1105. package/dist/runtime/http/DenoHonoRunner.js +19 -2
  1106. package/dist/runtime/http/DenoHonoRunner.js.map +1 -1
  1107. package/dist/runtime/http/HonoServerRunner.d.ts +39 -0
  1108. package/dist/runtime/http/HonoServerRunner.d.ts.map +1 -1
  1109. package/dist/runtime/http/NodeHonoRunner.d.ts +3 -1
  1110. package/dist/runtime/http/NodeHonoRunner.d.ts.map +1 -1
  1111. package/dist/runtime/http/NodeHonoRunner.js +24 -2
  1112. package/dist/runtime/http/NodeHonoRunner.js.map +1 -1
  1113. package/dist/runtime/http/index.d.ts +1 -1
  1114. package/dist/runtime/http/index.d.ts.map +1 -1
  1115. package/dist/runtime/http/index.js.map +1 -1
  1116. package/dist/runtime/sqlite/BetterSqliteDriver.js.map +1 -1
  1117. package/dist/runtime/sqlite/BunSqliteDriver.js.map +1 -1
  1118. package/dist/runtime/tcp/BunTcpBackend.d.ts +3 -3
  1119. package/dist/runtime/tcp/BunTcpBackend.d.ts.map +1 -1
  1120. package/dist/runtime/tcp/DenoTcpBackend.d.ts +3 -3
  1121. package/dist/runtime/tcp/DenoTcpBackend.d.ts.map +1 -1
  1122. package/dist/runtime/tcp/DenoTcpBackend.js +3 -3
  1123. package/dist/runtime/tcp/DenoTcpBackend.js.map +1 -1
  1124. package/dist/runtime/tcp/NodeTcpBackend.d.ts +3 -3
  1125. package/dist/runtime/tcp/NodeTcpBackend.d.ts.map +1 -1
  1126. package/dist/runtime/tcp/TcpBackend.d.ts +3 -3
  1127. package/dist/runtime/tcp/TcpBackend.d.ts.map +1 -1
  1128. package/dist/runtime/tcp/index.d.ts +1 -1
  1129. package/dist/runtime/tcp/index.d.ts.map +1 -1
  1130. package/dist/runtime/worker/NodeWorkerBackend.js.map +1 -1
  1131. package/dist/runtime/worker/WebWorkerBackend.js +3 -3
  1132. package/dist/runtime/worker/WebWorkerBackend.js.map +1 -1
  1133. package/dist/serialization/CborCodec.d.ts +2 -2
  1134. package/dist/serialization/CborCodec.d.ts.map +1 -1
  1135. package/dist/serialization/CborCodec.js +80 -80
  1136. package/dist/serialization/CborCodec.js.map +1 -1
  1137. package/dist/serialization/JsonSerializer.js +20 -7
  1138. package/dist/serialization/JsonSerializer.js.map +1 -1
  1139. package/dist/serialization/SerializationExtension.d.ts +2 -2
  1140. package/dist/serialization/SerializationExtension.d.ts.map +1 -1
  1141. package/dist/serialization/SerializationExtension.js +3 -3
  1142. package/dist/serialization/SerializationExtension.js.map +1 -1
  1143. package/dist/testkit/ManualScheduler.d.ts +2 -1
  1144. package/dist/testkit/ManualScheduler.d.ts.map +1 -1
  1145. package/dist/testkit/ManualScheduler.js +10 -9
  1146. package/dist/testkit/ManualScheduler.js.map +1 -1
  1147. package/dist/testkit/MockCluster.d.ts +67 -0
  1148. package/dist/testkit/MockCluster.d.ts.map +1 -0
  1149. package/dist/testkit/MockCluster.js +189 -0
  1150. package/dist/testkit/MockCluster.js.map +1 -0
  1151. package/dist/testkit/MockClusterOptions.d.ts +32 -0
  1152. package/dist/testkit/MockClusterOptions.d.ts.map +1 -0
  1153. package/dist/testkit/MockClusterOptions.js +23 -0
  1154. package/dist/testkit/MockClusterOptions.js.map +1 -0
  1155. package/dist/testkit/MultiNodeClusterFixture.d.ts +63 -0
  1156. package/dist/testkit/MultiNodeClusterFixture.d.ts.map +1 -0
  1157. package/dist/testkit/MultiNodeClusterFixture.js +43 -0
  1158. package/dist/testkit/MultiNodeClusterFixture.js.map +1 -0
  1159. package/dist/testkit/MultiNodeSpec.d.ts +45 -81
  1160. package/dist/testkit/MultiNodeSpec.d.ts.map +1 -1
  1161. package/dist/testkit/MultiNodeSpec.js +139 -44
  1162. package/dist/testkit/MultiNodeSpec.js.map +1 -1
  1163. package/dist/testkit/MultiNodeSpecOptions.d.ts +57 -0
  1164. package/dist/testkit/MultiNodeSpecOptions.d.ts.map +1 -0
  1165. package/dist/testkit/MultiNodeSpecOptions.js +43 -0
  1166. package/dist/testkit/MultiNodeSpecOptions.js.map +1 -0
  1167. package/dist/testkit/ParallelMultiNodeSpec.d.ts +13 -72
  1168. package/dist/testkit/ParallelMultiNodeSpec.d.ts.map +1 -1
  1169. package/dist/testkit/ParallelMultiNodeSpec.js +82 -36
  1170. package/dist/testkit/ParallelMultiNodeSpec.js.map +1 -1
  1171. package/dist/testkit/ParallelMultiNodeSpecOptions.d.ts +58 -0
  1172. package/dist/testkit/ParallelMultiNodeSpecOptions.d.ts.map +1 -0
  1173. package/dist/testkit/ParallelMultiNodeSpecOptions.js +51 -0
  1174. package/dist/testkit/ParallelMultiNodeSpecOptions.js.map +1 -0
  1175. package/dist/testkit/SnapshotMigrationTest.d.ts +86 -0
  1176. package/dist/testkit/SnapshotMigrationTest.d.ts.map +1 -0
  1177. package/dist/testkit/SnapshotMigrationTest.js +77 -0
  1178. package/dist/testkit/SnapshotMigrationTest.js.map +1 -0
  1179. package/dist/testkit/TestKit.d.ts +7 -9
  1180. package/dist/testkit/TestKit.d.ts.map +1 -1
  1181. package/dist/testkit/TestKit.js +11 -7
  1182. package/dist/testkit/TestKit.js.map +1 -1
  1183. package/dist/testkit/TestKitOptions.d.ts +26 -0
  1184. package/dist/testkit/TestKitOptions.d.ts.map +1 -0
  1185. package/dist/testkit/TestKitOptions.js +19 -0
  1186. package/dist/testkit/TestKitOptions.js.map +1 -0
  1187. package/dist/testkit/TestProbe.d.ts +5 -10
  1188. package/dist/testkit/TestProbe.d.ts.map +1 -1
  1189. package/dist/testkit/TestProbe.js +23 -20
  1190. package/dist/testkit/TestProbe.js.map +1 -1
  1191. package/dist/testkit/TestProbeOptions.d.ts +32 -0
  1192. package/dist/testkit/TestProbeOptions.d.ts.map +1 -0
  1193. package/dist/testkit/TestProbeOptions.js +29 -0
  1194. package/dist/testkit/TestProbeOptions.js.map +1 -0
  1195. package/dist/testkit/index.d.ts +15 -4
  1196. package/dist/testkit/index.d.ts.map +1 -1
  1197. package/dist/testkit/index.js +8 -0
  1198. package/dist/testkit/index.js.map +1 -1
  1199. package/dist/testkit/internal/MultiNodeBroker.js +3 -3
  1200. package/dist/testkit/internal/MultiNodeBroker.js.map +1 -1
  1201. package/dist/testkit/internal/MultiNodeTransport.js +2 -2
  1202. package/dist/testkit/internal/MultiNodeTransport.js.map +1 -1
  1203. package/dist/testkit/internal/parallel-multi-node-bootstrap.d.ts.map +1 -1
  1204. package/dist/testkit/internal/parallel-multi-node-bootstrap.js +21 -17
  1205. package/dist/testkit/internal/parallel-multi-node-bootstrap.js.map +1 -1
  1206. package/dist/tracing/OtelAdapter.d.ts +4 -12
  1207. package/dist/tracing/OtelAdapter.d.ts.map +1 -1
  1208. package/dist/tracing/OtelAdapter.js +4 -2
  1209. package/dist/tracing/OtelAdapter.js.map +1 -1
  1210. package/dist/tracing/OtelAdapterOptions.d.ts +42 -0
  1211. package/dist/tracing/OtelAdapterOptions.d.ts.map +1 -0
  1212. package/dist/tracing/OtelAdapterOptions.js +34 -0
  1213. package/dist/tracing/OtelAdapterOptions.js.map +1 -0
  1214. package/dist/tracing/OtelLogsAdapter.d.ts +100 -0
  1215. package/dist/tracing/OtelLogsAdapter.d.ts.map +1 -0
  1216. package/dist/tracing/OtelLogsAdapter.js +130 -0
  1217. package/dist/tracing/OtelLogsAdapter.js.map +1 -0
  1218. package/dist/tracing/Tracer.js +2 -2
  1219. package/dist/tracing/Tracer.js.map +1 -1
  1220. package/dist/tracing/index.d.ts +5 -1
  1221. package/dist/tracing/index.d.ts.map +1 -1
  1222. package/dist/tracing/index.js +2 -0
  1223. package/dist/tracing/index.js.map +1 -1
  1224. package/dist/typed/TypedActor.d.ts.map +1 -1
  1225. package/dist/typed/TypedActor.js +6 -6
  1226. package/dist/typed/TypedActor.js.map +1 -1
  1227. package/dist/util/Constants.d.ts +24 -1
  1228. package/dist/util/Constants.d.ts.map +1 -1
  1229. package/dist/util/Constants.js +24 -1
  1230. package/dist/util/Constants.js.map +1 -1
  1231. package/dist/util/Either.js +4 -4
  1232. package/dist/util/Either.js.map +1 -1
  1233. package/dist/util/Lazy.d.ts +31 -0
  1234. package/dist/util/Lazy.d.ts.map +1 -1
  1235. package/dist/util/Lazy.js +70 -0
  1236. package/dist/util/Lazy.js.map +1 -1
  1237. package/dist/util/OptionsBuilder.d.ts +48 -0
  1238. package/dist/util/OptionsBuilder.d.ts.map +1 -0
  1239. package/dist/util/OptionsBuilder.js +53 -0
  1240. package/dist/util/OptionsBuilder.js.map +1 -0
  1241. package/dist/util/OptionsValidator.d.ts +114 -0
  1242. package/dist/util/OptionsValidator.d.ts.map +1 -0
  1243. package/dist/util/OptionsValidator.js +204 -0
  1244. package/dist/util/OptionsValidator.js.map +1 -0
  1245. package/dist/util/Try.js +4 -4
  1246. package/dist/util/Try.js.map +1 -1
  1247. package/dist/worker/WorkerCluster.d.ts +3 -12
  1248. package/dist/worker/WorkerCluster.d.ts.map +1 -1
  1249. package/dist/worker/WorkerCluster.js +33 -30
  1250. package/dist/worker/WorkerCluster.js.map +1 -1
  1251. package/dist/worker/WorkerClusterOptions.d.ts +61 -0
  1252. package/dist/worker/WorkerClusterOptions.d.ts.map +1 -0
  1253. package/dist/worker/WorkerClusterOptions.js +70 -0
  1254. package/dist/worker/WorkerClusterOptions.js.map +1 -0
  1255. package/dist/worker/WorkerNode.js +5 -5
  1256. package/dist/worker/WorkerNode.js.map +1 -1
  1257. package/dist/worker/index.d.ts +3 -1
  1258. package/dist/worker/index.d.ts.map +1 -1
  1259. package/dist/worker/index.js +1 -0
  1260. package/dist/worker/index.js.map +1 -1
  1261. package/package.json +56 -13
  1262. package/dist/io/broker/BrokerSettings.d.ts +0 -72
  1263. package/dist/io/broker/BrokerSettings.d.ts.map +0 -1
  1264. package/dist/io/broker/BrokerSettings.js +0 -73
  1265. package/dist/io/broker/BrokerSettings.js.map +0 -1
  1266. package/dist/io/broker/ServerWebSocketActor.d.ts +0 -109
  1267. package/dist/io/broker/ServerWebSocketActor.d.ts.map +0 -1
  1268. package/dist/io/broker/ServerWebSocketActor.js +0 -128
  1269. package/dist/io/broker/ServerWebSocketActor.js.map +0 -1
  1270. package/dist/io/broker/WebSocketActor.d.ts +0 -77
  1271. package/dist/io/broker/WebSocketActor.d.ts.map +0 -1
  1272. package/dist/io/broker/WebSocketActor.js +0 -217
  1273. package/dist/io/broker/WebSocketActor.js.map +0 -1
  1274. package/dist/io/broker/WebSocketServerAdapters.d.ts +0 -140
  1275. package/dist/io/broker/WebSocketServerAdapters.d.ts.map +0 -1
  1276. package/dist/io/broker/WebSocketServerAdapters.js +0 -155
  1277. package/dist/io/broker/WebSocketServerAdapters.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -7,7 +7,709 @@ This is a pre-1.0 hobby project — every minor version is potentially
7
7
  breaking. See `ROADMAP.md` for what's coming, and `README.md` →
8
8
  "What's in here / What isn't" for current scope honesty.
9
9
 
10
- ## [Unreleased]
10
+ ## [0.11.0] — 2026-07-15
11
+
12
+ ### Changed — Naming conventions: no abbreviations, unified vocabulary
13
+
14
+ Repo-wide naming sweep for consistency. Pre-1.0, so these are hard
15
+ renames with no deprecation shims. All are mechanical — same behavior,
16
+ new names.
17
+
18
+ - **BREAKING — WebSocket → `Websocket` (single-cap), no `Ws` abbreviation.**
19
+ Every identifier and file/dir uses the `Websocket` spelling:
20
+ `WebSocketServerActor`/`WebSocketClientActor` → `WebsocketServerActor`/
21
+ `WebsocketClientActor`; the `Ws*` supporting types (`WsConnection`,
22
+ `WsCodec`, `WsFrame`, `WsServerMessage`, …) → `Websocket*`; `wsSend()` →
23
+ `websocketSend()`; `DEFAULT_WS_MAX_FRAME_BYTES` →
24
+ `DEFAULT_WEBSOCKET_MAX_FRAME_BYTES`; the module moved
25
+ `src/http/ws/` → `src/http/websocket/`. The `websocket()` routing
26
+ directive, the global `WebSocket`, the `ws` package's `WebSocketServer`,
27
+ and the `Sec-WebSocket-Protocol` header are unchanged.
28
+ *Migration:* replace `Ws`/`WebSocket` identifier prefixes with
29
+ `Websocket`; `wsSend` → `websocketSend`.
30
+ - **BREAKING — abbreviations spelled out** in type/member names: `*Cmd` →
31
+ `*Command`, `*Msg` → `*Message`, `*Ack` → `*Acknowledgment`, `ByPid*` →
32
+ `ByPersistenceId*`, `*Impl` → `*Implementation`, `*Ctor` → `*Constructor`.
33
+ Wire/discriminator string literals are unchanged.
34
+ *Migration:* e.g. `MqttCmd` → `MqttCommand`, `EnvelopeMsg` →
35
+ `EnvelopeMessage`, `SubscribeAck` → `SubscribeAcknowledgment`.
36
+ - **BREAKING — testkit assertions spelled out too:** `TestProbe.expectMsg()`
37
+ → `expectMessage()`, `TestProbe.expectMsgType()` → `expectMessageType()` —
38
+ the last `Msg` holdouts, now consistent with `expectNoMessage()`.
39
+ *Migration:* rename the calls; signatures and behavior are unchanged.
40
+ - **BREAKING — one config vocabulary: `Options`, never `Settings`.**
41
+ Remaining `*Settings` types → `*OptionsType` (`CircuitBreakerSettings`,
42
+ `TlsTransportSettings`, `Bounded/PriorityMailboxSettings`,
43
+ `ManagementRoutesSettings`, `ConsumerControllerSettings`,
44
+ `KeepMajoritySettings`, the testkit specs); `BrokerSettings.ts` folded
45
+ into `BrokerOptions.ts` (`BrokerSettingsError` → `BrokerOptionsError`);
46
+ the `BrokerActor` glue `readSettingsFromConfig`/`requiredSettings`/
47
+ `builtInDefaults`/`settings` → `readOptionsFromConfig`/`requiredOptions`/
48
+ `builtInDefaultOptions`/`options`; `default{FailureDetector,PhiAccrual}Settings`
49
+ → `default*Options`. New dedicated `ConsumerControllerOptions` +
50
+ `KeepMajorityOptions` files with builders.
51
+ - **BREAKING — Command vs Signal unified on `kind`.** MQTT and WebSocket
52
+ internal mailbox signals are now `kind`-tagged plain objects (dispatched
53
+ by `kind`, like the typed-actor `Signal`), not `instanceof`-dispatched
54
+ classes; the bad-payload hook is `onInvalidMessage` everywhere (MQTT's
55
+ `onDecodeError` is gone); `WebSocketAcceptSignal` → `WebsocketAcceptCommand`
56
+ and `WebsocketClientSend` is a command, both lifted out of the `*Signal`
57
+ unions.
58
+ *Migration:* override `onInvalidMessage` instead of `onDecodeError`;
59
+ construct outbound sends via `websocketSend(msg)` (unchanged).
60
+ ### Added — Options validation
61
+
62
+ - **`OptionsValidator` + `OptionsError`** (#274) — a declarative-but-code
63
+ validator layer for the `XOptions` pattern. Each options file with
64
+ constrained fields exports an `XOptionsValidator` (`extends
65
+ OptionsValidator<XOptionsType>`, brokers via `BrokerOptionsValidator`) whose
66
+ `rules(s)` uses typo-checked, no-op-on-`undefined` helpers (`port`,
67
+ `positiveNumber`, `positiveInt`, `nonNegativeInt`, `oneOf`, `nonEmptyString`,
68
+ `url`, …) plus `fail(field, reason, value)` for cross-field rules. Validation
69
+ runs **once at consume time on the merged settings**, so builder, plain-object,
70
+ and HOCON inputs are all checked and cross-field rules see the final values —
71
+ broker actors via the `optionsValidator()` hook (in `preStart`, after the
72
+ required-field check), non-broker consumers via one
73
+ `new XOptionsValidator().validate(settings)` call in their constructor.
74
+ - **Validators shipped for**: every broker (MQTT, Kafka, AMQP, Redis Streams,
75
+ NATS, JetStream, SSE, TCP, UDP, gRPC client) and the WebSocket client; the
76
+ cluster core (`Cluster`, `ClusterBootstrap`, `FailureDetector`, `PhiAccrual`,
77
+ `ClusterClient`, `ClusterClientReceptionist`, `StaticQuorum`, `KeepReferee`,
78
+ `LeaseMajority`, `ClusterRouter`), sharding (`Sharding`, `StartSharding`,
79
+ `ShardedDaemonProcess`) and singleton (`StartSingleton`); discovery
80
+ (`AutoDiscovery`, `ConfigSeedProvider`, `DnsSeedProvider`,
81
+ `KubernetesApiSeedProvider`, `Receptionist`) and gossip intervals
82
+ (`DistributedPubSub`, `DistributedData`); leases (`Lease`, `KubernetesLease`);
83
+ caches (`RedisCache`, `MemcachedCache`, `CachedSnapshotStore`); the
84
+ `CassandraJournal` and S3 / filesystem object-storage backends; the
85
+ Express/Hono HTTP backends; `WorkerCluster`; delivery `ProducerController`;
86
+ and `TestProbe`. Options whose fields carry no real constraint
87
+ (all-boolean/string/callback, or degrade-gracefully knobs like snapshot
88
+ `keepN` where `<= 0` means "keep all") intentionally get no validator.
89
+
90
+ ### Changed — Options validation
91
+
92
+ - **BREAKING** (#274) — invalid **option values** now throw `OptionsError` at
93
+ construction / actor start instead of a bare `Error` (or, previously, going
94
+ unchecked on the builder/plain-object path). Notably MQTT `protocolVersion`
95
+ outside `{4, 5}` now throws `OptionsError` on **all** input paths (previously
96
+ only the HOCON path threw, as a bare `Error`). *Migration:* catch
97
+ `OptionsError` (exported from the package root) where you previously matched
98
+ the ad-hoc `Error` message. Missing **required** broker settings still throw
99
+ `BrokerOptionsError`; malformed HOCON still throws `ConfigError`.
100
+ - **BREAKING — `InMemoryCache` joins the `XOptions` family.** It now takes an
101
+ `InMemoryCacheOptions` builder (or plain object) with `withMaxEntries` /
102
+ `withCleanupMs`, validates via `InMemoryCacheOptionsValidator` (out-of-range
103
+ values throw `OptionsError` instead of a bare `Error`, and `cleanupMs` — a
104
+ negative / `NaN` sweep interval — is now checked too), and reads its defaults
105
+ from HOCON `actor-ts.cache.in-memory.{maxEntries, cleanupMs}` via the
106
+ `CacheExtension` (previously the bounds were unreachable through the
107
+ extension). The internal `InMemoryCacheSettings` interface is **removed** —
108
+ use `InMemoryCacheOptionsType` (both `InMemoryCacheOptions` and the type are
109
+ now exported from the package root). *Migration:* a plain
110
+ `{ maxEntries, cleanupMs }` object still works unchanged; only the type name
111
+ changed.
112
+ - **WebSocket route / policy options are now validated.** The resolved
113
+ per-connection policy (`maxFrameBytes`, `maxBufferedBytes`, `maxConnections`,
114
+ and the `onOversizeFrame` / `onInvalidMessage` / `onBackpressure` enums) is
115
+ checked on every path — route options, HOCON `actor-ts.http.websocket`, and
116
+ defaults — via `WebsocketPolicyOptionsValidator`, and `allowedOrigins` via
117
+ `WebsocketRouteOptionsValidator`. Bad values throw `OptionsError` (the enum
118
+ guard previously threw a bare `Error`, and only on the HOCON path; the
119
+ numeric knobs — e.g. `maxConnections: 0`, which silently admitted nobody —
120
+ were unchecked). The reference config now ships an `actor-ts.http.websocket`
121
+ section documenting the defaults.
122
+ - **The object-storage decompression cap is now a store option.** The 512 MiB
123
+ decompression-bomb guard (#3) was pinned to its default because the stores
124
+ called `decodeBody` without a cap. `withMaxDecompressedBytes` is now on
125
+ `ObjectStorageSnapshotStoreOptions`, `ObjectStorageDurableStateStoreOptions`,
126
+ and `ObjectStoragePluginOptions` (validated at construction — a non-positive
127
+ / non-integer cap throws `OptionsError`, `Infinity` opts out), and both
128
+ stores forward it into `decodeBody`. Raise it to restore a legitimately
129
+ large snapshot / state blob, or lower it for a tighter bound.
130
+ - **HTTP middleware + directives now validate their options.** Added
131
+ `OptionsValidator`s for `TimeoutOptions` (`ms`), `HstsOptions` (`maxAge` plus
132
+ the preload cross-field), `CorsOptions` (`maxAge` plus credentials-vs-`*`),
133
+ `CsrfOptions` (present-secret length, cookie `sameSite` / `maxAgeSeconds`),
134
+ and `StaticFilesOptions` (`maxFileSize`, `dotfiles` / `symlinks` enums); the
135
+ ad-hoc bare-`Error` validity checks in the consumers now throw `OptionsError`
136
+ (required-field guards stay as-is). `rateLimit` and `idempotent` also gained
137
+ the real `RateLimitOptions` / `IdempotencyOptions` fluent builders they were
138
+ already documented to have, each with a validator (`windowMs`/`max`,
139
+ `ttlMs`/`missingHeader`); the plain-object call form is unchanged.
140
+ - **`CircuitBreaker` and `BoundedMailbox` now validate their options too** —
141
+ the last exported options types with real numeric constraints join the
142
+ validator family. `CircuitBreakerOptionsValidator` checks `maxFailures`
143
+ (integer >= 1), `resetTimeoutMs` (finite >= 0), and the previously-unchecked
144
+ `callTimeoutMs` (> 0 — omit it to disable the per-call timeout; `0`, which
145
+ previously meant "no timeout" silently, now throws), and requires
146
+ `maxFailures`/`resetTimeoutMs` at runtime (a builder without them previously
147
+ produced a breaker that silently never opened).
148
+ `BoundedMailboxOptionsValidator` checks `capacity` (integer >= 1, and now
149
+ required — previously a missing `capacity` made the "bounded" mailbox
150
+ silently unbounded) and the previously-unchecked `overflow` enum. The old
151
+ ad-hoc bare-`Error` guards now throw `OptionsError`.
152
+
153
+ ### Added — HTTP hardening
154
+
155
+ - **Scoped error handling + fallback routes** (#352) — `handleErrors(handler,
156
+ child)` catches exceptions from a subtree (akka-http `ExceptionHandler`
157
+ style; sees the original error, returns a response or `null` to decline);
158
+ `fallback(handler)` answers any unmatched request via each backend's
159
+ not-found hook; `ServerBuilder.withErrorHandler(...)` is the server-wide
160
+ last resort. Precedence, uniform across Fastify/Express/Hono: innermost
161
+ `handleErrors` → `withErrorHandler` → framework default.
162
+ - **HTML response utilities** (#352) — `escapeHtml`, an auto-escaping `html`
163
+ tagged template with a `SafeHtml` brand, `rawHtml` escape hatch, and
164
+ `completeHtml` (`text/html` + `nosniff`).
165
+ - **Security-middleware suite** (#353) — `cors` (a route directive that the
166
+ compiler expands into per-pattern preflight `OPTIONS` routes),
167
+ `strictTransportSecurity` / `hsts`, `contentSecurityPolicy`,
168
+ `csrfProtection` + `requireSameOrigin`, `securityHeaders`, `requestId`,
169
+ `BasicAuth`, and `requestTimeout` — each with an `XOptions` builder. Plus
170
+ public `parseCookies` / `serializeCookie` helpers.
171
+ - **Static file serving** (#354) — `getFromFile`, `getFromDirectory`, and
172
+ `getFromBrowseableDirectory`: MIME detection, index resolution, conditional
173
+ requests (weak ETag + `Last-Modified` → 304), single `Range` (206/416),
174
+ HEAD, trailing-slash redirects, and XSS-safe directory listings.
175
+ - **MIME-type registry** (#354) — `contentTypeFor(pathOrExt, overrides?)` and
176
+ `DEFAULT_MIME_TYPES`.
177
+ - **Streaming response bodies** (#354) — `HttpResponse.body` now accepts a web
178
+ `ReadableStream<Uint8Array>`, written natively by all three backends.
179
+
180
+ ### Changed — HTTP hardening
181
+
182
+ - **`Middleware` `next()` accepts an optional request override** (#353) —
183
+ `next(req?)` lets a middleware enrich what the handler sees (request-id,
184
+ CSRF token). Backward compatible.
185
+ - **HonoBackend now answers `HEAD` on `GET` routes** (#354), matching
186
+ Fastify/Express; a route pattern ending in `/*` exposes the remainder as
187
+ `req.params['*']` on every backend.
188
+ - **BREAKING:** the `Route` / `CompiledEndpoint` unions gain `fallback` and
189
+ `cors` variants — an exhaustive `match` over `Route` must handle them
190
+ (#352, #353).
191
+ - **BREAKING:** `ServerBuilder` gains a required `withErrorHandler` method —
192
+ structural third-party implementers must add it (#352).
193
+ - **BREAKING:** `HttpError`'s constructor gains an optional 4th `headers`
194
+ parameter (after `extra`); `BearerTokenAuth` 401s now expose the challenge
195
+ on `err.headers['www-authenticate']`, no longer `err.extra.wwwAuthenticate`
196
+ (#352).
197
+
198
+ ### Security
199
+
200
+ - **CORS, CSRF, and security-header middleware** (#353) — origin allowlisting
201
+ with correct preflight handling, an HMAC-signed double-submit CSRF token
202
+ (plus an Origin/Referer check), and HSTS / CSP / COOP / CORP / nosniff /
203
+ frame-options; secret comparisons are constant-time.
204
+ - **`WWW-Authenticate` reaches the wire** (#353) — `BearerTokenAuth` (and the
205
+ new `BasicAuth`) 401s emit a real challenge header instead of burying it in
206
+ the body.
207
+ - **Hardened path-traversal defence for static files** (#354) — the URL
208
+ remainder is fully decoded before validation, every segment is rejected if
209
+ it is `..`, empty, NUL, a backslash, or a `:` (drive/ADS) segment, absolute
210
+ forms are refused, the joined path is confined to the root, symlink escapes
211
+ are refused, and dotfiles are denied — every rejection a uniform 404.
212
+
213
+ - **WS-1 (HIGH) — WebSocket upgrade crash hardened**.
214
+ A malformed percent-escape in the upgrade path (e.g. `GET /room/%ZZ` against a
215
+ `websocket('/room/:id', …)` route) made `decodeURIComponent` throw inside the
216
+ Express backend's fire-and-forget upgrade handler, surfacing as an *unhandled
217
+ rejection* — process-fatal under Node's default and reachable **pre-auth** by
218
+ an unauthenticated client. `matchWebsocketPattern` now treats a malformed escape as
219
+ a non-match (→ 404), and the Express upgrade handler attaches its socket
220
+ error-guard before any async work and wraps the handler in a last-resort
221
+ `.catch` that closes the socket. Fastify/Hono were not affected.
222
+ - **WS-2 (HIGH) — Cross-Site WebSocket Hijacking (CSWSH) defence**. No upgrade handler validated the `Origin` header, so a
223
+ malicious web page could open an authenticated WebSocket riding a victim
224
+ browser's ambient cookie/IP auth. New **`allowedOrigins`** option on
225
+ `websocket()` routes (`.withAllowedOrigins([...])` on the builder): an upgrade
226
+ whose `Origin` is present but not listed is rejected with 403 before the
227
+ handshake on all three backends; a missing `Origin` (non-browser client) is
228
+ allowed. Bearer-token auth was already resistant (browsers can't set
229
+ `Authorization` on a WS handshake).
230
+ - **HTTP-1 (MEDIUM-HIGH) — Hono body-size cap enforced before buffering**. The Hono backend read the whole request body via
231
+ `arrayBuffer()` and only then compared it against `maxBodyBytes`, so the cap
232
+ was cosmetic — the real ceiling was the runtime's native default (128 MiB on
233
+ Bun, effectively unbounded on Node via `@hono/node-server`). It now rejects
234
+ an oversized `Content-Length` with 413 *before* buffering; the post-buffer
235
+ check remains a backstop for chunked bodies that omit Content-Length.
236
+ Express (streaming cap) and Fastify (framework default) were unaffected.
237
+ - **HTTP-2 (MEDIUM-HIGH) — `InMemoryCache` is now bounded (LRU)**. The default in-process cache was an unbounded `Map`
238
+ with lazy expiry only, so a flood of distinct attacker-chosen keys
239
+ (`Idempotency-Key`; rate-limit keys — idempotency additionally stores the
240
+ full response body for 24 h) grew it without limit → RAM exhaustion. It now
241
+ accepts `{ maxEntries?, cleanupMs? }` (defaults `10_000` / `60_000`): a new
242
+ key beyond the cap evicts the least-recently-used entry, and a background
243
+ sweep reclaims expired entries. *Behaviour change:* the default
244
+ is now bounded — pass `maxEntries: Infinity` for the previous unbounded
245
+ behaviour (documented OOM risk). Options / validation / HOCON plumbing for
246
+ these fields landed as the `InMemoryCacheOptions` follow-up (see *Changed —
247
+ Options validation*).
248
+ - **WS-6 (LOW) — CRLF stripped from raw upgrade-reject headers**. `writeRawHttpResponse` (the Express pre-handshake
249
+ reject path) wrote app-supplied header names/values verbatim onto the raw
250
+ socket, so an `authorize` guard echoing attacker-influenced data into a
251
+ header could split the response. CR/LF are now stripped from header names
252
+ and values.
253
+ - **#9 (hardening) — JSON deserialization ignores the `__proto__` setter**
254
+ . `JsonSerializer` and the cluster ref decoder
255
+ now define a decoded `"__proto__"` key as an own data property instead of
256
+ assigning through the prototype setter, so a hostile payload can't change
257
+ the decoded object's prototype.
258
+ - **BRK-1 / BRK-2 (MEDIUM) — inbound buffer caps for TCP `lines` + SSE**. A hostile / MITM'd upstream could stream bytes with no
259
+ frame delimiter, growing the inbound buffer without bound. The TCP `lines`
260
+ framer now rejects an un-terminated remainder that already exceeds
261
+ `maxLineLen` (matching the existing terminated-line check), and the SSE
262
+ client caps its pending event buffer at 1 MiB — both drop the connection
263
+ instead of buffering forever. (`length-prefixed` TCP framing was already
264
+ bounded.)
265
+ - **#6 (LOW) — consistent SQL/CQL identifier validation**. Postgres/MariaDB already validated table identifiers,
266
+ but SQLite (journal + snapshot store) and Cassandra (keyspace + table names,
267
+ interpolated into CQL) did not. A shared `assertSafeIdentifier`
268
+ (`/^[A-Za-z_][A-Za-z0-9_]*$/`) is now applied across all four, so a
269
+ config-sourced identifier can't inject SQL/CQL. Data values were, and
270
+ remain, bound parameters.
271
+ - **HTTP-3 (docs) — rate-limit examples key on the socket peer, not
272
+ `x-forwarded-for`**. The shipped `rateLimit`
273
+ examples taught keying on the client-settable `x-forwarded-for` header, which
274
+ an attacker rotates per request to bypass the limit (and which collapses all
275
+ header-less clients into one shared bucket). The JSDoc and the bilingual
276
+ docs now use `req.remoteAddress` and state the trusted-proxy caveat. No
277
+ behaviour change — `key` was always caller-supplied.
278
+ - **#3 (MEDIUM) — decompression-bomb cap on stored bodies**. Reading a snapshot / durable-state / object body
279
+ decompressed it with no output bound, so a tampered or hostile compressed
280
+ blob (a few KB expanding to many GB) could OOM the process on recovery.
281
+ `decodeBody` now caps the decompressed size at **512 MiB** by default
282
+ (`DecodeOptions.maxOutputBytes`; `Infinity` opts out): gzip enforces it at
283
+ allocation time via zlib's `maxOutputLength`, and every path asserts the
284
+ decoded size as a portable backstop.
285
+ - **HTTP-4 (MEDIUM) — idempotency responses can be scoped per caller**. The idempotency cache keyed only on the
286
+ `Idempotency-Key` header plus a method/path/body fingerprint, so two callers
287
+ reusing the same key for the same request shape shared one cached response —
288
+ a cross-user disclosure when the response is identity-specific (e.g. carries
289
+ `Set-Cookie` or the first caller's data). New opt-in `identity: (req) =>
290
+ string` folds the authenticated principal into the cache key so responses are
291
+ partitioned per caller. (Same-key-different-body poisoning was already
292
+ rejected with 422.)
293
+ - **WS-4 (MEDIUM) — WebSocket backpressure works on the Hono backend**. The Hono socket adapter didn't implement
294
+ `bufferedAmount`, so the connection actor's `maxBufferedBytes` /
295
+ `onBackpressure` guard was a no-op on Hono — a slow / idle-reading client
296
+ could grow the outbound send buffer without bound (OOM). The adapter now
297
+ surfaces the send-buffer depth from the native socket (Bun
298
+ `getBufferedAmount()`, Node/Deno numeric `.bufferedAmount`).
299
+ - **WS-3 (MEDIUM) — cap the WebSocket transport frame size (Express + Fastify)**
300
+ . The `ws`-backed backends left the transport at the
301
+ `ws` default `maxPayload` (100 MiB), so an oversized frame was buffered in
302
+ full before the app-level `maxFrameBytes` (1 MiB default) rejected it —
303
+ allocation-amplification DoS. Both now pass `maxPayload:
304
+ DEFAULT_WEBSOCKET_MAX_FRAME_BYTES` (1 MiB), so an oversized frame is rejected at the
305
+ protocol level. *Caveat:* on these backends a route that raises
306
+ `maxFrameBytes` above the default is currently still capped at the default by
307
+ the transport; a per-route / configurable transport cap and the Hono
308
+ runner-level cap are tracked follow-ups.
309
+ - **WS-5 (MEDIUM, partial) — per-route WebSocket connection admission cap**
310
+ . New opt-in `maxConnections` on `websocket()`
311
+ routes (`.withMaxConnections(n)`, or `actor-ts.http.websocket.maxConnections`
312
+ in HOCON): a new upgrade beyond the cap is closed with 1013 in the shared
313
+ wiring layer before an actor is wired for it, and the live count decrements
314
+ when a connection closes. Default: unlimited (behaviour unchanged). The
315
+ other WS-5 sub-parts — a handshake/idle timeout and hub-mailbox bounding —
316
+ remain tracked follow-ups.
317
+
318
+ ### Documentation
319
+
320
+ - Moved the Server-WebSocket page from the IO section into the HTTP section
321
+ (#351).
322
+ - Reconciled stale API-reference pages with the shipped code (#360): rewrote the
323
+ persistence adapter & migration pages and the OTel **tracing** adapter page to
324
+ the function-based APIs, rewrote the management & health-check and cache &
325
+ durable-data pages to their real APIs, and removed the page for the
326
+ never-shipped OTel *metrics* adapter.
327
+ - Repointed stale `*Settings` type names in prose to the `*OptionsType`
328
+ vocabulary (#349).
329
+ - Fixed broken code samples that declared a `const` inside a call's object
330
+ literal (#359).
331
+
332
+ ## [0.10.0] — 2026-07-08
333
+
334
+ ### Added — Typed WebSocket & MQTT
335
+
336
+ - **Typed WebSocket routing** (#1) — a `websocket(path, actorRef)` directive
337
+ in the HTTP routing DSL binds a `WebSocketServerActor<TOut, TIn>`. The
338
+ hub receives codec-decoded messages (JSON by default; `rawCodec()` for
339
+ binary), replies to the sending connection with `this.reply(...)` or
340
+ fans out with `this.broadcast(...)`, and gets `onClientConnected` /
341
+ `onClientDisconnected` / `onInvalidMessage` hooks. The framework spawns
342
+ an internal session actor per connection and solves the first-frame
343
+ race by construction (listeners attach synchronously at upgrade; the
344
+ mailbox is the buffer). Works on all three HTTP backends — Fastify
345
+ (`@fastify/websocket`), Express (`ws` upgrade handling), and Hono
346
+ (per-runtime: Bun/Node/Deno). `withMiddleware(...)` runs at upgrade
347
+ time, so `BearerTokenAuth` / `IpAllowlist` gate the handshake.
348
+ - **`WebSocketClientActor<TOut, TIn>`** (#1) — the typed client half, built
349
+ on `BrokerActor`: reconnect-with-backoff, outbound buffering across
350
+ reconnects, circuit breaker, and HOCON settings. Other actors push a
351
+ typed send with `ref.tell(wsSend(msg))`.
352
+ - **`actor-ts.http.websocket` HOCON block** — server-side WebSocket
353
+ defaults (`maxFrameBytes`, `onOversizeFrame`, `onInvalidMessage`,
354
+ `maxBufferedBytes`, `onBackpressure`); route options override HOCON,
355
+ which overrides built-in defaults.
356
+ - **Subclass-first, typed `MqttActor<T, TSelf>`** (#345) — the MQTT
357
+ counterpart to `WebSocketClientActor`. Extend it, declare
358
+ subscriptions in the constructor with `this.subscribe(topic, { qos })`,
359
+ handle inbound traffic in `onMessage(msg)`, and publish with
360
+ `this.publish(topic, payload)`. Lifecycle events (inbound / connected /
361
+ disconnected) run on the actor thread via the mailbox. Hooks:
362
+ `onMessage`, `onConnected`, `onDisconnected`, `onDecodeError`,
363
+ `onSelfMessage`. Still externally controllable via
364
+ `ref.tell({ kind: 'publish' | 'subscribe' | 'unsubscribe', … })`.
365
+ - **`MqttOptions` fluent builder** (#345) — `MqttOptions.create()
366
+ .withBrokerUrl(…).withClientId(…).withQos(…)…`; feeds the same
367
+ three-layer settings merge (constructor > HOCON
368
+ `actor-ts.io.broker.mqtt` > built-in defaults). (As of #346/#348 this is
369
+ the primary way to construct; a plain `MqttOptionsType` object works too —
370
+ see the options note under *Changed*.)
371
+ - **Typed MQTT payloads** (#345) — inbound `MqttMessage<T>` carries a
372
+ lazily-decoding `MqttPayload<T>` (`.bytes` / `.text()` / `.entity<U=T>()`,
373
+ successes cached). A pluggable `MqttCodec<T>` seam (default
374
+ `mqttJsonCodec()`) decodes `entity()` and encodes non-string publishes;
375
+ `publish(topic, { … })` encodes an entity, `publish(topic, string |
376
+ Uint8Array)` sends raw bytes. Decode failures surface via
377
+ `onDecodeError`. `MqttClientLike` / `MqttModuleLike` are exported as
378
+ test seams for the `mqttModule()` override.
379
+
380
+ ### Changed — Options overhaul & MQTT
381
+
382
+ - **Fluent options, framework-wide** (#346, #348) — every configurable
383
+ constructor and factory takes a fluent options builder **or** a plain
384
+ settings object, interchangeably: `new MqttActor(MqttOptions.create()
385
+ .withClientId('x'))` behaves identically to `new MqttActor({ clientId:
386
+ 'x' })`. A builder *is* its settings — `OptionsBuilder` stores each field
387
+ as an own property, so a builder instance reads and spreads exactly like a
388
+ plain settings object (no separate resolve step; consumers just read the
389
+ argument). Each configurable type exposes **three names from one
390
+ `XOptions.ts` file**: `XOptionsType` (the plain object), `XOptionsBuilder`
391
+ (the fluent builder, `XOptions.create().withField(…)`), and `XOptions` — the
392
+ **union** of the two that every consumer signature accepts (`options:
393
+ XOptions`), plus a value alias so `XOptions.create()` keeps working. There
394
+ is no separate "Settings" concept (the former `XSettings` interface is now
395
+ `XOptionsType`, co-located in `XOptions.ts`). HOCON resolution is
396
+ unchanged — the builder / plain object only supplies the
397
+ highest-precedence explicit layer, and unset fields still fall through
398
+ to config then defaults. Naming lockstep with no divergence: builder
399
+ method `withX` ⇔ settings field `x` ⇔ HOCON leaf `x`. Affected
400
+ (non-exhaustive): `ActorSystem.create(name, ActorSystemOptions
401
+ .create()…)`; `TestKit.create` / `new TestProbe` (`TestKitOptions` /
402
+ `TestProbeOptions`); every broker actor (`MqttOptions`, `KafkaOptions`,
403
+ `AmqpOptions`, `NatsOptions`, `JetStreamOptions`, `RedisStreamsOptions`,
404
+ `SseOptions`, `TcpSocketOptions`, `UdpSocketOptions`, `GrpcClientOptions`,
405
+ `GrpcServerOptions`); HTTP/WS (`WebSocketClientOptions`,
406
+ `WebSocketRouteOptions`, `ExpressBackendOptions`, `HonoBackendOptions`);
407
+ cache (`RedisCacheOptions`, `MemcachedCacheOptions`); persistence
408
+ journals / snapshot stores / durable-state stores / object-storage
409
+ backends / projections / plugin registrations; cluster / sharding /
410
+ singleton / client / pub-sub / router / downing / failure detectors;
411
+ leases, seed providers + discovery, observability adapters
412
+ (`OtelAdapterOptions`, `PromClientAdapterOptions`), `WorkerClusterOptions`,
413
+ `DistributedDataOptions`, and `ProducerControllerOptions`. Migration:
414
+ `new X({ a, b })` still works, or use `new X(XOptions.create()
415
+ .withA(a).withB(b))`; the positional "context" args that were never
416
+ settings (a system name, a `Cluster`, a sharding entity + type name)
417
+ stay positional. **BREAKING** (pre-1.0 hard cut): the builder class
418
+ `XOptions` is renamed `XOptionsBuilder` and the settings interface
419
+ `XSettings` is renamed `XOptionsType`; `XOptions` is now the accepted-input
420
+ union. Everyday call sites — `XOptions.create()…` and plain objects — are
421
+ unaffected; only code that referenced the old `XSettings` type name or the
422
+ builder *class* by name needs updating.
423
+ - **BREAKING: renamed settings fields + HOCON keys** (#348) — to keep the
424
+ builder-method ⇔ settings-field ⇔ HOCON-leaf names in lockstep, six
425
+ fields were renamed: MQTT `defaultQos` → `qos` (`withQos`) and
426
+ `keepAliveSec` → `keepAlive` (`withKeepAlive`); JetStream `ackTimeoutMs`
427
+ → `ackTimeout`; ClusterClient `log` → `logger`; DistributedData
428
+ `gossipIntervalMs` → `gossipInterval`; ProducerController
429
+ `resendTimeoutMs` → `resendTimeout`. Update any plain settings objects
430
+ and HOCON keys using the old names.
431
+ - **BREAKING: `MqttActor` is now abstract** (#345) — you subclass it and
432
+ override `onMessage` instead of spawning it directly and driving it only
433
+ with `tell`. Migration: `class MyClient extends MqttActor<T> { … }` and
434
+ spawn the subclass. A pure external-router setup needs a trivial
435
+ subclass with an empty `onMessage`.
436
+ - **BREAKING: `MqttMessage.payload` is a `MqttPayload<T>` wrapper**, no
437
+ longer a raw `Uint8Array` (#345). Migration: `msg.payload` →
438
+ `msg.payload.bytes`; `new TextDecoder().decode(msg.payload)` →
439
+ `msg.payload.text()`; JSON reads → `msg.payload.entity()`.
440
+ - **BREAKING: `MqttOptionsType.subscriptions` and the `MqttSubscription`
441
+ type are removed** (#345) — they were never HOCON-expressible (targets
442
+ are actor refs). Migration: move `subscriptions: [{ topic, target }]`
443
+ into the subclass constructor as `this.subscribe(topic, { target })`, or
444
+ send `ref.tell({ kind: 'subscribe', topic, target })`.
445
+ - **BREAKING: `subscribe`/`unsubscribe` command `target` semantics**
446
+ (#345) — a `subscribe` command with no `target` now delivers to the
447
+ actor's own `onMessage` (previously `target` was required). An
448
+ `unsubscribe` command with no `target` now removes only the *foreign*
449
+ targets and leaves the actor's own subscription intact (previously it
450
+ dropped the whole topic).
451
+
452
+ ### Fixed — MQTT
453
+
454
+ - **MQTT runtime subscriptions are re-applied after a reconnect** (#345) —
455
+ previously only the (now-removed) `settings.subscriptions` were
456
+ re-subscribed on reconnect, so subscriptions added at runtime silently
457
+ stopped receiving after a drop. The unified registry is now re-applied
458
+ on every (re)connect.
459
+ - **MQTT `subscribe` while disconnected reaches the broker on connect**
460
+ (#345) — previously it updated only the local routing map and never
461
+ issued the broker SUBSCRIBE.
462
+ - **MQTT terminated fan-out targets are cleaned up** (#345) — subscriber
463
+ refs are deathwatched; when one stops it is pruned from the registry and
464
+ a broker UNSUBSCRIBE fires once the pattern has no consumers left.
465
+
466
+ ### Removed — legacy frame-level WebSocket API
467
+
468
+ - **BREAKING: the legacy frame-level WebSocket API** — `WebSocketActor`
469
+ (client), `ServerWebSocketActor` (server bridge), and the
470
+ `serverWebSocketActorOf` / `bunWebSocketHandlers` adapters are gone.
471
+ They worked at the raw text/binary frame level and needed ~150 lines of
472
+ backend-specific boilerplate to stand up a server. Replace a
473
+ `WebSocketActor` with `WebSocketClientActor`, and a hand-rolled server
474
+ plugin with a `websocket(path, ref)` route + `WebSocketServerActor`.
475
+ The client HOCON key `actor-ts.io.broker.websocket` is unchanged.
476
+
477
+ ### Security
478
+
479
+ - **WebSocket DoS hardening carried into the new stack** (#1) — inbound
480
+ frames are size-capped (`maxFrameBytes`, default 1 MiB) *before* the
481
+ codec decodes them; oversize frames close 1009 (or drop) and
482
+ undecodable frames close 1003 (or drop / hook) per policy. Slow-consumer
483
+ backpressure closes/drops past `maxBufferedBytes`.
484
+
485
+ - **DurableState revision tampering** (#116) — `ObjectStorageDurableStateStore.load()`
486
+ previously trusted the `revision` value inside the body JSON, so an
487
+ attacker with write access to the underlying bucket could roll back
488
+ state past CAS checks. Two-track integrity fix: encrypted bodies use
489
+ AES-GCM with `revision` as AAD (already wired); unencrypted bodies
490
+ gain an opt-in HMAC-SHA256 over `{ revision, etag }` with per-pid
491
+ HKDF-derived subkeys. Set `integrity: { mode: 'hmac-sha256', integrityKey }`
492
+ on the store + `requireIntegrity: true` to refuse legacy un-tagged
493
+ bodies on the read path.
494
+ - **ClusterClient ask-ID predictability** (#120) — `nextAskId()` used
495
+ `Date.now() + counter`, predictable enough that a MitM on the
496
+ TCP socket could pre-compute likely IDs and inject forged
497
+ `cluster-client-reply` frames. Switched to `crypto.randomUUID()`
498
+ (122 bits of entropy per call).
499
+ - **Master-key rotation sweep race** (#109) — `reEncryptObjectStorage()`
500
+ had no durable progress token, so a crash forced the resumed run
501
+ to re-list and re-GET every object from scratch (a 24-hour sweep =
502
+ a 24-hour wasted re-walk). Worse: if the operator dropped a
503
+ retired key from the keyring too soon, the sweep would only
504
+ notice mid-corpus, leaving the bucket half-rewritten. Added two
505
+ opt-in options: `progress: ReEncryptProgressStore` for durable
506
+ resume tokens (file/Redis/object-storage-backed) and
507
+ `verifyKeyringCompleteness: boolean` (default `true`) for a
508
+ pre-sweep sample that refuses to start when a body's key version
509
+ is absent from `active`/`retired`.
510
+ - **LeaseMajority split-brain** (#142) — a slow `lease.acquire()`
511
+ that the local defence-in-depth timeout had given up on could
512
+ later resolve `true` and write `decision=surviveSet`, letting
513
+ both sides of an equal partition claim victory. Three layered
514
+ fixes: (1) monotonic `acquireEpoch` so a late result with a
515
+ stale epoch is dropped; (2) fire-and-forget `lease.release()`
516
+ on abandon to undo any wire-side success after the local
517
+ give-up, with fail-safe-on-rejection (refuse to claim majority
518
+ on the same view); (3) optional fencing tokens — `Lease.acquireWithToken?():
519
+ Promise<{ token: string } | null>` with `KubernetesLease`
520
+ returning `<resourceVersion>/<leaseTransitions>` and
521
+ `InMemoryLease` a monotonic per-name version stamp.
522
+
523
+ ### Added — Persistence, HTTP & observability
524
+
525
+ - **PostgreSQL persistence backend** (#323) — `PostgresJournal`,
526
+ `PostgresSnapshotStore`, and `PostgresDurableStateStore` (the first
527
+ SQL-backed durable-state store) on top of the `pg` driver, registered
528
+ via `registerPostgresPlugins(ext, …)` which selects the journal +
529
+ snapshot store by config plugin ID and returns the durable-state-store
530
+ handle (the object-storage-plugin pattern — `PersistenceExtension` has
531
+ no durable-state registry). Optimistic concurrency (per-pid
532
+ `SELECT MAX(seq)` inside a transaction plus a primary-key
533
+ unique-violation `23505` backstop; revision CAS via
534
+ `ON CONFLICT`/`UPDATE … WHERE revision`), an indexed tags join table,
535
+ and auto-created schema (`autoCreateTables`, default on). `pg` is an
536
+ optional peer-dependency, lazy-imported; the backend defines its own
537
+ minimal client shapes so the framework stays dependency-free. Ships
538
+ with an in-process fake-pool unit suite and a live `postgres:latest`
539
+ Docker suite wired into the integration-brokers CI matrix.
540
+ - **MariaDB persistence backend** (#324) — sibling of #323 for
541
+ MariaDB / MySQL via the official `mariadb` connector: `MariaDbJournal`,
542
+ `MariaDbSnapshotStore`, `MariaDbDurableStateStore`, and
543
+ `registerMariaDbPlugins`. A separate implementation with the MariaDB
544
+ dialect (`?` placeholders, `INSERT IGNORE` for the tag dedup,
545
+ `ON DUPLICATE KEY UPDATE` snapshot upsert, a derived-table-wrapped
546
+ `keepN` prune, `ER_DUP_ENTRY`/1062 concurrency backstop, and
547
+ `LONGTEXT`/`VARCHAR(255)`/`BIGINT` columns). Optional `mariadb`
548
+ peer-dep; in-process fake-pool suite + live `mariadb:latest` Docker
549
+ suite in CI.
550
+ - **Configurable compression level** (#322) — `CompressionConfig` gains
551
+ an optional `level` (gzip 0–9, zstd 1–22) threaded through the codec to
552
+ the object-storage snapshot + durable-state stores. Out-of-range values
553
+ are clamped; the level is encoder-only and is NOT written to the wire
554
+ (the ATS1 manifest records only the algorithm), so changing it needs no
555
+ migration — old bodies keep decoding, new bodies use the new level, and
556
+ the two mix freely in one bucket.
557
+ - **Real-network multi-node integration tests** (#313) — new
558
+ `tests/integration/` subtree with a Docker-compose setup that
559
+ brings up 5 cluster-node containers + 1 controller container
560
+ on a shared bridge network and runs partition / heal /
561
+ membership-convergence scenarios over a real TCP stack. All
562
+ fault injection happens inside each container's network
563
+ namespace via `iptables` + `tc netem`, so no host privileged
564
+ mode is required — just `NET_ADMIN` on each cluster-node
565
+ container. Two npm scripts ship: `bun run test:integration`
566
+ (build + up + auto-exit on the controller's status) and
567
+ `bun run test:integration:teardown`. The same command works
568
+ locally on Docker Desktop and in
569
+ `.github/workflows/integration.yml`; the workflow is
570
+ triggered by pushes to `main`, manual dispatch, and a nightly
571
+ schedule. Fifteen scenarios covering the cluster's load-bearing
572
+ primitives:
573
+ - **01** — membership convergence (smoke test)
574
+ - **02** — 2:3 split-brain with partition + heal verification
575
+ - **03** — Receptionist gossip-convergence over a shared
576
+ `ServiceKey` across all 5 nodes, with partition + heal
577
+ - **04** — DistributedData `LWWRegister` quorum reads/writes
578
+ during a 50ms `tc-netem` egress latency storm — proves
579
+ `majority`-consistency operations survive a real network
580
+ slowdown
581
+ - **05** — Cluster Singleton failover after the host node
582
+ `cluster.leave()`s; new leader's manager spawns the
583
+ singleton, proxies from every remaining node converge
584
+ - **06** — Cluster Sharding rebalance: 30 entities warmed up,
585
+ victim node leaves, 8 ex-victim entities relocate to
586
+ surviving regions via the coordinator's HandOff path
587
+ - **07** — Concurrent `GCounter` increments from all 5 nodes
588
+ converge to the exact expected total (proves CRDT merge +
589
+ `ddata-gossip` wire path under write pressure)
590
+ - **08** — Receptionist `Subscribe` continuous-listing
591
+ notifications fire on register / deregister, observable
592
+ from every cluster node within gossip-propagation latency
593
+ - **09** — External `ClusterClient` (NOT a cluster member)
594
+ makes 100 sequential asks against `/user/echo`; exercises
595
+ the #120 `randomUUID` ask-id path end-to-end
596
+ - **10** — Management HTTP auth end-to-end: 401 without
597
+ token, 200 with valid token, 404 with valid token + fake
598
+ address, /health stays anonymous (probe contract)
599
+ - **11** — `PersistentActor` event-sourcing + snapshot +
600
+ replay: 5 increments → snapshot at seq=3 → kill → respawn
601
+ triggers `recover()` → snapshot-load + replay restores
602
+ state. Two-kill cycle verifies determinism.
603
+ - **12** — `DistributedPubSub` topic fan-out: 15 events
604
+ published from two different nodes, all 5 subscribers
605
+ receive both bursts in order
606
+ - **13** — `CoordinatedShutdown` pipeline progresses through
607
+ early (`BeforeServiceUnbind`) + late
608
+ (`BeforeActorSystemTerminate`) phases on a victim node;
609
+ markers POST'd to a peer observer verify both fired in
610
+ chronological order
611
+ - **14** — Bounded mailbox + `actor_mailbox_dropped_total`
612
+ metric: bombard a slow actor with 15 000 messages, verify
613
+ ~5 000 drops are counted in the Prometheus output with
614
+ correct `{class, path, reason}` labels
615
+ - **15** — `DnsSeedProvider` against docker's embedded DNS:
616
+ resolves every peer hostname, validates IPv4 shape and
617
+ `<systemName>@<host>:<port>` stamping
618
+ - **Backend `remoteAddress` wiring** (#312 follow-up) — the
619
+ Fastify, Express, and Hono backends now populate
620
+ `HttpRequest.remoteAddress` from the socket peer
621
+ (`req.ip` / `req.socket.remoteAddress` on Fastify+Express;
622
+ best-effort across `c.req.raw` / `c.env.requestIP` on Hono).
623
+ `IpAllowlist` works end-to-end on real socket peers — the
624
+ pre-existing `getClientIp` override is no longer required for
625
+ default deployments behind direct connections.
626
+ - **HTTP route middleware framework** (#312) — new
627
+ `withMiddleware(mw, route)` builder + `Middleware` type
628
+ `(req, next) => Promise<HttpResponse> | HttpResponse`. Middlewares
629
+ compose outside-in; nested wraps run in declaration order. The
630
+ HTTP cache primitives (`rateLimit`, `idempotent`, `cached`) are
631
+ unchanged, but new orthogonal concerns (auth, allowlists, custom
632
+ logging, request tracing) can hang off the same hook.
633
+ - **`BearerTokenAuth({ tokens })`** (#312) — built-in middleware
634
+ that 401s every request lacking a `Authorization: Bearer <token>`
635
+ header from the configured (rotatable) shared-secret list.
636
+ Constant-time comparison so an attacker probing tokens can't
637
+ distinguish "first character wrong" from "last character wrong"
638
+ by timing. Rejection includes `WWW-Authenticate: Bearer realm=...`.
639
+ - **`IpAllowlist({ allow })`** (#312) — built-in middleware for
640
+ CIDR-based network-level isolation. Parses IPv4 + IPv6 CIDRs
641
+ (including IPv4-mapped IPv6 like `::ffff:10.0.0.1` so a dual-
642
+ stack socket peer matches an IPv4 CIDR). Fail-secure: no
643
+ resolvable client IP means 403. Trust-source is explicit:
644
+ default reads `req.remoteAddress` (the socket peer); operators
645
+ behind a trusted proxy must opt-in to header trust via the
646
+ `getClientIp` extractor.
647
+ - **`HttpRequest.remoteAddress?: string`** (#312) — optional new
648
+ field on the request shape. Backends should populate from the
649
+ underlying socket where available. Consumers that need to
650
+ trust `x-forwarded-for` must do so explicitly (see
651
+ `IpAllowlist`'s `getClientIp`).
652
+ - **`managementRoutes`** gains `auth`, `ipAllowlist`, and
653
+ `authProtectHealth` settings (#312). By default the auth
654
+ middleware wraps the privileged subtree (`/cluster/*`,
655
+ `/metrics`) but leaves `/health` and `/ready` anonymous —
656
+ standard Kubernetes liveness/readiness probes can't easily
657
+ attach an Authorization header. Set `authProtectHealth: true`
658
+ when the deployment can present credentials on probes. The
659
+ IP-allowlist wraps EVERYTHING (network-level isolation
660
+ precedes any application policy).
661
+ - **`JsonLogger`** (#311) — structured-logging logger that emits one
662
+ `\n`-delimited JSON object per record to `process.stdout` (or an
663
+ injected `JsonLogSink`). Every record carries `ts` (ISO-8601),
664
+ `level`, optional `source`, `msg`, the merged static + dynamic
665
+ MDC, and positional `...args` under an `args` array. Errors
666
+ serialise as `{ name, message, stack }`; circular refs,
667
+ `BigInt`, and functions are sanitised so a log call never throws.
668
+ Drop-in for log-aggregation pipelines (Loki, ELK, Datadog,
669
+ CloudWatch, etc.) via the standard stdout-pipe path.
670
+ - **`otelLogger({ api })`** (#311) — bridge to
671
+ `@opentelemetry/api-logs` for OTLP-Logs pipelines. Optional peer
672
+ dep (structural-typed on the OTel surface, like `otelTracer`).
673
+ Maps severity to OTel's standard severity-number range, attaches
674
+ the actor's path on `source`, merges static + dynamic MDC into
675
+ `attributes`, and the SDK auto-links the active span's
676
+ `traceId`/`spanId` when tracing is enabled in the same process.
677
+
678
+ ### Changed — Bounded mailbox default
679
+
680
+ - **Bounded mailbox is now the default** (#310) — every actor spawned
681
+ without an explicit `Props.withMailbox(...)` gets a
682
+ `BoundedMailbox` with `capacity = 10_000` and `overflow = 'drop-head'`.
683
+ The pre-#310 unbounded shape was a classic Akka-anti-pattern in
684
+ disguise: a runaway producer could absorb the JVM, ahem, the V8
685
+ heap, until OOM. 10 000 is high enough that a well-tuned actor
686
+ never hits it on a normal traffic spike; if it does, the actor's
687
+ throughput is mismatched and the bound makes that operationally
688
+ visible. Drops are emitted as the `actor_mailbox_dropped_total`
689
+ Counter (labels `class`, `path`, `reason`). Opt back into unbounded
690
+ per-actor via `Props.withMailbox(() => new Mailbox())`; keep the
691
+ bounded shape but change the capacity via `Props.withMailboxCapacity(n)`.
692
+
693
+ ### Fixed — Compression
694
+
695
+ - **zstd compression on runtimes without native zstd** (#321) — the
696
+ compression codec wired the `fzstd` peer-dependency as a compressor, but
697
+ `fzstd` is decompression-only (it has no `compress`), so
698
+ `compression: { algorithm: 'zstd' }` threw `fzstd.compress is not a
699
+ function` on any runtime without native zstd (i.e. not Bun and not
700
+ Node ≥22.15) — and the eager peer-dep probe passed anyway. zstd
701
+ resolution is now split by direction: compress is native-only with a
702
+ clear "needs Bun / Node ≥22.15" error, decompress keeps the `fzstd`
703
+ fallback so a non-native runtime can still READ zstd bodies written
704
+ elsewhere, and `probeCompressionAvailability('zstd')` now checks the
705
+ compress path so the misconfig surfaces at plugin-init, not on first
706
+ persist.
707
+ - **Object-storage compression docs were inaccurate** — the docs
708
+ described `gzip` / `brotli` / `deflate` with a `level` field and
709
+ `Content-Encoding`-header-driven decode, none of which matched the
710
+ implementation. Corrected across EN + DE to the real `none` / `gzip` /
711
+ `zstd` set, the ATS1-manifest-driven decode, the now-real `level`
712
+ option, and the per-direction zstd runtime support.
11
713
 
12
714
  ## [0.9.1] — 2026-05-15
13
715