effect 4.0.0-beta.73 → 4.0.0-beta.75

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 (930) hide show
  1. package/dist/Array.d.ts +745 -627
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +277 -217
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +37 -30
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +19 -16
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +34 -40
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +16 -16
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +10 -10
  14. package/dist/Boolean.js +6 -6
  15. package/dist/Brand.d.ts +13 -11
  16. package/dist/Brand.d.ts.map +1 -1
  17. package/dist/Brand.js +10 -8
  18. package/dist/Brand.js.map +1 -1
  19. package/dist/Cause.d.ts +21 -23
  20. package/dist/Cause.d.ts.map +1 -1
  21. package/dist/Cause.js +21 -23
  22. package/dist/Cause.js.map +1 -1
  23. package/dist/Channel.d.ts +282 -72
  24. package/dist/Channel.d.ts.map +1 -1
  25. package/dist/Channel.js +108 -28
  26. package/dist/Channel.js.map +1 -1
  27. package/dist/ChannelSchema.d.ts +11 -11
  28. package/dist/ChannelSchema.js +5 -5
  29. package/dist/Chunk.d.ts +86 -33
  30. package/dist/Chunk.d.ts.map +1 -1
  31. package/dist/Chunk.js +48 -13
  32. package/dist/Chunk.js.map +1 -1
  33. package/dist/Clock.d.ts +3 -3
  34. package/dist/Clock.js +3 -3
  35. package/dist/Combiner.d.ts +9 -13
  36. package/dist/Combiner.d.ts.map +1 -1
  37. package/dist/Combiner.js +9 -13
  38. package/dist/Combiner.js.map +1 -1
  39. package/dist/Config.d.ts +49 -56
  40. package/dist/Config.d.ts.map +1 -1
  41. package/dist/Config.js +40 -43
  42. package/dist/Config.js.map +1 -1
  43. package/dist/ConfigProvider.d.ts +34 -44
  44. package/dist/ConfigProvider.d.ts.map +1 -1
  45. package/dist/ConfigProvider.js +24 -32
  46. package/dist/ConfigProvider.js.map +1 -1
  47. package/dist/Console.d.ts +2 -2
  48. package/dist/Console.js +2 -2
  49. package/dist/Context.d.ts +63 -75
  50. package/dist/Context.d.ts.map +1 -1
  51. package/dist/Context.js +29 -33
  52. package/dist/Context.js.map +1 -1
  53. package/dist/Cron.d.ts +6 -6
  54. package/dist/Cron.js +6 -6
  55. package/dist/Crypto.d.ts +4 -4
  56. package/dist/Crypto.js +4 -4
  57. package/dist/Data.d.ts +21 -15
  58. package/dist/Data.d.ts.map +1 -1
  59. package/dist/Data.js +7 -7
  60. package/dist/Data.js.map +1 -1
  61. package/dist/DateTime.d.ts +35 -16
  62. package/dist/DateTime.d.ts.map +1 -1
  63. package/dist/DateTime.js +35 -8
  64. package/dist/DateTime.js.map +1 -1
  65. package/dist/Deferred.d.ts +61 -52
  66. package/dist/Deferred.d.ts.map +1 -1
  67. package/dist/Deferred.js +21 -18
  68. package/dist/Deferred.js.map +1 -1
  69. package/dist/Duration.d.ts +50 -37
  70. package/dist/Duration.d.ts.map +1 -1
  71. package/dist/Duration.js +24 -13
  72. package/dist/Duration.js.map +1 -1
  73. package/dist/Effect.d.ts +574 -474
  74. package/dist/Effect.d.ts.map +1 -1
  75. package/dist/Effect.js +273 -213
  76. package/dist/Effect.js.map +1 -1
  77. package/dist/Encoding.d.ts +5 -0
  78. package/dist/Encoding.d.ts.map +1 -1
  79. package/dist/Encoding.js +5 -0
  80. package/dist/Encoding.js.map +1 -1
  81. package/dist/Equal.d.ts +28 -41
  82. package/dist/Equal.d.ts.map +1 -1
  83. package/dist/Equal.js +12 -19
  84. package/dist/Equal.js.map +1 -1
  85. package/dist/Equivalence.d.ts +72 -100
  86. package/dist/Equivalence.d.ts.map +1 -1
  87. package/dist/Equivalence.js +54 -74
  88. package/dist/Equivalence.js.map +1 -1
  89. package/dist/ErrorReporter.d.ts +1 -1
  90. package/dist/ErrorReporter.js +1 -1
  91. package/dist/ExecutionPlan.d.ts +2 -2
  92. package/dist/ExecutionPlan.js +1 -1
  93. package/dist/Exit.d.ts +79 -96
  94. package/dist/Exit.d.ts.map +1 -1
  95. package/dist/Exit.js +57 -64
  96. package/dist/Exit.js.map +1 -1
  97. package/dist/Fiber.d.ts +8 -6
  98. package/dist/Fiber.d.ts.map +1 -1
  99. package/dist/Fiber.js +8 -6
  100. package/dist/Fiber.js.map +1 -1
  101. package/dist/FiberHandle.d.ts +25 -0
  102. package/dist/FiberHandle.d.ts.map +1 -1
  103. package/dist/FiberHandle.js +15 -0
  104. package/dist/FiberHandle.js.map +1 -1
  105. package/dist/FiberMap.d.ts +35 -0
  106. package/dist/FiberMap.d.ts.map +1 -1
  107. package/dist/FiberMap.js +15 -0
  108. package/dist/FiberMap.js.map +1 -1
  109. package/dist/FiberSet.d.ts +20 -0
  110. package/dist/FiberSet.d.ts.map +1 -1
  111. package/dist/FiberSet.js +10 -0
  112. package/dist/FiberSet.js.map +1 -1
  113. package/dist/FileSystem.d.ts +6 -6
  114. package/dist/FileSystem.js +2 -2
  115. package/dist/Filter.d.ts +4 -4
  116. package/dist/Filter.js +4 -4
  117. package/dist/Formatter.d.ts +14 -19
  118. package/dist/Formatter.d.ts.map +1 -1
  119. package/dist/Formatter.js +14 -19
  120. package/dist/Formatter.js.map +1 -1
  121. package/dist/Function.d.ts +20 -21
  122. package/dist/Function.d.ts.map +1 -1
  123. package/dist/Function.js +14 -15
  124. package/dist/Function.js.map +1 -1
  125. package/dist/Graph.d.ts +13 -13
  126. package/dist/Graph.js +7 -7
  127. package/dist/HKT.d.ts +3 -3
  128. package/dist/Hash.d.ts +2 -1
  129. package/dist/Hash.d.ts.map +1 -1
  130. package/dist/Hash.js +2 -1
  131. package/dist/Hash.js.map +1 -1
  132. package/dist/HashMap.d.ts +18 -3
  133. package/dist/HashMap.d.ts.map +1 -1
  134. package/dist/HashMap.js +5 -0
  135. package/dist/HashMap.js.map +1 -1
  136. package/dist/HashRing.d.ts +9 -9
  137. package/dist/HashRing.js +3 -3
  138. package/dist/HashSet.d.ts +1 -1
  139. package/dist/Iterable.d.ts +39 -27
  140. package/dist/Iterable.d.ts.map +1 -1
  141. package/dist/Iterable.js +21 -11
  142. package/dist/Iterable.js.map +1 -1
  143. package/dist/JsonPatch.d.ts +2 -3
  144. package/dist/JsonPatch.d.ts.map +1 -1
  145. package/dist/JsonPatch.js +2 -3
  146. package/dist/JsonPatch.js.map +1 -1
  147. package/dist/JsonPointer.d.ts +2 -6
  148. package/dist/JsonPointer.d.ts.map +1 -1
  149. package/dist/JsonPointer.js +2 -6
  150. package/dist/JsonPointer.js.map +1 -1
  151. package/dist/JsonSchema.d.ts +17 -13
  152. package/dist/JsonSchema.d.ts.map +1 -1
  153. package/dist/JsonSchema.js +17 -13
  154. package/dist/JsonSchema.js.map +1 -1
  155. package/dist/Latch.d.ts +4 -3
  156. package/dist/Latch.d.ts.map +1 -1
  157. package/dist/Latch.js +4 -3
  158. package/dist/Latch.js.map +1 -1
  159. package/dist/Layer.d.ts +108 -130
  160. package/dist/Layer.d.ts.map +1 -1
  161. package/dist/Layer.js +43 -51
  162. package/dist/Layer.js.map +1 -1
  163. package/dist/Logger.d.ts +16 -19
  164. package/dist/Logger.d.ts.map +1 -1
  165. package/dist/Logger.js +15 -18
  166. package/dist/Logger.js.map +1 -1
  167. package/dist/ManagedRuntime.d.ts +2 -2
  168. package/dist/Match.d.ts +22 -22
  169. package/dist/Match.js +18 -18
  170. package/dist/Metric.d.ts +105 -125
  171. package/dist/Metric.d.ts.map +1 -1
  172. package/dist/Metric.js +54 -64
  173. package/dist/Metric.js.map +1 -1
  174. package/dist/MutableHashMap.d.ts +21 -12
  175. package/dist/MutableHashMap.d.ts.map +1 -1
  176. package/dist/MutableHashMap.js +7 -4
  177. package/dist/MutableHashMap.js.map +1 -1
  178. package/dist/MutableList.d.ts +15 -0
  179. package/dist/MutableList.d.ts.map +1 -1
  180. package/dist/MutableList.js +15 -0
  181. package/dist/MutableList.js.map +1 -1
  182. package/dist/MutableRef.d.ts +56 -42
  183. package/dist/MutableRef.d.ts.map +1 -1
  184. package/dist/MutableRef.js +28 -22
  185. package/dist/MutableRef.js.map +1 -1
  186. package/dist/Newtype.d.ts +10 -7
  187. package/dist/Newtype.d.ts.map +1 -1
  188. package/dist/Newtype.js +10 -7
  189. package/dist/Newtype.js.map +1 -1
  190. package/dist/Number.d.ts +23 -11
  191. package/dist/Number.d.ts.map +1 -1
  192. package/dist/Number.js +9 -5
  193. package/dist/Number.js.map +1 -1
  194. package/dist/Optic.d.ts +16 -16
  195. package/dist/Optic.d.ts.map +1 -1
  196. package/dist/Optic.js +10 -9
  197. package/dist/Optic.js.map +1 -1
  198. package/dist/Option.d.ts +232 -204
  199. package/dist/Option.d.ts.map +1 -1
  200. package/dist/Option.js +113 -96
  201. package/dist/Option.js.map +1 -1
  202. package/dist/Order.d.ts +119 -180
  203. package/dist/Order.d.ts.map +1 -1
  204. package/dist/Order.js +93 -145
  205. package/dist/Order.js.map +1 -1
  206. package/dist/PartitionedSemaphore.d.ts +14 -14
  207. package/dist/PartitionedSemaphore.js +6 -6
  208. package/dist/Path.d.ts +3 -3
  209. package/dist/Path.js +3 -3
  210. package/dist/Pipeable.d.ts +3 -3
  211. package/dist/Pipeable.js +3 -3
  212. package/dist/PlatformError.d.ts +4 -4
  213. package/dist/PlatformError.js +4 -4
  214. package/dist/Pool.d.ts +7 -11
  215. package/dist/Pool.d.ts.map +1 -1
  216. package/dist/Pool.js +3 -5
  217. package/dist/Pool.js.map +1 -1
  218. package/dist/Predicate.d.ts +279 -268
  219. package/dist/Predicate.d.ts.map +1 -1
  220. package/dist/Predicate.js +128 -123
  221. package/dist/Predicate.js.map +1 -1
  222. package/dist/PubSub.d.ts +33 -23
  223. package/dist/PubSub.d.ts.map +1 -1
  224. package/dist/PubSub.js +21 -11
  225. package/dist/PubSub.js.map +1 -1
  226. package/dist/Pull.d.ts +4 -4
  227. package/dist/Pull.js +4 -4
  228. package/dist/Queue.d.ts +70 -31
  229. package/dist/Queue.d.ts.map +1 -1
  230. package/dist/Queue.js +66 -27
  231. package/dist/Queue.js.map +1 -1
  232. package/dist/RcRef.d.ts +0 -4
  233. package/dist/RcRef.d.ts.map +1 -1
  234. package/dist/RcRef.js.map +1 -1
  235. package/dist/Record.d.ts +15 -15
  236. package/dist/Record.js +5 -5
  237. package/dist/Redactable.d.ts +2 -2
  238. package/dist/Redactable.js +2 -2
  239. package/dist/Redacted.d.ts +5 -5
  240. package/dist/Redacted.js +4 -4
  241. package/dist/Reducer.d.ts +2 -3
  242. package/dist/Reducer.d.ts.map +1 -1
  243. package/dist/Reducer.js +2 -3
  244. package/dist/Reducer.js.map +1 -1
  245. package/dist/Ref.d.ts +23 -22
  246. package/dist/Ref.d.ts.map +1 -1
  247. package/dist/Ref.js +21 -20
  248. package/dist/Ref.js.map +1 -1
  249. package/dist/References.d.ts +4 -4
  250. package/dist/References.js +4 -4
  251. package/dist/RegExp.d.ts +1 -1
  252. package/dist/RegExp.js +1 -1
  253. package/dist/Request.d.ts +22 -22
  254. package/dist/Request.js +6 -6
  255. package/dist/RequestResolver.d.ts +6 -6
  256. package/dist/RequestResolver.js +2 -2
  257. package/dist/Resource.d.ts +3 -3
  258. package/dist/Resource.js +3 -3
  259. package/dist/Result.d.ts +95 -51
  260. package/dist/Result.d.ts.map +1 -1
  261. package/dist/Result.js +53 -30
  262. package/dist/Result.js.map +1 -1
  263. package/dist/Runtime.d.ts +11 -8
  264. package/dist/Runtime.d.ts.map +1 -1
  265. package/dist/Runtime.js +11 -8
  266. package/dist/Runtime.js.map +1 -1
  267. package/dist/Schedule.d.ts +151 -89
  268. package/dist/Schedule.d.ts.map +1 -1
  269. package/dist/Schedule.js +59 -47
  270. package/dist/Schedule.js.map +1 -1
  271. package/dist/Scheduler.d.ts +6 -4
  272. package/dist/Scheduler.d.ts.map +1 -1
  273. package/dist/Scheduler.js +6 -4
  274. package/dist/Scheduler.js.map +1 -1
  275. package/dist/Schema.d.ts +620 -830
  276. package/dist/Schema.d.ts.map +1 -1
  277. package/dist/Schema.js +543 -452
  278. package/dist/Schema.js.map +1 -1
  279. package/dist/SchemaAST.d.ts +43 -22
  280. package/dist/SchemaAST.d.ts.map +1 -1
  281. package/dist/SchemaAST.js +80 -59
  282. package/dist/SchemaAST.js.map +1 -1
  283. package/dist/SchemaGetter.d.ts +139 -119
  284. package/dist/SchemaGetter.d.ts.map +1 -1
  285. package/dist/SchemaGetter.js +133 -113
  286. package/dist/SchemaGetter.js.map +1 -1
  287. package/dist/SchemaIssue.d.ts +37 -39
  288. package/dist/SchemaIssue.d.ts.map +1 -1
  289. package/dist/SchemaIssue.js +16 -17
  290. package/dist/SchemaIssue.js.map +1 -1
  291. package/dist/SchemaParser.d.ts +75 -156
  292. package/dist/SchemaParser.d.ts.map +1 -1
  293. package/dist/SchemaParser.js +75 -148
  294. package/dist/SchemaParser.js.map +1 -1
  295. package/dist/SchemaRepresentation.d.ts +30 -21
  296. package/dist/SchemaRepresentation.d.ts.map +1 -1
  297. package/dist/SchemaRepresentation.js +26 -22
  298. package/dist/SchemaRepresentation.js.map +1 -1
  299. package/dist/SchemaTransformation.d.ts +169 -145
  300. package/dist/SchemaTransformation.d.ts.map +1 -1
  301. package/dist/SchemaTransformation.js +183 -159
  302. package/dist/SchemaTransformation.js.map +1 -1
  303. package/dist/SchemaUtils.js +2 -2
  304. package/dist/SchemaUtils.js.map +1 -1
  305. package/dist/Scope.d.ts +16 -1
  306. package/dist/Scope.d.ts.map +1 -1
  307. package/dist/Scope.js +16 -1
  308. package/dist/Scope.js.map +1 -1
  309. package/dist/ScopedCache.d.ts +1 -1
  310. package/dist/ScopedCache.js +1 -1
  311. package/dist/ScopedRef.d.ts +14 -18
  312. package/dist/ScopedRef.d.ts.map +1 -1
  313. package/dist/ScopedRef.js +6 -8
  314. package/dist/ScopedRef.js.map +1 -1
  315. package/dist/Semaphore.d.ts +9 -9
  316. package/dist/Semaphore.js +3 -3
  317. package/dist/Sink.d.ts +18 -18
  318. package/dist/Sink.d.ts.map +1 -1
  319. package/dist/Sink.js +12 -12
  320. package/dist/Sink.js.map +1 -1
  321. package/dist/Stdio.d.ts +4 -5
  322. package/dist/Stdio.d.ts.map +1 -1
  323. package/dist/Stdio.js +4 -5
  324. package/dist/Stdio.js.map +1 -1
  325. package/dist/Stream.d.ts +376 -99
  326. package/dist/Stream.d.ts.map +1 -1
  327. package/dist/Stream.js +158 -43
  328. package/dist/Stream.js.map +1 -1
  329. package/dist/String.d.ts +11 -14
  330. package/dist/String.d.ts.map +1 -1
  331. package/dist/String.js +5 -6
  332. package/dist/String.js.map +1 -1
  333. package/dist/Struct.d.ts +23 -21
  334. package/dist/Struct.d.ts.map +1 -1
  335. package/dist/Struct.js +14 -12
  336. package/dist/Struct.js.map +1 -1
  337. package/dist/SubscriptionRef.d.ts +24 -19
  338. package/dist/SubscriptionRef.d.ts.map +1 -1
  339. package/dist/SubscriptionRef.js +12 -7
  340. package/dist/SubscriptionRef.js.map +1 -1
  341. package/dist/SynchronizedRef.d.ts +145 -120
  342. package/dist/SynchronizedRef.d.ts.map +1 -1
  343. package/dist/SynchronizedRef.js +51 -42
  344. package/dist/SynchronizedRef.js.map +1 -1
  345. package/dist/Terminal.d.ts +1 -1
  346. package/dist/Terminal.js +1 -1
  347. package/dist/Tracer.d.ts +9 -9
  348. package/dist/Tracer.js +6 -6
  349. package/dist/Trie.d.ts +15 -0
  350. package/dist/Trie.d.ts.map +1 -1
  351. package/dist/Trie.js +5 -0
  352. package/dist/Trie.js.map +1 -1
  353. package/dist/Tuple.d.ts +39 -33
  354. package/dist/Tuple.d.ts.map +1 -1
  355. package/dist/Tuple.js +23 -19
  356. package/dist/Tuple.js.map +1 -1
  357. package/dist/TxHashMap.d.ts +3 -3
  358. package/dist/TxHashSet.d.ts +1 -1
  359. package/dist/TxReentrantLock.d.ts +6 -3
  360. package/dist/TxReentrantLock.d.ts.map +1 -1
  361. package/dist/TxReentrantLock.js +2 -1
  362. package/dist/TxReentrantLock.js.map +1 -1
  363. package/dist/TxRef.d.ts +16 -16
  364. package/dist/TxRef.js +8 -8
  365. package/dist/TxSubscriptionRef.d.ts +43 -27
  366. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  367. package/dist/TxSubscriptionRef.js +19 -13
  368. package/dist/TxSubscriptionRef.js.map +1 -1
  369. package/dist/Types.d.ts +12 -38
  370. package/dist/Types.d.ts.map +1 -1
  371. package/dist/Types.js +0 -2
  372. package/dist/UndefinedOr.d.ts +15 -14
  373. package/dist/UndefinedOr.d.ts.map +1 -1
  374. package/dist/UndefinedOr.js +11 -10
  375. package/dist/UndefinedOr.js.map +1 -1
  376. package/dist/Unify.d.ts +9 -9
  377. package/dist/Unify.js +1 -1
  378. package/dist/internal/schema/annotations.js.map +1 -1
  379. package/dist/internal/schema/arbitrary.js +9 -9
  380. package/dist/internal/schema/arbitrary.js.map +1 -1
  381. package/dist/internal/schema/equivalence.js +9 -9
  382. package/dist/internal/schema/equivalence.js.map +1 -1
  383. package/dist/internal/schema/representation.js +14 -14
  384. package/dist/internal/schema/representation.js.map +1 -1
  385. package/dist/internal/schema/schema.js +11 -11
  386. package/dist/internal/schema/schema.js.map +1 -1
  387. package/dist/testing/TestClock.d.ts +5 -5
  388. package/dist/testing/TestClock.js +4 -4
  389. package/dist/testing/TestConsole.d.ts +3 -3
  390. package/dist/testing/TestConsole.js +3 -3
  391. package/dist/testing/TestSchema.d.ts +10 -10
  392. package/dist/testing/TestSchema.d.ts.map +1 -1
  393. package/dist/testing/TestSchema.js +9 -9
  394. package/dist/testing/TestSchema.js.map +1 -1
  395. package/dist/unstable/ai/AiError.d.ts +4 -2
  396. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  397. package/dist/unstable/ai/AiError.js +4 -2
  398. package/dist/unstable/ai/AiError.js.map +1 -1
  399. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +17 -20
  400. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  401. package/dist/unstable/ai/AnthropicStructuredOutput.js +36 -39
  402. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  403. package/dist/unstable/ai/Chat.d.ts +6 -7
  404. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  405. package/dist/unstable/ai/Chat.js +6 -7
  406. package/dist/unstable/ai/Chat.js.map +1 -1
  407. package/dist/unstable/ai/EmbeddingModel.d.ts +5 -5
  408. package/dist/unstable/ai/EmbeddingModel.js +4 -4
  409. package/dist/unstable/ai/IdGenerator.d.ts +4 -5
  410. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  411. package/dist/unstable/ai/IdGenerator.js +3 -4
  412. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  413. package/dist/unstable/ai/LanguageModel.d.ts +7 -6
  414. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  415. package/dist/unstable/ai/LanguageModel.js +6 -5
  416. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  417. package/dist/unstable/ai/McpSchema.d.ts +14 -12
  418. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  419. package/dist/unstable/ai/McpSchema.js +19 -17
  420. package/dist/unstable/ai/McpSchema.js.map +1 -1
  421. package/dist/unstable/ai/McpServer.d.ts +11 -4
  422. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  423. package/dist/unstable/ai/McpServer.js +8 -5
  424. package/dist/unstable/ai/McpServer.js.map +1 -1
  425. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +20 -18
  426. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  427. package/dist/unstable/ai/OpenAiStructuredOutput.js +45 -43
  428. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  429. package/dist/unstable/ai/Prompt.d.ts +17 -17
  430. package/dist/unstable/ai/Prompt.js +4 -4
  431. package/dist/unstable/ai/Prompt.js.map +1 -1
  432. package/dist/unstable/ai/ResponseIdTracker.d.ts +3 -2
  433. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
  434. package/dist/unstable/ai/ResponseIdTracker.js +3 -2
  435. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  436. package/dist/unstable/ai/Telemetry.d.ts +26 -11
  437. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  438. package/dist/unstable/ai/Telemetry.js +9 -4
  439. package/dist/unstable/ai/Telemetry.js.map +1 -1
  440. package/dist/unstable/ai/Tokenizer.d.ts +1 -1
  441. package/dist/unstable/ai/Tokenizer.js +1 -1
  442. package/dist/unstable/ai/Tool.d.ts +13 -12
  443. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  444. package/dist/unstable/ai/Tool.js +14 -13
  445. package/dist/unstable/ai/Tool.js.map +1 -1
  446. package/dist/unstable/ai/Toolkit.d.ts +2 -2
  447. package/dist/unstable/ai/Toolkit.js +2 -2
  448. package/dist/unstable/cli/Command.d.ts +37 -16
  449. package/dist/unstable/cli/Command.d.ts.map +1 -1
  450. package/dist/unstable/cli/Command.js +16 -9
  451. package/dist/unstable/cli/Command.js.map +1 -1
  452. package/dist/unstable/cli/Completions.d.ts +1 -1
  453. package/dist/unstable/cli/Completions.js +1 -1
  454. package/dist/unstable/cli/Flag.d.ts +7 -6
  455. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  456. package/dist/unstable/cli/Flag.js +7 -6
  457. package/dist/unstable/cli/Flag.js.map +1 -1
  458. package/dist/unstable/cli/GlobalFlag.d.ts +6 -1
  459. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
  460. package/dist/unstable/cli/GlobalFlag.js +7 -2
  461. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  462. package/dist/unstable/cli/Param.d.ts +4 -4
  463. package/dist/unstable/cli/Param.d.ts.map +1 -1
  464. package/dist/unstable/cli/Param.js +13 -10
  465. package/dist/unstable/cli/Param.js.map +1 -1
  466. package/dist/unstable/cli/Primitive.d.ts +6 -5
  467. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  468. package/dist/unstable/cli/Primitive.js +4 -3
  469. package/dist/unstable/cli/Primitive.js.map +1 -1
  470. package/dist/unstable/cli/Prompt.d.ts +11 -11
  471. package/dist/unstable/cli/internal/parser.js +145 -10
  472. package/dist/unstable/cli/internal/parser.js.map +1 -1
  473. package/dist/unstable/cluster/ClusterCron.d.ts +1 -2
  474. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  475. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  476. package/dist/unstable/cluster/ClusterMetrics.d.ts +5 -0
  477. package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
  478. package/dist/unstable/cluster/ClusterMetrics.js +5 -0
  479. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  480. package/dist/unstable/cluster/ClusterSchema.d.ts +3 -3
  481. package/dist/unstable/cluster/ClusterSchema.js +3 -3
  482. package/dist/unstable/cluster/ClusterWorkflowEngine.js +15 -15
  483. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  484. package/dist/unstable/cluster/Entity.d.ts +1 -1
  485. package/dist/unstable/cluster/Entity.js +1 -1
  486. package/dist/unstable/cluster/EntityResource.d.ts +10 -0
  487. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  488. package/dist/unstable/cluster/EntityResource.js +10 -0
  489. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  490. package/dist/unstable/cluster/Envelope.d.ts +2 -2
  491. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  492. package/dist/unstable/cluster/Envelope.js +2 -2
  493. package/dist/unstable/cluster/Envelope.js.map +1 -1
  494. package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
  495. package/dist/unstable/cluster/HttpRunner.js +2 -2
  496. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  497. package/dist/unstable/cluster/K8sHttpClient.js +1 -1
  498. package/dist/unstable/cluster/Reply.d.ts +2 -2
  499. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  500. package/dist/unstable/cluster/Reply.js +12 -12
  501. package/dist/unstable/cluster/Reply.js.map +1 -1
  502. package/dist/unstable/cluster/RunnerHealth.d.ts +2 -1
  503. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  504. package/dist/unstable/cluster/RunnerHealth.js +2 -1
  505. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  506. package/dist/unstable/cluster/RunnerServer.d.ts +2 -2
  507. package/dist/unstable/cluster/RunnerServer.js +2 -2
  508. package/dist/unstable/cluster/Runners.d.ts +4 -4
  509. package/dist/unstable/cluster/Runners.js +4 -4
  510. package/dist/unstable/cluster/ShardId.js +3 -3
  511. package/dist/unstable/cluster/ShardId.js.map +1 -1
  512. package/dist/unstable/cluster/Sharding.d.ts +4 -4
  513. package/dist/unstable/cluster/Sharding.js +4 -4
  514. package/dist/unstable/cluster/ShardingConfig.d.ts +4 -4
  515. package/dist/unstable/cluster/ShardingConfig.js +4 -4
  516. package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
  517. package/dist/unstable/cluster/SingletonAddress.js +1 -1
  518. package/dist/unstable/cluster/Snowflake.d.ts +6 -6
  519. package/dist/unstable/cluster/Snowflake.js +8 -8
  520. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  521. package/dist/unstable/cluster/internal/entityManager.js +2 -2
  522. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  523. package/dist/unstable/devtools/DevToolsClient.d.ts +1 -1
  524. package/dist/unstable/devtools/DevToolsClient.js +1 -1
  525. package/dist/unstable/encoding/Msgpack.d.ts +2 -2
  526. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  527. package/dist/unstable/encoding/Msgpack.js +5 -5
  528. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  529. package/dist/unstable/encoding/Ndjson.d.ts +5 -0
  530. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  531. package/dist/unstable/encoding/Ndjson.js +5 -0
  532. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  533. package/dist/unstable/encoding/Sse.d.ts +2 -2
  534. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  535. package/dist/unstable/encoding/Sse.js +2 -2
  536. package/dist/unstable/encoding/Sse.js.map +1 -1
  537. package/dist/unstable/eventlog/EventGroup.d.ts +2 -1
  538. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  539. package/dist/unstable/eventlog/EventGroup.js +2 -1
  540. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  541. package/dist/unstable/eventlog/EventJournal.d.ts +10 -0
  542. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  543. package/dist/unstable/eventlog/EventJournal.js +10 -0
  544. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  545. package/dist/unstable/eventlog/EventLog.d.ts +4 -4
  546. package/dist/unstable/eventlog/EventLog.js +4 -4
  547. package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
  548. package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
  549. package/dist/unstable/eventlog/EventLogRemote.d.ts +1 -1
  550. package/dist/unstable/eventlog/EventLogRemote.js +1 -1
  551. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +2 -3
  552. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  553. package/dist/unstable/eventlog/EventLogServerEncrypted.js +2 -3
  554. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  555. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +8 -10
  556. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  557. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +8 -10
  558. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  559. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +4 -4
  560. package/dist/unstable/eventlog/EventLogSessionAuth.js +4 -4
  561. package/dist/unstable/http/Cookies.d.ts +1 -1
  562. package/dist/unstable/http/Cookies.js +4 -4
  563. package/dist/unstable/http/Cookies.js.map +1 -1
  564. package/dist/unstable/http/Etag.d.ts +3 -4
  565. package/dist/unstable/http/Etag.d.ts.map +1 -1
  566. package/dist/unstable/http/Etag.js +3 -4
  567. package/dist/unstable/http/Etag.js.map +1 -1
  568. package/dist/unstable/http/FetchHttpClient.d.ts +2 -2
  569. package/dist/unstable/http/FetchHttpClient.js +2 -2
  570. package/dist/unstable/http/Headers.js +2 -2
  571. package/dist/unstable/http/Headers.js.map +1 -1
  572. package/dist/unstable/http/HttpBody.js +2 -2
  573. package/dist/unstable/http/HttpBody.js.map +1 -1
  574. package/dist/unstable/http/HttpClient.d.ts +3 -3
  575. package/dist/unstable/http/HttpClient.js +3 -3
  576. package/dist/unstable/http/HttpClientRequest.d.ts +32 -5
  577. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  578. package/dist/unstable/http/HttpClientRequest.js +10 -1
  579. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  580. package/dist/unstable/http/HttpMiddleware.d.ts +1 -1
  581. package/dist/unstable/http/HttpMiddleware.js +1 -1
  582. package/dist/unstable/http/HttpPlatform.d.ts +1 -1
  583. package/dist/unstable/http/HttpPlatform.js +1 -1
  584. package/dist/unstable/http/HttpRouter.d.ts +5 -5
  585. package/dist/unstable/http/HttpRouter.js +5 -5
  586. package/dist/unstable/http/HttpServerResponse.d.ts +28 -23
  587. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  588. package/dist/unstable/http/HttpServerResponse.js +13 -8
  589. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  590. package/dist/unstable/http/Multipart.js +3 -3
  591. package/dist/unstable/http/Multipart.js.map +1 -1
  592. package/dist/unstable/http/Url.d.ts +33 -33
  593. package/dist/unstable/http/Url.js +11 -11
  594. package/dist/unstable/http/UrlParams.d.ts +30 -0
  595. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  596. package/dist/unstable/http/UrlParams.js +16 -6
  597. package/dist/unstable/http/UrlParams.js.map +1 -1
  598. package/dist/unstable/httpapi/HttpApi.d.ts +4 -3
  599. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  600. package/dist/unstable/httpapi/HttpApi.js +4 -3
  601. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  602. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  603. package/dist/unstable/httpapi/HttpApiBuilder.js +10 -8
  604. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  605. package/dist/unstable/httpapi/HttpApiClient.js +15 -15
  606. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  607. package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
  608. package/dist/unstable/httpapi/HttpApiError.js +13 -13
  609. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +3 -3
  610. package/dist/unstable/httpapi/HttpApiMiddleware.js +3 -3
  611. package/dist/unstable/httpapi/HttpApiSchema.d.ts +2 -2
  612. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  613. package/dist/unstable/httpapi/HttpApiSchema.js +9 -9
  614. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  615. package/dist/unstable/httpapi/OpenApi.js +11 -11
  616. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  617. package/dist/unstable/observability/OtlpResource.d.ts +5 -0
  618. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  619. package/dist/unstable/observability/OtlpResource.js +5 -0
  620. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  621. package/dist/unstable/observability/PrometheusMetrics.d.ts +8 -6
  622. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  623. package/dist/unstable/observability/PrometheusMetrics.js +6 -4
  624. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  625. package/dist/unstable/persistence/KeyValueStore.d.ts +3 -3
  626. package/dist/unstable/persistence/KeyValueStore.js +1 -1
  627. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  628. package/dist/unstable/persistence/Persistable.js +2 -2
  629. package/dist/unstable/persistence/PersistedQueue.d.ts +8 -8
  630. package/dist/unstable/persistence/PersistedQueue.js +8 -8
  631. package/dist/unstable/persistence/RateLimiter.d.ts +1 -1
  632. package/dist/unstable/persistence/RateLimiter.js +1 -1
  633. package/dist/unstable/process/ChildProcess.d.ts +5 -5
  634. package/dist/unstable/process/ChildProcess.js +2 -2
  635. package/dist/unstable/reactivity/AsyncResult.d.ts +4 -4
  636. package/dist/unstable/reactivity/AsyncResult.js +1 -1
  637. package/dist/unstable/reactivity/Atom.d.ts +4 -4
  638. package/dist/unstable/reactivity/Atom.js +4 -4
  639. package/dist/unstable/reactivity/AtomRegistry.d.ts +1 -1
  640. package/dist/unstable/reactivity/AtomRegistry.js +1 -1
  641. package/dist/unstable/reactivity/Reactivity.d.ts +1 -1
  642. package/dist/unstable/reactivity/Reactivity.js +1 -1
  643. package/dist/unstable/rpc/Rpc.d.ts +5 -5
  644. package/dist/unstable/rpc/Rpc.js +1 -1
  645. package/dist/unstable/rpc/RpcMiddleware.d.ts +1 -1
  646. package/dist/unstable/rpc/RpcMiddleware.js +1 -1
  647. package/dist/unstable/rpc/RpcSchema.d.ts +5 -5
  648. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  649. package/dist/unstable/rpc/RpcSchema.js +2 -2
  650. package/dist/unstable/rpc/RpcSerialization.d.ts +2 -2
  651. package/dist/unstable/rpc/RpcSerialization.js +2 -2
  652. package/dist/unstable/schema/Model.d.ts +2 -2
  653. package/dist/unstable/schema/Model.js +6 -6
  654. package/dist/unstable/schema/Model.js.map +1 -1
  655. package/dist/unstable/schema/VariantSchema.d.ts +2 -2
  656. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  657. package/dist/unstable/socket/Socket.d.ts +3 -3
  658. package/dist/unstable/socket/Socket.js +3 -3
  659. package/dist/unstable/socket/SocketServer.d.ts +1 -1
  660. package/dist/unstable/socket/SocketServer.js +1 -1
  661. package/dist/unstable/sql/Migrator.d.ts +1 -1
  662. package/dist/unstable/sql/SqlClient.d.ts +3 -3
  663. package/dist/unstable/sql/SqlClient.js +2 -2
  664. package/dist/unstable/sql/SqlConnection.d.ts +1 -1
  665. package/dist/unstable/sql/SqlConnection.js +1 -1
  666. package/dist/unstable/sql/SqlSchema.d.ts +4 -4
  667. package/dist/unstable/sql/SqlSchema.js +4 -4
  668. package/dist/unstable/sql/Statement.d.ts +2 -2
  669. package/dist/unstable/sql/Statement.js +2 -2
  670. package/dist/unstable/workers/Transferable.d.ts +3 -3
  671. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  672. package/dist/unstable/workers/Transferable.js +6 -6
  673. package/dist/unstable/workers/Transferable.js.map +1 -1
  674. package/dist/unstable/workers/Worker.d.ts +1 -1
  675. package/dist/unstable/workers/Worker.js +1 -1
  676. package/dist/unstable/workflow/Activity.d.ts +1 -1
  677. package/dist/unstable/workflow/Activity.js +1 -1
  678. package/dist/unstable/workflow/DurableDeferred.d.ts +1 -1
  679. package/dist/unstable/workflow/DurableDeferred.js +8 -8
  680. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  681. package/dist/unstable/workflow/DurableQueue.d.ts +1 -2
  682. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  683. package/dist/unstable/workflow/DurableQueue.js +1 -2
  684. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  685. package/dist/unstable/workflow/Workflow.d.ts +35 -15
  686. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  687. package/dist/unstable/workflow/Workflow.js +94 -72
  688. package/dist/unstable/workflow/Workflow.js.map +1 -1
  689. package/dist/unstable/workflow/WorkflowEngine.d.ts +10 -2
  690. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  691. package/dist/unstable/workflow/WorkflowEngine.js +16 -8
  692. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  693. package/dist/unstable/workflow/WorkflowProxy.d.ts +2 -4
  694. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  695. package/dist/unstable/workflow/WorkflowProxy.js +9 -11
  696. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  697. package/dist/unstable/workflow/WorkflowProxyServer.js +7 -7
  698. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  699. package/package.json +1 -1
  700. package/src/Array.ts +745 -627
  701. package/src/BigDecimal.ts +37 -30
  702. package/src/BigInt.ts +34 -40
  703. package/src/Boolean.ts +10 -10
  704. package/src/Brand.ts +16 -14
  705. package/src/Cause.ts +21 -23
  706. package/src/Channel.ts +316 -76
  707. package/src/ChannelSchema.ts +11 -11
  708. package/src/Chunk.ts +87 -34
  709. package/src/Clock.ts +3 -3
  710. package/src/Combiner.ts +9 -13
  711. package/src/Config.ts +60 -67
  712. package/src/ConfigProvider.ts +34 -44
  713. package/src/Console.ts +2 -2
  714. package/src/Context.ts +64 -76
  715. package/src/Cron.ts +6 -6
  716. package/src/Crypto.ts +4 -4
  717. package/src/Data.ts +21 -15
  718. package/src/DateTime.ts +35 -16
  719. package/src/Deferred.ts +61 -52
  720. package/src/Duration.ts +50 -37
  721. package/src/Effect.ts +574 -474
  722. package/src/Encoding.ts +5 -0
  723. package/src/Equal.ts +28 -41
  724. package/src/Equivalence.ts +72 -100
  725. package/src/ErrorReporter.ts +1 -1
  726. package/src/ExecutionPlan.ts +2 -2
  727. package/src/Exit.ts +79 -96
  728. package/src/Fiber.ts +8 -6
  729. package/src/FiberHandle.ts +25 -0
  730. package/src/FiberMap.ts +35 -0
  731. package/src/FiberSet.ts +20 -0
  732. package/src/FileSystem.ts +6 -6
  733. package/src/Filter.ts +4 -4
  734. package/src/Formatter.ts +14 -19
  735. package/src/Function.ts +20 -21
  736. package/src/Graph.ts +13 -13
  737. package/src/HKT.ts +3 -3
  738. package/src/Hash.ts +2 -1
  739. package/src/HashMap.ts +18 -3
  740. package/src/HashRing.ts +9 -9
  741. package/src/HashSet.ts +1 -1
  742. package/src/Iterable.ts +39 -27
  743. package/src/JsonPatch.ts +2 -3
  744. package/src/JsonPointer.ts +2 -6
  745. package/src/JsonSchema.ts +17 -13
  746. package/src/Latch.ts +4 -3
  747. package/src/Layer.ts +108 -130
  748. package/src/Logger.ts +22 -25
  749. package/src/ManagedRuntime.ts +2 -2
  750. package/src/Match.ts +22 -22
  751. package/src/Metric.ts +129 -157
  752. package/src/MutableHashMap.ts +35 -20
  753. package/src/MutableList.ts +15 -0
  754. package/src/MutableRef.ts +56 -42
  755. package/src/Newtype.ts +10 -7
  756. package/src/Number.ts +23 -11
  757. package/src/Optic.ts +25 -22
  758. package/src/Option.ts +232 -204
  759. package/src/Order.ts +119 -180
  760. package/src/PartitionedSemaphore.ts +14 -14
  761. package/src/Path.ts +3 -3
  762. package/src/Pipeable.ts +3 -3
  763. package/src/PlatformError.ts +4 -4
  764. package/src/Pool.ts +7 -11
  765. package/src/Predicate.ts +279 -268
  766. package/src/PubSub.ts +33 -23
  767. package/src/Pull.ts +4 -4
  768. package/src/Queue.ts +70 -31
  769. package/src/RcRef.ts +0 -4
  770. package/src/Record.ts +15 -15
  771. package/src/Redactable.ts +2 -2
  772. package/src/Redacted.ts +5 -5
  773. package/src/Reducer.ts +2 -3
  774. package/src/Ref.ts +61 -58
  775. package/src/References.ts +4 -4
  776. package/src/RegExp.ts +1 -1
  777. package/src/Request.ts +22 -22
  778. package/src/RequestResolver.ts +8 -8
  779. package/src/Resource.ts +3 -3
  780. package/src/Result.ts +105 -51
  781. package/src/Runtime.ts +11 -8
  782. package/src/Schedule.ts +157 -90
  783. package/src/Scheduler.ts +6 -4
  784. package/src/Schema.ts +1020 -1108
  785. package/src/SchemaAST.ts +149 -118
  786. package/src/SchemaGetter.ts +155 -134
  787. package/src/SchemaIssue.ts +39 -41
  788. package/src/SchemaParser.ts +176 -232
  789. package/src/SchemaRepresentation.ts +38 -28
  790. package/src/SchemaTransformation.ts +233 -207
  791. package/src/SchemaUtils.ts +2 -2
  792. package/src/Scope.ts +16 -1
  793. package/src/ScopedCache.ts +1 -1
  794. package/src/ScopedRef.ts +14 -18
  795. package/src/Semaphore.ts +9 -9
  796. package/src/Sink.ts +18 -18
  797. package/src/Stdio.ts +4 -5
  798. package/src/Stream.ts +411 -114
  799. package/src/String.ts +11 -14
  800. package/src/Struct.ts +23 -21
  801. package/src/SubscriptionRef.ts +24 -19
  802. package/src/SynchronizedRef.ts +145 -120
  803. package/src/Terminal.ts +1 -1
  804. package/src/Tracer.ts +9 -9
  805. package/src/Trie.ts +15 -0
  806. package/src/Tuple.ts +39 -33
  807. package/src/TxHashMap.ts +3 -3
  808. package/src/TxHashSet.ts +1 -1
  809. package/src/TxReentrantLock.ts +6 -3
  810. package/src/TxRef.ts +16 -16
  811. package/src/TxSubscriptionRef.ts +43 -27
  812. package/src/Types.ts +12 -39
  813. package/src/UndefinedOr.ts +15 -14
  814. package/src/Unify.ts +9 -9
  815. package/src/internal/schema/annotations.ts +4 -4
  816. package/src/internal/schema/arbitrary.ts +16 -16
  817. package/src/internal/schema/equivalence.ts +11 -11
  818. package/src/internal/schema/representation.ts +23 -23
  819. package/src/internal/schema/schema.ts +17 -17
  820. package/src/testing/TestClock.ts +5 -5
  821. package/src/testing/TestConsole.ts +3 -3
  822. package/src/testing/TestSchema.ts +20 -20
  823. package/src/unstable/ai/AiError.ts +4 -2
  824. package/src/unstable/ai/AnthropicStructuredOutput.ts +59 -56
  825. package/src/unstable/ai/Chat.ts +6 -7
  826. package/src/unstable/ai/EmbeddingModel.ts +5 -5
  827. package/src/unstable/ai/IdGenerator.ts +4 -5
  828. package/src/unstable/ai/LanguageModel.ts +9 -8
  829. package/src/unstable/ai/McpSchema.ts +19 -17
  830. package/src/unstable/ai/McpServer.ts +14 -7
  831. package/src/unstable/ai/OpenAiStructuredOutput.ts +72 -61
  832. package/src/unstable/ai/Prompt.ts +20 -20
  833. package/src/unstable/ai/ResponseIdTracker.ts +3 -2
  834. package/src/unstable/ai/Telemetry.ts +26 -11
  835. package/src/unstable/ai/Tokenizer.ts +1 -1
  836. package/src/unstable/ai/Tool.ts +17 -16
  837. package/src/unstable/ai/Toolkit.ts +2 -2
  838. package/src/unstable/cli/Command.ts +42 -17
  839. package/src/unstable/cli/Completions.ts +1 -1
  840. package/src/unstable/cli/Flag.ts +7 -6
  841. package/src/unstable/cli/GlobalFlag.ts +7 -1
  842. package/src/unstable/cli/Param.ts +24 -19
  843. package/src/unstable/cli/Primitive.ts +6 -5
  844. package/src/unstable/cli/Prompt.ts +11 -11
  845. package/src/unstable/cli/internal/parser.ts +204 -10
  846. package/src/unstable/cluster/ClusterCron.ts +1 -2
  847. package/src/unstable/cluster/ClusterMetrics.ts +5 -0
  848. package/src/unstable/cluster/ClusterSchema.ts +3 -3
  849. package/src/unstable/cluster/ClusterWorkflowEngine.ts +15 -15
  850. package/src/unstable/cluster/Entity.ts +1 -1
  851. package/src/unstable/cluster/EntityResource.ts +10 -0
  852. package/src/unstable/cluster/Envelope.ts +3 -3
  853. package/src/unstable/cluster/HttpRunner.ts +2 -2
  854. package/src/unstable/cluster/K8sHttpClient.ts +1 -1
  855. package/src/unstable/cluster/Reply.ts +14 -12
  856. package/src/unstable/cluster/RunnerHealth.ts +2 -1
  857. package/src/unstable/cluster/RunnerServer.ts +2 -2
  858. package/src/unstable/cluster/Runners.ts +4 -4
  859. package/src/unstable/cluster/ShardId.ts +3 -3
  860. package/src/unstable/cluster/Sharding.ts +4 -4
  861. package/src/unstable/cluster/ShardingConfig.ts +4 -4
  862. package/src/unstable/cluster/SingletonAddress.ts +1 -1
  863. package/src/unstable/cluster/Snowflake.ts +8 -8
  864. package/src/unstable/cluster/internal/entityManager.ts +2 -2
  865. package/src/unstable/devtools/DevToolsClient.ts +1 -1
  866. package/src/unstable/encoding/Msgpack.ts +6 -6
  867. package/src/unstable/encoding/Ndjson.ts +5 -0
  868. package/src/unstable/encoding/Sse.ts +2 -2
  869. package/src/unstable/eventlog/EventGroup.ts +2 -1
  870. package/src/unstable/eventlog/EventJournal.ts +10 -0
  871. package/src/unstable/eventlog/EventLog.ts +4 -4
  872. package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
  873. package/src/unstable/eventlog/EventLogRemote.ts +1 -1
  874. package/src/unstable/eventlog/EventLogServerEncrypted.ts +2 -3
  875. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +8 -10
  876. package/src/unstable/eventlog/EventLogSessionAuth.ts +4 -4
  877. package/src/unstable/http/Cookies.ts +5 -5
  878. package/src/unstable/http/Etag.ts +3 -4
  879. package/src/unstable/http/FetchHttpClient.ts +2 -2
  880. package/src/unstable/http/Headers.ts +2 -2
  881. package/src/unstable/http/HttpBody.ts +2 -2
  882. package/src/unstable/http/HttpClient.ts +3 -3
  883. package/src/unstable/http/HttpClientRequest.ts +32 -5
  884. package/src/unstable/http/HttpMiddleware.ts +1 -1
  885. package/src/unstable/http/HttpPlatform.ts +1 -1
  886. package/src/unstable/http/HttpRouter.ts +5 -5
  887. package/src/unstable/http/HttpServerResponse.ts +28 -23
  888. package/src/unstable/http/Multipart.ts +3 -3
  889. package/src/unstable/http/Url.ts +33 -33
  890. package/src/unstable/http/UrlParams.ts +36 -6
  891. package/src/unstable/httpapi/HttpApi.ts +6 -5
  892. package/src/unstable/httpapi/HttpApiBuilder.ts +14 -13
  893. package/src/unstable/httpapi/HttpApiClient.ts +16 -16
  894. package/src/unstable/httpapi/HttpApiError.ts +13 -13
  895. package/src/unstable/httpapi/HttpApiMiddleware.ts +3 -3
  896. package/src/unstable/httpapi/HttpApiSchema.ts +15 -15
  897. package/src/unstable/httpapi/OpenApi.ts +18 -18
  898. package/src/unstable/observability/OtlpResource.ts +5 -0
  899. package/src/unstable/observability/PrometheusMetrics.ts +8 -6
  900. package/src/unstable/persistence/KeyValueStore.ts +3 -3
  901. package/src/unstable/persistence/Persistable.ts +2 -2
  902. package/src/unstable/persistence/PersistedQueue.ts +8 -8
  903. package/src/unstable/persistence/RateLimiter.ts +1 -1
  904. package/src/unstable/process/ChildProcess.ts +5 -5
  905. package/src/unstable/reactivity/AsyncResult.ts +4 -4
  906. package/src/unstable/reactivity/Atom.ts +4 -4
  907. package/src/unstable/reactivity/AtomRegistry.ts +1 -1
  908. package/src/unstable/reactivity/Reactivity.ts +1 -1
  909. package/src/unstable/rpc/Rpc.ts +5 -5
  910. package/src/unstable/rpc/RpcMiddleware.ts +1 -1
  911. package/src/unstable/rpc/RpcSchema.ts +5 -5
  912. package/src/unstable/rpc/RpcSerialization.ts +2 -2
  913. package/src/unstable/schema/Model.ts +7 -7
  914. package/src/unstable/schema/VariantSchema.ts +2 -2
  915. package/src/unstable/socket/Socket.ts +3 -3
  916. package/src/unstable/socket/SocketServer.ts +1 -1
  917. package/src/unstable/sql/Migrator.ts +1 -1
  918. package/src/unstable/sql/SqlClient.ts +3 -3
  919. package/src/unstable/sql/SqlConnection.ts +1 -1
  920. package/src/unstable/sql/SqlSchema.ts +4 -4
  921. package/src/unstable/sql/Statement.ts +2 -2
  922. package/src/unstable/workers/Transferable.ts +7 -7
  923. package/src/unstable/workers/Worker.ts +1 -1
  924. package/src/unstable/workflow/Activity.ts +1 -1
  925. package/src/unstable/workflow/DurableDeferred.ts +8 -8
  926. package/src/unstable/workflow/DurableQueue.ts +1 -2
  927. package/src/unstable/workflow/Workflow.ts +159 -114
  928. package/src/unstable/workflow/WorkflowEngine.ts +16 -8
  929. package/src/unstable/workflow/WorkflowProxy.ts +9 -11
  930. package/src/unstable/workflow/WorkflowProxyServer.ts +7 -7
