effect 4.0.0-beta.74 → 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 (796) hide show
  1. package/dist/Array.d.ts +729 -611
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +273 -213
  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 +8 -8
  14. package/dist/Boolean.js +4 -4
  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 +219 -9
  24. package/dist/Channel.d.ts.map +1 -1
  25. package/dist/Channel.js +83 -3
  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 +69 -16
  30. package/dist/Chunk.d.ts.map +1 -1
  31. package/dist/Chunk.js +43 -8
  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 +60 -72
  50. package/dist/Context.d.ts.map +1 -1
  51. package/dist/Context.js +28 -32
  52. package/dist/Context.js.map +1 -1
  53. package/dist/Cron.d.ts +2 -2
  54. package/dist/Cron.js +2 -2
  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 +24 -15
  66. package/dist/Deferred.d.ts.map +1 -1
  67. package/dist/Deferred.js +8 -5
  68. package/dist/Deferred.js.map +1 -1
  69. package/dist/Duration.d.ts +44 -31
  70. package/dist/Duration.d.ts.map +1 -1
  71. package/dist/Duration.js +22 -11
  72. package/dist/Duration.js.map +1 -1
  73. package/dist/Effect.d.ts +516 -416
  74. package/dist/Effect.d.ts.map +1 -1
  75. package/dist/Effect.js +234 -174
  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 +26 -39
  82. package/dist/Equal.d.ts.map +1 -1
  83. package/dist/Equal.js +10 -17
  84. package/dist/Equal.js.map +1 -1
  85. package/dist/Equivalence.d.ts +71 -99
  86. package/dist/Equivalence.d.ts.map +1 -1
  87. package/dist/Equivalence.js +53 -73
  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/Exit.d.ts +79 -96
  92. package/dist/Exit.d.ts.map +1 -1
  93. package/dist/Exit.js +57 -64
  94. package/dist/Exit.js.map +1 -1
  95. package/dist/Fiber.d.ts +8 -6
  96. package/dist/Fiber.d.ts.map +1 -1
  97. package/dist/Fiber.js +8 -6
  98. package/dist/Fiber.js.map +1 -1
  99. package/dist/FiberHandle.d.ts +25 -0
  100. package/dist/FiberHandle.d.ts.map +1 -1
  101. package/dist/FiberHandle.js +15 -0
  102. package/dist/FiberHandle.js.map +1 -1
  103. package/dist/FiberMap.d.ts +35 -0
  104. package/dist/FiberMap.d.ts.map +1 -1
  105. package/dist/FiberMap.js +15 -0
  106. package/dist/FiberMap.js.map +1 -1
  107. package/dist/FiberSet.d.ts +20 -0
  108. package/dist/FiberSet.d.ts.map +1 -1
  109. package/dist/FiberSet.js +10 -0
  110. package/dist/FiberSet.js.map +1 -1
  111. package/dist/Filter.d.ts +4 -4
  112. package/dist/Filter.js +4 -4
  113. package/dist/Formatter.d.ts +14 -19
  114. package/dist/Formatter.d.ts.map +1 -1
  115. package/dist/Formatter.js +14 -19
  116. package/dist/Formatter.js.map +1 -1
  117. package/dist/Function.d.ts +15 -16
  118. package/dist/Function.d.ts.map +1 -1
  119. package/dist/Function.js +9 -10
  120. package/dist/Function.js.map +1 -1
  121. package/dist/Graph.d.ts +2 -2
  122. package/dist/Graph.js +2 -2
  123. package/dist/HKT.d.ts +2 -2
  124. package/dist/Hash.d.ts +2 -1
  125. package/dist/Hash.d.ts.map +1 -1
  126. package/dist/Hash.js +2 -1
  127. package/dist/Hash.js.map +1 -1
  128. package/dist/HashMap.d.ts +15 -0
  129. package/dist/HashMap.d.ts.map +1 -1
  130. package/dist/HashMap.js +5 -0
  131. package/dist/HashMap.js.map +1 -1
  132. package/dist/HashRing.d.ts +9 -9
  133. package/dist/HashRing.js +3 -3
  134. package/dist/Iterable.d.ts +24 -12
  135. package/dist/Iterable.d.ts.map +1 -1
  136. package/dist/Iterable.js +16 -6
  137. package/dist/Iterable.js.map +1 -1
  138. package/dist/JsonPatch.d.ts +2 -3
  139. package/dist/JsonPatch.d.ts.map +1 -1
  140. package/dist/JsonPatch.js +2 -3
  141. package/dist/JsonPatch.js.map +1 -1
  142. package/dist/JsonPointer.d.ts +2 -6
  143. package/dist/JsonPointer.d.ts.map +1 -1
  144. package/dist/JsonPointer.js +2 -6
  145. package/dist/JsonPointer.js.map +1 -1
  146. package/dist/JsonSchema.d.ts +17 -13
  147. package/dist/JsonSchema.d.ts.map +1 -1
  148. package/dist/JsonSchema.js +17 -13
  149. package/dist/JsonSchema.js.map +1 -1
  150. package/dist/Latch.d.ts +4 -3
  151. package/dist/Latch.d.ts.map +1 -1
  152. package/dist/Latch.js +4 -3
  153. package/dist/Latch.js.map +1 -1
  154. package/dist/Layer.d.ts +92 -114
  155. package/dist/Layer.d.ts.map +1 -1
  156. package/dist/Layer.js +38 -46
  157. package/dist/Layer.js.map +1 -1
  158. package/dist/Logger.d.ts +11 -14
  159. package/dist/Logger.d.ts.map +1 -1
  160. package/dist/Logger.js +11 -14
  161. package/dist/Logger.js.map +1 -1
  162. package/dist/Match.d.ts +2 -2
  163. package/dist/Match.js +2 -2
  164. package/dist/Metric.d.ts +89 -109
  165. package/dist/Metric.d.ts.map +1 -1
  166. package/dist/Metric.js +51 -61
  167. package/dist/Metric.js.map +1 -1
  168. package/dist/MutableHashMap.d.ts +21 -12
  169. package/dist/MutableHashMap.d.ts.map +1 -1
  170. package/dist/MutableHashMap.js +7 -4
  171. package/dist/MutableHashMap.js.map +1 -1
  172. package/dist/MutableList.d.ts +15 -0
  173. package/dist/MutableList.d.ts.map +1 -1
  174. package/dist/MutableList.js +15 -0
  175. package/dist/MutableList.js.map +1 -1
  176. package/dist/MutableRef.d.ts +56 -42
  177. package/dist/MutableRef.d.ts.map +1 -1
  178. package/dist/MutableRef.js +28 -22
  179. package/dist/MutableRef.js.map +1 -1
  180. package/dist/Newtype.d.ts +10 -7
  181. package/dist/Newtype.d.ts.map +1 -1
  182. package/dist/Newtype.js +10 -7
  183. package/dist/Newtype.js.map +1 -1
  184. package/dist/Number.d.ts +23 -11
  185. package/dist/Number.d.ts.map +1 -1
  186. package/dist/Number.js +9 -5
  187. package/dist/Number.js.map +1 -1
  188. package/dist/Optic.d.ts +16 -16
  189. package/dist/Optic.d.ts.map +1 -1
  190. package/dist/Optic.js +10 -9
  191. package/dist/Optic.js.map +1 -1
  192. package/dist/Option.d.ts +196 -168
  193. package/dist/Option.d.ts.map +1 -1
  194. package/dist/Option.js +96 -79
  195. package/dist/Option.js.map +1 -1
  196. package/dist/Order.d.ts +118 -179
  197. package/dist/Order.d.ts.map +1 -1
  198. package/dist/Order.js +92 -144
  199. package/dist/Order.js.map +1 -1
  200. package/dist/PartitionedSemaphore.d.ts +14 -14
  201. package/dist/PartitionedSemaphore.js +6 -6
  202. package/dist/Path.d.ts +2 -2
  203. package/dist/Path.js +2 -2
  204. package/dist/Pipeable.d.ts +2 -2
  205. package/dist/Pipeable.js +2 -2
  206. package/dist/PlatformError.d.ts +4 -4
  207. package/dist/PlatformError.js +4 -4
  208. package/dist/Pool.d.ts +7 -11
  209. package/dist/Pool.d.ts.map +1 -1
  210. package/dist/Pool.js +3 -5
  211. package/dist/Pool.js.map +1 -1
  212. package/dist/Predicate.d.ts +274 -263
  213. package/dist/Predicate.d.ts.map +1 -1
  214. package/dist/Predicate.js +128 -123
  215. package/dist/Predicate.js.map +1 -1
  216. package/dist/PubSub.d.ts +24 -14
  217. package/dist/PubSub.d.ts.map +1 -1
  218. package/dist/PubSub.js +16 -6
  219. package/dist/PubSub.js.map +1 -1
  220. package/dist/Pull.d.ts +4 -4
  221. package/dist/Pull.js +4 -4
  222. package/dist/Queue.d.ts +46 -7
  223. package/dist/Queue.d.ts.map +1 -1
  224. package/dist/Queue.js +46 -7
  225. package/dist/Queue.js.map +1 -1
  226. package/dist/RcRef.d.ts +0 -4
  227. package/dist/RcRef.d.ts.map +1 -1
  228. package/dist/RcRef.js.map +1 -1
  229. package/dist/Redactable.d.ts +2 -2
  230. package/dist/Redactable.js +2 -2
  231. package/dist/Redacted.d.ts +3 -3
  232. package/dist/Redacted.js +3 -3
  233. package/dist/Reducer.d.ts +2 -3
  234. package/dist/Reducer.d.ts.map +1 -1
  235. package/dist/Reducer.js +2 -3
  236. package/dist/Reducer.js.map +1 -1
  237. package/dist/Ref.d.ts +17 -16
  238. package/dist/Ref.d.ts.map +1 -1
  239. package/dist/Ref.js +15 -14
  240. package/dist/Ref.js.map +1 -1
  241. package/dist/References.d.ts +4 -4
  242. package/dist/References.js +4 -4
  243. package/dist/Request.d.ts +18 -18
  244. package/dist/Request.js +6 -6
  245. package/dist/Resource.d.ts +2 -2
  246. package/dist/Resource.js +2 -2
  247. package/dist/Result.d.ts +77 -33
  248. package/dist/Result.d.ts.map +1 -1
  249. package/dist/Result.js +42 -19
  250. package/dist/Result.js.map +1 -1
  251. package/dist/Runtime.d.ts +11 -8
  252. package/dist/Runtime.d.ts.map +1 -1
  253. package/dist/Runtime.js +11 -8
  254. package/dist/Runtime.js.map +1 -1
  255. package/dist/Schedule.d.ts +107 -45
  256. package/dist/Schedule.d.ts.map +1 -1
  257. package/dist/Schedule.js +41 -29
  258. package/dist/Schedule.js.map +1 -1
  259. package/dist/Scheduler.d.ts +6 -4
  260. package/dist/Scheduler.d.ts.map +1 -1
  261. package/dist/Scheduler.js +6 -4
  262. package/dist/Scheduler.js.map +1 -1
  263. package/dist/Schema.d.ts +443 -371
  264. package/dist/Schema.d.ts.map +1 -1
  265. package/dist/Schema.js +518 -427
  266. package/dist/Schema.js.map +1 -1
  267. package/dist/SchemaAST.d.ts +42 -21
  268. package/dist/SchemaAST.d.ts.map +1 -1
  269. package/dist/SchemaAST.js +80 -59
  270. package/dist/SchemaAST.js.map +1 -1
  271. package/dist/SchemaGetter.d.ts +126 -106
  272. package/dist/SchemaGetter.d.ts.map +1 -1
  273. package/dist/SchemaGetter.js +121 -101
  274. package/dist/SchemaGetter.js.map +1 -1
  275. package/dist/SchemaIssue.d.ts +37 -39
  276. package/dist/SchemaIssue.d.ts.map +1 -1
  277. package/dist/SchemaIssue.js +16 -17
  278. package/dist/SchemaIssue.js.map +1 -1
  279. package/dist/SchemaParser.d.ts +72 -153
  280. package/dist/SchemaParser.d.ts.map +1 -1
  281. package/dist/SchemaParser.js +72 -145
  282. package/dist/SchemaParser.js.map +1 -1
  283. package/dist/SchemaRepresentation.d.ts +30 -21
  284. package/dist/SchemaRepresentation.d.ts.map +1 -1
  285. package/dist/SchemaRepresentation.js +26 -22
  286. package/dist/SchemaRepresentation.js.map +1 -1
  287. package/dist/SchemaTransformation.d.ts +169 -145
  288. package/dist/SchemaTransformation.d.ts.map +1 -1
  289. package/dist/SchemaTransformation.js +183 -159
  290. package/dist/SchemaTransformation.js.map +1 -1
  291. package/dist/SchemaUtils.js +2 -2
  292. package/dist/SchemaUtils.js.map +1 -1
  293. package/dist/Scope.d.ts +15 -0
  294. package/dist/Scope.d.ts.map +1 -1
  295. package/dist/Scope.js +15 -0
  296. package/dist/Scope.js.map +1 -1
  297. package/dist/ScopedCache.d.ts +1 -1
  298. package/dist/ScopedCache.js +1 -1
  299. package/dist/ScopedRef.d.ts +14 -18
  300. package/dist/ScopedRef.d.ts.map +1 -1
  301. package/dist/ScopedRef.js +6 -8
  302. package/dist/ScopedRef.js.map +1 -1
  303. package/dist/Semaphore.d.ts +9 -9
  304. package/dist/Semaphore.js +3 -3
  305. package/dist/Sink.d.ts +13 -13
  306. package/dist/Sink.d.ts.map +1 -1
  307. package/dist/Sink.js +9 -9
  308. package/dist/Sink.js.map +1 -1
  309. package/dist/Stdio.d.ts +4 -5
  310. package/dist/Stdio.d.ts.map +1 -1
  311. package/dist/Stdio.js +4 -5
  312. package/dist/Stdio.js.map +1 -1
  313. package/dist/Stream.d.ts +321 -44
  314. package/dist/Stream.d.ts.map +1 -1
  315. package/dist/Stream.js +137 -22
  316. package/dist/Stream.js.map +1 -1
  317. package/dist/String.d.ts +6 -9
  318. package/dist/String.d.ts.map +1 -1
  319. package/dist/String.js +2 -3
  320. package/dist/String.js.map +1 -1
  321. package/dist/Struct.d.ts +15 -13
  322. package/dist/Struct.d.ts.map +1 -1
  323. package/dist/Struct.js +11 -9
  324. package/dist/Struct.js.map +1 -1
  325. package/dist/SubscriptionRef.d.ts +24 -19
  326. package/dist/SubscriptionRef.d.ts.map +1 -1
  327. package/dist/SubscriptionRef.js +12 -7
  328. package/dist/SubscriptionRef.js.map +1 -1
  329. package/dist/SynchronizedRef.d.ts +88 -63
  330. package/dist/SynchronizedRef.d.ts.map +1 -1
  331. package/dist/SynchronizedRef.js +32 -23
  332. package/dist/SynchronizedRef.js.map +1 -1
  333. package/dist/Tracer.d.ts +4 -4
  334. package/dist/Tracer.js +4 -4
  335. package/dist/Trie.d.ts +15 -0
  336. package/dist/Trie.d.ts.map +1 -1
  337. package/dist/Trie.js +5 -0
  338. package/dist/Trie.js.map +1 -1
  339. package/dist/Tuple.d.ts +25 -19
  340. package/dist/Tuple.d.ts.map +1 -1
  341. package/dist/Tuple.js +17 -13
  342. package/dist/Tuple.js.map +1 -1
  343. package/dist/TxReentrantLock.d.ts +6 -3
  344. package/dist/TxReentrantLock.d.ts.map +1 -1
  345. package/dist/TxReentrantLock.js +2 -1
  346. package/dist/TxReentrantLock.js.map +1 -1
  347. package/dist/TxRef.d.ts +16 -16
  348. package/dist/TxRef.js +8 -8
  349. package/dist/TxSubscriptionRef.d.ts +43 -27
  350. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  351. package/dist/TxSubscriptionRef.js +19 -13
  352. package/dist/TxSubscriptionRef.js.map +1 -1
  353. package/dist/Types.d.ts +12 -38
  354. package/dist/Types.d.ts.map +1 -1
  355. package/dist/Types.js +0 -2
  356. package/dist/UndefinedOr.d.ts +15 -14
  357. package/dist/UndefinedOr.d.ts.map +1 -1
  358. package/dist/UndefinedOr.js +11 -10
  359. package/dist/UndefinedOr.js.map +1 -1
  360. package/dist/Unify.d.ts +2 -2
  361. package/dist/internal/schema/annotations.js.map +1 -1
  362. package/dist/internal/schema/arbitrary.js +9 -9
  363. package/dist/internal/schema/arbitrary.js.map +1 -1
  364. package/dist/internal/schema/equivalence.js +9 -9
  365. package/dist/internal/schema/equivalence.js.map +1 -1
  366. package/dist/internal/schema/representation.js +14 -14
  367. package/dist/internal/schema/representation.js.map +1 -1
  368. package/dist/internal/schema/schema.js +11 -11
  369. package/dist/internal/schema/schema.js.map +1 -1
  370. package/dist/testing/TestSchema.d.ts +10 -10
  371. package/dist/testing/TestSchema.d.ts.map +1 -1
  372. package/dist/testing/TestSchema.js +9 -9
  373. package/dist/testing/TestSchema.js.map +1 -1
  374. package/dist/unstable/ai/AiError.d.ts +4 -2
  375. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  376. package/dist/unstable/ai/AiError.js +4 -2
  377. package/dist/unstable/ai/AiError.js.map +1 -1
  378. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +17 -20
  379. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  380. package/dist/unstable/ai/AnthropicStructuredOutput.js +36 -39
  381. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  382. package/dist/unstable/ai/Chat.d.ts +4 -5
  383. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  384. package/dist/unstable/ai/Chat.js +4 -5
  385. package/dist/unstable/ai/Chat.js.map +1 -1
  386. package/dist/unstable/ai/EmbeddingModel.d.ts +4 -4
  387. package/dist/unstable/ai/EmbeddingModel.js +4 -4
  388. package/dist/unstable/ai/IdGenerator.d.ts +2 -3
  389. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  390. package/dist/unstable/ai/IdGenerator.js +2 -3
  391. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  392. package/dist/unstable/ai/LanguageModel.d.ts +3 -2
  393. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  394. package/dist/unstable/ai/LanguageModel.js +5 -4
  395. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  396. package/dist/unstable/ai/McpSchema.d.ts +14 -12
  397. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  398. package/dist/unstable/ai/McpSchema.js +19 -17
  399. package/dist/unstable/ai/McpSchema.js.map +1 -1
  400. package/dist/unstable/ai/McpServer.d.ts +11 -4
  401. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  402. package/dist/unstable/ai/McpServer.js +8 -5
  403. package/dist/unstable/ai/McpServer.js.map +1 -1
  404. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +20 -18
  405. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  406. package/dist/unstable/ai/OpenAiStructuredOutput.js +45 -43
  407. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  408. package/dist/unstable/ai/Prompt.d.ts +2 -2
  409. package/dist/unstable/ai/Prompt.js +3 -3
  410. package/dist/unstable/ai/Prompt.js.map +1 -1
  411. package/dist/unstable/ai/ResponseIdTracker.d.ts +3 -2
  412. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
  413. package/dist/unstable/ai/ResponseIdTracker.js +3 -2
  414. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  415. package/dist/unstable/ai/Telemetry.d.ts +21 -6
  416. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  417. package/dist/unstable/ai/Telemetry.js +7 -2
  418. package/dist/unstable/ai/Telemetry.js.map +1 -1
  419. package/dist/unstable/ai/Tool.d.ts +7 -6
  420. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  421. package/dist/unstable/ai/Tool.js +8 -7
  422. package/dist/unstable/ai/Tool.js.map +1 -1
  423. package/dist/unstable/ai/Toolkit.d.ts +2 -2
  424. package/dist/unstable/ai/Toolkit.js +2 -2
  425. package/dist/unstable/cli/Command.d.ts +37 -16
  426. package/dist/unstable/cli/Command.d.ts.map +1 -1
  427. package/dist/unstable/cli/Command.js +15 -8
  428. package/dist/unstable/cli/Command.js.map +1 -1
  429. package/dist/unstable/cli/Completions.d.ts +1 -1
  430. package/dist/unstable/cli/Completions.js +1 -1
  431. package/dist/unstable/cli/Flag.d.ts +7 -6
  432. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  433. package/dist/unstable/cli/Flag.js +7 -6
  434. package/dist/unstable/cli/Flag.js.map +1 -1
  435. package/dist/unstable/cli/GlobalFlag.d.ts +6 -1
  436. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
  437. package/dist/unstable/cli/GlobalFlag.js +7 -2
  438. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  439. package/dist/unstable/cli/Param.d.ts +3 -3
  440. package/dist/unstable/cli/Param.d.ts.map +1 -1
  441. package/dist/unstable/cli/Param.js +13 -10
  442. package/dist/unstable/cli/Param.js.map +1 -1
  443. package/dist/unstable/cli/Primitive.d.ts +3 -2
  444. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  445. package/dist/unstable/cli/Primitive.js +3 -2
  446. package/dist/unstable/cli/Primitive.js.map +1 -1
  447. package/dist/unstable/cluster/ClusterCron.d.ts +1 -2
  448. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  449. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  450. package/dist/unstable/cluster/ClusterMetrics.d.ts +5 -0
  451. package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
  452. package/dist/unstable/cluster/ClusterMetrics.js +5 -0
  453. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  454. package/dist/unstable/cluster/ClusterSchema.d.ts +3 -3
  455. package/dist/unstable/cluster/ClusterSchema.js +3 -3
  456. package/dist/unstable/cluster/ClusterWorkflowEngine.js +15 -15
  457. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  458. package/dist/unstable/cluster/EntityResource.d.ts +10 -0
  459. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  460. package/dist/unstable/cluster/EntityResource.js +10 -0
  461. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  462. package/dist/unstable/cluster/Envelope.d.ts +2 -2
  463. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  464. package/dist/unstable/cluster/Envelope.js +2 -2
  465. package/dist/unstable/cluster/Envelope.js.map +1 -1
  466. package/dist/unstable/cluster/Reply.d.ts +2 -2
  467. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  468. package/dist/unstable/cluster/Reply.js +12 -12
  469. package/dist/unstable/cluster/Reply.js.map +1 -1
  470. package/dist/unstable/cluster/RunnerHealth.d.ts +2 -1
  471. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  472. package/dist/unstable/cluster/RunnerHealth.js +2 -1
  473. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  474. package/dist/unstable/cluster/RunnerServer.d.ts +2 -2
  475. package/dist/unstable/cluster/RunnerServer.js +2 -2
  476. package/dist/unstable/cluster/Runners.d.ts +3 -3
  477. package/dist/unstable/cluster/Runners.js +3 -3
  478. package/dist/unstable/cluster/ShardId.js +3 -3
  479. package/dist/unstable/cluster/ShardId.js.map +1 -1
  480. package/dist/unstable/cluster/Sharding.d.ts +3 -3
  481. package/dist/unstable/cluster/Sharding.js +3 -3
  482. package/dist/unstable/cluster/ShardingConfig.d.ts +4 -4
  483. package/dist/unstable/cluster/ShardingConfig.js +4 -4
  484. package/dist/unstable/cluster/Snowflake.d.ts +1 -1
  485. package/dist/unstable/cluster/Snowflake.js +3 -3
  486. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  487. package/dist/unstable/cluster/internal/entityManager.js +2 -2
  488. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  489. package/dist/unstable/encoding/Msgpack.d.ts +2 -2
  490. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  491. package/dist/unstable/encoding/Msgpack.js +5 -5
  492. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  493. package/dist/unstable/encoding/Ndjson.d.ts +5 -0
  494. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  495. package/dist/unstable/encoding/Ndjson.js +5 -0
  496. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  497. package/dist/unstable/encoding/Sse.d.ts +2 -2
  498. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  499. package/dist/unstable/encoding/Sse.js +2 -2
  500. package/dist/unstable/encoding/Sse.js.map +1 -1
  501. package/dist/unstable/eventlog/EventGroup.d.ts +2 -1
  502. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  503. package/dist/unstable/eventlog/EventGroup.js +2 -1
  504. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  505. package/dist/unstable/eventlog/EventJournal.d.ts +10 -0
  506. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  507. package/dist/unstable/eventlog/EventJournal.js +10 -0
  508. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  509. package/dist/unstable/eventlog/EventLog.d.ts +3 -3
  510. package/dist/unstable/eventlog/EventLog.js +3 -3
  511. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +2 -3
  512. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  513. package/dist/unstable/eventlog/EventLogServerEncrypted.js +2 -3
  514. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  515. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -7
  516. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  517. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +5 -7
  518. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  519. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +4 -4
  520. package/dist/unstable/eventlog/EventLogSessionAuth.js +4 -4
  521. package/dist/unstable/http/Cookies.js +4 -4
  522. package/dist/unstable/http/Cookies.js.map +1 -1
  523. package/dist/unstable/http/Etag.d.ts +2 -3
  524. package/dist/unstable/http/Etag.d.ts.map +1 -1
  525. package/dist/unstable/http/Etag.js +2 -3
  526. package/dist/unstable/http/Etag.js.map +1 -1
  527. package/dist/unstable/http/Headers.js +2 -2
  528. package/dist/unstable/http/Headers.js.map +1 -1
  529. package/dist/unstable/http/HttpBody.js +2 -2
  530. package/dist/unstable/http/HttpBody.js.map +1 -1
  531. package/dist/unstable/http/HttpClient.d.ts +2 -2
  532. package/dist/unstable/http/HttpClient.js +2 -2
  533. package/dist/unstable/http/HttpClientRequest.d.ts +30 -3
  534. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  535. package/dist/unstable/http/HttpClientRequest.js +10 -1
  536. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  537. package/dist/unstable/http/HttpRouter.d.ts +1 -1
  538. package/dist/unstable/http/HttpRouter.js +1 -1
  539. package/dist/unstable/http/HttpServerResponse.d.ts +25 -20
  540. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  541. package/dist/unstable/http/HttpServerResponse.js +13 -8
  542. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  543. package/dist/unstable/http/Multipart.js +3 -3
  544. package/dist/unstable/http/Multipart.js.map +1 -1
  545. package/dist/unstable/http/UrlParams.d.ts +30 -0
  546. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  547. package/dist/unstable/http/UrlParams.js +16 -6
  548. package/dist/unstable/http/UrlParams.js.map +1 -1
  549. package/dist/unstable/httpapi/HttpApi.d.ts +3 -2
  550. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  551. package/dist/unstable/httpapi/HttpApi.js +3 -2
  552. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  553. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  554. package/dist/unstable/httpapi/HttpApiBuilder.js +10 -8
  555. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  556. package/dist/unstable/httpapi/HttpApiClient.js +15 -15
  557. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  558. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +3 -3
  559. package/dist/unstable/httpapi/HttpApiMiddleware.js +3 -3
  560. package/dist/unstable/httpapi/HttpApiSchema.d.ts +2 -2
  561. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  562. package/dist/unstable/httpapi/HttpApiSchema.js +9 -9
  563. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  564. package/dist/unstable/httpapi/OpenApi.js +11 -11
  565. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  566. package/dist/unstable/observability/OtlpResource.d.ts +5 -0
  567. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  568. package/dist/unstable/observability/OtlpResource.js +5 -0
  569. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  570. package/dist/unstable/observability/PrometheusMetrics.d.ts +4 -2
  571. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  572. package/dist/unstable/observability/PrometheusMetrics.js +4 -2
  573. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  574. package/dist/unstable/reactivity/Atom.d.ts +3 -3
  575. package/dist/unstable/reactivity/Atom.js +3 -3
  576. package/dist/unstable/rpc/RpcSchema.d.ts +2 -2
  577. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  578. package/dist/unstable/rpc/RpcSerialization.d.ts +2 -2
  579. package/dist/unstable/rpc/RpcSerialization.js +2 -2
  580. package/dist/unstable/schema/Model.js +5 -5
  581. package/dist/unstable/schema/Model.js.map +1 -1
  582. package/dist/unstable/schema/VariantSchema.d.ts +2 -2
  583. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  584. package/dist/unstable/sql/SqlSchema.d.ts +4 -4
  585. package/dist/unstable/sql/SqlSchema.js +4 -4
  586. package/dist/unstable/workers/Transferable.d.ts +2 -2
  587. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  588. package/dist/unstable/workers/Transferable.js +5 -5
  589. package/dist/unstable/workers/Transferable.js.map +1 -1
  590. package/dist/unstable/workflow/DurableDeferred.js +7 -7
  591. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  592. package/dist/unstable/workflow/DurableQueue.d.ts +1 -2
  593. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  594. package/dist/unstable/workflow/DurableQueue.js +1 -2
  595. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  596. package/dist/unstable/workflow/Workflow.d.ts +35 -15
  597. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  598. package/dist/unstable/workflow/Workflow.js +94 -72
  599. package/dist/unstable/workflow/Workflow.js.map +1 -1
  600. package/dist/unstable/workflow/WorkflowEngine.d.ts +10 -2
  601. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  602. package/dist/unstable/workflow/WorkflowEngine.js +16 -8
  603. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  604. package/dist/unstable/workflow/WorkflowProxy.d.ts +2 -4
  605. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  606. package/dist/unstable/workflow/WorkflowProxy.js +9 -11
  607. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  608. package/dist/unstable/workflow/WorkflowProxyServer.js +7 -7
  609. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  610. package/package.json +1 -1
  611. package/src/Array.ts +729 -611
  612. package/src/BigDecimal.ts +37 -30
  613. package/src/BigInt.ts +34 -40
  614. package/src/Boolean.ts +8 -8
  615. package/src/Brand.ts +16 -14
  616. package/src/Cause.ts +21 -23
  617. package/src/Channel.ts +249 -9
  618. package/src/ChannelSchema.ts +11 -11
  619. package/src/Chunk.ts +69 -16
  620. package/src/Clock.ts +3 -3
  621. package/src/Combiner.ts +9 -13
  622. package/src/Config.ts +60 -67
  623. package/src/ConfigProvider.ts +34 -44
  624. package/src/Console.ts +2 -2
  625. package/src/Context.ts +60 -72
  626. package/src/Cron.ts +2 -2
  627. package/src/Crypto.ts +4 -4
  628. package/src/Data.ts +21 -15
  629. package/src/DateTime.ts +35 -16
  630. package/src/Deferred.ts +24 -15
  631. package/src/Duration.ts +44 -31
  632. package/src/Effect.ts +516 -416
  633. package/src/Encoding.ts +5 -0
  634. package/src/Equal.ts +26 -39
  635. package/src/Equivalence.ts +71 -99
  636. package/src/ErrorReporter.ts +1 -1
  637. package/src/Exit.ts +79 -96
  638. package/src/Fiber.ts +8 -6
  639. package/src/FiberHandle.ts +25 -0
  640. package/src/FiberMap.ts +35 -0
  641. package/src/FiberSet.ts +20 -0
  642. package/src/Filter.ts +4 -4
  643. package/src/Formatter.ts +14 -19
  644. package/src/Function.ts +15 -16
  645. package/src/Graph.ts +2 -2
  646. package/src/HKT.ts +2 -2
  647. package/src/Hash.ts +2 -1
  648. package/src/HashMap.ts +15 -0
  649. package/src/HashRing.ts +9 -9
  650. package/src/Iterable.ts +24 -12
  651. package/src/JsonPatch.ts +2 -3
  652. package/src/JsonPointer.ts +2 -6
  653. package/src/JsonSchema.ts +17 -13
  654. package/src/Latch.ts +4 -3
  655. package/src/Layer.ts +92 -114
  656. package/src/Logger.ts +15 -18
  657. package/src/Match.ts +2 -2
  658. package/src/Metric.ts +109 -137
  659. package/src/MutableHashMap.ts +35 -20
  660. package/src/MutableList.ts +15 -0
  661. package/src/MutableRef.ts +56 -42
  662. package/src/Newtype.ts +10 -7
  663. package/src/Number.ts +23 -11
  664. package/src/Optic.ts +25 -22
  665. package/src/Option.ts +196 -168
  666. package/src/Order.ts +118 -179
  667. package/src/PartitionedSemaphore.ts +14 -14
  668. package/src/Path.ts +2 -2
  669. package/src/Pipeable.ts +2 -2
  670. package/src/PlatformError.ts +4 -4
  671. package/src/Pool.ts +7 -11
  672. package/src/Predicate.ts +274 -263
  673. package/src/PubSub.ts +24 -14
  674. package/src/Pull.ts +4 -4
  675. package/src/Queue.ts +46 -7
  676. package/src/RcRef.ts +0 -4
  677. package/src/Redactable.ts +2 -2
  678. package/src/Redacted.ts +3 -3
  679. package/src/Reducer.ts +2 -3
  680. package/src/Ref.ts +43 -40
  681. package/src/References.ts +4 -4
  682. package/src/Request.ts +18 -18
  683. package/src/Resource.ts +2 -2
  684. package/src/Result.ts +87 -33
  685. package/src/Runtime.ts +11 -8
  686. package/src/Schedule.ts +112 -45
  687. package/src/Scheduler.ts +6 -4
  688. package/src/Schema.ts +843 -649
  689. package/src/SchemaAST.ts +148 -117
  690. package/src/SchemaGetter.ts +142 -121
  691. package/src/SchemaIssue.ts +39 -41
  692. package/src/SchemaParser.ts +173 -229
  693. package/src/SchemaRepresentation.ts +38 -28
  694. package/src/SchemaTransformation.ts +233 -207
  695. package/src/SchemaUtils.ts +2 -2
  696. package/src/Scope.ts +15 -0
  697. package/src/ScopedCache.ts +1 -1
  698. package/src/ScopedRef.ts +14 -18
  699. package/src/Semaphore.ts +9 -9
  700. package/src/Sink.ts +13 -13
  701. package/src/Stdio.ts +4 -5
  702. package/src/Stream.ts +354 -57
  703. package/src/String.ts +6 -9
  704. package/src/Struct.ts +15 -13
  705. package/src/SubscriptionRef.ts +24 -19
  706. package/src/SynchronizedRef.ts +88 -63
  707. package/src/Tracer.ts +4 -4
  708. package/src/Trie.ts +15 -0
  709. package/src/Tuple.ts +25 -19
  710. package/src/TxReentrantLock.ts +6 -3
  711. package/src/TxRef.ts +16 -16
  712. package/src/TxSubscriptionRef.ts +43 -27
  713. package/src/Types.ts +12 -39
  714. package/src/UndefinedOr.ts +15 -14
  715. package/src/Unify.ts +2 -2
  716. package/src/internal/schema/annotations.ts +4 -4
  717. package/src/internal/schema/arbitrary.ts +16 -16
  718. package/src/internal/schema/equivalence.ts +11 -11
  719. package/src/internal/schema/representation.ts +23 -23
  720. package/src/internal/schema/schema.ts +17 -17
  721. package/src/testing/TestSchema.ts +20 -20
  722. package/src/unstable/ai/AiError.ts +4 -2
  723. package/src/unstable/ai/AnthropicStructuredOutput.ts +59 -56
  724. package/src/unstable/ai/Chat.ts +4 -5
  725. package/src/unstable/ai/EmbeddingModel.ts +4 -4
  726. package/src/unstable/ai/IdGenerator.ts +2 -3
  727. package/src/unstable/ai/LanguageModel.ts +5 -4
  728. package/src/unstable/ai/McpSchema.ts +19 -17
  729. package/src/unstable/ai/McpServer.ts +14 -7
  730. package/src/unstable/ai/OpenAiStructuredOutput.ts +72 -61
  731. package/src/unstable/ai/Prompt.ts +5 -5
  732. package/src/unstable/ai/ResponseIdTracker.ts +3 -2
  733. package/src/unstable/ai/Telemetry.ts +21 -6
  734. package/src/unstable/ai/Tool.ts +11 -10
  735. package/src/unstable/ai/Toolkit.ts +2 -2
  736. package/src/unstable/cli/Command.ts +37 -16
  737. package/src/unstable/cli/Completions.ts +1 -1
  738. package/src/unstable/cli/Flag.ts +7 -6
  739. package/src/unstable/cli/GlobalFlag.ts +7 -1
  740. package/src/unstable/cli/Param.ts +23 -18
  741. package/src/unstable/cli/Primitive.ts +3 -2
  742. package/src/unstable/cluster/ClusterCron.ts +1 -2
  743. package/src/unstable/cluster/ClusterMetrics.ts +5 -0
  744. package/src/unstable/cluster/ClusterSchema.ts +3 -3
  745. package/src/unstable/cluster/ClusterWorkflowEngine.ts +15 -15
  746. package/src/unstable/cluster/EntityResource.ts +10 -0
  747. package/src/unstable/cluster/Envelope.ts +3 -3
  748. package/src/unstable/cluster/Reply.ts +14 -12
  749. package/src/unstable/cluster/RunnerHealth.ts +2 -1
  750. package/src/unstable/cluster/RunnerServer.ts +2 -2
  751. package/src/unstable/cluster/Runners.ts +3 -3
  752. package/src/unstable/cluster/ShardId.ts +3 -3
  753. package/src/unstable/cluster/Sharding.ts +3 -3
  754. package/src/unstable/cluster/ShardingConfig.ts +4 -4
  755. package/src/unstable/cluster/Snowflake.ts +3 -3
  756. package/src/unstable/cluster/internal/entityManager.ts +2 -2
  757. package/src/unstable/encoding/Msgpack.ts +6 -6
  758. package/src/unstable/encoding/Ndjson.ts +5 -0
  759. package/src/unstable/encoding/Sse.ts +2 -2
  760. package/src/unstable/eventlog/EventGroup.ts +2 -1
  761. package/src/unstable/eventlog/EventJournal.ts +10 -0
  762. package/src/unstable/eventlog/EventLog.ts +3 -3
  763. package/src/unstable/eventlog/EventLogServerEncrypted.ts +2 -3
  764. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +5 -7
  765. package/src/unstable/eventlog/EventLogSessionAuth.ts +4 -4
  766. package/src/unstable/http/Cookies.ts +4 -4
  767. package/src/unstable/http/Etag.ts +2 -3
  768. package/src/unstable/http/Headers.ts +2 -2
  769. package/src/unstable/http/HttpBody.ts +2 -2
  770. package/src/unstable/http/HttpClient.ts +2 -2
  771. package/src/unstable/http/HttpClientRequest.ts +30 -3
  772. package/src/unstable/http/HttpRouter.ts +1 -1
  773. package/src/unstable/http/HttpServerResponse.ts +25 -20
  774. package/src/unstable/http/Multipart.ts +3 -3
  775. package/src/unstable/http/UrlParams.ts +36 -6
  776. package/src/unstable/httpapi/HttpApi.ts +5 -4
  777. package/src/unstable/httpapi/HttpApiBuilder.ts +14 -13
  778. package/src/unstable/httpapi/HttpApiClient.ts +16 -16
  779. package/src/unstable/httpapi/HttpApiMiddleware.ts +3 -3
  780. package/src/unstable/httpapi/HttpApiSchema.ts +15 -15
  781. package/src/unstable/httpapi/OpenApi.ts +18 -18
  782. package/src/unstable/observability/OtlpResource.ts +5 -0
  783. package/src/unstable/observability/PrometheusMetrics.ts +4 -2
  784. package/src/unstable/reactivity/Atom.ts +3 -3
  785. package/src/unstable/rpc/RpcSchema.ts +2 -2
  786. package/src/unstable/rpc/RpcSerialization.ts +2 -2
  787. package/src/unstable/schema/Model.ts +5 -5
  788. package/src/unstable/schema/VariantSchema.ts +2 -2
  789. package/src/unstable/sql/SqlSchema.ts +4 -4
  790. package/src/unstable/workers/Transferable.ts +6 -6
  791. package/src/unstable/workflow/DurableDeferred.ts +7 -7
  792. package/src/unstable/workflow/DurableQueue.ts +1 -2
  793. package/src/unstable/workflow/Workflow.ts +159 -114
  794. package/src/unstable/workflow/WorkflowEngine.ts +16 -8
  795. package/src/unstable/workflow/WorkflowProxy.ts +9 -11
  796. 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
 
