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
@@ -56,34 +56,36 @@ import * as Option from "../../Option.ts"
56
56
  import * as Predicate from "../../Predicate.ts"
57
57
  import * as Rec from "../../Record.ts"
58
58
  import * as Schema from "../../Schema.ts"
59
- import * as AST from "../../SchemaAST.ts"
60
- import * as Transformation from "../../SchemaTransformation.ts"
59
+ import * as SchemaAST from "../../SchemaAST.ts"
60
+ import * as SchemaTransformation from "../../SchemaTransformation.ts"
61
61
  import * as Tool from "./Tool.ts"
62
62
 
63
63
  /**
64
- * Transforms a `Schema.Codec` into a form compatible with OpenAI's structured output constraints.
64
+ * Converts a `Schema.Codec` to OpenAI structured-output JSON Schema and a
65
+ * matching codec for model output.
66
+ *
67
+ * **When to use**
68
+ *
69
+ * Use when you send Effect Schema-backed structured output requests to OpenAI
70
+ * and need provider-compatible JSON Schema without losing the decoded
71
+ * application type.
65
72
  *
66
73
  * **Details**
67
74
  *
68
- * The transformation walks the schema AST and rewrites constructs that
69
- * OpenAI does not support natively:
75
+ * Returns the JSON Schema to include in the request and the codec to use when
76
+ * decoding the model response. If the input schema already fits OpenAI's
77
+ * supported JSON Schema subset, the original codec is returned unchanged.
70
78
  *
71
- * - **Tuples** are converted to objects with numeric string keys (e.g.
72
- * `"0"`, `"1"`) since OpenAI does not support tuple schemas. Rest
73
- * elements are placed under a `"__rest__"` key.
74
- * - **Optional properties** are replaced with `T | null` unions, because
75
- * OpenAI requires all properties to be present.
76
- * - **Records** (index signatures) are converted to arrays of `[key, value]`
77
- * pairs.
78
- * - **`oneOf` unions** are rewritten as `anyOf` unions.
79
- * - **Regex patterns** from multiple filters are merged into a single
80
- * `pattern` using lookaheads, since OpenAI does not support `allOf`.
81
- * - **Filters and annotations** are preserved where compatible (e.g.
82
- * `description`, supported `format` values like `"date-time"`, `"email"`,
83
- * `"uuid"`, etc.), and stripped otherwise.
79
+ * **Gotchas**
84
80
  *
85
- * If the schema is already compatible, the original codec is returned
86
- * unchanged.
81
+ * - Some schemas use a provider-safe encoded shape: tuples become objects with
82
+ * numeric string keys, records become arrays of `[key, value]` pairs, and
83
+ * optional properties become required nullable properties.
84
+ * - `oneOf` unions are emitted as `anyOf` unions.
85
+ * - Regex patterns from multiple filters are merged into one `pattern` because
86
+ * OpenAI structured output does not support `allOf`.
87
+ * - Unsupported schema kinds throw during conversion instead of producing a
88
+ * lossy schema.
87
89
  *
88
90
  * @category Codec Transformation
89
91
  * @since 4.0.0
@@ -95,8 +97,10 @@ export function toCodecOpenAI<T, E, RD, RE>(
95
97
  jsonSchema: JsonSchema.JsonSchema
96
98
  } {
97
99
  const to = schema.ast
98
- const from = recurOpenAI(AST.toEncoded(to))
99
- const codec = from === to ? schema : Schema.make<typeof schema>(AST.decodeTo(from, to, Transformation.passthrough()))
100
+ const from = recurOpenAI(SchemaAST.toEncoded(to))
101
+ const codec = from === to
102
+ ? schema
103
+ : Schema.make<typeof schema>(SchemaAST.decodeTo(from, to, SchemaTransformation.passthrough()))
100
104
  const document = JsonSchema.resolveTopLevel$ref(Schema.toJsonSchemaDocument(codec))
101
105
  const jsonSchema = rewriteOpenAI(document.schema)
102
106
  if (Object.keys(document.definitions).length > 0) {
@@ -136,7 +140,7 @@ function rewriteOpenAI(schema: JsonSchema.JsonSchema): JsonSchema.JsonSchema {
136
140
  return out
137
141
  }
138
142
 
139
- function recurOpenAI(ast: AST.AST): AST.AST {
143
+ function recurOpenAI(ast: SchemaAST.AST): SchemaAST.AST {
140
144
  switch (ast._tag) {
141
145
  case "Declaration":
142
146
  case "Void":
@@ -163,14 +167,14 @@ function recurOpenAI(ast: AST.AST): AST.AST {
163
167
  case "String": {
164
168
  const { annotations, filters } = get(ast)
165
169
  if (annotations !== undefined || filters !== undefined) {
166
- return new AST.String(annotations, filters)
170
+ return new SchemaAST.String(annotations, filters)
167
171
  }
168
172
  return ast
169
173
  }
170
174
  case "Number": {
171
175
  const { annotations, filters } = get(ast)
172
176
  if (annotations !== undefined || filters !== undefined) {
173
- return new AST.Number(annotations, filters)
177
+ return new SchemaAST.Number(annotations, filters)
174
178
  }
175
179
  return ast
176
180
  }
@@ -181,7 +185,7 @@ function recurOpenAI(ast: AST.AST): AST.AST {
181
185
  if (typeof literal === "string" || typeof literal === "number" || typeof literal === "boolean") {
182
186
  const { annotations, filters } = get(ast)
183
187
  if (annotations !== undefined || filters !== undefined) {
184
- return new AST.Literal(ast.literal, annotations, filters)
188
+ return new SchemaAST.Literal(ast.literal, annotations, filters)
185
189
  }
186
190
  return ast
187
191
  }
@@ -193,12 +197,12 @@ function recurOpenAI(ast: AST.AST): AST.AST {
193
197
  }
194
198
  case "Union": {
195
199
  if (ast.mode === "oneOf") {
196
- return new AST.Union(ast.types, "anyOf", ast.annotations, ast.checks)
200
+ return new SchemaAST.Union(ast.types, "anyOf", ast.annotations, ast.checks)
197
201
  }
198
- const types = AST.mapOrSame(ast.types, recurOpenAI)
202
+ const types = SchemaAST.mapOrSame(ast.types, recurOpenAI)
199
203
  const { annotations, filters } = get(ast)
200
204
  if (types !== ast.types || annotations !== undefined || filters !== undefined) {
201
- return new AST.Union(types, "anyOf", annotations, filters)
205
+ return new SchemaAST.Union(types, "anyOf", annotations, filters)
202
206
  }
203
207
  return ast
204
208
  }
@@ -218,15 +222,17 @@ function recurOpenAI(ast: AST.AST): AST.AST {
218
222
  annotations.description = TUPLE_DESCRIPTION
219
223
  }
220
224
  const propertySignatures = ast.elements.map((e, i) => {
221
- return new AST.PropertySignature(String(i), e)
225
+ return new SchemaAST.PropertySignature(String(i), e)
222
226
  })
223
227
  if (ast.rest.length === 1) {
224
- propertySignatures.push(new AST.PropertySignature(REST_PROPERTY_NAME, new AST.Arrays(false, [], ast.rest)))
228
+ propertySignatures.push(
229
+ new SchemaAST.PropertySignature(REST_PROPERTY_NAME, new SchemaAST.Arrays(false, [], ast.rest))
230
+ )
225
231
  }
226
- return AST.decodeTo(
227
- recurOpenAI(new AST.Objects(propertySignatures, [], annotations, filters)),
232
+ return SchemaAST.decodeTo(
233
+ recurOpenAI(new SchemaAST.Objects(propertySignatures, [], annotations, filters)),
228
234
  ast,
229
- Transformation.transform({
235
+ SchemaTransformation.transform({
230
236
  decode: (o) => {
231
237
  let t: Array<unknown> = []
232
238
  for (let i = 0; i < ast.elements.length; i++) {
@@ -255,9 +261,9 @@ function recurOpenAI(ast: AST.AST): AST.AST {
255
261
  })
256
262
  )
257
263
  } else {
258
- const rest = AST.mapOrSame(ast.rest, recurOpenAI)
264
+ const rest = SchemaAST.mapOrSame(ast.rest, recurOpenAI)
259
265
  if (rest !== ast.rest || annotations !== undefined || filters !== undefined) {
260
- return new AST.Arrays(false, [], rest, annotations, filters)
266
+ return new SchemaAST.Arrays(false, [], rest, annotations, filters)
261
267
  }
262
268
  return ast
263
269
  }
@@ -265,7 +271,7 @@ function recurOpenAI(ast: AST.AST): AST.AST {
265
271
  case "Objects": {
266
272
  let { annotations, filters } = get(ast)
267
273
  if (ast.indexSignatures.length === 0) {
268
- const propertySignatures = AST.mapOrSame(ast.propertySignatures, (ps) => {
274
+ const propertySignatures = SchemaAST.mapOrSame(ast.propertySignatures, (ps) => {
269
275
  if (typeof ps.name !== "string") {
270
276
  throw new Error(
271
277
  `${errorPrefix}: Property names must be strings (got ${typeof ps.name})`
@@ -273,11 +279,11 @@ function recurOpenAI(ast: AST.AST): AST.AST {
273
279
  }
274
280
  let type = recurOpenAI(ps.type)
275
281
  // optional properties are not supported by OpenAI, so we translate them to nullable unions
276
- if (AST.isOptional(ps.type)) {
277
- type = AST.decodeTo(
278
- new AST.Union([type, AST.null], "anyOf"),
279
- AST.optionalKey(type),
280
- Transformation.transformOptional({
282
+ if (SchemaAST.isOptional(ps.type)) {
283
+ type = SchemaAST.decodeTo(
284
+ new SchemaAST.Union([type, SchemaAST.null], "anyOf"),
285
+ SchemaAST.optionalKey(type),
286
+ SchemaTransformation.transformOptional({
281
287
  decode: Option.filter(Predicate.isNotNull),
282
288
  encode: Option.orElseSome(() => null)
283
289
  })
@@ -286,12 +292,12 @@ function recurOpenAI(ast: AST.AST): AST.AST {
286
292
  if (type === ps.type) {
287
293
  return ps
288
294
  }
289
- return new AST.PropertySignature(ps.name, type)
295
+ return new SchemaAST.PropertySignature(ps.name, type)
290
296
  })
291
297
  if (
292
298
  propertySignatures !== ast.propertySignatures || annotations !== undefined || filters !== undefined
293
299
  ) {
294
- return new AST.Objects(propertySignatures, [], annotations, filters)
300
+ return new SchemaAST.Objects(propertySignatures, [], annotations, filters)
295
301
  }
296
302
  } else if (ast.indexSignatures.length === 1 && ast.propertySignatures.length === 0) {
297
303
  const is = ast.indexSignatures[0]
@@ -305,10 +311,12 @@ function recurOpenAI(ast: AST.AST): AST.AST {
305
311
  annotations ??= {}
306
312
  annotations.description = RECORD_DESCRIPTION
307
313
  }
308
- return AST.decodeTo(
309
- recurOpenAI(new AST.Arrays(false, [], [new AST.Arrays(false, [is.parameter, is.type], [])], annotations)),
314
+ return SchemaAST.decodeTo(
315
+ recurOpenAI(
316
+ new SchemaAST.Arrays(false, [], [new SchemaAST.Arrays(false, [is.parameter, is.type], [])], annotations)
317
+ ),
310
318
  ast,
311
- Transformation.transform({
319
+ SchemaTransformation.transform({
312
320
  decode: Object.fromEntries,
313
321
  encode: Object.entries
314
322
  })
@@ -324,18 +332,18 @@ function recurOpenAI(ast: AST.AST): AST.AST {
324
332
  const cached = cache.get(ast)
325
333
  if (cached) return cached
326
334
  const { annotations, filters } = get(ast)
327
- const out = new AST.Suspend(() => recurOpenAI(ast.thunk()), annotations, filters)
335
+ const out = new SchemaAST.Suspend(() => recurOpenAI(ast.thunk()), annotations, filters)
328
336
  cache.set(ast, out)
329
337
  return out
330
338
  }
331
339
  }
332
340
  }
333
341
 
334
- const cache = new Map<AST.AST, AST.AST>()
342
+ const cache = new Map<SchemaAST.AST, SchemaAST.AST>()
335
343
 
336
344
  const errorPrefix = "OpenAiStructuredOutput"
337
345
 
338
- function unsupportedAst(ast: AST.AST, details?: string): never {
346
+ function unsupportedAst(ast: SchemaAST.AST, details?: string): never {
339
347
  const base = `Unsupported AST ${ast._tag}`
340
348
  const full = `${errorPrefix}: ${base}`
341
349
  throw new Error(details !== undefined ? `${full} (${details})` : full)
@@ -355,17 +363,17 @@ type Annotation =
355
363
 
356
364
  type Filter =
357
365
  | Annotation
358
- | { readonly _tag: "filter"; readonly filter: AST.Filter<any> }
366
+ | { readonly _tag: "filter"; readonly filter: SchemaAST.Filter<any> }
359
367
  | { readonly _tag: "regex"; readonly source: string }
360
368
 
361
- const get = (ast: AST.AST): {
369
+ const get = (ast: SchemaAST.AST): {
362
370
  annotations: Record<string, string> | undefined
363
- filters: [AST.Check<any>, ...AST.Check<any>[]] | undefined
371
+ filters: [SchemaAST.Check<any>, ...SchemaAST.Check<any>[]] | undefined
364
372
  } => {
365
373
  const annotations: Record<string, string> = {}
366
- const filters: Array<AST.Filter<any>> = []
374
+ const filters: Array<SchemaAST.Filter<any>> = []
367
375
  const regexSources: Array<string> = []
368
- const checks = getChecks(ast, AST.isArrays(ast))
376
+ const checks = getChecks(ast, SchemaAST.isArrays(ast))
369
377
  if (checks.length > 0) {
370
378
  for (const check of checks) {
371
379
  switch (check._tag) {
@@ -394,10 +402,10 @@ const get = (ast: AST.AST): {
394
402
  }
395
403
  // OpenAI does not support allOf, so we merge multiple regex patterns into a single isPattern filter
396
404
  if (regexSources.length === 1) {
397
- filters.push(AST.isPattern(new RegExp(regexSources[0])))
405
+ filters.push(SchemaAST.isPattern(new RegExp(regexSources[0])))
398
406
  } else if (regexSources.length > 1) {
399
407
  const combined = regexSources.map((s) => `(?=[\\s\\S]*?(?:${s}))`).join("")
400
- filters.push(AST.isPattern(new RegExp(`^${combined}`)))
408
+ filters.push(SchemaAST.isPattern(new RegExp(`^${combined}`)))
401
409
  }
402
410
  return {
403
411
  annotations: Object.keys(annotations).length > 0 ? annotations : undefined,
@@ -405,7 +413,7 @@ const get = (ast: AST.AST): {
405
413
  }
406
414
  }
407
415
 
408
- const getChecks = (ast: AST.AST, isArray: boolean): Array<Filter> => [
416
+ const getChecks = (ast: SchemaAST.AST, isArray: boolean): Array<Filter> => [
409
417
  ...(ast.checks !== undefined ? getFilters(ast.checks, isArray) : []),
410
418
  ...getAnnotations(ast.annotations)
411
419
  ]
@@ -432,7 +440,7 @@ const getAnnotations = (annotations: Schema.Annotations.Filter | undefined): Arr
432
440
  return out
433
441
  }
434
442
 
435
- function getFilter(filter: AST.Filter<any>, isArray: boolean): Array<Filter> {
443
+ function getFilter(filter: SchemaAST.Filter<any>, isArray: boolean): Array<Filter> {
436
444
  let out: Array<Filter> = []
437
445
  const annotations = getAnnotations(filter.annotations)
438
446
  const meta = filter.annotations?.meta
@@ -471,7 +479,7 @@ function getFilter(filter: AST.Filter<any>, isArray: boolean): Array<Filter> {
471
479
  return out
472
480
  }
473
481
 
474
- function resetFilter(filter: AST.Filter<any>): AST.Filter<any> {
482
+ function resetFilter(filter: SchemaAST.Filter<any>): SchemaAST.Filter<any> {
475
483
  return filter.annotate({
476
484
  description: undefined,
477
485
  expected: undefined,
@@ -480,7 +488,10 @@ function resetFilter(filter: AST.Filter<any>): AST.Filter<any> {
480
488
  })
481
489
  }
482
490
 
483
- function getFilters(checks: readonly [AST.Check<any>, ...AST.Check<any>[]], isArray: boolean): Array<Filter> {
491
+ function getFilters(
492
+ checks: readonly [SchemaAST.Check<any>, ...SchemaAST.Check<any>[]],
493
+ isArray: boolean
494
+ ): Array<Filter> {
484
495
  return checks.flatMap((check) => {
485
496
  switch (check._tag) {
486
497
  case "Filter":
@@ -61,7 +61,7 @@ import { type Pipeable, pipeArguments } from "../../Pipeable.ts"
61
61
  import * as Predicate from "../../Predicate.ts"
62
62
  import * as Schema from "../../Schema.ts"
63
63
  import * as SchemaIssue from "../../SchemaIssue.ts"
64
- import * as Parser from "../../SchemaParser.ts"
64
+ import * as SchemaParser from "../../SchemaParser.ts"
65
65
  import * as SchemaTransformation from "../../SchemaTransformation.ts"
66
66
  import type * as Response from "./Response.ts"
67
67
 
@@ -78,7 +78,7 @@ import type * as Response from "./Response.ts"
78
78
  * Provider-specific options are keyed by provider-specific names, and each
79
79
  * value is JSON or `null`.
80
80
  *
81
- * @category models
81
+ * @category options
82
82
  * @since 4.0.0
83
83
  */