package/dist/Effect.js CHANGED
@@ -174,10 +174,8 @@ export const all = internal.all;
174
174
  *
175
175
  * **Details**
176
176
  *
177
- * The returned tuple is `[excluded, satisfying]`, where:
178
- *
179
- * - `excluded` contains all failures.
180
- * - `satisfying` contains all successes.
177
+ * The returned tuple is `[excluded, satisfying]`, where `excluded` contains
178
+ * all failures and `satisfying` contains all successes.
181
179
  *
182
180
  * This function runs every effect and never fails. Use `concurrency` to control
183
181
  * parallelism.
@@ -430,7 +428,7 @@ export const whileLoop = internal.whileLoop;
430
428
  * ```
431
429
  *
432
430
  * @see {@link tryPromise} for a version that can handle failures.
433
- * @category creating effects
431
+ * @category constructors
434
432
  * @since 2.0.0
435
433
  */
436
434
  export const promise = internal.promise;
@@ -496,7 +494,7 @@ export const promise = internal.promise;
496
494
  * ```
497
495
  *
498
496
  * @see {@link promise} if the effectful computation is asynchronous and does not throw errors.
499
- * @category creating effects
497
+ * @category constructors
500
498
  * @since 2.0.0
501
499
  */
502
500
  export const tryPromise = internal.tryPromise;