@@ -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
  *
@@ -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
@@ -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
  *
@@ -469,10 +474,15 @@ 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
  *
@@ -502,10 +512,15 @@ export const addGenAIAnnotations: {
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
  *
@@ -63,7 +63,7 @@ import type * as JsonSchema from "../../JsonSchema.ts"
63
63
  import { pipeArguments } from "../../Pipeable.ts"
64
64
  import * as Predicate from "../../Predicate.ts"
65
65
  import * as Schema from "../../Schema.ts"
66
- import * as AST from "../../SchemaAST.ts"
66
+ import * as SchemaAST from "../../SchemaAST.ts"
67
67
  import type * as Struct from "../../Struct.ts"
68
68
  import type * as Types from "../../Types.ts"
69
69
  import type * as AiError from "./AiError.ts"
@@ -1318,8 +1318,8 @@ export const make = <
1318
1318
  *
1319
1319
  * **When to use**
1320
1320
  *
1321
- * Use when this is useful for tools where the schema isn't known at compile time,
1322
- * such as MCP tools discovered at runtime or tools from external configurations.
1321
+ * Use when you do not know a tool schema at compile time, such as MCP tools
1322
+ * discovered at runtime or tools from external configurations.
1323
1323
  *
1324
1324
  * **Details**
1325
1325
  *
@@ -1363,8 +1363,8 @@ export const dynamic: {
1363
1363
  *
1364
1364
  * **When to use**
1365
1365
  *
1366
- * Use when this is useful for tools where the schema isn't known at compile time,
1367
- * such as MCP tools discovered at runtime or tools from external configurations.
1366
+ * Use when you do not know a tool schema at compile time, such as MCP tools
1367
+ * discovered at runtime or tools from external configurations.
1368
1368
  *
1369
1369
  * **Details**
1370
1370
  *
@@ -1681,7 +1681,7 @@ export const getDescription = <Tool extends Any>(tool: Tool): string | undefined
1681
1681
  return tool.description
1682
1682
  }
1683
1683
  if (Schema.isSchema(tool.parametersSchema)) {
1684
- return AST.resolveDescription(tool.parametersSchema.ast)
1684
+ return SchemaAST.resolveDescription(tool.parametersSchema.ast)
1685
1685
  }
1686
1686
  return undefined
1687
1687
  }