84
84
  export const ProviderOptions: Schema.$Record<
@@ -90,7 +90,7 @@ export const ProviderOptions: Schema.$Record<
90
90
  * Type of provider-specific options that can be attached to prompt messages
91
91
  * and content parts.
92
92
  *
93
- * @category models
93
+ * @category options
94
94
  * @since 4.0.0
95
95
  */
96
96
  export type ProviderOptions = typeof ProviderOptions.Type
@@ -239,7 +239,7 @@ export const makePart = <const Type extends Part["type"]>(
239
239
  * A utility type for specifying the parameters required to construct a
240
240
  * specific part of a prompt.
241
241
  *
242
- * @category Utility Types
242
+ * @category utility types
243
243
  * @since 4.0.0
244
244
  */
245
245
  export type PartConstructorParams<P extends Part> = Omit<P, typeof PartTypeId | "type" | "options"> & {
@@ -298,7 +298,7 @@ export interface TextPartEncoded extends BasePartEncoded<"text", TextPartOptions
298
298
  * Represents provider-specific options that can be associated with a
299
299
  * `TextPart` through module augmentation.
300
300
  *
301
- * @category ProviderOptions
301
+ * @category options
302
302
  * @since 4.0.0
303
303
  */
304
304
  export interface TextPartOptions extends ProviderOptions {}
@@ -381,7 +381,7 @@ export interface ReasoningPartEncoded extends BasePartEncoded<"reasoning", Reaso
381
381
  * Represents provider-specific options that can be associated with a
382
382
  * `ReasoningPart` through module augmentation.
383
383
  *
384
- * @category ProviderOptions
384
+ * @category options
385
385
  * @since 4.0.0
386
386
  */
387
387
  export interface ReasoningPartOptions extends ProviderOptions {}
@@ -490,7 +490,7 @@ export interface FilePartEncoded extends BasePartEncoded<"file", FilePartOptions
490
490
  * Represents provider-specific options that can be associated with a
491
491
  * `FilePart` through module augmentation.
492
492
  *
493
- * @category ProviderOptions
493
+ * @category options
494
494
  * @since 4.0.0
495
495
  */
496
496
  export interface FilePartOptions extends ProviderOptions {}
@@ -607,7 +607,7 @@ export interface ToolCallPartEncoded extends BasePartEncoded<"tool-call", ToolCa
607
607
  * Represents provider-specific options that can be associated with a
608
608
  * `ToolCallPart` through module augmentation.
609
609
  *
610
- * @category ProviderOptions
610
+ * @category options
611
611
  * @since 4.0.0
612
612
  */
613
613
  export interface ToolCallPartOptions extends ProviderOptions {}
@@ -724,7 +724,7 @@ export interface ToolResultPartEncoded extends BasePartEncoded<"tool-result", To
724
724
  * Represents provider-specific options that can be associated with a
725
725
  * `ToolResultPart` through module augmentation.
726
726
  *
727
- * @category ProviderOptions
727
+ * @category options
728
728
  * @since 4.0.0
729
729
  */
730
730
  export interface ToolResultPartOptions extends ProviderOptions {}
@@ -775,8 +775,8 @@ export const toolResultPart = (params: PartConstructorParams<ToolResultPart>): T
775
775
  *
776
776
  * **When to use**
777
777
  *
778
- * Use when you use this part in tool messages to approve or deny tool execution when tools
779
- * have the `needsApproval` property set.
778
+ * Use when tool messages must approve or deny tool execution for tools with the
779
+ * `needsApproval` property set.
780
780
  *
781
781
  * **Example** (Creating tool approval responses)
782
782
  *
@@ -846,7 +846,7 @@ export interface ToolApprovalResponsePartEncoded
846
846
  * Represents provider-specific options that can be associated with a
847
847
  * `ToolApprovalResponsePart` through module augmentation.
848
848
  *
849
- * @category ProviderOptions
849
+ * @category options
850
850
  * @since 4.0.0
851
851
  */
852
852
  export interface ToolApprovalResponsePartOptions extends ProviderOptions {}
@@ -951,7 +951,7 @@ export interface ToolApprovalRequestPartEncoded
951
951
  * Represents provider-specific options that can be associated with a
952
952
  * `ToolApprovalRequestPart` through module augmentation.
953
953
  *
954
- * @category ProviderOptions
954
+ * @category options
955
955
  * @since 4.0.0
956
956
  */
957
957
  export interface ToolApprovalRequestPartOptions extends ProviderOptions {}
@@ -1087,7 +1087,7 @@ export const makeMessage = <const Role extends Message["role"]>(
1087
1087
  * A utility type for specifying the parameters required to construct a
1088
1088
  * specific message for a prompt.
1089
1089
  *
1090
- * @category Utility Types
1090
+ * @category utility types
1091
1091
  * @since 4.0.0
1092
1092
  */
1093
1093
  export type MessageConstructorParams<M extends Message> = Omit<M, typeof MessageTypeId | "role" | "options"> & {
@@ -1176,7 +1176,7 @@ export interface SystemMessageEncoded extends BaseMessageEncoded<"system", Syste
1176
1176
  * Represents provider-specific options that can be associated with a
1177
1177
  * `SystemMessage` through module augmentation.
1178
1178
  *
1179
- * @category ProviderOptions
1179
+ * @category options
1180
1180
  * @since 4.0.0
1181
1181
  */
1182
1182
  export interface SystemMessageOptions extends ProviderOptions {}
@@ -1289,7 +1289,7 @@ export type UserMessagePartEncoded = TextPartEncoded | FilePartEncoded
1289
1289
  * Represents provider-specific options that can be associated with a
1290
1290
  * `UserMessage` through module augmentation.
1291
1291
  *
1292
- * @category ProviderOptions
1292
+ * @category options
1293
1293
  * @since 4.0.0
1294
1294
  */
1295
1295
  export interface UserMessageOptions extends ProviderOptions {}
@@ -1475,7 +1475,7 @@ export type AssistantMessagePartEncoded =
1475
1475
  * Represents provider-specific options that can be associated with a
1476
1476
  * `AssistantMessage` through module augmentation.
1477
1477
  *
1478
- * @category ProviderOptions
1478
+ * @category options
1479
1479
  * @since 4.0.0
1480
1480
  */
1481
1481
  export interface AssistantMessageOptions extends ProviderOptions {}
@@ -1644,7 +1644,7 @@ export type ToolMessagePartEncoded = ToolResultPartEncoded | ToolApprovalRespons
1644
1644
  * Represents provider-specific options that can be associated with a
1645
1645
  * `ToolMessage` through module augmentation.
1646
1646
  *
1647
- * @category ProviderOptions
1647
+ * @category options
1648
1648
  * @since 4.0.0
1649
1649
  */
1650
1650
  export interface ToolMessageOptions extends ProviderOptions {}
@@ -1783,7 +1783,7 @@ export const Prompt: Schema.Codec<Prompt, PromptEncoded> = Schema.Struct({
1783
1783
  SchemaTransformation.transformOrFail({
1784
1784
  decode: (input) =>
1785
1785
  Effect.mapBothEager(
1786
- Parser.decodeEffect(Schema.Array(Message))(input.content),
1786
+ SchemaParser.decodeEffect(Schema.Array(Message))(input.content),
1787
1787
  {
1788
1788
  onSuccess: makePrompt,
1789
1789
  onFailure: () =>
@@ -1792,7 +1792,7 @@ export const Prompt: Schema.Codec<Prompt, PromptEncoded> = Schema.Struct({
1792
1792
  ),
1793
1793
  encode: (prompt) =>
1794
1794
  Effect.mapBothEager(
1795
- Parser.encodeEffect(Schema.Array(Message))(prompt.content),
1795
+ SchemaParser.encodeEffect(Schema.Array(Message))(prompt.content),
1796
1796
  {
1797
1797
  onSuccess: (messages) => ({ content: messages }),
1798
1798
  onFailure: () =>
@@ -83,8 +83,9 @@ export interface Service {
83
83
  *
84
84
  * **When to use**
85
85
  *
86
- * Use when when provided, language model operations can use the tracker to send only new
87
- * prompt messages together with the provider's prior response ID.
86
+ * Use when you provide a language model with previous-response ID tracking so
87
+ * later calls can send only new prompt messages together with the provider's
88
+ * prior response ID.
88
89
  *
89
90
  * @category services
90
91
  * @since 4.0.0
@@ -335,7 +335,7 @@ export type FormatAttributeName<T extends string | number | symbol> = T extends
335
335
  * // Results in attributes: "custom.ai.model_name" and "custom.ai.max_tokens"
336
336
  * ```
337
337
  *
338
- * @category utils
338
+ * @category annotations
339
339
  * @since 4.0.0
340
340
  */
341
341
  export const addSpanAttributes = (
@@ -407,7 +407,7 @@ const addSpanUsageAttributes = addSpanAttributes("gen_ai.usage", String.camelToS
407
407
  * }
408
408
  * ```
409
409
  *
410
- * @category models
410
+ * @category options
411
411
  * @since 4.0.0
412
412
  */
413
413
  export type GenAITelemetryAttributeOptions = BaseAttributes & {
@@ -436,10 +436,15 @@ export type GenAITelemetryAttributeOptions = BaseAttributes & {
436
436
  /**
437
437
  * Applies GenAI telemetry attributes to an OpenTelemetry span.
438
438
  *
439
+ * **When to use**
440
+ *
441
+ * Use when you need to write GenAI request, response, token, or usage
442
+ * attributes onto an existing OpenTelemetry span.
443
+ *
439
444
  * **Details**
440
445
  *
441
- * This function adds standardized GenAI attributes to a span following OpenTelemetry
442
- * semantic conventions. It supports both curried and direct application patterns.
446
+ * This function adds standardized GenAI attributes to a span following
447
+ * OpenTelemetry semantic conventions.
443
448
  *
444
449
  * **Gotchas**
445
450
  *
@@ -462,17 +467,22 @@ export type GenAITelemetryAttributeOptions = BaseAttributes & {
462
467
  * })
463
468
  * ```
464
469
  *
465
- * @category utils
470
+ * @category annotations
466
471
  * @since 4.0.0
467
472
  */
468
473
  export const addGenAIAnnotations: {
469
474
  /**
470
475
  * Applies GenAI telemetry attributes to an OpenTelemetry span.
471
476
  *
477
+ * **When to use**
478
+ *
479
+ * Use when you need to write GenAI request, response, token, or usage
480
+ * attributes onto an existing OpenTelemetry span.
481
+ *
472
482
  * **Details**
473
483
  *
474
- * This function adds standardized GenAI attributes to a span following OpenTelemetry
475
- * semantic conventions. It supports both curried and direct application patterns.
484
+ * This function adds standardized GenAI attributes to a span following
485
+ * OpenTelemetry semantic conventions.
476
486
  *
477
487
  * **Gotchas**
478
488
  *
@@ -495,17 +505,22 @@ export const addGenAIAnnotations: {
495
505
  * })
496
506
  * ```
497
507
  *
498
- * @category utils
508
+ * @category annotations
499
509
  * @since 4.0.0
500
510
  */
501
511
  (options: GenAITelemetryAttributeOptions): (span: Span) => void
502
512
  /**
503
513
  * Applies GenAI telemetry attributes to an OpenTelemetry span.
504
514
  *
515
+ * **When to use**
516
+ *
517
+ * Use when you need to write GenAI request, response, token, or usage
518
+ * attributes onto an existing OpenTelemetry span.
519
+ *
505
520
  * **Details**
506
521
  *
507
- * This function adds standardized GenAI attributes to a span following OpenTelemetry
508
- * semantic conventions. It supports both curried and direct application patterns.
522
+ * This function adds standardized GenAI attributes to a span following
523
+ * OpenTelemetry semantic conventions.
509
524
  *
510
525
  * **Gotchas**
511
526
  *
@@ -528,7 +543,7 @@ export const addGenAIAnnotations: {
528
543
  * })
529
544
  * ```
530
545
  *
531
- * @category utils
546
+ * @category annotations
532
547
  * @since 4.0.0
533
548
  */
534
549
  (span: Span, options: GenAITelemetryAttributeOptions): void
@@ -80,7 +80,7 @@ import * as Prompt from "./Prompt.ts"
80
80
  * })
81
81
  * ```
82
82
  *
83
- * @category tags
83
+ * @category services
84
84
  * @since 4.0.0
85
85
  */
86
86
  export class Tokenizer extends Context.Service<Tokenizer, Service>()(