@@ -505,8 +503,8 @@ export const tryPromise = internal.tryPromise;
505
503
  *
506
504
  * **When to use**
507
505
  *
508
- * Use when you use this function when you need an effect that completes successfully with a
509
- * specific value without any errors or external dependencies.
506
+ * Use when an effect should complete successfully with a specific value without any errors
507
+ * or external dependencies.
510
508
  *
511
509
  * **Example** (Creating a successful effect)
512
510
  *
@@ -521,7 +519,7 @@ export const tryPromise = internal.tryPromise;
521
519
  * ```
522
520
  *
523
521
  * @see {@link fail} to create an effect that represents a failure.
524
- * @category creating effects
522
+ * @category constructors
525
523
  * @since 2.0.0
526
524
  */
527
525
  export const succeed = internal.succeed;
@@ -539,7 +537,7 @@ export const succeed = internal.succeed;
539
537
  * // Output: { _id: 'Option', _tag: 'None' }
540
538
  * ```
541
539
  *
542
- * @category creating effects
540
+ * @category constructors
543
541
  * @since 2.0.0
544
542
  */
545
543
  export const succeedNone = internal.succeedNone;
@@ -557,7 +555,7 @@ export const succeedNone = internal.succeedNone;
557
555
  * // Output: { _id: 'Option', _tag: 'Some', value: 42 }