@@ -2028,7 +2028,8 @@ function filter(obj: any) {
2028
2028
  *
2029
2029
  * **When to use**
2030
2030
  *
2031
- * Use when thrown parse and security failures are acceptable.
2031
+ * Use when you need a JSON parser that throws for invalid JSON or unsafe
2032
+ * object shapes.
2032
2033
  *
2033
2034
  * **Gotchas**
2034
2035
  *
@@ -2068,7 +2069,7 @@ export interface EmptyParams extends Schema.$Record<Schema.String, Schema.Never>
2068
2069
  *
2069
2070
  * **When to use**
2070
2071
  *
2071
- * Use when a tool needs an explicit no-parameter `parameters` schema.
2072
+ * Use when you need an explicit no-parameter `parameters` schema for a tool.
2072
2073
  *
2073
2074
  * **Details**
2074
2075
  *
@@ -2083,6 +2084,6 @@ export interface EmptyParams extends Schema.$Record<Schema.String, Schema.Never>
2083
2084
  export const EmptyParams: EmptyParams = Schema.Record(Schema.String, Schema.Never)
2084
2085
 
2085
2086
  /** @internal */
2086
- export function isEmptyParamsRecord(indexSignature: AST.IndexSignature): boolean {
2087
- return indexSignature.parameter === AST.string && AST.isNever(indexSignature.type)
2087
+ export function isEmptyParamsRecord(indexSignature: SchemaAST.IndexSignature): boolean {
2088
+ return indexSignature.parameter === SchemaAST.string && SchemaAST.isNever(indexSignature.type)
2088
2089
  }
@@ -497,8 +497,8 @@ const resolveInput = <Tools extends ReadonlyArray<Tool.Any>>(
497
497
  *
498
498
  * **When to use**
499
499
  *
500
- * Use as a starting point for building toolkits or as a default value. Can
501
- * be extended using the merge function to add tools.
500
+ * Use when you need an empty starting point for building toolkits or a default
501
+ * toolkit value that can be extended with `merge`.
502
502
  *
503
503
  * @category constructors
504
504
  * @since 4.0.0
@@ -1484,8 +1484,8 @@ export const withAlias: {
1484
1484
  *
1485
1485
  * **When to use**
1486
1486
  *
1487
- * Use when you use this for experimental or internal subcommands that should be accepted but
1488
- * not advertised on the public CLI surface.
1487
+ * Use when experimental or internal subcommands should be accepted but not advertised on
1488
+ * the public CLI surface.
1489
1489
  *
1490
1490
  * **Example** (Hiding a subcommand)
1491
1491
  *
@@ -1600,7 +1600,8 @@ export const annotate: {
1600
1600
  *
1601
1601
  * **When to use**
1602
1602
  *
1603
- * Use when attaching an already-built `Context.Context` of command annotations.
1603
+ * Use when you need to attach an already-built `Context.Context` of command
1604
+ * annotations.
1604
1605
  *
1605
1606
  * **Details**
1606
1607
  *
@@ -1623,7 +1624,8 @@ export const annotateMerge: {
1623
1624
  *
1624
1625
  * **When to use**
1625
1626
  *
1626
- * Use when attaching an already-built `Context.Context` of command annotations.
1627
+ * Use when you need to attach an already-built `Context.Context` of command
1628
+ * annotations.
1627
1629
  *
1628
1630
  * **Details**
1629
1631
  *
@@ -1648,7 +1650,8 @@ export const annotateMerge: {
1648
1650
  *
1649
1651
  * **When to use**
1650
1652
  *
1651
- * Use when attaching an already-built `Context.Context` of command annotations.
1653
+ * Use when you need to attach an already-built `Context.Context` of command
1654
+ * annotations.
1652
1655
  *
1653
1656
  * **Details**
1654
1657
  *
@@ -1916,6 +1919,11 @@ export const provide: {
1916
1919
  * Provides the handler of a command with the implementation of a service that
1917
1920
  * optionally depends on the command-line input to be constructed.
1918
1921
  *
1922
+ * **When to use**
1923
+ *
1924
+ * Use when a command handler needs a pure service implementation, optionally
1925
+ * derived from the parsed command input.
1926
+ *
1919
1927
  * @category providing services
1920
1928
  * @since 4.0.0
1921
1929
  */
@@ -1924,6 +1932,11 @@ export const provideSync: {
1924
1932
  * Provides the handler of a command with the implementation of a service that
1925
1933
  * optionally depends on the command-line input to be constructed.
1926
1934
  *
1935
+ * **When to use**
1936
+ *
1937
+ * Use when a command handler needs a pure service implementation, optionally
1938
+ * derived from the parsed command input.
1939
+ *
1927
1940
  * @category providing services
1928
1941
  * @since 4.0.0
1929
1942
  */
@@ -1934,6 +1947,11 @@ export const provideSync: {
1934
1947
  * Provides the handler of a command with the implementation of a service that
1935
1948
  * optionally depends on the command-line input to be constructed.
1936
1949
  *
1950
+ * **When to use**
1951
+ *
1952
+ * Use when a command handler needs a pure service implementation, optionally
1953
+ * derived from the parsed command input.
1954
+ *
1937
1955
  * @category providing services
1938
1956
  * @since 4.0.0
1939
1957
  */
@@ -2123,9 +2141,8 @@ const showHelp = <Name extends string, Input, E, R, ContextInput>(
2123
2141
  *
2124
2142
  * **When to use**
2125
2143
  *
2126
- * Use when you use `run` at an application entry point when arguments should come from
2127
- * `Stdio`; use `runWith` when you need an explicit argument array, such as in
2128
- * tests.
2144
+ * Use when command-line arguments should come from `Stdio` at the application
2145
+ * entry point.
2129
2146
  *
2130
2147
  * **Example** (Running commands with standard input)
2131
2148
  *
@@ -2146,6 +2163,8 @@ const showHelp = <Name extends string, Input, E, R, ContextInput>(
2146
2163
  * })
2147
2164
  * ```
2148
2165
  *
2166
+ * @see {@link runWith} for running a command with an explicit argument array
2167
+ *
2149
2168
  * @category command execution
2150
2169
  * @since 4.0.0
2151
2170
  */
@@ -2155,9 +2174,8 @@ export const run: {
2155
2174
  *
2156
2175
  * **When to use**
2157
2176
  *
2158
- * Use when you use `run` at an application entry point when arguments should come from
2159
- * `Stdio`; use `runWith` when you need an explicit argument array, such as in
2160
- * tests.
2177
+ * Use when command-line arguments should come from `Stdio` at the application
2178
+ * entry point.
2161
2179
  *
2162
2180
  * **Example** (Running commands with standard input)
2163
2181
  *
@@ -2178,6 +2196,8 @@ export const run: {
2178
2196
  * })
2179
2197
  * ```
2180
2198
  *
2199
+ * @see {@link runWith} for running a command with an explicit argument array
2200
+ *
2181
2201
  * @category command execution
2182
2202
  * @since 4.0.0
2183
2203
  */
@@ -2193,9 +2213,8 @@ export const run: {
2193
2213
  *
2194
2214
  * **When to use**
2195
2215
  *
2196
- * Use when you use `run` at an application entry point when arguments should come from
2197
- * `Stdio`; use `runWith` when you need an explicit argument array, such as in
2198
- * tests.
2216
+ * Use when command-line arguments should come from `Stdio` at the application
2217
+ * entry point.
2199
2218
  *
2200
2219
  * **Example** (Running commands with standard input)
2201
2220
  *
@@ -2216,6 +2235,8 @@ export const run: {
2216
2235
  * })
2217
2236
  * ```
2218
2237
  *
2238
+ * @see {@link runWith} for running a command with an explicit argument array
2239
+ *
2219
2240
  * @category command execution
2220
2241
  * @since 4.0.0
2221
2242
  */
@@ -2243,8 +2264,8 @@ export const run: {
2243
2264
  *
2244
2265
  * **When to use**
2245
2266
  *
2246
- * Use when you use this function for testing CLI applications or when you want to
2247
- * programmatically execute commands with specific arguments.
2267
+ * Use when you need to test CLI applications or programmatically execute
2268
+ * commands with specific arguments.
2248
2269
  *
2249
2270
  * **Example** (Running commands with explicit arguments)
2250
2271
  *
@@ -117,7 +117,7 @@ export type ArgumentType =
117
117
  *
118
118
  * **When to use**
119
119
  *
120
- * Use to produce an installable completion script when you already have a
120
+ * Use when you need an installable completion script from an existing
121
121
  * `CommandDescriptor`.
122
122
  *
123
123
  * **Details**