effect 4.0.0-beta.5 → 4.0.0-beta.51

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 (1512) hide show
  1. package/dist/Array.d.ts +213 -385
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +149 -102
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +82 -45
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +105 -52
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +39 -32
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +36 -33
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Brand.d.ts +3 -5
  14. package/dist/Brand.d.ts.map +1 -1
  15. package/dist/Brand.js +1 -1
  16. package/dist/Brand.js.map +1 -1
  17. package/dist/Cache.d.ts +14 -45
  18. package/dist/Cache.d.ts.map +1 -1
  19. package/dist/Cache.js +21 -47
  20. package/dist/Cache.js.map +1 -1
  21. package/dist/Cause.d.ts +54 -23
  22. package/dist/Cause.d.ts.map +1 -1
  23. package/dist/Cause.js +108 -10
  24. package/dist/Cause.js.map +1 -1
  25. package/dist/Channel.d.ts +166 -48
  26. package/dist/Channel.d.ts.map +1 -1
  27. package/dist/Channel.js +182 -91
  28. package/dist/Channel.js.map +1 -1
  29. package/dist/Chunk.d.ts +112 -304
  30. package/dist/Chunk.d.ts.map +1 -1
  31. package/dist/Chunk.js +56 -88
  32. package/dist/Chunk.js.map +1 -1
  33. package/dist/Clock.d.ts +2 -2
  34. package/dist/Clock.d.ts.map +1 -1
  35. package/dist/Clock.js.map +1 -1
  36. package/dist/Combiner.d.ts +280 -13
  37. package/dist/Combiner.d.ts.map +1 -1
  38. package/dist/Combiner.js +198 -7
  39. package/dist/Combiner.js.map +1 -1
  40. package/dist/Config.d.ts +171 -11
  41. package/dist/Config.d.ts.map +1 -1
  42. package/dist/Config.js +69 -11
  43. package/dist/Config.js.map +1 -1
  44. package/dist/ConfigProvider.d.ts +6 -6
  45. package/dist/ConfigProvider.d.ts.map +1 -1
  46. package/dist/ConfigProvider.js +5 -5
  47. package/dist/ConfigProvider.js.map +1 -1
  48. package/dist/Console.d.ts +2 -2
  49. package/dist/Console.d.ts.map +1 -1
  50. package/dist/Console.js.map +1 -1
  51. package/dist/Context.d.ts +1150 -0
  52. package/dist/Context.d.ts.map +1 -0
  53. package/dist/{ServiceMap.js → Context.js} +181 -165
  54. package/dist/Context.js.map +1 -0
  55. package/dist/Cron.d.ts +11 -7
  56. package/dist/Cron.d.ts.map +1 -1
  57. package/dist/Cron.js +120 -63
  58. package/dist/Cron.js.map +1 -1
  59. package/dist/Data.d.ts +535 -366
  60. package/dist/Data.d.ts.map +1 -1
  61. package/dist/Data.js +132 -79
  62. package/dist/Data.js.map +1 -1
  63. package/dist/DateTime.d.ts +74 -255
  64. package/dist/DateTime.d.ts.map +1 -1
  65. package/dist/DateTime.js +17 -62
  66. package/dist/DateTime.js.map +1 -1
  67. package/dist/Deferred.d.ts +12 -5
  68. package/dist/Deferred.d.ts.map +1 -1
  69. package/dist/Deferred.js +13 -5
  70. package/dist/Deferred.js.map +1 -1
  71. package/dist/Duration.d.ts +62 -32
  72. package/dist/Duration.d.ts.map +1 -1
  73. package/dist/Duration.js +109 -79
  74. package/dist/Duration.js.map +1 -1
  75. package/dist/Effect.d.ts +1377 -1147
  76. package/dist/Effect.d.ts.map +1 -1
  77. package/dist/Effect.js +465 -446
  78. package/dist/Effect.js.map +1 -1
  79. package/dist/Encoding.d.ts +194 -0
  80. package/dist/Encoding.d.ts.map +1 -0
  81. package/dist/Encoding.js +352 -0
  82. package/dist/Encoding.js.map +1 -0
  83. package/dist/Equal.d.ts +276 -109
  84. package/dist/Equal.d.ts.map +1 -1
  85. package/dist/Equal.js +140 -48
  86. package/dist/Equal.js.map +1 -1
  87. package/dist/Equivalence.d.ts +60 -3
  88. package/dist/Equivalence.d.ts.map +1 -1
  89. package/dist/Equivalence.js +70 -13
  90. package/dist/Equivalence.js.map +1 -1
  91. package/dist/ErrorReporter.d.ts +374 -0
  92. package/dist/ErrorReporter.d.ts.map +1 -0
  93. package/dist/ErrorReporter.js +245 -0
  94. package/dist/ErrorReporter.js.map +1 -0
  95. package/dist/ExecutionPlan.d.ts +6 -6
  96. package/dist/ExecutionPlan.d.ts.map +1 -1
  97. package/dist/ExecutionPlan.js +4 -4
  98. package/dist/ExecutionPlan.js.map +1 -1
  99. package/dist/Exit.d.ts +24 -12
  100. package/dist/Exit.d.ts.map +1 -1
  101. package/dist/Exit.js +8 -4
  102. package/dist/Exit.js.map +1 -1
  103. package/dist/Fiber.d.ts +10 -8
  104. package/dist/Fiber.d.ts.map +1 -1
  105. package/dist/Fiber.js.map +1 -1
  106. package/dist/FiberHandle.d.ts +11 -10
  107. package/dist/FiberHandle.d.ts.map +1 -1
  108. package/dist/FiberHandle.js +12 -11
  109. package/dist/FiberHandle.js.map +1 -1
  110. package/dist/FiberMap.d.ts +22 -21
  111. package/dist/FiberMap.d.ts.map +1 -1
  112. package/dist/FiberMap.js +10 -10
  113. package/dist/FiberMap.js.map +1 -1
  114. package/dist/FiberSet.d.ts +2 -2
  115. package/dist/FiberSet.d.ts.map +1 -1
  116. package/dist/FiberSet.js +4 -4
  117. package/dist/FiberSet.js.map +1 -1
  118. package/dist/FileSystem.d.ts +20 -19
  119. package/dist/FileSystem.d.ts.map +1 -1
  120. package/dist/FileSystem.js +17 -13
  121. package/dist/FileSystem.js.map +1 -1
  122. package/dist/Filter.d.ts +4 -37
  123. package/dist/Filter.d.ts.map +1 -1
  124. package/dist/Filter.js +0 -13
  125. package/dist/Filter.js.map +1 -1
  126. package/dist/Formatter.d.ts +131 -47
  127. package/dist/Formatter.d.ts.map +1 -1
  128. package/dist/Formatter.js +229 -51
  129. package/dist/Formatter.js.map +1 -1
  130. package/dist/Function.d.ts +1 -9
  131. package/dist/Function.d.ts.map +1 -1
  132. package/dist/Function.js +2 -10
  133. package/dist/Function.js.map +1 -1
  134. package/dist/Graph.d.ts +65 -65
  135. package/dist/Graph.d.ts.map +1 -1
  136. package/dist/Graph.js +60 -62
  137. package/dist/Graph.js.map +1 -1
  138. package/dist/Hash.js +1 -1
  139. package/dist/Hash.js.map +1 -1
  140. package/dist/HashMap.d.ts +26 -19
  141. package/dist/HashMap.d.ts.map +1 -1
  142. package/dist/HashMap.js +7 -5
  143. package/dist/HashMap.js.map +1 -1
  144. package/dist/Iterable.d.ts +50 -50
  145. package/dist/Iterable.d.ts.map +1 -1
  146. package/dist/Iterable.js +106 -34
  147. package/dist/Iterable.js.map +1 -1
  148. package/dist/JsonSchema.d.ts +299 -10
  149. package/dist/JsonSchema.d.ts.map +1 -1
  150. package/dist/JsonSchema.js +323 -4
  151. package/dist/JsonSchema.js.map +1 -1
  152. package/dist/Latch.d.ts +175 -0
  153. package/dist/Latch.d.ts.map +1 -0
  154. package/dist/Latch.js +130 -0
  155. package/dist/Latch.js.map +1 -0
  156. package/dist/Layer.d.ts +599 -379
  157. package/dist/Layer.d.ts.map +1 -1
  158. package/dist/Layer.js +249 -180
  159. package/dist/Layer.js.map +1 -1
  160. package/dist/LayerMap.d.ts +27 -26
  161. package/dist/LayerMap.d.ts.map +1 -1
  162. package/dist/LayerMap.js +21 -18
  163. package/dist/LayerMap.js.map +1 -1
  164. package/dist/LogLevel.d.ts +32 -0
  165. package/dist/LogLevel.d.ts.map +1 -1
  166. package/dist/LogLevel.js +28 -100
  167. package/dist/LogLevel.js.map +1 -1
  168. package/dist/Logger.d.ts +31 -97
  169. package/dist/Logger.d.ts.map +1 -1
  170. package/dist/Logger.js +2 -3
  171. package/dist/Logger.js.map +1 -1
  172. package/dist/ManagedRuntime.d.ts +8 -8
  173. package/dist/ManagedRuntime.d.ts.map +1 -1
  174. package/dist/ManagedRuntime.js +34 -25
  175. package/dist/ManagedRuntime.js.map +1 -1
  176. package/dist/Metric.d.ts +23 -25
  177. package/dist/Metric.d.ts.map +1 -1
  178. package/dist/Metric.js +24 -26
  179. package/dist/Metric.js.map +1 -1
  180. package/dist/MutableHashMap.d.ts +7 -0
  181. package/dist/MutableHashMap.d.ts.map +1 -1
  182. package/dist/MutableHashMap.js +8 -0
  183. package/dist/MutableHashMap.js.map +1 -1
  184. package/dist/MutableHashSet.d.ts +7 -0
  185. package/dist/MutableHashSet.d.ts.map +1 -1
  186. package/dist/MutableHashSet.js +8 -0
  187. package/dist/MutableHashSet.js.map +1 -1
  188. package/dist/MutableList.d.ts.map +1 -1
  189. package/dist/MutableList.js +3 -0
  190. package/dist/MutableList.js.map +1 -1
  191. package/dist/Newtype.d.ts +291 -0
  192. package/dist/Newtype.d.ts.map +1 -0
  193. package/dist/Newtype.js +161 -0
  194. package/dist/Newtype.js.map +1 -0
  195. package/dist/Number.d.ts +74 -18
  196. package/dist/Number.d.ts.map +1 -1
  197. package/dist/Number.js +46 -18
  198. package/dist/Number.js.map +1 -1
  199. package/dist/Optic.d.ts +947 -18
  200. package/dist/Optic.d.ts.map +1 -1
  201. package/dist/Optic.js +454 -5
  202. package/dist/Optic.js.map +1 -1
  203. package/dist/Option.d.ts +25 -16
  204. package/dist/Option.d.ts.map +1 -1
  205. package/dist/Option.js +15 -9
  206. package/dist/Option.js.map +1 -1
  207. package/dist/Order.d.ts +6 -1
  208. package/dist/Order.d.ts.map +1 -1
  209. package/dist/Order.js +19 -14
  210. package/dist/Order.js.map +1 -1
  211. package/dist/PartitionedSemaphore.d.ts +146 -15
  212. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  213. package/dist/PartitionedSemaphore.js +174 -61
  214. package/dist/PartitionedSemaphore.js.map +1 -1
  215. package/dist/Path.d.ts +2 -2
  216. package/dist/Path.d.ts.map +1 -1
  217. package/dist/Path.js +2 -2
  218. package/dist/Path.js.map +1 -1
  219. package/dist/Pipeable.d.ts +17 -0
  220. package/dist/Pipeable.d.ts.map +1 -1
  221. package/dist/Pipeable.js +19 -1
  222. package/dist/Pipeable.js.map +1 -1
  223. package/dist/PlatformError.d.ts +2 -2
  224. package/dist/Pool.d.ts +6 -4
  225. package/dist/Pool.d.ts.map +1 -1
  226. package/dist/Pool.js +11 -9
  227. package/dist/Pool.js.map +1 -1
  228. package/dist/PubSub.d.ts +8 -6
  229. package/dist/PubSub.d.ts.map +1 -1
  230. package/dist/PubSub.js +18 -10
  231. package/dist/PubSub.js.map +1 -1
  232. package/dist/Pull.d.ts.map +1 -1
  233. package/dist/Pull.js +1 -1
  234. package/dist/Pull.js.map +1 -1
  235. package/dist/Queue.d.ts +9 -6
  236. package/dist/Queue.d.ts.map +1 -1
  237. package/dist/Queue.js +7 -5
  238. package/dist/Queue.js.map +1 -1
  239. package/dist/Random.d.ts +36 -2
  240. package/dist/Random.d.ts.map +1 -1
  241. package/dist/Random.js +46 -35
  242. package/dist/Random.js.map +1 -1
  243. package/dist/RcMap.d.ts +4 -4
  244. package/dist/RcMap.d.ts.map +1 -1
  245. package/dist/RcMap.js +13 -13
  246. package/dist/RcMap.js.map +1 -1
  247. package/dist/RcRef.d.ts +1 -1
  248. package/dist/RcRef.d.ts.map +1 -1
  249. package/dist/Record.d.ts +63 -160
  250. package/dist/Record.d.ts.map +1 -1
  251. package/dist/Record.js +37 -56
  252. package/dist/Record.js.map +1 -1
  253. package/dist/Redactable.d.ts +139 -62
  254. package/dist/Redactable.d.ts.map +1 -1
  255. package/dist/Redactable.js +59 -55
  256. package/dist/Redactable.js.map +1 -1
  257. package/dist/Reducer.d.ts +166 -7
  258. package/dist/Reducer.d.ts.map +1 -1
  259. package/dist/Reducer.js +135 -1
  260. package/dist/Reducer.js.map +1 -1
  261. package/dist/References.d.ts +257 -229
  262. package/dist/References.d.ts.map +1 -1
  263. package/dist/References.js +240 -259
  264. package/dist/References.js.map +1 -1
  265. package/dist/Request.d.ts +6 -6
  266. package/dist/Request.d.ts.map +1 -1
  267. package/dist/Request.js +2 -1
  268. package/dist/Request.js.map +1 -1
  269. package/dist/RequestResolver.d.ts +25 -45
  270. package/dist/RequestResolver.d.ts.map +1 -1
  271. package/dist/RequestResolver.js +15 -36
  272. package/dist/RequestResolver.js.map +1 -1
  273. package/dist/Resource.d.ts +0 -3
  274. package/dist/Resource.d.ts.map +1 -1
  275. package/dist/Resource.js +5 -4
  276. package/dist/Resource.js.map +1 -1
  277. package/dist/Result.d.ts +1 -1
  278. package/dist/Result.d.ts.map +1 -1
  279. package/dist/Result.js +1 -2
  280. package/dist/Result.js.map +1 -1
  281. package/dist/Runtime.d.ts +66 -0
  282. package/dist/Runtime.d.ts.map +1 -1
  283. package/dist/Runtime.js +79 -6
  284. package/dist/Runtime.js.map +1 -1
  285. package/dist/Schedule.d.ts +176 -293
  286. package/dist/Schedule.d.ts.map +1 -1
  287. package/dist/Schedule.js +162 -136
  288. package/dist/Schedule.js.map +1 -1
  289. package/dist/Scheduler.d.ts +36 -125
  290. package/dist/Scheduler.d.ts.map +1 -1
  291. package/dist/Scheduler.js +37 -126
  292. package/dist/Scheduler.js.map +1 -1
  293. package/dist/Schema.d.ts +3326 -383
  294. package/dist/Schema.d.ts.map +1 -1
  295. package/dist/Schema.js +2315 -283
  296. package/dist/Schema.js.map +1 -1
  297. package/dist/SchemaAST.d.ts +13 -2
  298. package/dist/SchemaAST.d.ts.map +1 -1
  299. package/dist/SchemaAST.js +340 -257
  300. package/dist/SchemaAST.js.map +1 -1
  301. package/dist/SchemaGetter.d.ts +57 -15
  302. package/dist/SchemaGetter.d.ts.map +1 -1
  303. package/dist/SchemaGetter.js +85 -25
  304. package/dist/SchemaGetter.js.map +1 -1
  305. package/dist/SchemaIssue.d.ts.map +1 -1
  306. package/dist/SchemaIssue.js +29 -11
  307. package/dist/SchemaIssue.js.map +1 -1
  308. package/dist/SchemaParser.d.ts +44 -54
  309. package/dist/SchemaParser.d.ts.map +1 -1
  310. package/dist/SchemaParser.js +69 -4
  311. package/dist/SchemaParser.js.map +1 -1
  312. package/dist/SchemaRepresentation.d.ts +46 -45
  313. package/dist/SchemaRepresentation.d.ts.map +1 -1
  314. package/dist/SchemaRepresentation.js +65 -38
  315. package/dist/SchemaRepresentation.js.map +1 -1
  316. package/dist/SchemaTransformation.d.ts +252 -3
  317. package/dist/SchemaTransformation.d.ts.map +1 -1
  318. package/dist/SchemaTransformation.js +319 -13
  319. package/dist/SchemaTransformation.js.map +1 -1
  320. package/dist/Scope.d.ts +2 -2
  321. package/dist/Scope.d.ts.map +1 -1
  322. package/dist/Scope.js.map +1 -1
  323. package/dist/ScopedCache.d.ts +2 -2
  324. package/dist/ScopedCache.d.ts.map +1 -1
  325. package/dist/ScopedCache.js +5 -5
  326. package/dist/ScopedCache.js.map +1 -1
  327. package/dist/Semaphore.d.ts +307 -0
  328. package/dist/Semaphore.d.ts.map +1 -0
  329. package/dist/Semaphore.js +220 -0
  330. package/dist/Semaphore.js.map +1 -0
  331. package/dist/Sink.d.ts +22 -19
  332. package/dist/Sink.d.ts.map +1 -1
  333. package/dist/Sink.js +54 -7
  334. package/dist/Sink.js.map +1 -1
  335. package/dist/Stdio.d.ts +18 -6
  336. package/dist/Stdio.d.ts.map +1 -1
  337. package/dist/Stdio.js +20 -2
  338. package/dist/Stdio.js.map +1 -1
  339. package/dist/Stream.d.ts +465 -542
  340. package/dist/Stream.d.ts.map +1 -1
  341. package/dist/Stream.js +321 -144
  342. package/dist/Stream.js.map +1 -1
  343. package/dist/String.d.ts +114 -47
  344. package/dist/String.d.ts.map +1 -1
  345. package/dist/String.js +29 -47
  346. package/dist/String.js.map +1 -1
  347. package/dist/Struct.d.ts +23 -7
  348. package/dist/Struct.d.ts.map +1 -1
  349. package/dist/Struct.js +22 -0
  350. package/dist/Struct.js.map +1 -1
  351. package/dist/SubscriptionRef.d.ts +3 -3
  352. package/dist/SubscriptionRef.d.ts.map +1 -1
  353. package/dist/SubscriptionRef.js +85 -117
  354. package/dist/SubscriptionRef.js.map +1 -1
  355. package/dist/SynchronizedRef.d.ts +2 -1
  356. package/dist/SynchronizedRef.d.ts.map +1 -1
  357. package/dist/SynchronizedRef.js +2 -1
  358. package/dist/SynchronizedRef.js.map +1 -1
  359. package/dist/Terminal.d.ts +5 -4
  360. package/dist/Terminal.d.ts.map +1 -1
  361. package/dist/Terminal.js +2 -2
  362. package/dist/Terminal.js.map +1 -1
  363. package/dist/Tracer.d.ts +21 -20
  364. package/dist/Tracer.d.ts.map +1 -1
  365. package/dist/Tracer.js +13 -9
  366. package/dist/Tracer.js.map +1 -1
  367. package/dist/Trie.d.ts +44 -31
  368. package/dist/Trie.d.ts.map +1 -1
  369. package/dist/Trie.js +13 -9
  370. package/dist/Trie.js.map +1 -1
  371. package/dist/TxChunk.d.ts +4 -4
  372. package/dist/TxChunk.d.ts.map +1 -1
  373. package/dist/TxChunk.js +4 -4
  374. package/dist/TxChunk.js.map +1 -1
  375. package/dist/TxDeferred.d.ts +328 -0
  376. package/dist/TxDeferred.d.ts.map +1 -0
  377. package/dist/TxDeferred.js +197 -0
  378. package/dist/TxDeferred.js.map +1 -0
  379. package/dist/TxHashMap.d.ts +105 -86
  380. package/dist/TxHashMap.d.ts.map +1 -1
  381. package/dist/TxHashMap.js +51 -44
  382. package/dist/TxHashMap.js.map +1 -1
  383. package/dist/TxHashSet.d.ts +2 -2
  384. package/dist/TxHashSet.d.ts.map +1 -1
  385. package/dist/TxHashSet.js +16 -15
  386. package/dist/TxHashSet.js.map +1 -1
  387. package/dist/TxPriorityQueue.d.ts +609 -0
  388. package/dist/TxPriorityQueue.d.ts.map +1 -0
  389. package/dist/TxPriorityQueue.js +416 -0
  390. package/dist/TxPriorityQueue.js.map +1 -0
  391. package/dist/TxPubSub.d.ts +585 -0
  392. package/dist/TxPubSub.d.ts.map +1 -0
  393. package/dist/TxPubSub.js +521 -0
  394. package/dist/TxPubSub.js.map +1 -0
  395. package/dist/TxQueue.d.ts +1 -1
  396. package/dist/TxQueue.d.ts.map +1 -1
  397. package/dist/TxQueue.js +42 -57
  398. package/dist/TxQueue.js.map +1 -1
  399. package/dist/TxReentrantLock.d.ts +500 -0
  400. package/dist/TxReentrantLock.d.ts.map +1 -0
  401. package/dist/TxReentrantLock.js +481 -0
  402. package/dist/TxReentrantLock.js.map +1 -0
  403. package/dist/TxRef.d.ts +14 -20
  404. package/dist/TxRef.d.ts.map +1 -1
  405. package/dist/TxRef.js +8 -10
  406. package/dist/TxRef.js.map +1 -1
  407. package/dist/TxSemaphore.d.ts +162 -2
  408. package/dist/TxSemaphore.d.ts.map +1 -1
  409. package/dist/TxSemaphore.js +25 -10
  410. package/dist/TxSemaphore.js.map +1 -1
  411. package/dist/TxSubscriptionRef.d.ts +508 -0
  412. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  413. package/dist/TxSubscriptionRef.js +293 -0
  414. package/dist/TxSubscriptionRef.js.map +1 -0
  415. package/dist/Types.d.ts +83 -17
  416. package/dist/Types.d.ts.map +1 -1
  417. package/dist/Unify.d.ts +8 -2
  418. package/dist/Unify.d.ts.map +1 -1
  419. package/dist/Unify.js.map +1 -1
  420. package/dist/Utils.d.ts +137 -65
  421. package/dist/Utils.d.ts.map +1 -1
  422. package/dist/Utils.js +38 -66
  423. package/dist/Utils.js.map +1 -1
  424. package/dist/index.d.ts +888 -71
  425. package/dist/index.d.ts.map +1 -1
  426. package/dist/index.js +888 -71
  427. package/dist/index.js.map +1 -1
  428. package/dist/internal/core.js +11 -3
  429. package/dist/internal/core.js.map +1 -1
  430. package/dist/internal/dateTime.js +77 -71
  431. package/dist/internal/dateTime.js.map +1 -1
  432. package/dist/internal/effect.js +485 -325
  433. package/dist/internal/effect.js.map +1 -1
  434. package/dist/internal/hashMap.js +7 -5
  435. package/dist/internal/hashMap.js.map +1 -1
  436. package/dist/internal/layer.js +3 -3
  437. package/dist/internal/layer.js.map +1 -1
  438. package/dist/internal/option.js +6 -0
  439. package/dist/internal/option.js.map +1 -1
  440. package/dist/internal/random.d.ts +2 -0
  441. package/dist/internal/random.d.ts.map +1 -0
  442. package/dist/internal/random.js +13 -0
  443. package/dist/internal/random.js.map +1 -0
  444. package/dist/internal/rcRef.js +11 -10
  445. package/dist/internal/rcRef.js.map +1 -1
  446. package/dist/internal/references.d.ts +2 -0
  447. package/dist/internal/references.d.ts.map +1 -0
  448. package/dist/internal/references.js +51 -0
  449. package/dist/internal/references.js.map +1 -0
  450. package/dist/internal/request.js +6 -6
  451. package/dist/internal/request.js.map +1 -1
  452. package/dist/internal/schedule.js +1 -1
  453. package/dist/internal/schedule.js.map +1 -1
  454. package/dist/internal/schema/annotations.js +2 -0
  455. package/dist/internal/schema/annotations.js.map +1 -1
  456. package/dist/internal/schema/representation.js +86 -107
  457. package/dist/internal/schema/representation.js.map +1 -1
  458. package/dist/internal/schema/schema.d.ts +10 -1
  459. package/dist/internal/schema/schema.d.ts.map +1 -1
  460. package/dist/internal/schema/schema.js +22 -1
  461. package/dist/internal/schema/schema.js.map +1 -1
  462. package/dist/internal/schema/to-codec.js +7 -10
  463. package/dist/internal/schema/to-codec.js.map +1 -1
  464. package/dist/internal/trie.js +8 -7
  465. package/dist/internal/trie.js.map +1 -1
  466. package/dist/testing/TestClock.d.ts +8 -7
  467. package/dist/testing/TestClock.d.ts.map +1 -1
  468. package/dist/testing/TestClock.js +6 -4
  469. package/dist/testing/TestClock.js.map +1 -1
  470. package/dist/testing/TestSchema.d.ts +267 -33
  471. package/dist/testing/TestSchema.d.ts.map +1 -1
  472. package/dist/testing/TestSchema.js +296 -23
  473. package/dist/testing/TestSchema.js.map +1 -1
  474. package/dist/testing/index.d.ts +64 -1
  475. package/dist/testing/index.d.ts.map +1 -1
  476. package/dist/testing/index.js +64 -1
  477. package/dist/testing/index.js.map +1 -1
  478. package/dist/unstable/ai/AiError.d.ts +155 -73
  479. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  480. package/dist/unstable/ai/AiError.js +29 -23
  481. package/dist/unstable/ai/AiError.js.map +1 -1
  482. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  483. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  484. package/dist/unstable/ai/AnthropicStructuredOutput.js +9 -2
  485. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  486. package/dist/unstable/ai/Chat.d.ts +39 -11
  487. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  488. package/dist/unstable/ai/Chat.js +41 -47
  489. package/dist/unstable/ai/Chat.js.map +1 -1
  490. package/dist/unstable/ai/EmbeddingModel.d.ts +130 -0
  491. package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -0
  492. package/dist/unstable/ai/EmbeddingModel.js +127 -0
  493. package/dist/unstable/ai/EmbeddingModel.js.map +1 -0
  494. package/dist/unstable/ai/IdGenerator.d.ts +2 -2
  495. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  496. package/dist/unstable/ai/IdGenerator.js +2 -2
  497. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  498. package/dist/unstable/ai/LanguageModel.d.ts +119 -49
  499. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  500. package/dist/unstable/ai/LanguageModel.js +260 -61
  501. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  502. package/dist/unstable/ai/McpSchema.d.ts +236 -141
  503. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  504. package/dist/unstable/ai/McpSchema.js +71 -19
  505. package/dist/unstable/ai/McpSchema.js.map +1 -1
  506. package/dist/unstable/ai/McpServer.d.ts +68 -15
  507. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  508. package/dist/unstable/ai/McpServer.js +218 -73
  509. package/dist/unstable/ai/McpServer.js.map +1 -1
  510. package/dist/unstable/ai/Model.d.ts +27 -9
  511. package/dist/unstable/ai/Model.d.ts.map +1 -1
  512. package/dist/unstable/ai/Model.js +25 -9
  513. package/dist/unstable/ai/Model.js.map +1 -1
  514. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  515. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  516. package/dist/unstable/ai/OpenAiStructuredOutput.js +9 -1
  517. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  518. package/dist/unstable/ai/Prompt.d.ts +20 -20
  519. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  520. package/dist/unstable/ai/Prompt.js +6 -9
  521. package/dist/unstable/ai/Prompt.js.map +1 -1
  522. package/dist/unstable/ai/Response.d.ts +27 -27
  523. package/dist/unstable/ai/Response.d.ts.map +1 -1
  524. package/dist/unstable/ai/Response.js +7 -8
  525. package/dist/unstable/ai/Response.js.map +1 -1
  526. package/dist/unstable/ai/ResponseIdTracker.d.ts +38 -0
  527. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -0
  528. package/dist/unstable/ai/ResponseIdTracker.js +68 -0
  529. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -0
  530. package/dist/unstable/ai/Telemetry.d.ts +35 -2
  531. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  532. package/dist/unstable/ai/Telemetry.js +2 -2
  533. package/dist/unstable/ai/Telemetry.js.map +1 -1
  534. package/dist/unstable/ai/Tokenizer.d.ts +2 -2
  535. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  536. package/dist/unstable/ai/Tokenizer.js +2 -2
  537. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  538. package/dist/unstable/ai/Tool.d.ts +46 -16
  539. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  540. package/dist/unstable/ai/Tool.js +68 -22
  541. package/dist/unstable/ai/Tool.js.map +1 -1
  542. package/dist/unstable/ai/Toolkit.d.ts +4 -4
  543. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  544. package/dist/unstable/ai/Toolkit.js +14 -21
  545. package/dist/unstable/ai/Toolkit.js.map +1 -1
  546. package/dist/unstable/ai/index.d.ts +22 -1
  547. package/dist/unstable/ai/index.d.ts.map +1 -1
  548. package/dist/unstable/ai/index.js +22 -1
  549. package/dist/unstable/ai/index.js.map +1 -1
  550. package/dist/unstable/ai/internal/codec-transformer.js +5 -7
  551. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  552. package/dist/unstable/cli/Argument.d.ts +4 -7
  553. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  554. package/dist/unstable/cli/Argument.js +1 -3
  555. package/dist/unstable/cli/Argument.js.map +1 -1
  556. package/dist/unstable/cli/CliError.d.ts +55 -67
  557. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  558. package/dist/unstable/cli/CliError.js +32 -57
  559. package/dist/unstable/cli/CliError.js.map +1 -1
  560. package/dist/unstable/cli/CliOutput.d.ts +5 -4
  561. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  562. package/dist/unstable/cli/CliOutput.js +67 -12
  563. package/dist/unstable/cli/CliOutput.js.map +1 -1
  564. package/dist/unstable/cli/Command.d.ts +372 -59
  565. package/dist/unstable/cli/Command.d.ts.map +1 -1
  566. package/dist/unstable/cli/Command.js +328 -66
  567. package/dist/unstable/cli/Command.js.map +1 -1
  568. package/dist/unstable/cli/Completions.d.ts +97 -0
  569. package/dist/unstable/cli/Completions.d.ts.map +1 -0
  570. package/dist/unstable/cli/Completions.js +25 -0
  571. package/dist/unstable/cli/Completions.js.map +1 -0
  572. package/dist/unstable/cli/Flag.d.ts +4 -5
  573. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  574. package/dist/unstable/cli/Flag.js +1 -1
  575. package/dist/unstable/cli/Flag.js.map +1 -1
  576. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  577. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  578. package/dist/unstable/cli/GlobalFlag.js +118 -0
  579. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  580. package/dist/unstable/cli/HelpDoc.d.ts +81 -11
  581. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  582. package/dist/unstable/cli/Param.d.ts +34 -6
  583. package/dist/unstable/cli/Param.d.ts.map +1 -1
  584. package/dist/unstable/cli/Param.js +24 -14
  585. package/dist/unstable/cli/Param.js.map +1 -1
  586. package/dist/unstable/cli/Primitive.d.ts +2 -2
  587. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  588. package/dist/unstable/cli/Primitive.js +1 -1
  589. package/dist/unstable/cli/Primitive.js.map +1 -1
  590. package/dist/unstable/cli/Prompt.js +266 -86
  591. package/dist/unstable/cli/Prompt.js.map +1 -1
  592. package/dist/unstable/cli/index.d.ts +8 -0
  593. package/dist/unstable/cli/index.d.ts.map +1 -1
  594. package/dist/unstable/cli/index.js +8 -0
  595. package/dist/unstable/cli/index.js.map +1 -1
  596. package/dist/unstable/cli/internal/command.d.ts +41 -15
  597. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  598. package/dist/unstable/cli/internal/command.js +84 -47
  599. package/dist/unstable/cli/internal/command.js.map +1 -1
  600. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  601. package/dist/unstable/cli/internal/completions/descriptor.d.ts +2 -0
  602. package/dist/unstable/cli/internal/completions/descriptor.d.ts.map +1 -0
  603. package/dist/unstable/cli/internal/completions/{CommandDescriptor.js → descriptor.js} +17 -5
  604. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -0
  605. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  606. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  607. package/dist/unstable/cli/internal/config.js +42 -0
  608. package/dist/unstable/cli/internal/config.js.map +1 -1
  609. package/dist/unstable/cli/internal/help.d.ts +33 -0
  610. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  611. package/dist/unstable/cli/internal/help.js +125 -0
  612. package/dist/unstable/cli/internal/help.js.map +1 -0
  613. package/dist/unstable/cli/internal/parser.js +155 -58
  614. package/dist/unstable/cli/internal/parser.js.map +1 -1
  615. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  616. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  617. package/dist/unstable/cluster/ClusterCron.js +1 -1
  618. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  619. package/dist/unstable/cluster/ClusterError.d.ts +7 -7
  620. package/dist/unstable/cluster/ClusterSchema.d.ts +28 -7
  621. package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
  622. package/dist/unstable/cluster/ClusterSchema.js +28 -8
  623. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  624. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +4 -2
  625. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  626. package/dist/unstable/cluster/ClusterWorkflowEngine.js +97 -63
  627. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  628. package/dist/unstable/cluster/DeliverAt.js +1 -1
  629. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  630. package/dist/unstable/cluster/Entity.d.ts +18 -16
  631. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  632. package/dist/unstable/cluster/Entity.js +31 -25
  633. package/dist/unstable/cluster/Entity.js.map +1 -1
  634. package/dist/unstable/cluster/EntityAddress.d.ts +2 -2
  635. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  636. package/dist/unstable/cluster/EntityAddress.js +1 -1
  637. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  638. package/dist/unstable/cluster/EntityProxy.js +3 -3
  639. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  640. package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
  641. package/dist/unstable/cluster/EntityProxyServer.js +4 -4
  642. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  643. package/dist/unstable/cluster/EntityResource.d.ts +4 -4
  644. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  645. package/dist/unstable/cluster/EntityResource.js +2 -2
  646. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  647. package/dist/unstable/cluster/Envelope.d.ts +4 -4
  648. package/dist/unstable/cluster/HttpRunner.js +2 -2
  649. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  650. package/dist/unstable/cluster/K8sHttpClient.d.ts +5 -5
  651. package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
  652. package/dist/unstable/cluster/K8sHttpClient.js +6 -6
  653. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  654. package/dist/unstable/cluster/Message.d.ts +21 -15
  655. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  656. package/dist/unstable/cluster/Message.js +16 -8
  657. package/dist/unstable/cluster/Message.js.map +1 -1
  658. package/dist/unstable/cluster/MessageStorage.d.ts +46 -23
  659. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  660. package/dist/unstable/cluster/MessageStorage.js +42 -26
  661. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  662. package/dist/unstable/cluster/Reply.d.ts +10 -9
  663. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  664. package/dist/unstable/cluster/Reply.js +8 -7
  665. package/dist/unstable/cluster/Reply.js.map +1 -1
  666. package/dist/unstable/cluster/Runner.d.ts +2 -2
  667. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  668. package/dist/unstable/cluster/Runner.js +1 -1
  669. package/dist/unstable/cluster/Runner.js.map +1 -1
  670. package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
  671. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  672. package/dist/unstable/cluster/RunnerAddress.js +1 -1
  673. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  674. package/dist/unstable/cluster/RunnerHealth.d.ts +2 -2
  675. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  676. package/dist/unstable/cluster/RunnerHealth.js +2 -2
  677. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  678. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  679. package/dist/unstable/cluster/RunnerServer.js +10 -9
  680. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  681. package/dist/unstable/cluster/RunnerStorage.d.ts +12 -12
  682. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  683. package/dist/unstable/cluster/RunnerStorage.js +3 -3
  684. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  685. package/dist/unstable/cluster/Runners.d.ts +5 -4
  686. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  687. package/dist/unstable/cluster/Runners.js +20 -17
  688. package/dist/unstable/cluster/Runners.js.map +1 -1
  689. package/dist/unstable/cluster/ShardId.d.ts +35 -49
  690. package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
  691. package/dist/unstable/cluster/ShardId.js +65 -67
  692. package/dist/unstable/cluster/ShardId.js.map +1 -1
  693. package/dist/unstable/cluster/Sharding.d.ts +4 -4
  694. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  695. package/dist/unstable/cluster/Sharding.js +66 -54
  696. package/dist/unstable/cluster/Sharding.js.map +1 -1
  697. package/dist/unstable/cluster/ShardingConfig.d.ts +28 -27
  698. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  699. package/dist/unstable/cluster/ShardingConfig.js +27 -27
  700. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  701. package/dist/unstable/cluster/SingletonAddress.d.ts +2 -2
  702. package/dist/unstable/cluster/Snowflake.d.ts +2 -2
  703. package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
  704. package/dist/unstable/cluster/Snowflake.js +2 -2
  705. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  706. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  707. package/dist/unstable/cluster/SqlMessageStorage.js +24 -20
  708. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  709. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  710. package/dist/unstable/cluster/SqlRunnerStorage.js +7 -7
  711. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  712. package/dist/unstable/cluster/internal/entityManager.js +34 -27
  713. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  714. package/dist/unstable/cluster/internal/entityReaper.js +4 -3
  715. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  716. package/dist/unstable/cluster/internal/resourceMap.js +3 -3
  717. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  718. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  719. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  720. package/dist/unstable/devtools/DevToolsClient.d.ts +2 -2
  721. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  722. package/dist/unstable/devtools/DevToolsClient.js +9 -8
  723. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  724. package/dist/unstable/devtools/DevToolsSchema.d.ts +40 -40
  725. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  726. package/dist/unstable/devtools/DevToolsSchema.js +9 -2
  727. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  728. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  729. package/dist/unstable/encoding/Ndjson.d.ts +9 -9
  730. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  731. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  732. package/dist/unstable/encoding/Sse.d.ts +4 -4
  733. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  734. package/dist/unstable/encoding/Sse.js +1 -1
  735. package/dist/unstable/encoding/Sse.js.map +1 -1
  736. package/dist/unstable/eventlog/Event.d.ts +0 -6
  737. package/dist/unstable/eventlog/Event.d.ts.map +1 -1
  738. package/dist/unstable/eventlog/Event.js +0 -5
  739. package/dist/unstable/eventlog/Event.js.map +1 -1
  740. package/dist/unstable/eventlog/EventGroup.d.ts +0 -2
  741. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  742. package/dist/unstable/eventlog/EventGroup.js +0 -2
  743. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  744. package/dist/unstable/eventlog/EventJournal.d.ts +28 -11
  745. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  746. package/dist/unstable/eventlog/EventJournal.js +130 -71
  747. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  748. package/dist/unstable/eventlog/EventLog.d.ts +94 -37
  749. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  750. package/dist/unstable/eventlog/EventLog.js +225 -150
  751. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  752. package/dist/unstable/eventlog/EventLogEncryption.d.ts +11 -9
  753. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  754. package/dist/unstable/eventlog/EventLogEncryption.js +15 -17
  755. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  756. package/dist/unstable/eventlog/EventLogMessage.d.ts +228 -0
  757. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -0
  758. package/dist/unstable/eventlog/EventLogMessage.js +214 -0
  759. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -0
  760. package/dist/unstable/eventlog/EventLogRemote.d.ts +112 -194
  761. package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
  762. package/dist/unstable/eventlog/EventLogRemote.js +168 -322
  763. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  764. package/dist/unstable/eventlog/EventLogServer.d.ts +26 -48
  765. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  766. package/dist/unstable/eventlog/EventLogServer.js +128 -199
  767. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  768. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +60 -0
  769. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -0
  770. package/dist/unstable/eventlog/EventLogServerEncrypted.js +166 -0
  771. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -0
  772. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +183 -0
  773. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -0
  774. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +461 -0
  775. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -0
  776. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +117 -0
  777. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -0
  778. package/dist/unstable/eventlog/EventLogSessionAuth.js +284 -0
  779. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -0
  780. package/dist/unstable/eventlog/{SqlEventLogJournal.d.ts → SqlEventJournal.d.ts} +2 -2
  781. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -0
  782. package/dist/unstable/eventlog/{SqlEventLogJournal.js → SqlEventJournal.js} +28 -21
  783. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -0
  784. package/dist/unstable/eventlog/{SqlEventLogServer.d.ts → SqlEventLogServerEncrypted.d.ts} +5 -5
  785. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -0
  786. package/dist/unstable/eventlog/{SqlEventLogServer.js → SqlEventLogServerEncrypted.js} +69 -27
  787. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -0
  788. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +25 -0
  789. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -0
  790. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +355 -0
  791. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -0
  792. package/dist/unstable/eventlog/index.d.ts +22 -2
  793. package/dist/unstable/eventlog/index.d.ts.map +1 -1
  794. package/dist/unstable/eventlog/index.js +22 -2
  795. package/dist/unstable/eventlog/index.js.map +1 -1
  796. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts +2 -0
  797. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts.map +1 -0
  798. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js +89 -0
  799. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -0
  800. package/dist/unstable/http/Cookies.d.ts +52 -7
  801. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  802. package/dist/unstable/http/Cookies.js +27 -6
  803. package/dist/unstable/http/Cookies.js.map +1 -1
  804. package/dist/unstable/http/Etag.d.ts +2 -2
  805. package/dist/unstable/http/Etag.d.ts.map +1 -1
  806. package/dist/unstable/http/Etag.js +7 -3
  807. package/dist/unstable/http/Etag.js.map +1 -1
  808. package/dist/unstable/http/FetchHttpClient.d.ts +6 -3
  809. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  810. package/dist/unstable/http/FetchHttpClient.js +5 -5
  811. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  812. package/dist/unstable/http/Headers.d.ts +24 -4
  813. package/dist/unstable/http/Headers.d.ts.map +1 -1
  814. package/dist/unstable/http/Headers.js +42 -13
  815. package/dist/unstable/http/Headers.js.map +1 -1
  816. package/dist/unstable/http/HttpBody.d.ts +1 -1
  817. package/dist/unstable/http/HttpClient.d.ts +125 -21
  818. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  819. package/dist/unstable/http/HttpClient.js +197 -19
  820. package/dist/unstable/http/HttpClient.js.map +1 -1
  821. package/dist/unstable/http/HttpClientError.d.ts +8 -8
  822. package/dist/unstable/http/HttpClientRequest.d.ts +43 -15
  823. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  824. package/dist/unstable/http/HttpClientRequest.js +131 -21
  825. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  826. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  827. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  828. package/dist/unstable/http/HttpClientResponse.js +6 -1
  829. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  830. package/dist/unstable/http/HttpEffect.d.ts +13 -11
  831. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  832. package/dist/unstable/http/HttpEffect.js +67 -75
  833. package/dist/unstable/http/HttpEffect.js.map +1 -1
  834. package/dist/unstable/http/HttpIncomingMessage.d.ts +5 -4
  835. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  836. package/dist/unstable/http/HttpIncomingMessage.js +2 -2
  837. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  838. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  839. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  840. package/dist/unstable/http/HttpMethod.js +3 -3
  841. package/dist/unstable/http/HttpMethod.js.map +1 -1
  842. package/dist/unstable/http/HttpMiddleware.d.ts +4 -9
  843. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  844. package/dist/unstable/http/HttpMiddleware.js +47 -43
  845. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  846. package/dist/unstable/http/HttpPlatform.d.ts +2 -2
  847. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  848. package/dist/unstable/http/HttpPlatform.js +5 -4
  849. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  850. package/dist/unstable/http/HttpRouter.d.ts +9 -8
  851. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  852. package/dist/unstable/http/HttpRouter.js +36 -36
  853. package/dist/unstable/http/HttpRouter.js.map +1 -1
  854. package/dist/unstable/http/HttpServer.d.ts +2 -2
  855. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  856. package/dist/unstable/http/HttpServer.js +4 -4
  857. package/dist/unstable/http/HttpServer.js.map +1 -1
  858. package/dist/unstable/http/HttpServerError.d.ts +22 -34
  859. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  860. package/dist/unstable/http/HttpServerError.js +39 -45
  861. package/dist/unstable/http/HttpServerError.js.map +1 -1
  862. package/dist/unstable/http/HttpServerRequest.d.ts +19 -7
  863. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  864. package/dist/unstable/http/HttpServerRequest.js +307 -13
  865. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  866. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  867. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  868. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  869. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  870. package/dist/unstable/http/HttpServerResponse.d.ts +52 -5
  871. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  872. package/dist/unstable/http/HttpServerResponse.js +240 -5
  873. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  874. package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
  875. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
  876. package/dist/unstable/http/HttpStaticServer.js +353 -0
  877. package/dist/unstable/http/HttpStaticServer.js.map +1 -0
  878. package/dist/unstable/http/HttpTraceContext.d.ts +3 -2
  879. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  880. package/dist/unstable/http/HttpTraceContext.js +27 -15
  881. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  882. package/dist/unstable/http/Multipart.d.ts +9 -9
  883. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  884. package/dist/unstable/http/Multipart.js +7 -7
  885. package/dist/unstable/http/Multipart.js.map +1 -1
  886. package/dist/unstable/http/Url.d.ts +604 -0
  887. package/dist/unstable/http/Url.d.ts.map +1 -0
  888. package/dist/unstable/http/Url.js +256 -0
  889. package/dist/unstable/http/Url.js.map +1 -0
  890. package/dist/unstable/http/UrlParams.d.ts +19 -10
  891. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  892. package/dist/unstable/http/UrlParams.js +6 -7
  893. package/dist/unstable/http/UrlParams.js.map +1 -1
  894. package/dist/unstable/http/index.d.ts +8 -0
  895. package/dist/unstable/http/index.d.ts.map +1 -1
  896. package/dist/unstable/http/index.js +8 -0
  897. package/dist/unstable/http/index.js.map +1 -1
  898. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  899. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  900. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  901. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  902. package/dist/unstable/httpapi/HttpApi.d.ts +11 -11
  903. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  904. package/dist/unstable/httpapi/HttpApi.js +8 -8
  905. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  906. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +12 -9
  907. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  908. package/dist/unstable/httpapi/HttpApiBuilder.js +53 -39
  909. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  910. package/dist/unstable/httpapi/HttpApiClient.d.ts +83 -7
  911. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  912. package/dist/unstable/httpapi/HttpApiClient.js +79 -11
  913. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  914. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +211 -105
  915. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  916. package/dist/unstable/httpapi/HttpApiEndpoint.js +53 -47
  917. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  918. package/dist/unstable/httpapi/HttpApiError.d.ts +43 -26
  919. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  920. package/dist/unstable/httpapi/HttpApiError.js +125 -32
  921. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  922. package/dist/unstable/httpapi/HttpApiGroup.d.ts +9 -8
  923. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  924. package/dist/unstable/httpapi/HttpApiGroup.js +4 -4
  925. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  926. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +49 -18
  927. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  928. package/dist/unstable/httpapi/HttpApiMiddleware.js +38 -8
  929. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  930. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  931. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  932. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  933. package/dist/unstable/httpapi/HttpApiSchema.d.ts +88 -9
  934. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  935. package/dist/unstable/httpapi/HttpApiSchema.js +86 -11
  936. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  937. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +9 -6
  938. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  939. package/dist/unstable/httpapi/HttpApiSecurity.js +6 -6
  940. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  941. package/dist/unstable/httpapi/OpenApi.d.ts +17 -25
  942. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  943. package/dist/unstable/httpapi/OpenApi.js +59 -60
  944. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  945. package/dist/unstable/observability/Otlp.d.ts +12 -12
  946. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  947. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  948. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  949. package/dist/unstable/observability/OtlpExporter.js +8 -8
  950. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  951. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  952. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  953. package/dist/unstable/observability/OtlpLogger.js +7 -4
  954. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  955. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  956. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  957. package/dist/unstable/observability/OtlpMetrics.js +2 -2
  958. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  959. package/dist/unstable/observability/OtlpSerialization.d.ts +2 -2
  960. package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
  961. package/dist/unstable/observability/OtlpSerialization.js +2 -2
  962. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  963. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  964. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  965. package/dist/unstable/observability/OtlpTracer.js +7 -3
  966. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  967. package/dist/unstable/observability/PrometheusMetrics.d.ts +3 -3
  968. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  969. package/dist/unstable/observability/PrometheusMetrics.js +4 -33
  970. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  971. package/dist/unstable/observability/internal/protobuf.js +4 -4
  972. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  973. package/dist/unstable/persistence/KeyValueStore.d.ts +24 -3
  974. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  975. package/dist/unstable/persistence/KeyValueStore.js +148 -6
  976. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  977. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  978. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  979. package/dist/unstable/persistence/Persistable.js +1 -1
  980. package/dist/unstable/persistence/Persistable.js.map +1 -1
  981. package/dist/unstable/persistence/PersistedCache.d.ts +6 -6
  982. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  983. package/dist/unstable/persistence/PersistedCache.js +12 -12
  984. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  985. package/dist/unstable/persistence/PersistedQueue.d.ts +16 -16
  986. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  987. package/dist/unstable/persistence/PersistedQueue.js +15 -14
  988. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  989. package/dist/unstable/persistence/Persistence.d.ts +5 -5
  990. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  991. package/dist/unstable/persistence/Persistence.js +5 -5
  992. package/dist/unstable/persistence/Persistence.js.map +1 -1
  993. package/dist/unstable/persistence/RateLimiter.d.ts +9 -9
  994. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  995. package/dist/unstable/persistence/RateLimiter.js +4 -4
  996. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  997. package/dist/unstable/persistence/Redis.d.ts +3 -3
  998. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  999. package/dist/unstable/persistence/Redis.js +2 -2
  1000. package/dist/unstable/persistence/Redis.js.map +1 -1
  1001. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  1002. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1003. package/dist/unstable/process/ChildProcess.js +1 -65
  1004. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1005. package/dist/unstable/process/ChildProcessSpawner.d.ts +89 -8
  1006. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1007. package/dist/unstable/process/ChildProcessSpawner.js +22 -2
  1008. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1009. package/dist/unstable/reactivity/Atom.d.ts +108 -47
  1010. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1011. package/dist/unstable/reactivity/Atom.js +105 -25
  1012. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1013. package/dist/unstable/reactivity/AtomHttpApi.d.ts +22 -20
  1014. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1015. package/dist/unstable/reactivity/AtomHttpApi.js +58 -26
  1016. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1017. package/dist/unstable/reactivity/AtomRegistry.d.ts +8 -2
  1018. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  1019. package/dist/unstable/reactivity/AtomRegistry.js +57 -14
  1020. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1021. package/dist/unstable/reactivity/AtomRpc.d.ts +12 -12
  1022. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1023. package/dist/unstable/reactivity/AtomRpc.js +59 -31
  1024. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1025. package/dist/unstable/reactivity/Reactivity.d.ts +2 -2
  1026. package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
  1027. package/dist/unstable/reactivity/Reactivity.js +6 -6
  1028. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1029. package/dist/unstable/reactivity/index.d.ts +2 -2
  1030. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  1031. package/dist/unstable/reactivity/index.js +2 -2
  1032. package/dist/unstable/reactivity/index.js.map +1 -1
  1033. package/dist/unstable/rpc/Rpc.d.ts +47 -19
  1034. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1035. package/dist/unstable/rpc/Rpc.js +39 -7
  1036. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1037. package/dist/unstable/rpc/RpcClient.d.ts +26 -47
  1038. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1039. package/dist/unstable/rpc/RpcClient.js +120 -77
  1040. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1041. package/dist/unstable/rpc/RpcClientError.d.ts +2 -2
  1042. package/dist/unstable/rpc/RpcGroup.d.ts +15 -11
  1043. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  1044. package/dist/unstable/rpc/RpcGroup.js +30 -20
  1045. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1046. package/dist/unstable/rpc/RpcMiddleware.d.ts +12 -12
  1047. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  1048. package/dist/unstable/rpc/RpcMiddleware.js +5 -5
  1049. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1050. package/dist/unstable/rpc/RpcSchema.d.ts +14 -1
  1051. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  1052. package/dist/unstable/rpc/RpcSchema.js +17 -2
  1053. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1054. package/dist/unstable/rpc/RpcSerialization.d.ts +13 -2
  1055. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1056. package/dist/unstable/rpc/RpcSerialization.js +60 -27
  1057. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1058. package/dist/unstable/rpc/RpcServer.d.ts +8 -12
  1059. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  1060. package/dist/unstable/rpc/RpcServer.js +78 -46
  1061. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1062. package/dist/unstable/rpc/RpcWorker.d.ts +2 -2
  1063. package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
  1064. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1065. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1066. package/dist/unstable/rpc/Utils.d.ts +6 -3
  1067. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  1068. package/dist/unstable/rpc/Utils.js +48 -6
  1069. package/dist/unstable/rpc/Utils.js.map +1 -1
  1070. package/dist/unstable/schema/Model.d.ts +24 -3
  1071. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1072. package/dist/unstable/schema/Model.js +17 -4
  1073. package/dist/unstable/schema/Model.js.map +1 -1
  1074. package/dist/unstable/schema/VariantSchema.d.ts +7 -7
  1075. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1076. package/dist/unstable/schema/VariantSchema.js +7 -18
  1077. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1078. package/dist/unstable/socket/Socket.d.ts +16 -15
  1079. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1080. package/dist/unstable/socket/Socket.js +22 -19
  1081. package/dist/unstable/socket/Socket.js.map +1 -1
  1082. package/dist/unstable/socket/SocketServer.d.ts +8 -5
  1083. package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
  1084. package/dist/unstable/socket/SocketServer.js +2 -2
  1085. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1086. package/dist/unstable/sql/Migrator.d.ts +1 -1
  1087. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  1088. package/dist/unstable/sql/Migrator.js +2 -2
  1089. package/dist/unstable/sql/Migrator.js.map +1 -1
  1090. package/dist/unstable/sql/SqlClient.d.ts +5 -5
  1091. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1092. package/dist/unstable/sql/SqlClient.js +7 -7
  1093. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1094. package/dist/unstable/sql/SqlConnection.d.ts +2 -2
  1095. package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
  1096. package/dist/unstable/sql/SqlConnection.js +5 -2
  1097. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1098. package/dist/unstable/sql/SqlError.d.ts +237 -17
  1099. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  1100. package/dist/unstable/sql/SqlError.js +260 -4
  1101. package/dist/unstable/sql/SqlError.js.map +1 -1
  1102. package/dist/unstable/sql/SqlModel.d.ts +8 -9
  1103. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  1104. package/dist/unstable/sql/SqlModel.js +12 -38
  1105. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1106. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  1107. package/dist/unstable/sql/SqlResolver.js +26 -17
  1108. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1109. package/dist/unstable/sql/SqlSchema.d.ts +17 -6
  1110. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  1111. package/dist/unstable/sql/SqlSchema.js +17 -7
  1112. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1113. package/dist/unstable/sql/Statement.d.ts +2 -2
  1114. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1115. package/dist/unstable/sql/Statement.js +2 -3
  1116. package/dist/unstable/sql/Statement.js.map +1 -1
  1117. package/dist/unstable/workers/Transferable.d.ts +4 -4
  1118. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  1119. package/dist/unstable/workers/Transferable.js +7 -7
  1120. package/dist/unstable/workers/Transferable.js.map +1 -1
  1121. package/dist/unstable/workers/Worker.d.ts +3 -3
  1122. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  1123. package/dist/unstable/workers/Worker.js +8 -4
  1124. package/dist/unstable/workers/Worker.js.map +1 -1
  1125. package/dist/unstable/workers/WorkerError.d.ts +5 -5
  1126. package/dist/unstable/workers/WorkerRunner.d.ts +2 -2
  1127. package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
  1128. package/dist/unstable/workers/WorkerRunner.js +5 -2
  1129. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1130. package/dist/unstable/workflow/Activity.d.ts +7 -2
  1131. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  1132. package/dist/unstable/workflow/Activity.js +17 -4
  1133. package/dist/unstable/workflow/Activity.js.map +1 -1
  1134. package/dist/unstable/workflow/DurableClock.d.ts +3 -6
  1135. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  1136. package/dist/unstable/workflow/DurableClock.js +6 -6
  1137. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1138. package/dist/unstable/workflow/DurableDeferred.d.ts +1 -1
  1139. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  1140. package/dist/unstable/workflow/DurableDeferred.js +15 -15
  1141. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1142. package/dist/unstable/workflow/Workflow.d.ts +13 -12
  1143. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1144. package/dist/unstable/workflow/Workflow.js +18 -18
  1145. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1146. package/dist/unstable/workflow/WorkflowEngine.d.ts +26 -8
  1147. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1148. package/dist/unstable/workflow/WorkflowEngine.js +167 -17
  1149. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1150. package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
  1151. package/dist/unstable/workflow/WorkflowProxyServer.js +4 -4
  1152. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1153. package/package.json +11 -11
  1154. package/src/Array.ts +304 -447
  1155. package/src/BigDecimal.ts +137 -82
  1156. package/src/BigInt.ts +53 -45
  1157. package/src/Brand.ts +3 -5
  1158. package/src/Cache.ts +27 -54
  1159. package/src/Cause.ts +58 -23
  1160. package/src/Channel.ts +693 -224
  1161. package/src/Chunk.ts +149 -331
  1162. package/src/Clock.ts +2 -2
  1163. package/src/Combiner.ts +280 -13
  1164. package/src/Config.ts +197 -27
  1165. package/src/ConfigProvider.ts +5 -5
  1166. package/src/Console.ts +2 -2
  1167. package/src/Context.ts +1454 -0
  1168. package/src/Cron.ts +155 -63
  1169. package/src/Data.ts +539 -376
  1170. package/src/DateTime.ts +77 -258
  1171. package/src/Deferred.ts +15 -6
  1172. package/src/Duration.ts +123 -67
  1173. package/src/Effect.ts +1629 -1355
  1174. package/src/Encoding.ts +879 -0
  1175. package/src/Equal.ts +295 -111
  1176. package/src/Equivalence.ts +114 -52
  1177. package/src/ErrorReporter.ts +458 -0
  1178. package/src/ExecutionPlan.ts +8 -9
  1179. package/src/Exit.ts +24 -12
  1180. package/src/Fiber.ts +17 -8
  1181. package/src/FiberHandle.ts +15 -14
  1182. package/src/FiberMap.ts +27 -27
  1183. package/src/FiberSet.ts +5 -5
  1184. package/src/FileSystem.ts +34 -30
  1185. package/src/Filter.ts +4 -62
  1186. package/src/Formatter.ts +253 -51
  1187. package/src/Function.ts +2 -10
  1188. package/src/Graph.ts +131 -117
  1189. package/src/Hash.ts +2 -2
  1190. package/src/HashMap.ts +26 -19
  1191. package/src/Iterable.ts +117 -63
  1192. package/src/JsonSchema.ts +383 -10
  1193. package/src/Latch.ts +194 -0
  1194. package/src/Layer.ts +728 -441
  1195. package/src/LayerMap.ts +38 -35
  1196. package/src/LogLevel.ts +37 -0
  1197. package/src/Logger.ts +35 -102
  1198. package/src/ManagedRuntime.ts +61 -48
  1199. package/src/Metric.ts +64 -66
  1200. package/src/MutableHashMap.ts +9 -0
  1201. package/src/MutableHashSet.ts +9 -0
  1202. package/src/MutableList.ts +3 -0
  1203. package/src/Newtype.ts +308 -0
  1204. package/src/Number.ts +98 -29
  1205. package/src/Optic.ts +948 -19
  1206. package/src/Option.ts +34 -24
  1207. package/src/Order.ts +39 -32
  1208. package/src/PartitionedSemaphore.ts +288 -56
  1209. package/src/Path.ts +2 -2
  1210. package/src/Pipeable.ts +32 -1
  1211. package/src/Pool.ts +18 -16
  1212. package/src/PubSub.ts +30 -20
  1213. package/src/Pull.ts +1 -1
  1214. package/src/Queue.ts +11 -9
  1215. package/src/Random.ts +51 -14
  1216. package/src/RcMap.ts +19 -19
  1217. package/src/RcRef.ts +1 -1
  1218. package/src/Record.ts +94 -199
  1219. package/src/Redactable.ts +146 -72
  1220. package/src/Reducer.ts +166 -7
  1221. package/src/References.ts +283 -287
  1222. package/src/Request.ts +8 -7
  1223. package/src/RequestResolver.ts +34 -55
  1224. package/src/Resource.ts +6 -5
  1225. package/src/Result.ts +2 -4
  1226. package/src/Runtime.ts +102 -6
  1227. package/src/Schedule.ts +460 -451
  1228. package/src/Scheduler.ts +52 -129
  1229. package/src/Schema.ts +4267 -752
  1230. package/src/SchemaAST.ts +480 -302
  1231. package/src/SchemaGetter.ts +92 -38
  1232. package/src/SchemaIssue.ts +28 -15
  1233. package/src/SchemaParser.ts +100 -29
  1234. package/src/SchemaRepresentation.ts +59 -32
  1235. package/src/SchemaTransformation.ts +364 -13
  1236. package/src/Scope.ts +2 -2
  1237. package/src/ScopedCache.ts +8 -8
  1238. package/src/Semaphore.ts +442 -0
  1239. package/src/Sink.ts +89 -34
  1240. package/src/Stdio.ts +29 -6
  1241. package/src/Stream.ts +898 -752
  1242. package/src/String.ts +122 -69
  1243. package/src/Struct.ts +33 -7
  1244. package/src/SubscriptionRef.ts +101 -120
  1245. package/src/SynchronizedRef.ts +3 -2
  1246. package/src/Terminal.ts +5 -4
  1247. package/src/Tracer.ts +23 -22
  1248. package/src/Trie.ts +44 -31
  1249. package/src/TxChunk.ts +26 -16
  1250. package/src/TxDeferred.ts +391 -0
  1251. package/src/TxHashMap.ts +347 -291
  1252. package/src/TxHashSet.ts +54 -61
  1253. package/src/TxPriorityQueue.ts +762 -0
  1254. package/src/TxPubSub.ts +787 -0
  1255. package/src/TxQueue.ts +221 -245
  1256. package/src/TxReentrantLock.ts +729 -0
  1257. package/src/TxRef.ts +31 -31
  1258. package/src/TxSemaphore.ts +203 -31
  1259. package/src/TxSubscriptionRef.ts +637 -0
  1260. package/src/Types.ts +78 -17
  1261. package/src/Unify.ts +26 -2
  1262. package/src/Utils.ts +137 -111
  1263. package/src/index.ts +898 -72
  1264. package/src/internal/core.ts +19 -12
  1265. package/src/internal/dateTime.ts +91 -96
  1266. package/src/internal/effect.ts +1150 -611
  1267. package/src/internal/hashMap.ts +12 -10
  1268. package/src/internal/layer.ts +7 -7
  1269. package/src/internal/option.ts +7 -0
  1270. package/src/internal/random.ts +20 -0
  1271. package/src/internal/rcRef.ts +14 -13
  1272. package/src/internal/references.ts +72 -0
  1273. package/src/internal/request.ts +8 -8
  1274. package/src/internal/schedule.ts +3 -1
  1275. package/src/internal/schema/annotations.ts +2 -0
  1276. package/src/internal/schema/representation.ts +81 -95
  1277. package/src/internal/schema/schema.ts +25 -1
  1278. package/src/internal/schema/to-codec.ts +7 -17
  1279. package/src/internal/trie.ts +21 -15
  1280. package/src/testing/TestClock.ts +13 -11
  1281. package/src/testing/TestSchema.ts +333 -36
  1282. package/src/testing/index.ts +64 -1
  1283. package/src/unstable/ai/AiError.ts +112 -54
  1284. package/src/unstable/ai/AnthropicStructuredOutput.ts +7 -3
  1285. package/src/unstable/ai/Chat.ts +137 -88
  1286. package/src/unstable/ai/EmbeddingModel.ts +209 -0
  1287. package/src/unstable/ai/IdGenerator.ts +2 -2
  1288. package/src/unstable/ai/LanguageModel.ts +685 -255
  1289. package/src/unstable/ai/McpSchema.ts +84 -22
  1290. package/src/unstable/ai/McpServer.ts +299 -87
  1291. package/src/unstable/ai/Model.ts +44 -13
  1292. package/src/unstable/ai/OpenAiStructuredOutput.ts +9 -2
  1293. package/src/unstable/ai/Prompt.ts +43 -49
  1294. package/src/unstable/ai/Response.ts +31 -33
  1295. package/src/unstable/ai/ResponseIdTracker.ts +95 -0
  1296. package/src/unstable/ai/Telemetry.ts +2 -2
  1297. package/src/unstable/ai/Tokenizer.ts +2 -2
  1298. package/src/unstable/ai/Tool.ts +62 -36
  1299. package/src/unstable/ai/Toolkit.ts +17 -26
  1300. package/src/unstable/ai/index.ts +24 -1
  1301. package/src/unstable/ai/internal/codec-transformer.ts +3 -9
  1302. package/src/unstable/cli/Argument.ts +5 -8
  1303. package/src/unstable/cli/CliError.ts +67 -66
  1304. package/src/unstable/cli/CliOutput.ts +87 -15
  1305. package/src/unstable/cli/Command.ts +808 -193
  1306. package/src/unstable/cli/Completions.ts +107 -0
  1307. package/src/unstable/cli/Flag.ts +5 -6
  1308. package/src/unstable/cli/GlobalFlag.ts +242 -0
  1309. package/src/unstable/cli/HelpDoc.ts +91 -11
  1310. package/src/unstable/cli/Param.ts +54 -27
  1311. package/src/unstable/cli/Primitive.ts +2 -2
  1312. package/src/unstable/cli/Prompt.ts +275 -104
  1313. package/src/unstable/cli/index.ts +10 -0
  1314. package/src/unstable/cli/internal/command.ts +125 -64
  1315. package/src/unstable/cli/internal/completions/bash.ts +7 -7
  1316. package/src/unstable/cli/internal/completions/{CommandDescriptor.ts → descriptor.ts} +16 -58
  1317. package/src/unstable/cli/internal/completions/fish.ts +7 -7
  1318. package/src/unstable/cli/internal/completions/zsh.ts +8 -14
  1319. package/src/unstable/cli/internal/config.ts +49 -0
  1320. package/src/unstable/cli/internal/help.ts +171 -0
  1321. package/src/unstable/cli/internal/parser.ts +201 -84
  1322. package/src/unstable/cluster/ClusterCron.ts +2 -2
  1323. package/src/unstable/cluster/ClusterSchema.ts +38 -10
  1324. package/src/unstable/cluster/ClusterWorkflowEngine.ts +144 -81
  1325. package/src/unstable/cluster/DeliverAt.ts +1 -1
  1326. package/src/unstable/cluster/Entity.ts +59 -45
  1327. package/src/unstable/cluster/EntityAddress.ts +1 -1
  1328. package/src/unstable/cluster/EntityProxy.ts +3 -3
  1329. package/src/unstable/cluster/EntityProxyServer.ts +4 -4
  1330. package/src/unstable/cluster/EntityResource.ts +6 -6
  1331. package/src/unstable/cluster/Envelope.ts +1 -1
  1332. package/src/unstable/cluster/HttpRunner.ts +2 -2
  1333. package/src/unstable/cluster/K8sHttpClient.ts +7 -7
  1334. package/src/unstable/cluster/Message.ts +30 -17
  1335. package/src/unstable/cluster/MessageStorage.ts +76 -46
  1336. package/src/unstable/cluster/Reply.ts +13 -10
  1337. package/src/unstable/cluster/Runner.ts +1 -1
  1338. package/src/unstable/cluster/RunnerAddress.ts +1 -1
  1339. package/src/unstable/cluster/RunnerHealth.ts +2 -2
  1340. package/src/unstable/cluster/RunnerServer.ts +11 -14
  1341. package/src/unstable/cluster/RunnerStorage.ts +9 -9
  1342. package/src/unstable/cluster/Runners.ts +28 -23
  1343. package/src/unstable/cluster/ShardId.ts +84 -74
  1344. package/src/unstable/cluster/Sharding.ts +83 -66
  1345. package/src/unstable/cluster/ShardingConfig.ts +39 -40
  1346. package/src/unstable/cluster/Snowflake.ts +2 -2
  1347. package/src/unstable/cluster/SqlMessageStorage.ts +29 -20
  1348. package/src/unstable/cluster/SqlRunnerStorage.ts +13 -7
  1349. package/src/unstable/cluster/internal/entityManager.ts +66 -46
  1350. package/src/unstable/cluster/internal/entityReaper.ts +4 -3
  1351. package/src/unstable/cluster/internal/resourceMap.ts +3 -3
  1352. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  1353. package/src/unstable/devtools/DevToolsClient.ts +26 -21
  1354. package/src/unstable/devtools/DevToolsSchema.ts +16 -3
  1355. package/src/unstable/encoding/Ndjson.ts +17 -17
  1356. package/src/unstable/encoding/Sse.ts +3 -5
  1357. package/src/unstable/eventlog/Event.ts +0 -8
  1358. package/src/unstable/eventlog/EventGroup.ts +0 -4
  1359. package/src/unstable/eventlog/EventJournal.ts +148 -80
  1360. package/src/unstable/eventlog/EventLog.ts +360 -233
  1361. package/src/unstable/eventlog/EventLogEncryption.ts +18 -32
  1362. package/src/unstable/eventlog/EventLogMessage.ts +277 -0
  1363. package/src/unstable/eventlog/EventLogRemote.ts +264 -410
  1364. package/src/unstable/eventlog/EventLogServer.ts +183 -275
  1365. package/src/unstable/eventlog/EventLogServerEncrypted.ts +206 -0
  1366. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +749 -0
  1367. package/src/unstable/eventlog/EventLogSessionAuth.ts +437 -0
  1368. package/src/unstable/eventlog/{SqlEventLogJournal.ts → SqlEventJournal.ts} +38 -22
  1369. package/src/unstable/eventlog/{SqlEventLogServer.ts → SqlEventLogServerEncrypted.ts} +110 -43
  1370. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +506 -0
  1371. package/src/unstable/eventlog/index.ts +27 -2
  1372. package/src/unstable/eventlog/internal/identityRootSecretDerivation.ts +153 -0
  1373. package/src/unstable/http/Cookies.ts +94 -11
  1374. package/src/unstable/http/Etag.ts +7 -5
  1375. package/src/unstable/http/FetchHttpClient.ts +5 -5
  1376. package/src/unstable/http/Headers.ts +70 -20
  1377. package/src/unstable/http/HttpClient.ts +385 -42
  1378. package/src/unstable/http/HttpClientRequest.ts +151 -39
  1379. package/src/unstable/http/HttpClientResponse.ts +12 -6
  1380. package/src/unstable/http/HttpEffect.ts +86 -100
  1381. package/src/unstable/http/HttpIncomingMessage.ts +5 -4
  1382. package/src/unstable/http/HttpMethod.ts +16 -4
  1383. package/src/unstable/http/HttpMiddleware.ts +50 -50
  1384. package/src/unstable/http/HttpPlatform.ts +5 -4
  1385. package/src/unstable/http/HttpRouter.ts +46 -46
  1386. package/src/unstable/http/HttpServer.ts +5 -11
  1387. package/src/unstable/http/HttpServerError.ts +45 -47
  1388. package/src/unstable/http/HttpServerRequest.ts +414 -23
  1389. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  1390. package/src/unstable/http/HttpServerResponse.ts +351 -13
  1391. package/src/unstable/http/HttpStaticServer.ts +456 -0
  1392. package/src/unstable/http/HttpTraceContext.ts +31 -17
  1393. package/src/unstable/http/Multipart.ts +10 -10
  1394. package/src/unstable/http/Url.ts +650 -0
  1395. package/src/unstable/http/UrlParams.ts +31 -19
  1396. package/src/unstable/http/index.ts +10 -0
  1397. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  1398. package/src/unstable/httpapi/HttpApi.ts +21 -21
  1399. package/src/unstable/httpapi/HttpApiBuilder.ts +128 -55
  1400. package/src/unstable/httpapi/HttpApiClient.ts +186 -34
  1401. package/src/unstable/httpapi/HttpApiEndpoint.ts +225 -113
  1402. package/src/unstable/httpapi/HttpApiError.ts +108 -30
  1403. package/src/unstable/httpapi/HttpApiGroup.ts +18 -17
  1404. package/src/unstable/httpapi/HttpApiMiddleware.ts +95 -33
  1405. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  1406. package/src/unstable/httpapi/HttpApiSchema.ts +106 -11
  1407. package/src/unstable/httpapi/HttpApiSecurity.ts +13 -13
  1408. package/src/unstable/httpapi/OpenApi.ts +73 -72
  1409. package/src/unstable/observability/Otlp.ts +12 -12
  1410. package/src/unstable/observability/OtlpExporter.ts +14 -10
  1411. package/src/unstable/observability/OtlpLogger.ts +13 -9
  1412. package/src/unstable/observability/OtlpMetrics.ts +6 -6
  1413. package/src/unstable/observability/OtlpSerialization.ts +2 -2
  1414. package/src/unstable/observability/OtlpTracer.ts +14 -10
  1415. package/src/unstable/observability/PrometheusMetrics.ts +5 -5
  1416. package/src/unstable/observability/internal/protobuf.ts +4 -4
  1417. package/src/unstable/persistence/KeyValueStore.ts +230 -7
  1418. package/src/unstable/persistence/Persistable.ts +3 -3
  1419. package/src/unstable/persistence/PersistedCache.ts +35 -21
  1420. package/src/unstable/persistence/PersistedQueue.ts +28 -27
  1421. package/src/unstable/persistence/Persistence.ts +7 -7
  1422. package/src/unstable/persistence/RateLimiter.ts +7 -7
  1423. package/src/unstable/persistence/Redis.ts +2 -2
  1424. package/src/unstable/process/ChildProcess.ts +6 -208
  1425. package/src/unstable/process/ChildProcessSpawner.ts +120 -15
  1426. package/src/unstable/reactivity/Atom.ts +280 -124
  1427. package/src/unstable/reactivity/AtomHttpApi.ts +115 -59
  1428. package/src/unstable/reactivity/AtomRegistry.ts +70 -16
  1429. package/src/unstable/reactivity/AtomRpc.ts +82 -37
  1430. package/src/unstable/reactivity/Reactivity.ts +6 -6
  1431. package/src/unstable/reactivity/index.ts +2 -2
  1432. package/src/unstable/rpc/Rpc.ts +77 -32
  1433. package/src/unstable/rpc/RpcClient.ts +165 -145
  1434. package/src/unstable/rpc/RpcGroup.ts +51 -34
  1435. package/src/unstable/rpc/RpcMiddleware.ts +28 -22
  1436. package/src/unstable/rpc/RpcSchema.ts +24 -6
  1437. package/src/unstable/rpc/RpcSerialization.ts +97 -54
  1438. package/src/unstable/rpc/RpcServer.ts +97 -69
  1439. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1440. package/src/unstable/rpc/Utils.ts +65 -5
  1441. package/src/unstable/schema/Model.ts +35 -6
  1442. package/src/unstable/schema/VariantSchema.ts +14 -27
  1443. package/src/unstable/socket/Socket.ts +42 -38
  1444. package/src/unstable/socket/SocketServer.ts +2 -2
  1445. package/src/unstable/sql/Migrator.ts +7 -5
  1446. package/src/unstable/sql/SqlClient.ts +13 -11
  1447. package/src/unstable/sql/SqlConnection.ts +2 -2
  1448. package/src/unstable/sql/SqlError.ts +365 -11
  1449. package/src/unstable/sql/SqlModel.ts +57 -85
  1450. package/src/unstable/sql/SqlResolver.ts +26 -16
  1451. package/src/unstable/sql/SqlSchema.ts +42 -26
  1452. package/src/unstable/sql/Statement.ts +2 -3
  1453. package/src/unstable/workers/Transferable.ts +17 -19
  1454. package/src/unstable/workers/Worker.ts +6 -5
  1455. package/src/unstable/workers/WorkerRunner.ts +2 -2
  1456. package/src/unstable/workflow/Activity.ts +27 -4
  1457. package/src/unstable/workflow/DurableClock.ts +11 -11
  1458. package/src/unstable/workflow/DurableDeferred.ts +16 -16
  1459. package/src/unstable/workflow/Workflow.ts +32 -25
  1460. package/src/unstable/workflow/WorkflowEngine.ts +239 -25
  1461. package/src/unstable/workflow/WorkflowProxyServer.ts +4 -4
  1462. package/dist/NullOr.d.ts +0 -149
  1463. package/dist/NullOr.d.ts.map +0 -1
  1464. package/dist/NullOr.js +0 -152
  1465. package/dist/NullOr.js.map +0 -1
  1466. package/dist/ServiceMap.d.ts +0 -1126
  1467. package/dist/ServiceMap.d.ts.map +0 -1
  1468. package/dist/ServiceMap.js.map +0 -1
  1469. package/dist/encoding/Base64.d.ts +0 -67
  1470. package/dist/encoding/Base64.d.ts.map +0 -1
  1471. package/dist/encoding/Base64.js +0 -146
  1472. package/dist/encoding/Base64.js.map +0 -1
  1473. package/dist/encoding/Base64Url.d.ts +0 -60
  1474. package/dist/encoding/Base64Url.d.ts.map +0 -1
  1475. package/dist/encoding/Base64Url.js +0 -89
  1476. package/dist/encoding/Base64Url.js.map +0 -1
  1477. package/dist/encoding/EncodingError.d.ts +0 -31
  1478. package/dist/encoding/EncodingError.d.ts.map +0 -1
  1479. package/dist/encoding/EncodingError.js +0 -22
  1480. package/dist/encoding/EncodingError.js.map +0 -1
  1481. package/dist/encoding/Hex.d.ts +0 -61
  1482. package/dist/encoding/Hex.d.ts.map +0 -1
  1483. package/dist/encoding/Hex.js +0 -115
  1484. package/dist/encoding/Hex.js.map +0 -1
  1485. package/dist/encoding/index.d.ts +0 -26
  1486. package/dist/encoding/index.d.ts.map +0 -1
  1487. package/dist/encoding/index.js +0 -27
  1488. package/dist/encoding/index.js.map +0 -1
  1489. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  1490. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  1491. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  1492. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  1493. package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts +0 -2
  1494. package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts.map +0 -1
  1495. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +0 -1
  1496. package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
  1497. package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
  1498. package/dist/unstable/cli/internal/completions/Completions.js +0 -23
  1499. package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
  1500. package/dist/unstable/eventlog/SqlEventLogJournal.d.ts.map +0 -1
  1501. package/dist/unstable/eventlog/SqlEventLogJournal.js.map +0 -1
  1502. package/dist/unstable/eventlog/SqlEventLogServer.d.ts.map +0 -1
  1503. package/dist/unstable/eventlog/SqlEventLogServer.js.map +0 -1
  1504. package/src/NullOr.ts +0 -204
  1505. package/src/ServiceMap.ts +0 -1410
  1506. package/src/encoding/Base64.ts +0 -366
  1507. package/src/encoding/Base64Url.ts +0 -104
  1508. package/src/encoding/EncodingError.ts +0 -35
  1509. package/src/encoding/Hex.ts +0 -390
  1510. package/src/encoding/index.ts +0 -31
  1511. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
  1512. package/src/unstable/cli/internal/completions/Completions.ts +0 -31