558
556
  * ```
559
557
  *
560
- * @category creating effects
558
+ * @category constructors
561
559
  * @since 2.0.0
562
560
  */
563
561
  export const succeedSome = internal.succeedSome;
@@ -566,14 +564,16 @@ export const succeedSome = internal.succeedSome;
566
564
  *
567
565
  * **When to use**
568
566
  *
569
- * Use when you need to defer the evaluation of an effect until it is required. This is particularly useful for optimizing expensive computations, managing circular dependencies, or resolving type inference issues.
567
+ * Use when you need to defer the evaluation of an effect until it is required.
570
568
  *
571
569
  * **Details**
572
570
  *
573
- * `suspend` takes a thunk that represents the effect and wraps it in a suspended effect. This means the effect will not be created until it is explicitly needed, which is helpful in various scenarios:
574
- * - **Lazy Evaluation**: Helps optimize performance by deferring computations, especially when the effect might not be needed, or when its computation is expensive. This also ensures that any side effects or scoped captures are re-executed on each invocation.
575
- * - **Handling Circular Dependencies**: Useful in managing circular dependencies, such as recursive functions that need to avoid eager evaluation to prevent stack overflow.
576
- * - **Unifying Return Types**: Can help TypeScript unify return types in situations where multiple branches of logic return different effects, simplifying type inference.
571
+ * `suspend` takes a thunk that represents an effect and delays creating it
572
+ * until the suspended effect is evaluated. This is useful for optimizing
573
+ * expensive computations, managing circular dependencies such as recursive
574
+ * functions, and helping TypeScript unify return types when branches construct
575
+ * different effects. Any side effects or scoped captures inside the thunk are
576
+ * re-executed on each invocation.
577
577
  *
578
578
  * **Example** (Lazily evaluating side effects)
579
579
  *
@@ -644,7 +644,7 @@ export const succeedSome = internal.succeedSome;
644
644
  * )
645
645
  * ```
646
646
  *
647
- * @category creating effects
647
+ * @category constructors
648
648
  * @since 2.0.0
649
649
  */
650
650
  export const suspend = internal.suspend;
@@ -653,7 +653,8 @@ export const suspend = internal.suspend;
653
653
  *
654
654
  * **When to use**
655
655
  *
656
- * Use when you are sure the operation will not fail.
656
+ * Use when you need to wrap a synchronous side-effectful operation that is not
657
+ * expected to throw.
657
658
  *
658
659
  * **Details**
659
660
  *
@@ -680,7 +681,7 @@ export const suspend = internal.suspend;
680
681
  * ```
681
682
  *
682
683
  * @see {@link try_ | try} for a version that can handle failures.
683
- * @category creating effects
684
+ * @category constructors
684
685
  * @since 2.0.0
685
686
  */
686
687
  export const sync = internal.sync;
@@ -689,7 +690,7 @@ export {
689
690
  /**
690
691
  * Returns an effect that succeeds with `void`.
691
692
  *
692
- * @category creating effects
693
+ * @category constructors
693
694
  * @since 2.0.0
694
695
  */
695
696
  void_ as void };
@@ -698,7 +699,7 @@ export {
698
699
  /**
699
700
  * Returns an effect that succeeds with `undefined`.
700
701
  *
701
- * @category creating effects
702
+ * @category constructors
702
703
  * @since 4.0.0
703
704
  */
704
705
  undefined_ as undefined };
@@ -707,8 +708,8 @@ undefined_ as undefined };
707
708
  *
708
709
  * **When to use**
709
710
  *
710
- * Use when integrating APIs that complete through callbacks
711
- * instead of returning a `Promise`.
711
+ * Use when you need to integrate APIs that complete through callbacks instead
712
+ * of returning a `Promise`.
712
713
  *
713
714
  * **Details**
714
715
  *
@@ -734,7 +735,7 @@ undefined_ as undefined };
734
735
  * const program = delay(1000)
735
736
  * ```
736
737
  *
737
- * @category creating effects
738
+ * @category constructors
738
739
  * @since 4.0.0
739
740
  */
740
741
  export const callback = internal.callback;
@@ -757,7 +758,7 @@ export const callback = internal.callback;
757
758
  * const timedProgram = Effect.timeout(program, "1 second")
758
759
  * ```
759
760
  *
760
- * @category creating effects
761
+ * @category constructors
761
762
  * @since 2.0.0
762
763
  */
763
764
  export const never = internal.never;
@@ -857,14 +858,13 @@ export const bind = internal.bind;
857
858
  *
858
859
  * **When to use**
859
860
  *
860
- * Use when `gen` allows you to write code that looks and behaves like synchronous
861
- * code, but it can handle asynchronous tasks, errors, and complex control flow
862
- * (like loops and conditions). It helps make asynchronous code more readable
863
- * and easier to manage.
861
+ * Use when you want to write effectful code that looks and behaves like
862
+ * synchronous code, while still handling asynchronous tasks, errors, and complex
863
+ * control flow such as loops and conditions.
864
864
  *
865
- * The generator functions work similarly to `async/await` but with more
866
- * explicit control over the execution of effects. You can `yield*` values from
867
- * effects and return the final result at the end.
865
+ * Generator functions work similarly to `async/await` but keep errors,
866
+ * requirements, and interruption in the Effect type. You can `yield*` values
867
+ * from effects and return the final result at the end.
868
868
  *
869
869
  * **Example** (Sequencing effects with generators)
870
870
  *
@@ -899,7 +899,7 @@ export const bind = internal.bind;
899
899
  * })
900
900
  * ```
901
901
  *
902
- * @category creating effects
902
+ * @category constructors
903
903
  * @since 2.0.0
904
904
  */
905
905
  export const gen = internal.gen;
@@ -908,9 +908,12 @@ export const gen = internal.gen;
908
908
  *
909
909
  * **When to use**
910
910
  *
911
- * Use to explicitly signal an error in an `Effect`. The error
912
- * will keep propagating unless it is handled. You can handle the error with
913
- * functions like {@link catchTag} or {@link catchTags}.
911
+ * Use to explicitly signal a recoverable error in an `Effect`.
912
+ *
913
+ * **Details**
914
+ *
915
+ * The error keeps propagating unless it is handled. You can handle tagged
916
+ * errors with functions like {@link catchTag} or {@link catchTags}.
914
917
  *
915
918
  * **Example** (Creating a failed effect)
916
919
  *
@@ -927,7 +930,7 @@ export const gen = internal.gen;
927
930
  * ```
928
931
  *
929
932
  * @see {@link succeed} to create an effect that represents a successful value.
930
- * @category creating effects
933
+ * @category constructors
931
934
  * @since 2.0.0
932
935
  */
933
936
  export const fail = internal.fail;
@@ -955,13 +958,19 @@ export const fail = internal.fail;
955
958
  * // Output: { _id: 'Exit', _tag: 'Failure', cause: ... }
956
959
  * ```
957
960
  *
958
- * @category creating effects
961
+ * @category constructors
959
962
  * @since 2.0.0
960
963
  */
961
964
  export const failSync = internal.failSync;
962
965
  /**
963
966
  * Creates an `Effect` that represents a failure with a specific `Cause`.
964
967
  *
968
+ * **When to use**
969
+ *
970
+ * Use when you already have a full `Cause` and need to preserve defects,
971
+ * interruptions, annotations, or combined failures in the effect's failure
972
+ * channel.
973
+ *
965
974
  * **Details**
966
975
  *
967
976
  * This function allows you to create effects that fail with complex error
@@ -980,7 +989,7 @@ export const failSync = internal.failSync;
980
989
  * // Output: { _id: 'Exit', _tag: 'Failure', cause: ... }
981
990
  * ```
982
991
  *
983
- * @category creating effects
992
+ * @category constructors
984
993
  * @since 2.0.0
985
994
  */
986
995
  export const failCause = internal.failCause;
@@ -1008,7 +1017,7 @@ export const failCause = internal.failCause;
1008
1017
  * // Output: { _id: 'Exit', _tag: 'Failure', cause: ... }
1009
1018
  * ```
1010
1019
  *
1011
- * @category creating effects
1020
+ * @category constructors
1012
1021
  * @since 2.0.0
1013
1022
  */
1014
1023
  export const failCauseSync = internal.failCauseSync;
@@ -1017,8 +1026,8 @@ export const failCauseSync = internal.failCauseSync;
1017
1026
  *
1018
1027
  * **When to use**
1019
1028
  *
1020
- * Use when encountering unexpected conditions in your code that should
1021
- * not be handled as regular errors but instead represent unrecoverable defects.
1029
+ * Use when you need an `Effect` to report an unrecoverable defect instead of a
1030
+ * typed error.
1022
1031
  *
1023
1032
  * **Details**
1024
1033
  *
@@ -1049,7 +1058,7 @@ export const failCauseSync = internal.failCauseSync;
1049
1058
  * // ...stack trace...
1050
1059
  * ```
1051
1060
  *
1052
- * @category creating effects
1061
+ * @category constructors
1053
1062
  * @since 2.0.0
1054
1063
  */
1055
1064
  export const die = internal.die;
@@ -1061,10 +1070,8 @@ export {
1061
1070
  *
1062
1071
  * **When to use**
1063
1072
  *
1064
- * Use when in situations where you need to perform synchronous operations that might
1065
- * fail, such as parsing JSON, you can use the `try` constructor. This
1066
- * constructor is designed to handle operations that could throw exceptions by
1067
- * capturing those exceptions and transforming them into manageable errors.
1073
+ * Use when you need to perform synchronous operations that might throw, such
1074
+ * as parsing JSON, and convert thrown exceptions into typed Effect failures.
1068
1075
  *
1069
1076
  * **Details**
1070
1077
  *
@@ -1116,7 +1123,7 @@ export {
1116
1123
  *
1117
1124
  * @see {@link sync} if the effectful computation is synchronous and does not
1118
1125
  * throw errors.
1119
- * @category creating effects
1126
+ * @category constructors
1120
1127
  * @since 2.0.0
1121
1128
  */
1122
1129
  try_ as try };
@@ -1137,7 +1144,7 @@ try_ as try };
1137
1144
  * Effect.runPromise(program)
1138
1145
  * ```
1139
1146
  *
1140
- * @category creating effects
1147
+ * @category constructors
1141
1148
  * @since 2.0.0
1142
1149
  */
1143
1150
  export const yieldNow = internal.yieldNow;
@@ -1158,7 +1165,7 @@ export const yieldNow = internal.yieldNow;
1158
1165
  * Effect.runPromise(program)
1159
1166
  * ```
1160
1167
  *
1161
- * @category creating effects
1168
+ * @category constructors
1162
1169
  * @since 4.0.0
1163
1170
  */
1164
1171
  export const yieldNowWith = internal.yieldNowWith;
@@ -1178,7 +1185,7 @@ export const yieldNowWith = internal.yieldNowWith;
1178
1185
  * // Output: Fiber ID: 1