@@ -1 +1 @@
1
- {"version":3,"file":"Sharding.d.ts","sourceRoot":"","sources":["../../../src/unstable/cluster/Sharding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sharding.d.ts","sourceRoot":"","sources":["../../../src/unstable/cluster/Sharding.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  import * as Arr from "../../Array.js";
5
5
  import * as Cause from "../../Cause.js";
6
6
  import { Clock } from "../../Clock.js";
7
+ import * as Context from "../../Context.js";
7
8
  import * as Duration from "../../Duration.js";
8
9
  import * as Effect from "../../Effect.js";
9
10
  import * as Equal from "../../Equal.js";
@@ -11,6 +12,7 @@ import * as Fiber from "../../Fiber.js";
11
12
  import * as FiberMap from "../../FiberMap.js";
12
13
  import { constant, flow } from "../../Function.js";
13
14
  import * as HashRing from "../../HashRing.js";
15
+ import * as Latch from "../../Latch.js";
14
16
  import * as Layer from "../../Layer.js";
15
17
  import * as MutableHashMap from "../../MutableHashMap.js";
16
18
  import * as MutableHashSet from "../../MutableHashSet.js";
@@ -21,7 +23,7 @@ import { CurrentLogAnnotations } from "../../References.js";
21
23
  import * as Result from "../../Result.js";
22
24
  import * as Schedule from "../../Schedule.js";
23
25
  import * as Scope from "../../Scope.js";
24
- import * as ServiceMap from "../../ServiceMap.js";
26
+ import * as Semaphore from "../../Semaphore.js";
25
27
  import * as Stream from "../../Stream.js";
26
28
  import * as RpcClient from "../rpc/RpcClient.js";
27
29
  import { RequestId } from "../rpc/RpcMessage.js";
@@ -53,16 +55,17 @@ import * as Snowflake from "./Snowflake.js";
53
55
  * @since 4.0.0
54
56
  * @category models
55
57
  */
56
- export class Sharding extends /*#__PURE__*/ServiceMap.Service()("effect/cluster/Sharding") {}
58
+ export class Sharding extends /*#__PURE__*/Context.Service()("effect/cluster/Sharding") {}
57
59
  const make = /*#__PURE__*/Effect.gen(function* () {
58
60
  const config = yield* ShardingConfig;
61
+ const getRunnerAddress = () => Option.getOrUndefined(config.runnerAddress);
59
62
  const clock = yield* Clock;
60
63
  const runnersService = yield* Runners;
61
64
  const runnerHealth = yield* RunnerHealth.RunnerHealth;
62
65
  const snowflakeGen = yield* Snowflake.Generator;
63
66
  const shardingScope = yield* Effect.scope;
64
67
  const isShutdown = MutableRef.make(false);
65
- const services = ServiceMap.omit(Scope.Scope)(yield* Effect.services());
68
+ const services = Context.omit(Scope.Scope)(yield* Effect.context());
66
69
  const runFork = flow(Effect.runForkWith(services), Fiber.runIn(shardingScope));
67
70
  const storage = yield* MessageStorage.MessageStorage;
68
71
  const storageEnabled = storage !== MessageStorage.noop;
@@ -72,10 +75,13 @@ const make = /*#__PURE__*/Effect.gen(function* () {
72
75
  const selfShards = MutableHashSet.empty();
73
76
  // the active shards are the ones that we have acquired the lock for
74
77
  const acquiredShards = MutableHashSet.empty();
75
- const activeShardsLatch = yield* Effect.makeLatch(false);
78
+ const activeShardsLatch = yield* Latch.make(false);
76
79
  const events = yield* PubSub.unbounded();
77
80
  const getRegistrationEvents = Stream.fromPubSub(events);
78
- const isLocalRunner = address => Equal.equals(address, config.runnerAddress);
81
+ const isLocalRunner = address => {
82
+ const runnerAddress = getRunnerAddress();
83
+ return runnerAddress !== undefined && Equal.equals(address, runnerAddress);
84
+ };
79
85
  function getShardId(entityId, group) {
80
86
  const id = Math.abs(hashString(entityId) % config.shardsPerGroup) + 1;
81
87
  return makeShardId(group, id);
@@ -93,8 +99,9 @@ const make = /*#__PURE__*/Effect.gen(function* () {
93
99
  // This should be shutdown last, when all entities have been shutdown, to
94
100
  // allow them to move to another runner.
95
101
  const releasingShards = MutableHashSet.empty();
96
- if (config.runnerAddress) {
97
- const selfAddress = config.runnerAddress;
102
+ const initialRunnerAddress = getRunnerAddress();
103
+ if (initialRunnerAddress) {
104
+ const selfAddress = initialRunnerAddress;
98
105
  yield* Scope.addFinalizerExit(shardingScope, () => {
99
106
  // the locks expire over time, so if this fails we ignore it
100
107
  return Effect.ignore(runnerStorage.releaseAll(selfAddress));
@@ -165,7 +172,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
165
172
  yield* storageReadLatch.open;
166
173
  yield* Effect.forkIn(syncSingletons, shardingScope);
167
174
  // update metrics
168
- ClusterMetrics.shards.updateUnsafe(BigInt(MutableHashSet.size(acquiredShards)), ServiceMap.empty());
175
+ ClusterMetrics.shards.updateUnsafe(BigInt(MutableHashSet.size(acquiredShards)), Context.empty());
169
176
  }
170
177
  yield* Effect.sleep(1000);
171
178
  activeShardsLatch.openUnsafe();
@@ -212,13 +219,13 @@ const make = /*#__PURE__*/Effect.gen(function* () {
212
219
  //
213
220
  // It should also be shutdown after the entity managers, to ensure interrupt
214
221
  // & ack envelopes can still be processed.
215
- const storageReadLatch = yield* Effect.makeLatch(true);
222
+ const storageReadLatch = yield* Latch.make(true);
216
223
  const openStorageReadLatch = constant(Effect.asVoid(storageReadLatch.open));
217
- const storageReadLock = Effect.makeSemaphoreUnsafe(1);
224
+ const storageReadLock = Semaphore.makeUnsafe(1);
218
225
  const withStorageReadLock = storageReadLock.withPermits(1);
219
- if (storageEnabled && config.runnerAddress) {
220
- const selfAddress = config.runnerAddress;
221
- const entityRegistrationTimeoutMillis = Duration.toMillis(Duration.fromDurationInputUnsafe(config.entityRegistrationTimeout));
226
+ if (storageEnabled && initialRunnerAddress) {
227
+ const selfAddress = initialRunnerAddress;
228
+ const entityRegistrationTimeoutMillis = Duration.toMillis(Duration.fromInputUnsafe(config.entityRegistrationTimeout));
222
229
  const storageStartMillis = clock.currentTimeMillisUnsafe();
223
230
  yield* Effect.gen(function* () {
224
231
  yield* Effect.logDebug("Starting");
@@ -508,9 +515,9 @@ const make = /*#__PURE__*/Effect.gen(function* () {
508
515
  });
509
516
  });
510
517
  function sendOutgoing(message, discard, retries) {
511
- return Effect.catchIf(Effect.suspend(() => {
518
+ return Effect.catchFilter(Effect.suspend(() => {
512
519
  const address = message.envelope.address;
513
- const isPersisted = ServiceMap.get(message.rpc.annotations, Persisted);
520
+ const isPersisted = Context.get(message._tag === "OutgoingRequest" ? message.annotations : message.rpc.annotations, Persisted);
514
521
  if (isPersisted && !storageEnabled) {
515
522
  return Effect.die("Sharding.sendOutgoing: Persisted messages require MessageStorage");
516
523
  }
@@ -518,7 +525,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
518
525
  const runnerIsLocal = Option.isSome(maybeRunner) && isLocalRunner(maybeRunner.value);
519
526
  if (isPersisted) {
520
527
  return runnerIsLocal ? notifyLocal(message, discard) : runnersService.notify({
521
- address: Option.getOrUndefined(maybeRunner),
528
+ address: maybeRunner,
522
529
  message,
523
530
  discard
524
531
  });
@@ -550,8 +557,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
550
557
  // It should be shutdown after the clients, so that they can still get correct
551
558
  // shard assignments for outgoing messages (they could still be in use by
552
559
  // entities that are shutting down).
553
- const selfRunner = config.runnerAddress ? new Runner({
554
- address: config.runnerAddress,
560
+ const selfRunner = initialRunnerAddress ? new Runner({
561
+ address: initialRunnerAddress,
555
562
  groups: config.shardGroups,
556
563
  weight: config.runnerShardWeight
557
564
  }) : undefined;
@@ -559,8 +566,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
559
566
  let healthyRunnerCount = 0;
560
567
  // update metrics
561
568
  if (selfRunner) {
562
- ClusterMetrics.runners.updateUnsafe(BigInt(1), ServiceMap.empty());
563
- ClusterMetrics.runnersHealthy.updateUnsafe(BigInt(1), ServiceMap.empty());
569
+ ClusterMetrics.runners.updateUnsafe(BigInt(1), Context.empty());
570
+ ClusterMetrics.runnersHealthy.updateUnsafe(BigInt(1), Context.empty());
564
571
  }
565
572
  yield* Effect.gen(function* () {
566
573
  const hashRings = new Map();
@@ -643,7 +650,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
643
650
  activeShardsLatch.openUnsafe();
644
651
  // update metrics
645
652
  if (selfRunner) {
646
- ClusterMetrics.runnersHealthy.updateUnsafe(BigInt(MutableHashSet.has(healthyRunners, selfRunner) ? 1 : 0), ServiceMap.empty());
653
+ ClusterMetrics.runnersHealthy.updateUnsafe(BigInt(MutableHashSet.has(healthyRunners, selfRunner) ? 1 : 0), Context.empty());
647
654
  }
648
655
  }
649
656
  if (selfRunner && MutableHashSet.size(healthyRunners) === 0) {
@@ -657,18 +664,18 @@ const make = /*#__PURE__*/Effect.gen(function* () {
657
664
  }).pipe(Effect.catchCause(cause => Effect.logDebug(cause)), Effect.repeat(Schedule.spaced(1000)), Effect.annotateLogs({
658
665
  module: "effect/cluster/Sharding",
659
666
  fiber: "RunnerStorage sync",
660
- runner: config.runnerAddress
667
+ runner: initialRunnerAddress
661
668
  }), Effect.forkIn(shardingScope));
662
669
  const clientRequests = new Map();
663
670
  const clients = yield* ResourceMap.make(Effect.fnUntraced(function* (entity) {
664
671
  const client = yield* RpcClient.makeNoSerialization(entity.protocol, {
665
672
  spanPrefix: `${entity.type}.client`,
666
- disableTracing: !ServiceMap.get(entity.protocol.annotations, ClusterSchema.ClientTracingEnabled),
673
+ disableTracing: !Context.get(entity.protocol.annotations, ClusterSchema.ClientTracingEnabled),
667
674
  supportsAck: true,
668
675
  generateRequestId: () => RequestId(snowflakeGen.nextUnsafe()),
669
676
  flatten: true,
670
677
  onFromClient(options) {
671
- const address = ServiceMap.getUnsafe(options.context, ClientAddressTag);
678
+ const address = Context.getUnsafe(options.context, ClientAddressTag);
672
679
  switch (options.message._tag) {
673
680
  case "Request":
674
681
  {
@@ -676,32 +683,36 @@ const make = /*#__PURE__*/Effect.gen(function* () {
676
683
  const id = Snowflake.Snowflake(options.message.id);
677
684
  const rpc = entity.protocol.requests.get(options.message.tag);
678
685
  let respond;
686
+ const envelope = Envelope.makeRequest({
687
+ requestId: id,
688
+ address,
689
+ tag: options.message.tag,
690
+ payload: options.message.payload,
691
+ headers: options.message.headers,
692
+ traceId: options.message.traceId,
693
+ spanId: options.message.spanId,
694
+ sampled: options.message.sampled
695
+ });
696
+ const message = new Message.OutgoingRequest({
697
+ envelope,
698
+ lastReceivedReply: Option.none(),
699
+ rpc,
700
+ context: fiber.context,
701
+ respond: reply => respond(reply),
702
+ annotations: Context.get(rpc.annotations, ClusterSchema.Dynamic)(rpc.annotations, envelope)
703
+ });
679
704
  if (!options.discard) {
680
705
  const entry = {
681
706
  rpc: rpc,
682
- services: fiber.currentContext
707
+ context: fiber.currentContext,
708
+ message
683
709
  };
684
710
  clientRequests.set(id, entry);
685
711
  respond = makeClientRespond(entry, client.write);
686
712
  } else {
687
713
  respond = clientRespondDiscard;
688
714
  }
689
- return sendOutgoing(new Message.OutgoingRequest({
690
- envelope: Envelope.makeRequest({
691
- requestId: id,
692
- address,
693
- tag: options.message.tag,
694
- payload: options.message.payload,
695
- headers: options.message.headers,
696
- traceId: options.message.traceId,
697
- spanId: options.message.spanId,
698
- sampled: options.message.sampled
699
- }),
700
- lastReceivedReply: undefined,
701
- rpc,
702
- services: fiber.services,
703
- respond
704
- }), options.discard);
715
+ return sendOutgoing(message, options.discard);
705
716
  }
706
717
  case "Ack":
707
718
  {
@@ -724,13 +735,13 @@ const make = /*#__PURE__*/Effect.gen(function* () {
724
735
  const entry = clientRequests.get(requestId);
725
736
  if (!entry) return Effect.void;
726
737
  clientRequests.delete(requestId);
727
- if (ClusterSchema.isUninterruptibleForClient(entry.rpc.annotations)) {
738
+ if (ClusterSchema.isUninterruptibleForClient(entry.message.annotations)) {
728
739
  return Effect.void;
729
740
  }
730
741
  // for durable messages, we ignore interrupts on shutdown or as a
731
742
  // result of a shard being resassigned
732
743
  const isTransientInterrupt = MutableRef.get(isShutdown) || options.message.interruptors.some(id => internalInterruptors.has(id));
733
- if (isTransientInterrupt && ServiceMap.get(entry.rpc.annotations, Persisted)) {
744
+ if (isTransientInterrupt && Context.get(entry.message.annotations, Persisted)) {
734
745
  return Effect.void;
735
746
  }
736
747
  return Effect.ignore(sendOutgoing(new Message.OutgoingEnvelope({
@@ -752,13 +763,13 @@ const make = /*#__PURE__*/Effect.gen(function* () {
752
763
  }));
753
764
  return entityId => {
754
765
  const id = makeEntityId(entityId);
755
- const address = ClientAddressTag.serviceMap(makeEntityAddress({
766
+ const address = ClientAddressTag.context(makeEntityAddress({
756
767
  shardId: getShardId(id, entity.getShardGroup(entityId)),
757
768
  entityId: id,
758
769
  entityType: entity.type
759
770
  }));
760
771
  const clientFn = function (tag, payload, options) {
761
- const context = options?.context ? ServiceMap.merge(options.context, address) : address;
772
+ const context = options?.context ? Context.merge(options.context, address) : address;
762
773
  return client.client(tag, payload, {
763
774
  ...options,
764
775
  context
@@ -809,7 +820,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
809
820
  // --- Singletons ---
810
821
  const singletons = new Map();
811
822
  const singletonFibers = yield* FiberMap.make();
812
- const withSingletonLock = Effect.makeSemaphoreUnsafe(1).withPermits(1);
823
+ const withSingletonLock = Semaphore.makeUnsafe(1).withPermits(1);
813
824
  const registerSingleton = Effect.fnUntraced(function* (name, run, options) {
814
825
  const shardGroup = options?.shardGroup ?? "default";
815
826
  const address = new SingletonAddress({
@@ -824,8 +835,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
824
835
  if (MutableHashMap.has(map, address)) {
825
836
  return yield* Effect.die(`Singleton '${name}' is already registered`);
826
837
  }
827
- const services = yield* Effect.services();
828
- const wrappedRun = run.pipe(Effect.andThen(Effect.never), Effect.scoped, Effect.provideService(CurrentLogAnnotations, {}), Effect.provideServices(services), Effect.orDie, Effect.interruptible);
838
+ const services = yield* Effect.context();
839
+ const wrappedRun = run.pipe(Effect.andThen(Effect.never), Effect.scoped, Effect.provideService(CurrentLogAnnotations, {}), Effect.provideContext(services), Effect.orDie, Effect.interruptible);
829
840
  MutableHashMap.set(map, address, wrappedRun);
830
841
  yield* PubSub.publish(events, SingletonRegistered({
831
842
  address
@@ -856,13 +867,14 @@ const make = /*#__PURE__*/Effect.gen(function* () {
856
867
  }
857
868
  }
858
869
  }
859
- ClusterMetrics.singletons.updateUnsafe(BigInt(yield* FiberMap.size(singletonFibers)), ServiceMap.empty());
870
+ ClusterMetrics.singletons.updateUnsafe(BigInt(yield* FiberMap.size(singletonFibers)), Context.empty());
860
871
  }));
861
872
  // --- Entities ---
862
873
  const reaper = yield* EntityReaper;
863
874
  const entityManagerLatches = new Map();
864
875
  const registerEntity = Effect.fnUntraced(function* (entity, build, options) {
865
- if (!config.runnerAddress || entityManagers.has(entity.type)) return;
876
+ const runnerAddress = getRunnerAddress();
877
+ if (!runnerAddress || entityManagers.has(entity.type)) return;
866
878
  const scope = yield* Effect.scope;
867
879
  yield* Scope.addFinalizer(scope, Effect.sync(() => {
868
880
  state.status = "closed";
@@ -870,9 +882,9 @@ const make = /*#__PURE__*/Effect.gen(function* () {
870
882
  const manager = yield* EntityManager.make(entity, build, {
871
883
  ...options,
872
884
  storage,
873
- runnerAddress: config.runnerAddress,
885
+ runnerAddress,
874
886
  sharding
875
- }).pipe(Effect.provideServices(services.pipe(ServiceMap.add(EntityReaper, reaper), ServiceMap.add(Scope.Scope, scope), ServiceMap.add(Snowflake.Generator, snowflakeGen))));
887
+ }).pipe(Effect.provideContext(Context.mutate(services, services => services.pipe(Context.add(EntityReaper, reaper), Context.add(Scope.Scope, scope), Context.add(Snowflake.Generator, snowflakeGen)))));
876
888
  const state = {
877
889
  entity,
878
890
  status: "alive",
@@ -901,7 +913,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
901
913
  const waitForEntityManager = entityType => {
902
914
  let latch = entityManagerLatches.get(entityType);
903
915
  if (!latch) {
904
- latch = Effect.makeLatchUnsafe();
916
+ latch = Latch.makeUnsafe();
905
917
  entityManagerLatches.set(entityType, latch);
906
918
  }
907
919
  return latch.await;
@@ -986,5 +998,5 @@ const make = /*#__PURE__*/Effect.gen(function* () {
986
998
  */
987
999
  export const layer = /*#__PURE__*/Layer.effect(Sharding)(make).pipe(/*#__PURE__*/Layer.provide([Snowflake.layerGenerator, EntityReaper.layer]));
988
1000
  // Utilities
989
- const ClientAddressTag = /*#__PURE__*/ServiceMap.Service("effect/cluster/Sharding/ClientAddress");
1001
+ const ClientAddressTag = /*#__PURE__*/Context.Service("effect/cluster/Sharding/ClientAddress");
990
1002
  //# sourceMappingURL=Sharding.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Sharding.js","names":["Arr","Cause","Clock","Duration","Effect","Equal","Fiber","FiberMap","constant","flow","HashRing","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","PubSub","CurrentLogAnnotations","Result","Schedule","Scope","ServiceMap","Stream","RpcClient","RequestId","AlreadyProcessingMessage","EntityNotAssignedToRunner","ClusterMetrics","Persisted","ClusterSchema","make","makeEntityAddress","makeEntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runner","RunnerHealth","Runners","RunnerStorage","makeShardId","ShardingConfig","EntityRegistered","SingletonRegistered","SingletonAddress","Snowflake","Sharding","Service","gen","config","clock","runnersService","runnerHealth","snowflakeGen","Generator","shardingScope","scope","isShutdown","services","omit","runFork","runForkWith","runIn","storage","storageEnabled","noop","runnerStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","makeLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","equals","runnerAddress","getShardId","entityId","group","id","Math","abs","shardsPerGroup","isEntityOnLocalShards","has","shardId","addFinalizer","logDebug","pipe","annotateLogs","module","releasingShards","selfAddress","addFinalizerExit","ignore","releaseAll","releaseShardsMap","releaseShard","fnUntraced","fibers","state","values","status","push","forkScoped","manager","interruptShard","joinAll","release","remove","unregisterShardReplyHandlers","sandbox","effect","tapError","cause","fiber","runner","eventually","run","onlyIfMissing","releaseShards","hasUnsafe","openUnsafe","await","closeUnsafe","add","size","forkIn","syncSingletons","unacquiredShards","oacquired","acquire","timeoutOption","shardLockRefreshInterval","isNone","acquired","value","resetShards","length","storageReadLatch","open","shards","updateUnsafe","BigInt","sleep","catchCause","logWarning","repeat","spaced","entityMessagePollInterval","suspend","refresh","flatMap","includes","i","void","retry","times","schedule","logError","andThen","clearSelfShards","fixed","forever","delay","sync","clear","openStorageReadLatch","asVoid","storageReadLock","makeSemaphoreUnsafe","withStorageReadLock","withPermits","entityRegistrationTimeoutMillis","toMillis","fromDurationInputUnsafe","entityRegistrationTimeout","storageStartMillis","currentTimeMillisUnsafe","index","messages","removableNotifications","Set","resetAddresses","processMessages","whileLoop","while","step","body","send","message","envelope","get","entityType","sinceStart","die","Error","isProcessing","isProcessingFor","_tag","pendingNotifications","requestId","entry","delete","resume","resumptionState","entityResumptionState","isSome","unprocessed","interrupts","set","error","findError","isFailure","hasInterrupts","saveReply","ReplyWithContext","fromDefect","nextUnsafe","defect","squash","success","resumeEntityFromStorage","take","forEach","clearProcessed","unprocessedMessages","fail","resetAddress","scoped","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","unprocessedMessagesById","sendWithRetry","catchTags","interrupt","MailboxFull","sendRetryInterval","e","entity","sendLocal","loop","waitForEntityManager","simulateRemoteSerialization","notifyLocal","discard","options","isLocal","notify","excludeReplies","envelopeId","waitUntilRead","callback","prevResume","storageOnly","sendOutgoing","retries","catchIf","isPersisted","rpc","annotations","maybeRunner","runnerIsLocal","getOrUndefined","succeed","reset","matchCause","clearReplies","onSuccess","onFailure","selfRunner","groups","shardGroups","weight","runnerShardWeight","undefined","allRunners","healthyRunnerCount","runners","runnersHealthy","hashRings","nextRunners","healthyRunners","withTimeout","timeout","seconds","current","machineId","register","setMachineId","getRunners","changed","healthy","wasHealthy","j","ring","_","onRunnerUnavailable","prevRunners","newAssignments","getShards","shard","setRunnerHealth","refreshAssignmentsInterval","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","type","disableTracing","ClientTracingEnabled","supportsAck","generateRequestId","flatten","onFromClient","getUnsafe","context","ClientAddressTag","getCurrent","requests","tag","respond","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isUninterruptibleForClient","isTransientInterrupt","interruptors","some","Interrupt","withFiber","serviceMap","getShardGroup","clientFn","merge","proxyClient","Proxy","p","target","makeClient","_reply","reply","clientId","exit","singletons","singletonFibers","withSingletonLock","registerSingleton","name","shardGroup","map","wrappedRun","never","provideService","provideServices","orDie","interruptible","publish","running","shouldBeRunning","fiberId","reaper","entityManagerLatches","registerEntity","build","sharding","preemptiveShutdown","shutdown","latch","makeLatchUnsafe","checkRunner","isAlive","concurrency","runnerHealthCheckInterval","unregister","activeEntityCount","count","of","hasShardId","getSnowflake","pollStorage","layer","provide","layerGenerator"],"sources":["../../../src/unstable/cluster/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Sharding.js","names":["Arr","Cause","Clock","Context","Duration","Effect","Equal","Fiber","FiberMap","constant","flow","HashRing","Latch","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","PubSub","CurrentLogAnnotations","Result","Schedule","Scope","Semaphore","Stream","RpcClient","RequestId","AlreadyProcessingMessage","EntityNotAssignedToRunner","ClusterMetrics","Persisted","ClusterSchema","make","makeEntityAddress","makeEntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runner","RunnerHealth","Runners","RunnerStorage","makeShardId","ShardingConfig","EntityRegistered","SingletonRegistered","SingletonAddress","Snowflake","Sharding","Service","gen","config","getRunnerAddress","getOrUndefined","runnerAddress","clock","runnersService","runnerHealth","snowflakeGen","Generator","shardingScope","scope","isShutdown","services","omit","context","runFork","runForkWith","runIn","storage","storageEnabled","noop","runnerStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","undefined","equals","getShardId","entityId","group","id","Math","abs","shardsPerGroup","isEntityOnLocalShards","has","shardId","addFinalizer","logDebug","pipe","annotateLogs","module","releasingShards","initialRunnerAddress","selfAddress","addFinalizerExit","ignore","releaseAll","releaseShardsMap","releaseShard","fnUntraced","fibers","state","values","status","push","forkScoped","manager","interruptShard","joinAll","release","remove","unregisterShardReplyHandlers","sandbox","effect","tapError","cause","fiber","runner","eventually","run","onlyIfMissing","releaseShards","hasUnsafe","openUnsafe","await","closeUnsafe","add","size","forkIn","syncSingletons","unacquiredShards","oacquired","acquire","timeoutOption","shardLockRefreshInterval","isNone","acquired","value","resetShards","length","storageReadLatch","open","shards","updateUnsafe","BigInt","sleep","catchCause","logWarning","repeat","spaced","entityMessagePollInterval","suspend","refresh","flatMap","includes","i","void","retry","times","schedule","logError","andThen","clearSelfShards","fixed","forever","delay","sync","clear","openStorageReadLatch","asVoid","storageReadLock","makeUnsafe","withStorageReadLock","withPermits","entityRegistrationTimeoutMillis","toMillis","fromInputUnsafe","entityRegistrationTimeout","storageStartMillis","currentTimeMillisUnsafe","index","messages","removableNotifications","Set","resetAddresses","processMessages","whileLoop","while","step","body","send","message","envelope","get","entityType","sinceStart","die","Error","isProcessing","isProcessingFor","_tag","pendingNotifications","requestId","entry","delete","resume","resumptionState","entityResumptionState","isSome","unprocessed","interrupts","set","error","findError","isFailure","hasInterrupts","saveReply","ReplyWithContext","fromDefect","nextUnsafe","defect","squash","success","resumeEntityFromStorage","take","forEach","clearProcessed","unprocessedMessages","fail","resetAddress","scoped","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","unprocessedMessagesById","sendWithRetry","catchTags","interrupt","MailboxFull","sendRetryInterval","e","entity","sendLocal","loop","waitForEntityManager","simulateRemoteSerialization","notifyLocal","discard","options","isLocal","notify","excludeReplies","envelopeId","waitUntilRead","callback","prevResume","storageOnly","sendOutgoing","retries","catchFilter","isPersisted","annotations","rpc","maybeRunner","runnerIsLocal","succeed","reset","matchCause","clearReplies","onSuccess","onFailure","selfRunner","groups","shardGroups","weight","runnerShardWeight","allRunners","healthyRunnerCount","runners","runnersHealthy","hashRings","nextRunners","healthyRunners","withTimeout","timeout","seconds","current","machineId","register","setMachineId","getRunners","changed","healthy","wasHealthy","j","ring","_","onRunnerUnavailable","prevRunners","newAssignments","getShards","shard","setRunnerHealth","refreshAssignmentsInterval","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","type","disableTracing","ClientTracingEnabled","supportsAck","generateRequestId","flatten","onFromClient","getUnsafe","ClientAddressTag","getCurrent","requests","tag","respond","makeRequest","payload","headers","traceId","spanId","sampled","OutgoingRequest","lastReceivedReply","none","reply","Dynamic","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isUninterruptibleForClient","isTransientInterrupt","interruptors","some","Interrupt","withFiber","getShardGroup","clientFn","merge","proxyClient","Proxy","p","target","makeClient","_reply","clientId","exit","singletons","singletonFibers","withSingletonLock","registerSingleton","name","shardGroup","map","wrappedRun","never","provideService","provideContext","orDie","interruptible","publish","running","shouldBeRunning","fiberId","reaper","entityManagerLatches","registerEntity","build","sharding","mutate","preemptiveShutdown","shutdown","latch","checkRunner","isAlive","concurrency","runnerHealthCheckInterval","unregister","activeEntityCount","count","of","hasShardId","getSnowflake","pollStorage","layer","provide","layerGenerator"],"sources":["../../../src/unstable/cluster/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}