1179
1186
  * ```
1180
1187
  *
1181
- * @category creating effects
1188
+ * @category constructors
1182
1189
  * @since 4.0.0
1183
1190
  */
1184
1191
  export const withFiber = core.withFiber;
@@ -1211,6 +1218,11 @@ export const fromResult = internal.fromResult;
1211
1218
  /**
1212
1219
  * Converts an `Option` into an `Effect`.
1213
1220
  *
1221
+ * **When to use**
1222
+ *
1223
+ * Use when absence should become a typed `NoSuchElementError` in the effect error
1224
+ * channel.
1225
+ *
1214
1226
  * **Details**
1215
1227
  *
1216
1228
  * `Option.some` becomes a successful effect with the contained value, while
@@ -1359,8 +1371,8 @@ export const flatten = internal.flatten;
1359
1371
  *
1360
1372
  * **When to use**
1361
1373
  *
1362
- * Use when one effect must run after another and the second effect
1363
- * may depend on the first effect's success value.
1374
+ * Use when you need one effect to run after another and the second effect may
1375
+ * depend on the first effect's success value.
1364
1376
  *
1365
1377
  * **Details**
1366
1378
  *
@@ -1435,9 +1447,8 @@ export const andThen = internal.andThen;
1435
1447
  *
1436
1448
  * **When to use**
1437
1449
  *
1438
- * Use when you want to perform a side effect, like logging or tracking,
1439
- * without modifying the main value. This is useful when you need to observe or
1440
- * record an action but want the original value to be passed to the next step.
1450
+ * Use when you need to run an effectful observation, such as logging or
1451
+ * tracking, while passing the original success value to the next step.
1441
1452
  *
1442
1453
  * **Details**
1443
1454
  *
@@ -1488,16 +1499,15 @@ export const tap = internal.tap;
1488
1499
  *
1489
1500
  * **When to use**
1490
1501
  *
1491
- * Use when you want to handle typed failures as data while preserving
1492
- * the original error value. Use `option` when you only care whether the effect
1493
- * succeeded, and `exit` when you need the full failure cause.
1502
+ * Use when you want an `Effect`'s typed failures to be handled as `Result`
1503
+ * data while preserving the original error value.
1494
1504
  *
1495
1505
  * **Details**
1496
1506
  *
1497
1507
  * This function converts an effect that may fail into an effect that always
1498
1508
  * succeeds, wrapping the outcome in a `Result` type. The result will be
1499
- * `Result.Err` if the effect fails, containing the recoverable error, or
1500
- * `Result.Ok` if it succeeds, containing the result.
1509
+ * `Result.Failure` if the effect fails, containing the recoverable error, or
1510
+ * `Result.Success` if it succeeds, containing the result.
1501
1511
  *
1502
1512
  * Using this function, you can handle recoverable errors explicitly without
1503
1513
  * causing the effect to fail. This is particularly useful in scenarios where
@@ -1543,9 +1553,8 @@ export const result = internal.result;
1543
1553
  *
1544
1554
  * **When to use**
1545
1555
  *
1546
- * Use when the failure value is not important and absence is enough.
1547
- * Use `result` when you need the original typed failure, and `exit` when you
1548
- * need the full failure cause.
1556
+ * Use when you only care whether an effect succeeds and want recoverable
1557
+ * failures represented as `Option.none`.
1549
1558
  *
1550
1559
  * **Details**
1551
1560
  *
@@ -1592,9 +1601,8 @@ export const option = internal.option;
1592
1601
  *
1593
1602
  * **When to use**
1594
1603
  *
1595
- * Use when you need to inspect the full outcome, including typed
1596
- * failures, defects, and interruptions. Use `result` or `option` when you only
1597
- * need to handle typed failures.
1604
+ * Use when you need to inspect the full outcome, including typed failures, defects,
1605
+ * and interruptions.
1598
1606
  *
1599
1607
  * **Details**
1600
1608
  *
@@ -1759,8 +1767,7 @@ export const asVoid = internal.asVoid;
1759
1767
  *
1760
1768
  * **When to use**
1761
1769
  *
1762
- * Use to handle the failure value as a success, or to move the success value
1763
- * into the failure channel.
1770
+ * Use to swap an `Effect`'s success and failure channels.
1764
1771
  *
1765
1772
  * **Details**
1766
1773
  *
@@ -1918,6 +1925,11 @@ export {
1918
1925
  /**
1919
1926
  * Handles all errors in an effect by providing a fallback effect.
1920
1927
  *
1928
+ * **When to use**
1929
+ *
1930
+ * Use when every recoverable error from an effect should be handled by the same
1931
+ * fallback function while unrecoverable defects remain defects.
1932
+ *
1921
1933
  * **Details**
1922
1934
  *
1923
1935
  * The `catch` function catches any errors that may occur during the
@@ -1925,8 +1937,10 @@ export {
1925
1937
  * effect. This ensures that the program continues without failing by recovering
1926
1938
  * from errors using the provided fallback logic.
1927
1939
  *
1928
- * **Note**: `catch` only handles recoverable errors. It will not recover
1929
- * from unrecoverable defects.
1940
+ * **Gotchas**
1941
+ *
1942
+ * `catch` only handles recoverable errors. It will not recover from
1943
+ * unrecoverable defects.
1930
1944
  *
1931
1945
  * @see {@link catchCause} for a version that can recover from both recoverable and unrecoverable errors.
1932
1946
  *
@@ -1940,8 +1954,8 @@ catch_ as catch };
1940
1954
  *
1941
1955
  * **When to use**
1942
1956
  *
1943
- * Use when recovering from one specific tagged error in an effect error
1944
- * channel.
1957
+ * Use when you need to recover from one specific tagged error in an effect
1958
+ * error channel.
1945
1959
  *
1946
1960
  * **Details**
1947
1961
  *
@@ -1985,10 +1999,14 @@ export const catchTag = internal.catchTag;
1985
1999
  * **When to use**
1986
2000
  *
1987
2001
  * Use when one recovery step should handle several tagged error types by
1988
- * matching their readonly `_tag` fields. Pass a handler table whose keys are
1989
- * tags, plus an optional fallback for unmatched errors.
2002
+ * matching their readonly `_tag` fields.
2003
+ *
2004
+ * **Details**
1990
2005
  *
1991
- * The error type must have a readonly `_tag` field to use `catchTag`. This
2006
+ * Pass a handler table whose keys are tags, plus an optional fallback for
2007
+ * unmatched errors.
2008
+ *
2009
+ * The error type must have a readonly `_tag` field to use `catchTags`. This
1992
2010
  * field is used to identify and match errors.
1993
2011
  *
1994
2012
  * **Example** (Handling multiple tagged errors)
@@ -2025,8 +2043,8 @@ export const catchTags = internal.catchTags;
2025
2043
  *
2026
2044
  * **When to use**
2027
2045
  *
2028
- * Use to handle one nested reason inside a tagged error while preserving the
2029
- * parent error shape for unmatched reasons.
2046
+ * Use to handle one nested reason inside an `Effect`'s tagged error while
2047
+ * preserving the parent error shape for unmatched reasons.
2030
2048
  *
2031
2049
  * **Details**
2032
2050
  *
@@ -2140,8 +2158,9 @@ export const unwrapReason = internal.unwrapReason;
2140
2158
  *
2141
2159
  * **When to use**
2142
2160
  *
2143
- * Use when recovery needs the full `Cause`, including recoverable failures,
2144
- * defects, and interruptions, instead of only the typed error value.
2161
+ * Use when you need to recover from an `Effect` by inspecting the full `Cause`,
2162
+ * including recoverable failures, defects, and interruptions, instead of only
2163
+ * the typed error value.
2145
2164
  *
2146
2165
  * **Details**
2147
2166
  *
@@ -2179,8 +2198,7 @@ export const catchCause = internal.catchCause;
2179
2198
  *
2180
2199
  * **When to use**
2181
2200
  *
2182
- * Use when you use this sparingly, usually at integration boundaries where defects must be
2183
- * reported or translated for an external system.
2201
+ * Use when you need to report or translate defects at integration boundaries.
2184
2202
  *
2185
2203
  * **Details**
2186
2204
  *
@@ -2220,8 +2238,11 @@ export const catchDefect = internal.catchDefect;
2220
2238
  *
2221
2239
  * **When to use**
2222
2240
  *
2223
- * Use when you need to recover from errors that match a condition. Use a
2224
- * `Refinement` for type narrowing or a `Predicate` for simple boolean
2241
+ * Use when you need to recover from errors that match a condition.
2242
+ *
2243
+ * **Details**
2244
+ *
2245
+ * Use a `Refinement` for type narrowing or a `Predicate` for simple boolean
2225
2246
  * matching. Non-matching errors re-fail with the original cause. Defects and
2226
2247
  * interrupts are not caught.
2227
2248
  *
@@ -2285,7 +2306,8 @@ export const catchFilter = internal.catchFilter;
2285
2306
  *
2286
2307
  * **When to use**
2287
2308
  *
2288
- * Use to convert `NoSuchElementError` failures into `Option.none`.
2309
+ * Use when you expect missing-value failures and want them to become an
2310
+ * optional success while all other failures keep failing.
2289
2311
  *
2290
2312
  * **Details**
2291
2313
  *
@@ -2317,7 +2339,7 @@ export const catchNoSuchElement = internal.catchNoSuchElement;
2317
2339
  *
2318
2340
  * **When to use**
2319
2341
  *
2320
- * Use to recover from full causes selected by a predicate.
2342
+ * Use to recover an `Effect` from full causes selected by a predicate.
2321
2343
  *
2322
2344
  * **Details**
2323
2345
  *
@@ -2361,8 +2383,9 @@ export const catchCauseIf = internal.catchCauseIf;
2361
2383
  *
2362
2384
  * **When to use**
2363
2385
  *
2364
- * Use when you need to recover only from causes selected by a `Filter`, and the
2365
- * recovery needs both the selected value and the original `Cause`.
2386
+ * Use when you need to recover an `Effect` only from causes selected by a
2387
+ * `Filter`, while giving the recovery both the selected value and the original
2388
+ * `Cause`.
2366
2389
  *
2367
2390
  * **Details**
2368
2391
  *
@@ -2383,7 +2406,8 @@ export const catchCauseFilter = internal.catchCauseFilter;
2383
2406
  *
2384
2407
  * **When to use**
2385
2408
  *
2386
- * Use to translate typed failures while leaving successful values unchanged.
2409
+ * Use to translate an `Effect`'s typed failures while leaving successful values
2410
+ * unchanged.
2387
2411
  *
2388
2412
  * **Details**
2389
2413
  *
@@ -2421,8 +2445,8 @@ export const mapError = internal.mapError;
2421
2445
  *
2422
2446
  * **When to use**
2423
2447
  *
2424
- * Use to transform both success and failure values without changing whether the
2425
- * effect succeeds or fails.
2448
+ * Use to transform both success and failure channels of an `Effect` without
2449
+ * changing whether it succeeds or fails.
2426
2450
  *
2427
2451
  * **Details**
2428
2452
  *
@@ -2463,8 +2487,8 @@ export const mapBoth = internal.mapBoth;
2463
2487
  *
2464
2488
  * **When to use**
2465
2489
  *
2466
- * Use when a typed failure represents an unrecoverable bug or invalid
2467
- * state and should not be handled as a recoverable error.
2490
+ * Use when you need to turn an `Effect` typed failure that represents an
2491
+ * unrecoverable bug or invalid state into a defect.
2468
2492
  *
2469
2493
  * **Example** (Converting typed failures into defects)
2470
2494
  *
@@ -2567,6 +2591,11 @@ export const tapErrorTag = internal.tapErrorTag;
2567
2591
  * Runs an effectful operation with the full `Cause` when the source effect
2568
2592
  * fails.
2569
2593
  *
2594
+ * **When to use**
2595
+ *
2596
+ * Use when failure observation needs typed failures, defects, and interruptions
2597
+ * rather than only the typed error value.
2598
+ *
2570
2599
  * **Details**
2571
2600
  *
2572
2601
  * Use this to log or inspect typed failures, defects, and interruptions. When
@@ -2631,8 +2660,9 @@ export const tapCauseIf = internal.tapCauseIf;
2631
2660
  *
2632
2661
  * **When to use**
2633
2662
  *
2634
- * Use when you need to observe only failure causes selected by a `Filter`, and
2635
- * the side effect needs both the selected value and the original `Cause`.
2663
+ * Use when you need to observe only failure causes selected by a `Filter`,
2664
+ * while giving the side effect both the selected value and the original
2665
+ * `Cause`.
2636
2666
  *
2637
2667
  * **Details**
2638
2668
  *
@@ -2729,7 +2759,7 @@ export const tapDefect = internal.tapDefect;
2729
2759
  * // Ready
2730
2760
  * ```
2731
2761
  *
2732
- * @category repetition / recursion
2762
+ * @category repetition
2733
2763
  * @since 2.0.0
2734
2764
  */
2735
2765
  export const eventually = internal.eventually;
@@ -2738,8 +2768,8 @@ export const eventually = internal.eventually;
2738
2768
  *
2739
2769
  * **When to use**
2740
2770
  *
2741
- * Use when typed failures may be transient, such as network issues or
2742
- * temporary resource unavailability.
2771
+ * Use when you need to rerun an effect after transient typed failures, such as
2772
+ * network issues or temporary resource unavailability.
2743
2773
  *
2744
2774
  * **Details**
2745
2775
  *
@@ -2881,6 +2911,8 @@ export const sandbox = internal.sandbox;
2881
2911
  * Use when an effect should run for its side effects while both success and
2882
2912
  * failure values are discarded.
2883
2913
  *
2914
+ * **Details**
2915
+ *
2884
2916
  * Use the `log` option to emit the full {@link Cause} when the effect fails,
2885
2917
  * and `message` to prepend a custom log message.
2886
2918
  *
@@ -2916,6 +2948,11 @@ export const ignore = internal.ignore;
2916
2948
  /**
2917
2949
  * Ignores the effect's failure cause, including defects and interruptions.
2918
2950
  *
2951
+ * **When to use**
2952
+ *
2953
+ * Use when a best-effort effect should never fail, even from defects or
2954
+ * interruption, and optional cause logging is enough.
2955
+ *
2919
2956
  * **Details**
2920
2957
  *
2921
2958
  * Use the `log` option to emit the full {@link Cause} when the effect fails,
@@ -3031,9 +3068,9 @@ export const orElseSucceed = internal.orElseSucceed;
3031
3068
  *
3032
3069
  * **When to use**
3033
3070
  *
3034
- * Use when you have prioritized fallback strategies, such as
3035
- * attempting multiple APIs, reading configuration from several sources, or
3036
- * trying alternative resource locations in order.
3071
+ * Use when you have prioritized fallback `Effect`s, such as attempting
3072
+ * multiple APIs, reading configuration from several sources, or trying
3073
+ * alternative resource locations in order.
3037
3074
  *
3038
3075
  * **Details**
3039
3076
  *
@@ -3079,9 +3116,8 @@ export const firstSuccessOf = internal.firstSuccessOf;
3079
3116
  *
3080
3117
  * **When to use**
3081
3118
  *
3082
- * Use when exceeding the time limit should be represented as a typed
3083
- * failure. Use `timeoutOption` when a timeout should become `Option.none`, and
3084
- * `timeoutOrElse` when you want to run a fallback effect.
3119
+ * Use when you need a timeout of an `Effect` to be represented as a typed
3120
+ * failure.
3085
3121
  *
3086
3122
  * **Details**
3087
3123
  *
@@ -3138,9 +3174,7 @@ export const timeout = internal.timeout;
3138
3174
  *
3139
3175
  * **When to use**
3140
3176
  *
3141
- * Use when a timeout should be handled as absence. Use
3142
- * `timeout` when a timeout should fail the effect, and `timeoutOrElse` when
3143
- * you want to run a fallback effect.
3177
+ * Use when a timeout of an `Effect` should be handled as `Option.none`.
3144
3178
  *
3145
3179
  * **Details**
3146
3180
  *
@@ -3189,9 +3223,7 @@ export const timeoutOption = internal.timeoutOption;
3189
3223
  *
3190
3224
  * **When to use**
3191
3225
  *
3192
- * Use when a timeout should switch to a fallback effect. Use
3193
- * `timeout` when a timeout should fail the effect, and `timeoutOption` when a
3194
- * timeout should become `Option.none`.
3226
+ * Use when a timeout of an `Effect` should switch to a fallback effect.
3195
3227
  *
3196
3228
  * **Details**
3197
3229
  *
@@ -3409,6 +3441,11 @@ export const race = internal.race;
3409
3441
  * Races two effects and returns the result of the first one to complete, whether
3410
3442
  * it succeeds or fails.
3411
3443
  *
3444
+ * **When to use**
3445
+ *
3446
+ * Use when any completion, including failure, should decide the race and
3447
+ * interrupt the losing effect.
3448
+ *
3412
3449
  * **Details**
3413
3450
  *
3414
3451
  * The losing effect is interrupted, and `onWinner` can observe the winning fiber.
@@ -3467,8 +3504,8 @@ export const filter = internal.filter;
3467
3504
  *
3468
3505
  * **When to use**
3469
3506
  *
3470
- * Use to keep only iterable elements accepted by a `Filter` and collect each
3471
- * filter success value.
3507
+ * Use when you need to filter an iterable with a `Filter` inside an `Effect`,
3508
+ * collecting each filter success value.
3472
3509
  *
3473
3510
  * **Details**
3474
3511
  *
@@ -3487,8 +3524,8 @@ export const filterMap = internal.filterMap;
3487
3524
  *
3488
3525
  * **When to use**
3489
3526
  *
3490
- * Use when filtering each iterable element requires effects and accepted
3491
- * elements should be transformed into successful output values.
3527
+ * Use when you need to filter each iterable element effectfully and transform
3528
+ * accepted elements into successful output values.
3492
3529
  *
3493
3530
  * **Details**
3494
3531
  *
@@ -3510,6 +3547,11 @@ export const filterMapEffect = internal.filterMapEffect;
3510
3547
  /**
3511
3548
  * Filters an effect, providing an alternative effect if the predicate fails.
3512
3549
  *
3550
+ * **When to use**
3551
+ *
3552
+ * Use when a successful value that fails a predicate should continue with an
3553
+ * effectful fallback instead of failing the effect.
3554
+ *
3513
3555
  * **Details**
3514
3556
  *
3515
3557
  * This function applies a predicate to the result of an effect. If the
@@ -3621,8 +3663,8 @@ export const filterMapOrFail = internal.filterMapOrFail;
3621
3663
  *
3622
3664
  * **When to use**
3623
3665
  *
3624
- * Use when an effectful check decides whether to run another effect while
3625
- * representing the skipped case explicitly.
3666
+ * Use when you need an effectful check to decide whether another effect should
3667
+ * run while representing the skipped case explicitly.
3626
3668
  *
3627
3669
  * **Details**
3628
3670
  *
@@ -3661,8 +3703,8 @@ export const when = internal.when;
3661
3703
  *
3662
3704
  * **When to use**
3663
3705
  *
3664
- * Use when this is useful for structuring your code to respond differently to success or
3665
- * failure without triggering side effects.
3706
+ * Use when you need to fold an `Effect` into a value by handling success and
3707
+ * failure differently without triggering side effects.
3666
3708
  *
3667
3709
  * **Details**
3668
3710
  *
@@ -3714,9 +3756,8 @@ export const match = internal.match;
3714
3756
  *
3715
3757
  * **When to use**
3716
3758
  *
3717
- * Use when you need to handle both success and failure cases and want
3718
- * optimal performance for resolved effects. This is particularly useful in
3719
- * scenarios where you frequently work with already computed values.
3759
+ * Use when you need to handle both success and failure cases of an
3760
+ * already-resolved `Effect` with optimized handling.
3720
3761
  *
3721
3762
  * **Details**
3722
3763
  *
@@ -3750,9 +3791,8 @@ export const matchEager = internal.matchEager;
3750
3791
  *
3751
3792
  * **When to use**
3752
3793
  *
3753
- * Use when this is useful for differentiating between different types of errors, such as
3754
- * regular failures, defects, or interruptions. You can provide specific
3755
- * handling logic for each failure type based on the cause.
3794
+ * Use when you need to fold an `Effect` while the failure handler inspects the
3795
+ * full `Cause`.
3756
3796
  *
3757
3797
  * **Details**
3758
3798
  *
@@ -3787,9 +3827,8 @@ export const matchCause = internal.matchCause;
3787
3827
  *
3788
3828
  * **When to use**
3789
3829
  *
3790
- * Use when this is useful when you have effects that are likely to be already resolved
3791
- * and you want to avoid the overhead of the effect pipeline. For pending effects,
3792
- * it automatically falls back to the regular `matchCause` behavior.
3830
+ * Use when you expect an `Effect` to already be resolved and want to match the
3831
+ * `Cause` without regular effect pipeline overhead.
3793
3832
  *
3794
3833
  * **Details**
3795
3834
  *
@@ -3817,9 +3856,8 @@ export const matchCauseEager = internal.matchCauseEager;
3817
3856
  *
3818
3857
  * **When to use**
3819
3858
  *
3820
- * Use when success and cause-aware failure handlers return effects and the
3821
- * input may already be resolved, so the selected handler can run immediately
3822
- * while unresolved inputs keep normal effectful matching behavior.
3859
+ * Use when you need effectful success and cause-aware failure handlers for
3860
+ * `Effect` inputs that may already be resolved.
3823
3861
  *
3824
3862
  * **Details**
3825
3863
  *
@@ -3839,8 +3877,8 @@ export const matchCauseEffectEager = internal.matchCauseEffectEager;
3839
3877
  *
3840
3878
  * **When to use**
3841
3879
  *
3842
- * Use when both success and failure handling must return effects and the
3843
- * failure branch needs the full `Cause`.
3880
+ * Use when you need to fold an `Effect` with effectful success handlers and
3881
+ * `Cause`-aware failure handlers.
3844
3882
  *
3845
3883
  * **Details**
3846
3884
  *
@@ -3899,7 +3937,8 @@ export const matchCauseEffect = internal.matchCauseEffect;
3899
3937
  *
3900
3938
  * **When to use**
3901
3939
  *
3902
- * Use when the failure or success branch must run additional effects.
3940
+ * Use when you need to handle an `Effect`'s failure or success with handlers
3941
+ * that return effects.
3903
3942
  *
3904
3943
  * **Details**
3905
3944
  *
@@ -4391,6 +4430,11 @@ export const provideService = internal.provideService;
4391
4430
  /**
4392
4431
  * Provides one service to an effect using an effectful acquisition.
4393
4432
  *
4433
+ * **When to use**
4434
+ *
4435
+ * Use when the service implementation must be created by an effect and its
4436
+ * acquisition failure should remain in the returned effect.
4437
+ *
4394
4438
  * **Details**
4395
4439
  *
4396
4440
  * `provideServiceEffect` runs the acquisition effect to produce the service
@@ -4557,6 +4601,11 @@ export const scoped = internal.scoped;
4557
4601
  /**
4558
4602
  * Creates a scoped effect by providing access to the scope.
4559
4603
  *
4604
+ * **When to use**
4605
+ *
4606
+ * Use when resource acquisition needs direct access to the scope being created,
4607
+ * for example to register finalizers manually.
4608
+ *
4560
4609
  * **Example** (Working with an explicit scope)
4561
4610
  *
4562
4611
  * ```ts
@@ -4661,8 +4710,8 @@ export const acquireRelease = internal.acquireRelease;
4661
4710
  *
4662
4711
  * **When to use**
4663
4712
  *
4664
- * Use with JavaScript `Disposable` or `AsyncDisposable` resources that should
4665
- * be closed with the surrounding scope.
4713
+ * Use when you work with JavaScript `Disposable` or `AsyncDisposable` resources
4714
+ * that should be closed with the surrounding scope.
4666
4715
  *
4667
4716
  * **Details**
4668
4717
  *
@@ -5045,10 +5094,8 @@ export const onExitFilter = internal.onExitFilter;
5045
5094
  *
5046
5095
  * **When to use**
5047
5096
  *
5048
- * Use when you use this function when you have an expensive or time-consuming operation that
5049
- * you want to avoid repeating. The first evaluation will compute the result,
5050
- * and all following evaluations will immediately return the cached value,
5051
- * improving performance and reducing unnecessary work.
5097
+ * Use when you need an expensive or time-consuming operation to be evaluated
5098
+ * once and reused by later callers.
5052
5099
  *
5053
5100
  * **Details**
5054
5101
  *
@@ -5109,14 +5156,8 @@ export const cached = internal.cached;
5109
5156
  *
5110
5157
  * **When to use**
5111
5158
  *
5112
- * Use when you use this function when you have an effect that involves costly operations or
5113
- * computations, and you want to avoid repeating them within a short time frame.
5114
- *
5115
- * It's ideal for scenarios where the result of an effect doesn't change
5116
- * frequently and can be reused for a specified duration.
5117
- *
5118
- * By caching the result, you can improve efficiency and reduce unnecessary
5119
- * computations, especially in performance-critical applications.
5159
+ * Use when you need a costly effect result to be reused for a bounded duration
5160
+ * before being recomputed.
5120
5161
  *
5121
5162
  * **Details**
5122
5163
  *
@@ -5445,7 +5486,7 @@ export const abortSignal = internal.abortSignal;
5445
5486
  * })
5446
5487
  * ```
5447
5488
  *
5448
- * @category repetition / recursion
5489
+ * @category repetition
5449
5490
  * @since 2.0.0
5450
5491
  */
5451
5492
  export const forever = internal.forever;
@@ -5522,7 +5563,7 @@ export const forever = internal.forever;
5522
5563
  * @see {@link retry} for failure-based repetition
5523
5564
  * @see {@link repeatOrElse} for fallback handling when repetition fails
5524
5565
  *
5525
- * @category repetition / recursion
5566
+ * @category repetition
5526
5567
  * @since 2.0.0
5527
5568
  */
5528
5569
  export const repeat = internalSchedule.repeat;
@@ -5530,6 +5571,11 @@ export const repeat = internalSchedule.repeat;
5530
5571
  * Repeats an effect according to a schedule and runs a fallback effect if
5531
5572
  * repetition fails before the schedule completes.
5532
5573
  *
5574
+ * **When to use**
5575
+ *
5576
+ * Use when successful repetitions should follow a schedule, but failures from
5577
+ * the repeated effect or schedule need an effectful fallback.
5578
+ *
5533
5579
  * **Details**
5534
5580
  *
5535
5581
  * If the repeated effect or schedule step fails, `orElse` receives the failure
@@ -5565,7 +5611,7 @@ export const repeat = internalSchedule.repeat;
5565
5611
  * )
5566
5612
  * ```
5567
5613
  *
5568
- * @category repetition / recursion
5614
+ * @category repetition
5569
5615
  * @since 2.0.0
5570
5616
  */
5571
5617
  export const repeatOrElse = internalSchedule.repeatOrElse;
@@ -5574,9 +5620,8 @@ export const repeatOrElse = internalSchedule.repeatOrElse;
5574
5620
  *
5575
5621
  * **When to use**
5576
5622
  *
5577
- * Use to create an array containing the same effect multiple times when you
5578
- * want to pass those effects to another collector or control execution
5579
- * separately.
5623
+ * Use when you need an array of identical effect values without running them
5624
+ * yet.
5580
5625
  *
5581
5626
  * **Details**
5582
5627
  *
@@ -5592,6 +5637,11 @@ export const replicate = internal.replicate;
5592
5637
  /**
5593
5638
  * Performs this effect `n` times and collects results with `Effect.all` semantics.
5594
5639
  *
5640
+ * **When to use**
5641
+ *
5642
+ * Use when you want to run the repeated effects immediately, with optional
5643
+ * concurrency control or result discarding.
5644
+ *
5595
5645
  * **Details**
5596
5646
  *
5597
5647
  * Use `concurrency` to control parallelism and `discard: true` to ignore results.
@@ -5655,7 +5705,7 @@ export const replicateEffect = internal.replicateEffect;
5655
5705
  * @see {@link scheduleFrom} for a variant that allows the schedule's decision
5656
5706
  * to depend on the result of this effect.
5657
5707
  *
5658
- * @category repetition / recursion
5708
+ * @category repetition
5659
5709
  * @since 2.0.0
5660
5710
  */
5661
5711
  export const schedule = /*#__PURE__*/dual(2, (self, schedule) => scheduleFrom(self, undefined, schedule));
@@ -5693,7 +5743,7 @@ export const schedule = /*#__PURE__*/dual(2, (self, schedule) => scheduleFrom(se
5693
5743
  * // Returns the schedule count
5694
5744
  * ```
5695
5745
  *
5696
- * @category repetition / recursion
5746
+ * @category repetition
5697
5747
  * @since 2.0.0
5698
5748
  */
5699
5749
  export const scheduleFrom = internalSchedule.scheduleFrom;
@@ -6163,9 +6213,7 @@ export const withParentSpan = internal.withParentSpan;
6163
6213
  *
6164
6214
  * **When to use**
6165
6215
  *
6166
- * Use to execute a typed `Request` through a `RequestResolver` when you want
6167
- * concurrent requests made with the same resolver to be collected and completed
6168
- * by resolver logic.
6216
+ * Use when you need resolver-driven batching for a typed `Request`.
6169
6217
  *
6170
6218
  * **Example** (Executing a request through a resolver)
6171
6219
  *
@@ -6436,9 +6484,7 @@ export const fiberId = internal.fiberId;
6436
6484
  *
6437
6485
  * **When to use**
6438
6486
  *
6439
- * Use when an effect should start in the background and return a fiber that can
6440
- * be observed or interrupted. Prefer this when you do not need a `Promise` or
6441
- * synchronous result.
6487
+ * Use when you need to start an effect in the background and receive a fiber.
6442
6488
  *
6443
6489
  * **Example** (Running an effect in the background)
6444
6490
  *
@@ -6461,13 +6507,18 @@ export const fiberId = internal.fiberId;
6461
6507
  * }, 500)
6462
6508
  * ```
6463
6509
  *
6464
- * @category running effects
6510
+ * @category running
6465
6511
  * @since 2.0.0
6466
6512
  */
6467
6513
  export const runFork = internal.runFork;
6468
6514
  /**
6469
6515
  * Runs an effect in the background with the provided services.
6470
6516
  *
6517
+ * **When to use**
6518
+ *
6519
+ * Use when an effect still requires services, you already have a `Context`, and
6520
+ * you want a background fiber.
6521
+ *
6471
6522
  * **Example** (Running with services in the background)
6472
6523
  *
6473
6524
  * ```ts
@@ -6492,13 +6543,18 @@ export const runFork = internal.runFork;
6492
6543
  * const fiber = Effect.runForkWith(services)(program)
6493
6544
  * ```
6494
6545
  *
6495
- * @category running effects
6546
+ * @category running
6496
6547
  * @since 4.0.0
6497
6548
  */
6498
6549
  export const runForkWith = internal.runForkWith;
6499
6550
  /**
6500
6551
  * Forks an effect with the provided services, registers `onExit` as a fiber observer, and returns an interruptor.
6501
6552
  *
6553
+ * **When to use**
6554
+ *
6555
+ * Use when embedding an effect into callback-style code with explicit services
6556
+ * and a synchronous interruptor.
6557
+ *
6502
6558
  * **Details**
6503
6559
  *
6504
6560
  * The returned interruptor calls `fiber.interruptUnsafe`, optionally with an interruptor id.
@@ -6536,7 +6592,7 @@ export const runForkWith = internal.runForkWith;
6536
6592
  * interrupt()
6537
6593
  * ```
6538
6594
  *
6539
- * @category running effects
6595
+ * @category running
6540
6596
  * @since 4.0.0
6541
6597
  */
6542
6598
  export const runCallbackWith = internal.runCallbackWith;
@@ -6577,7 +6633,7 @@ export const runCallbackWith = internal.runCallbackWith;
6577
6633
  * // interrupt() to cancel the fiber if needed
6578
6634
  * ```
6579
6635
  *
6580
- * @category running effects
6636
+ * @category running
6581
6637
  * @since 2.0.0
6582
6638
  */
6583
6639
  export const runCallback = internal.runCallback;
@@ -6614,13 +6670,18 @@ export const runCallback = internal.runCallback;
6614
6670
  * ```
6615
6671
  *
6616
6672
  * @see {@link runPromiseExit} for a version that returns an `Exit` type instead of rejecting.
6617
- * @category running effects
6673
+ * @category running
6618
6674
  * @since 2.0.0
6619
6675
  */
6620
6676
  export const runPromise = internal.runPromise;
6621
6677
  /**
6622
6678
  * Executes an effect as a Promise with the provided services.
6623
6679
  *
6680
+ * **When to use**
6681
+ *
6682
+ * Use when you already have a `Context` and need Promise interop that rejects on
6683
+ * effect failure.
6684
+ *
6624
6685
  * **Example** (Running with services as a promise)
6625
6686
  *
6626
6687
  * ```ts
@@ -6644,7 +6705,7 @@ export const runPromise = internal.runPromise;
6644
6705
  * Effect.runPromiseWith(context)(program).then(console.log)
6645
6706
  * ```
6646
6707
  *
6647
- * @category running effects
6708
+ * @category running
6648
6709
  * @since 4.0.0
6649
6710
  */
6650
6711
  export const runPromiseWith = internal.runPromiseWith;
@@ -6659,10 +6720,9 @@ export const runPromiseWith = internal.runPromiseWith;
6659
6720
  *
6660
6721
  * **Details**
6661
6722
  *
6662
- * The `Exit` type represents the result of the effect:
6663
- * - If the effect succeeds, the result is wrapped in a `Success`.
6664
- * - If it fails, the failure information is provided as a `Failure` containing
6665
- * a `Cause` type.
6723
+ * The `Exit` type represents the result of the effect. Successful effects are
6724
+ * wrapped in `Success`, and failed effects are wrapped in `Failure` with a
6725
+ * `Cause`.
6666
6726
  *
6667
6727
  * **Example** (Observing promise results as Exit)
6668
6728
  *
@@ -6694,13 +6754,18 @@ export const runPromiseWith = internal.runPromiseWith;
6694
6754
  *
6695
6755
  * @see {@link runPromise} for a version that rejects on failure.
6696
6756
  *
6697
- * @category running effects
6757
+ * @category running
6698
6758
  * @since 2.0.0
6699
6759
  */
6700
6760
  export const runPromiseExit = internal.runPromiseExit;
6701
6761
  /**
6702
6762
  * Runs an effect and returns a Promise of Exit with provided services.
6703
6763
  *
6764
+ * **When to use**
6765
+ *
6766
+ * Use when you already have a `Context` and need Promise interop that preserves
6767
+ * success and failure as an `Exit`.
6768
+ *
6704
6769
  * **Example** (Running with services as an Exit promise)
6705
6770
  *
6706
6771
  * ```ts
@@ -6728,7 +6793,7 @@ export const runPromiseExit = internal.runPromiseExit;
6728
6793
  * })
6729
6794
  * ```
6730
6795
  *
6731
- * @category running effects
6796
+ * @category running
6732
6797
  * @since 4.0.0
6733
6798
  */
6734
6799
  export const runPromiseExitWith = internal.runPromiseExitWith;
@@ -6789,13 +6854,18 @@ export const runPromiseExitWith = internal.runPromiseExitWith;
6789
6854
  *
6790
6855
  * @see {@link runSyncExit} for a version that returns an `Exit` type instead of
6791
6856
  * throwing an error.
6792
- * @category running effects
6857
+ * @category running
6793
6858
  * @since 2.0.0
6794
6859
  */
6795
6860
  export const runSync = internal.runSync;
6796
6861
  /**
6797
6862
  * Executes an effect synchronously with provided services.
6798
6863
  *
6864
+ * **When to use**
6865
+ *
6866
+ * Use when you already have a `Context`, the effect is known to complete
6867
+ * synchronously, and failures should throw.
6868
+ *
6799
6869
  * **Example** (Running synchronously with services)
6800
6870
  *
6801
6871
  * ```ts
@@ -6820,7 +6890,7 @@ export const runSync = internal.runSync;
6820
6890
  * console.log(result) // 5
6821
6891
  * ```
6822
6892
  *
6823
- * @category running effects
6893
+ * @category running
6824
6894
  * @since 4.0.0
6825
6895
  */
6826
6896
  export const runSyncWith = internal.runSyncWith;
@@ -6835,10 +6905,9 @@ export const runSyncWith = internal.runSyncWith;
6835
6905
  *
6836
6906
  * **Details**
6837
6907
  *
6838
- * The `Exit` type represents the result of the effect:
6839
- * - If the effect succeeds, the result is wrapped in a `Success`.
6840
- * - If it fails, the failure information is provided as a `Failure` containing
6841
- * a `Cause` type.
6908
+ * The `Exit` type represents the result of the effect. Successful effects are
6909
+ * wrapped in `Success`, and failed effects are wrapped in `Failure` with a
6910
+ * `Cause`.
6842
6911
  *
6843
6912
  * If the effect contains asynchronous operations, `runSyncExit` will
6844
6913
  * return an `Failure` with a `Die` cause, indicating that the effect cannot be
@@ -6894,13 +6963,18 @@ export const runSyncWith = internal.runSyncWith;
6894
6963
  *
6895
6964
  * @see {@link runSync} for a version that throws on failure.
6896
6965
  *
6897
- * @category running effects
6966
+ * @category running
6898
6967
  * @since 2.0.0
6899
6968
  */
6900
6969
  export const runSyncExit = internal.runSyncExit;
6901
6970
  /**
6902
6971
  * Runs an effect synchronously with provided services, returning an Exit result safely.
6903
6972
  *
6973
+ * **When to use**
6974
+ *
6975
+ * Use when you already have a `Context` and need a synchronous `Exit` instead of
6976
+ * throwing on failure.
6977
+ *
6904
6978
  * **Example** (Running synchronously with services as Exit)
6905
6979
  *
6906
6980
  * ```ts
@@ -6934,7 +7008,7 @@ export const runSyncExit = internal.runSyncExit;
6934
7008
  * // Success: 42
6935
7009
  * ```
6936
7010
  *
6937
- * @category running effects
7011
+ * @category running
6938
7012
  * @since 4.0.0
6939
7013
  */
6940
7014
  export const runSyncExitWith = internal.runSyncExitWith;
@@ -7714,13 +7788,10 @@ export class Transaction extends /*#__PURE__*/Context.Service()("effect/Effect/T
7714
7788
  * If called inside an active transaction, `tx` composes with the current transaction and reuses
7715
7789
  * its journal and retry state instead of creating a nested boundary.
7716
7790
  *
7717
- * In Effect transactions are optimistic with retry, that means transactions are retried when:
7718
- *
7719
- * - the body of the transaction explicitely calls to `Effect.txRetry` and any of the
7720
- * accessed transactional values changes.
7721
- *
7722
- * - any of the accessed transactional values change during the execution of the transaction
7723
- * due to a different transaction committing before the current.
7791
+ * Effect transactions are optimistic with retry. A transaction is retried when
7792
+ * its body explicitly calls `Effect.txRetry` and any accessed transactional
7793
+ * value changes, or when any accessed transactional value changes because a
7794
+ * different transaction commits before the current one.
7724
7795
  *
7725
7796
  * The outermost `tx` call creates the transaction boundary and commits or rolls back the full
7726
7797
  * composed transaction.
@@ -8032,11 +8103,8 @@ export const satisfiesServicesType = () => effect => effect;
8032
8103
  *
8033
8104
  * **Details**
8034
8105
  *
8035
- * Behavior:
8036
- *
8037
- * - For **Success effects**: Applies the mapping function immediately to the value
8038
- * - For **Failure effects**: Returns the failure as-is without applying the mapping
8039
- * - For **Pending effects**: Falls back to the regular `map` behavior
8106
+ * Success effects apply the mapping function immediately. Failure effects pass
8107
+ * through unchanged, and pending effects fall back to regular `map` behavior.
8040
8108
  *
8041
8109
  * **Example** (Mapping already completed effects)
8042
8110
  *
@@ -8067,11 +8135,9 @@ export const mapEager = internal.mapEager;
8067
8135
  *
8068
8136
  * **Details**
8069
8137
  *
8070
- * Behavior:
8071
- *
8072
- * - For **Success effects**: Returns the success as-is (no error to transform)
8073
- * - For **Failure effects**: Applies the mapping function immediately to the error
8074
- * - For **Pending effects**: Falls back to the regular `mapError` behavior
8138
+ * Success effects pass through unchanged because there is no error to
8139
+ * transform. Failure effects apply the mapping function immediately, and
8140
+ * pending effects fall back to regular `mapError` behavior.
8075
8141
  *
8076
8142
  * **Example** (Mapping errors eagerly when possible)
8077
8143
  *
@@ -8104,11 +8170,9 @@ export const mapErrorEager = internal.mapErrorEager;
8104
8170
  *
8105
8171
  * **Details**
8106
8172
  *
8107
- * Behavior:
8108
- *
8109
- * - For **Success effects**: Applies the `onSuccess` function immediately to the value
8110
- * - For **Failure effects**: Applies the `onFailure` function immediately to the error
8111
- * - For **Pending effects**: Falls back to the regular `mapBoth` behavior
8173
+ * Success effects apply `onSuccess` immediately, and failure effects apply
8174
+ * `onFailure` immediately. Pending effects fall back to regular `mapBoth`
8175
+ * behavior.
8112
8176
  *
8113
8177
  * **Example** (Mapping both channels eagerly when possible)
8114
8178
  *
@@ -8143,11 +8207,9 @@ export const mapBothEager = internal.mapBothEager;
8143
8207
  *
8144
8208
  * **Details**
8145
8209
  *
8146
- * Behavior:
8147
- *
8148
- * - For **Success effects**: Applies the flatMap function immediately to the value
8149
- * - For **Failure effects**: Returns the failure as-is without applying the flatMap
8150
- * - For **Pending effects**: Falls back to the regular `flatMap` behavior
8210
+ * Success effects apply the flatMap function immediately. Failure effects pass
8211
+ * through unchanged, and pending effects fall back to regular `flatMap`
8212
+ * behavior.
8151
8213
  *
8152
8214
  * **Example** (Flat mapping eagerly when possible)
8153
8215
  *
@@ -8180,11 +8242,9 @@ export const flatMapEager = internal.flatMapEager;
8180
8242
  *
8181
8243
  * **Details**
8182
8244
  *
8183
- * Behavior:
8184
- *
8185
- * - For **Success effects**: Returns the success as-is (no error to catch)
8186
- * - For **Failure effects**: Applies the catch function immediately to the error
8187
- * - For **Pending effects**: Falls back to the regular `catch` behavior
8245
+ * Success effects pass through unchanged because there is no error to catch.
8246
+ * Failure effects apply the catch function immediately, and pending effects
8247
+ * fall back to regular `catch` behavior.
8188
8248
  *
8189
8249
  * **Example** (Catching failures eagerly when possible)
8190
8250
  *