effect 4.0.0-beta.101 → 4.0.0-beta.102

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 (494) hide show
  1. package/dist/Array.d.ts.map +1 -1
  2. package/dist/Array.js +81 -5
  3. package/dist/Array.js.map +1 -1
  4. package/dist/Channel.d.ts.map +1 -1
  5. package/dist/Channel.js +27 -9
  6. package/dist/Channel.js.map +1 -1
  7. package/dist/Config.d.ts +1 -1
  8. package/dist/Config.d.ts.map +1 -1
  9. package/dist/Config.js +6 -5
  10. package/dist/Config.js.map +1 -1
  11. package/dist/ConfigProvider.js +7 -7
  12. package/dist/ConfigProvider.js.map +1 -1
  13. package/dist/Data.d.ts.map +1 -1
  14. package/dist/Data.js +2 -1
  15. package/dist/Data.js.map +1 -1
  16. package/dist/Effect.d.ts +61 -100
  17. package/dist/Effect.d.ts.map +1 -1
  18. package/dist/Effect.js +66 -39
  19. package/dist/Effect.js.map +1 -1
  20. package/dist/FiberHandle.d.ts.map +1 -1
  21. package/dist/FiberHandle.js +3 -2
  22. package/dist/FiberHandle.js.map +1 -1
  23. package/dist/Iterable.d.ts.map +1 -1
  24. package/dist/Iterable.js +2 -1
  25. package/dist/Iterable.js.map +1 -1
  26. package/dist/JsonPatch.d.ts.map +1 -1
  27. package/dist/JsonPatch.js +4 -3
  28. package/dist/JsonPatch.js.map +1 -1
  29. package/dist/JsonSchema.d.ts.map +1 -1
  30. package/dist/JsonSchema.js +9 -11
  31. package/dist/JsonSchema.js.map +1 -1
  32. package/dist/Logger.d.ts.map +1 -1
  33. package/dist/Logger.js +3 -2
  34. package/dist/Logger.js.map +1 -1
  35. package/dist/ManagedRuntime.d.ts +9 -0
  36. package/dist/ManagedRuntime.d.ts.map +1 -1
  37. package/dist/ManagedRuntime.js +3 -0
  38. package/dist/ManagedRuntime.js.map +1 -1
  39. package/dist/Metric.d.ts.map +1 -1
  40. package/dist/Metric.js +4 -3
  41. package/dist/Metric.js.map +1 -1
  42. package/dist/Optic.d.ts.map +1 -1
  43. package/dist/Optic.js +5 -4
  44. package/dist/Optic.js.map +1 -1
  45. package/dist/Option.d.ts.map +1 -1
  46. package/dist/Option.js +2 -1
  47. package/dist/Option.js.map +1 -1
  48. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  49. package/dist/PartitionedSemaphore.js +1 -4
  50. package/dist/PartitionedSemaphore.js.map +1 -1
  51. package/dist/Record.d.ts +93 -1
  52. package/dist/Record.d.ts.map +1 -1
  53. package/dist/Record.js +57 -19
  54. package/dist/Record.js.map +1 -1
  55. package/dist/References.d.ts +0 -45
  56. package/dist/References.d.ts.map +1 -1
  57. package/dist/References.js +0 -45
  58. package/dist/References.js.map +1 -1
  59. package/dist/Request.d.ts.map +1 -1
  60. package/dist/Request.js +9 -6
  61. package/dist/Request.js.map +1 -1
  62. package/dist/Result.d.ts.map +1 -1
  63. package/dist/Result.js +2 -1
  64. package/dist/Result.js.map +1 -1
  65. package/dist/Schema.d.ts +1268 -495
  66. package/dist/Schema.d.ts.map +1 -1
  67. package/dist/Schema.js +2308 -614
  68. package/dist/Schema.js.map +1 -1
  69. package/dist/SchemaAST.d.ts +2 -2
  70. package/dist/SchemaAST.d.ts.map +1 -1
  71. package/dist/SchemaAST.js +189 -130
  72. package/dist/SchemaAST.js.map +1 -1
  73. package/dist/SchemaError.js +1 -1
  74. package/dist/SchemaError.js.map +1 -1
  75. package/dist/SchemaGetter.d.ts +13 -11
  76. package/dist/SchemaGetter.d.ts.map +1 -1
  77. package/dist/SchemaGetter.js +34 -24
  78. package/dist/SchemaGetter.js.map +1 -1
  79. package/dist/SchemaIssue.js +1 -1
  80. package/dist/SchemaIssue.js.map +1 -1
  81. package/dist/SchemaParser.d.ts.map +1 -1
  82. package/dist/SchemaParser.js +1 -12
  83. package/dist/SchemaParser.js.map +1 -1
  84. package/dist/SchemaRepresentation.d.ts +403 -1504
  85. package/dist/SchemaRepresentation.d.ts.map +1 -1
  86. package/dist/SchemaRepresentation.js +294 -2852
  87. package/dist/SchemaRepresentation.js.map +1 -1
  88. package/dist/SchemaTransformation.d.ts +2 -2
  89. package/dist/SchemaTransformation.js +3 -3
  90. package/dist/SchemaTransformation.js.map +1 -1
  91. package/dist/Semaphore.d.ts +5 -3
  92. package/dist/Semaphore.d.ts.map +1 -1
  93. package/dist/Semaphore.js.map +1 -1
  94. package/dist/Stream.d.ts +15 -9
  95. package/dist/Stream.d.ts.map +1 -1
  96. package/dist/Stream.js +46 -16
  97. package/dist/Stream.js.map +1 -1
  98. package/dist/Struct.d.ts.map +1 -1
  99. package/dist/Struct.js +5 -4
  100. package/dist/Struct.js.map +1 -1
  101. package/dist/Types.d.ts +1 -3
  102. package/dist/Types.d.ts.map +1 -1
  103. package/dist/index.d.ts +0 -4
  104. package/dist/index.d.ts.map +1 -1
  105. package/dist/index.js +0 -4
  106. package/dist/index.js.map +1 -1
  107. package/dist/internal/core.js +2 -1
  108. package/dist/internal/core.js.map +1 -1
  109. package/dist/internal/effect.js +64 -21
  110. package/dist/internal/effect.js.map +1 -1
  111. package/dist/internal/matcher.js +1 -1
  112. package/dist/internal/matcher.js.map +1 -1
  113. package/dist/internal/record.d.ts +0 -3
  114. package/dist/internal/record.d.ts.map +1 -1
  115. package/dist/internal/record.js +10 -5
  116. package/dist/internal/record.js.map +1 -1
  117. package/dist/internal/references.js +0 -4
  118. package/dist/internal/references.js.map +1 -1
  119. package/dist/internal/schema/annotations.js +12 -0
  120. package/dist/internal/schema/annotations.js.map +1 -1
  121. package/dist/internal/schema/fromJsonSchemaDocument.d.ts +2 -0
  122. package/dist/internal/schema/fromJsonSchemaDocument.d.ts.map +1 -0
  123. package/dist/internal/schema/fromJsonSchemaDocument.js +743 -0
  124. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -0
  125. package/dist/internal/schema/fromRepresentation.d.ts +2 -0
  126. package/dist/internal/schema/fromRepresentation.d.ts.map +1 -0
  127. package/dist/internal/schema/fromRepresentation.js +252 -0
  128. package/dist/internal/schema/fromRepresentation.js.map +1 -0
  129. package/dist/internal/schema/schema.js +28 -40
  130. package/dist/internal/schema/schema.js.map +1 -1
  131. package/dist/internal/schema/{arbitrary.d.ts → toArbitrary.d.ts} +1 -1
  132. package/dist/internal/schema/toArbitrary.d.ts.map +1 -0
  133. package/dist/internal/schema/{arbitrary.js → toArbitrary.js} +8 -9
  134. package/dist/internal/schema/toArbitrary.js.map +1 -0
  135. package/dist/internal/schema/toCodeDocument.d.ts +2 -0
  136. package/dist/internal/schema/toCodeDocument.d.ts.map +1 -0
  137. package/dist/internal/schema/toCodeDocument.js +438 -0
  138. package/dist/internal/schema/toCodeDocument.js.map +1 -0
  139. package/dist/internal/schema/toEquivalence.d.ts +2 -0
  140. package/dist/internal/schema/toEquivalence.d.ts.map +1 -0
  141. package/dist/internal/schema/{equivalence.js → toEquivalence.js} +15 -13
  142. package/dist/internal/schema/toEquivalence.js.map +1 -0
  143. package/dist/internal/schema/toJsonSchemaDocument.d.ts +2 -0
  144. package/dist/internal/schema/toJsonSchemaDocument.d.ts.map +1 -0
  145. package/dist/internal/schema/toJsonSchemaDocument.js +466 -0
  146. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -0
  147. package/dist/internal/schema/toRepresentation.d.ts +2 -0
  148. package/dist/internal/schema/toRepresentation.d.ts.map +1 -0
  149. package/dist/internal/schema/toRepresentation.js +369 -0
  150. package/dist/internal/schema/toRepresentation.js.map +1 -0
  151. package/dist/internal/stackTraceLimit.js +3 -6
  152. package/dist/internal/stackTraceLimit.js.map +1 -1
  153. package/dist/testing/TestClock.js +4 -1
  154. package/dist/testing/TestClock.js.map +1 -1
  155. package/dist/unstable/ai/AiError.d.ts +26 -26
  156. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  157. package/dist/unstable/ai/AiError.js +5 -4
  158. package/dist/unstable/ai/AiError.js.map +1 -1
  159. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +21 -6
  160. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  161. package/dist/unstable/ai/AnthropicStructuredOutput.js +86 -316
  162. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  163. package/dist/unstable/ai/EmbeddingModel.d.ts +1 -1
  164. package/dist/unstable/ai/EmbeddingModel.js +1 -1
  165. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  166. package/dist/unstable/ai/LanguageModel.d.ts +4 -1
  167. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  168. package/dist/unstable/ai/LanguageModel.js +19 -17
  169. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  170. package/dist/unstable/ai/McpSchema.d.ts +197 -197
  171. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  172. package/dist/unstable/ai/McpSchema.js +13 -13
  173. package/dist/unstable/ai/McpSchema.js.map +1 -1
  174. package/dist/unstable/ai/McpServer.d.ts +4 -4
  175. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  176. package/dist/unstable/ai/McpServer.js +116 -49
  177. package/dist/unstable/ai/McpServer.js.map +1 -1
  178. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +32 -10
  179. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  180. package/dist/unstable/ai/OpenAiStructuredOutput.js +193 -377
  181. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  182. package/dist/unstable/ai/Response.d.ts +19 -19
  183. package/dist/unstable/ai/Response.d.ts.map +1 -1
  184. package/dist/unstable/ai/Response.js +14 -14
  185. package/dist/unstable/ai/Response.js.map +1 -1
  186. package/dist/unstable/ai/Tool.d.ts +4 -0
  187. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  188. package/dist/unstable/ai/Tool.js +11 -3
  189. package/dist/unstable/ai/Tool.js.map +1 -1
  190. package/dist/unstable/ai/Toolkit.d.ts +9 -1
  191. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  192. package/dist/unstable/ai/Toolkit.js +14 -10
  193. package/dist/unstable/ai/Toolkit.js.map +1 -1
  194. package/dist/unstable/ai/internal/codec-transformer.js +15 -12
  195. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  196. package/dist/unstable/ai/internal/structured-output.d.ts +2 -0
  197. package/dist/unstable/ai/internal/structured-output.d.ts.map +1 -0
  198. package/dist/unstable/ai/internal/structured-output.js +316 -0
  199. package/dist/unstable/ai/internal/structured-output.js.map +1 -0
  200. package/dist/unstable/cli/CliError.d.ts +40 -2
  201. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  202. package/dist/unstable/cli/CliError.js +45 -6
  203. package/dist/unstable/cli/CliError.js.map +1 -1
  204. package/dist/unstable/cli/Command.js +14 -5
  205. package/dist/unstable/cli/Command.js.map +1 -1
  206. package/dist/unstable/cli/Param.js +3 -3
  207. package/dist/unstable/cli/Param.js.map +1 -1
  208. package/dist/unstable/cli/Primitive.js +1 -1
  209. package/dist/unstable/cli/Primitive.js.map +1 -1
  210. package/dist/unstable/cli/internal/command.d.ts +3 -1
  211. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  212. package/dist/unstable/cli/internal/command.js +11 -4
  213. package/dist/unstable/cli/internal/command.js.map +1 -1
  214. package/dist/unstable/cli/internal/config.d.ts +0 -48
  215. package/dist/unstable/cli/internal/config.d.ts.map +1 -1
  216. package/dist/unstable/cli/internal/config.js +8 -10
  217. package/dist/unstable/cli/internal/config.js.map +1 -1
  218. package/dist/unstable/cluster/ClusterWorkflowEngine.js +1 -1
  219. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  220. package/dist/unstable/cluster/Entity.js +1 -1
  221. package/dist/unstable/cluster/Entity.js.map +1 -1
  222. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  223. package/dist/unstable/cluster/Envelope.js +2 -1
  224. package/dist/unstable/cluster/Envelope.js.map +1 -1
  225. package/dist/unstable/cluster/Reply.js +1 -1
  226. package/dist/unstable/cluster/Reply.js.map +1 -1
  227. package/dist/unstable/cluster/Runner.d.ts +1 -1
  228. package/dist/unstable/cluster/Runner.js +1 -1
  229. package/dist/unstable/cluster/Runner.js.map +1 -1
  230. package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
  231. package/dist/unstable/cluster/RunnerAddress.js +1 -1
  232. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  233. package/dist/unstable/cluster/ShardId.js +1 -1
  234. package/dist/unstable/cluster/ShardId.js.map +1 -1
  235. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  236. package/dist/unstable/cluster/Sharding.js +125 -24
  237. package/dist/unstable/cluster/Sharding.js.map +1 -1
  238. package/dist/unstable/cluster/ShardingConfig.d.ts +10 -2
  239. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  240. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  241. package/dist/unstable/cluster/SingleRunner.d.ts +4 -2
  242. package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
  243. package/dist/unstable/cluster/SingleRunner.js +2 -1
  244. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  245. package/dist/unstable/cluster/SqlMessageStorage.d.ts +7 -4
  246. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  247. package/dist/unstable/cluster/SqlMessageStorage.js +55 -24
  248. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  249. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  250. package/dist/unstable/cluster/SqlRunnerStorage.js +109 -62
  251. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  252. package/dist/unstable/cluster/internal/entityManager.js +19 -7
  253. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  254. package/dist/unstable/cluster/internal/shardLock.d.ts +2 -0
  255. package/dist/unstable/cluster/internal/shardLock.d.ts.map +1 -0
  256. package/dist/unstable/cluster/internal/shardLock.js +4 -0
  257. package/dist/unstable/cluster/internal/shardLock.js.map +1 -0
  258. package/dist/unstable/devtools/DevToolsSchema.d.ts +20 -20
  259. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  260. package/dist/unstable/devtools/DevToolsSchema.js +8 -5
  261. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  262. package/dist/unstable/eventlog/EventJournal.d.ts +1 -1
  263. package/dist/unstable/eventlog/EventJournal.js +1 -1
  264. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  265. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  266. package/dist/unstable/eventlog/EventLog.js +15 -11
  267. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  268. package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
  269. package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
  270. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  271. package/dist/unstable/eventlog/EventLogMessage.d.ts +4 -4
  272. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
  273. package/dist/unstable/eventlog/EventLogMessage.js +8 -3
  274. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  275. package/dist/unstable/eventlog/EventLogRemote.d.ts +1 -1
  276. package/dist/unstable/eventlog/SqlEventJournal.js +2 -2
  277. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  278. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +1 -1
  279. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  280. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +3 -3
  281. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  282. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  283. package/dist/unstable/http/Cookies.js +24 -22
  284. package/dist/unstable/http/Cookies.js.map +1 -1
  285. package/dist/unstable/http/Headers.js +8 -8
  286. package/dist/unstable/http/Headers.js.map +1 -1
  287. package/dist/unstable/http/HttpClientRequest.d.ts +44 -0
  288. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  289. package/dist/unstable/http/HttpClientRequest.js +14 -0
  290. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  291. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  292. package/dist/unstable/http/HttpServerRequest.js +5 -4
  293. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  294. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  295. package/dist/unstable/http/Multipart.js +17 -15
  296. package/dist/unstable/http/Multipart.js.map +1 -1
  297. package/dist/unstable/http/Template.js +1 -1
  298. package/dist/unstable/http/Template.js.map +1 -1
  299. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  300. package/dist/unstable/http/UrlParams.js +17 -14
  301. package/dist/unstable/http/UrlParams.js.map +1 -1
  302. package/dist/unstable/httpapi/HttpApi.js +3 -3
  303. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  304. package/dist/unstable/httpapi/HttpApiClient.js +5 -5
  305. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  306. package/dist/unstable/httpapi/HttpApiGroup.js +1 -1
  307. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  308. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  309. package/dist/unstable/httpapi/OpenApi.js +37 -24
  310. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  311. package/dist/unstable/observability/OtlpExporter.d.ts +72 -1
  312. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  313. package/dist/unstable/observability/OtlpExporter.js +69 -4
  314. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  315. package/dist/unstable/observability/OtlpLogger.d.ts +4 -3
  316. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  317. package/dist/unstable/observability/OtlpLogger.js +2 -2
  318. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  319. package/dist/unstable/observability/OtlpMetrics.d.ts +7 -3
  320. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  321. package/dist/unstable/observability/OtlpMetrics.js +5 -2
  322. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  323. package/dist/unstable/observability/OtlpTracer.d.ts +4 -3
  324. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  325. package/dist/unstable/observability/OtlpTracer.js +2 -2
  326. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  327. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  328. package/dist/unstable/persistence/Persistable.js +2 -1
  329. package/dist/unstable/persistence/Persistable.js.map +1 -1
  330. package/dist/unstable/persistence/RateLimiter.d.ts +2 -2
  331. package/dist/unstable/persistence/RateLimiter.js +2 -2
  332. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  333. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  334. package/dist/unstable/persistence/Redis.js +2 -2
  335. package/dist/unstable/persistence/Redis.js.map +1 -1
  336. package/dist/unstable/process/ChildProcessSpawner.js +3 -1
  337. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  338. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  339. package/dist/unstable/reactivity/AsyncResult.js +4 -3
  340. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  341. package/dist/unstable/reactivity/Atom.d.ts +83 -0
  342. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  343. package/dist/unstable/reactivity/Atom.js +31 -0
  344. package/dist/unstable/reactivity/Atom.js.map +1 -1
  345. package/dist/unstable/reactivity/AtomRegistry.js +1 -1
  346. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  347. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  348. package/dist/unstable/rpc/RpcClient.js +2 -1
  349. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  350. package/dist/unstable/schema/VariantSchema.d.ts +1 -2
  351. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  352. package/dist/unstable/schema/VariantSchema.js +13 -10
  353. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  354. package/dist/unstable/socket/Socket.d.ts +1 -1
  355. package/dist/unstable/socket/Socket.js +1 -1
  356. package/dist/unstable/socket/Socket.js.map +1 -1
  357. package/dist/unstable/sql/SqlError.d.ts +2 -2
  358. package/dist/unstable/sql/SqlError.js +2 -2
  359. package/dist/unstable/sql/SqlError.js.map +1 -1
  360. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  361. package/dist/unstable/sql/Statement.js +7 -6
  362. package/dist/unstable/sql/Statement.js.map +1 -1
  363. package/package.json +1 -1
  364. package/src/Array.ts +86 -25
  365. package/src/Channel.ts +32 -14
  366. package/src/Config.ts +6 -5
  367. package/src/ConfigProvider.ts +7 -7
  368. package/src/Data.ts +3 -2
  369. package/src/Effect.ts +70 -116
  370. package/src/FiberHandle.ts +3 -2
  371. package/src/Iterable.ts +2 -1
  372. package/src/JsonPatch.ts +4 -3
  373. package/src/JsonSchema.ts +9 -11
  374. package/src/Logger.ts +3 -2
  375. package/src/ManagedRuntime.ts +13 -0
  376. package/src/Metric.ts +4 -3
  377. package/src/Optic.ts +5 -4
  378. package/src/Option.ts +2 -1
  379. package/src/PartitionedSemaphore.ts +1 -4
  380. package/src/Record.ts +119 -22
  381. package/src/References.ts +0 -46
  382. package/src/Request.ts +5 -7
  383. package/src/Result.ts +2 -1
  384. package/src/Schema.ts +2537 -986
  385. package/src/SchemaAST.ts +228 -149
  386. package/src/SchemaError.ts +1 -1
  387. package/src/SchemaGetter.ts +36 -29
  388. package/src/SchemaIssue.ts +1 -1
  389. package/src/SchemaParser.ts +1 -25
  390. package/src/SchemaRepresentation.ts +697 -3398
  391. package/src/SchemaTransformation.ts +3 -3
  392. package/src/Semaphore.ts +5 -3
  393. package/src/Stream.ts +63 -19
  394. package/src/Struct.ts +5 -4
  395. package/src/Types.ts +1 -3
  396. package/src/index.ts +0 -5
  397. package/src/internal/core.ts +3 -2
  398. package/src/internal/effect.ts +67 -31
  399. package/src/internal/matcher.ts +1 -1
  400. package/src/internal/record.ts +11 -7
  401. package/src/internal/references.ts +0 -5
  402. package/src/internal/schema/annotations.ts +44 -0
  403. package/src/internal/schema/fromJsonSchemaDocument.ts +957 -0
  404. package/src/internal/schema/fromRepresentation.ts +345 -0
  405. package/src/internal/schema/schema.ts +45 -46
  406. package/src/internal/schema/{arbitrary.ts → toArbitrary.ts} +8 -10
  407. package/src/internal/schema/toCodeDocument.ts +572 -0
  408. package/src/internal/schema/{equivalence.ts → toEquivalence.ts} +12 -7
  409. package/src/internal/schema/toJsonSchemaDocument.ts +475 -0
  410. package/src/internal/schema/toRepresentation.ts +401 -0
  411. package/src/internal/stackTraceLimit.ts +3 -7
  412. package/src/testing/TestClock.ts +1 -1
  413. package/src/unstable/ai/AiError.ts +5 -4
  414. package/src/unstable/ai/AnthropicStructuredOutput.ts +102 -333
  415. package/src/unstable/ai/EmbeddingModel.ts +1 -1
  416. package/src/unstable/ai/LanguageModel.ts +30 -28
  417. package/src/unstable/ai/McpSchema.ts +15 -15
  418. package/src/unstable/ai/McpServer.ts +172 -56
  419. package/src/unstable/ai/OpenAiStructuredOutput.ts +230 -395
  420. package/src/unstable/ai/Response.ts +24 -24
  421. package/src/unstable/ai/Tool.ts +22 -4
  422. package/src/unstable/ai/Toolkit.ts +19 -7
  423. package/src/unstable/ai/internal/codec-transformer.ts +13 -7
  424. package/src/unstable/ai/internal/structured-output.ts +458 -0
  425. package/src/unstable/cli/CliError.ts +51 -5
  426. package/src/unstable/cli/Command.ts +4 -4
  427. package/src/unstable/cli/Param.ts +3 -3
  428. package/src/unstable/cli/Primitive.ts +1 -1
  429. package/src/unstable/cli/internal/command.ts +13 -5
  430. package/src/unstable/cli/internal/config.ts +8 -10
  431. package/src/unstable/cluster/ClusterWorkflowEngine.ts +3 -3
  432. package/src/unstable/cluster/Entity.ts +1 -1
  433. package/src/unstable/cluster/Envelope.ts +2 -1
  434. package/src/unstable/cluster/Reply.ts +1 -1
  435. package/src/unstable/cluster/Runner.ts +1 -1
  436. package/src/unstable/cluster/RunnerAddress.ts +1 -1
  437. package/src/unstable/cluster/ShardId.ts +1 -1
  438. package/src/unstable/cluster/Sharding.ts +161 -34
  439. package/src/unstable/cluster/ShardingConfig.ts +5 -1
  440. package/src/unstable/cluster/SingleRunner.ts +4 -2
  441. package/src/unstable/cluster/SqlMessageStorage.ts +83 -35
  442. package/src/unstable/cluster/SqlRunnerStorage.ts +186 -116
  443. package/src/unstable/cluster/internal/entityManager.ts +31 -10
  444. package/src/unstable/cluster/internal/shardLock.ts +9 -0
  445. package/src/unstable/devtools/DevToolsSchema.ts +10 -5
  446. package/src/unstable/eventlog/EventJournal.ts +1 -1
  447. package/src/unstable/eventlog/EventLog.ts +21 -11
  448. package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
  449. package/src/unstable/eventlog/EventLogMessage.ts +10 -3
  450. package/src/unstable/eventlog/SqlEventJournal.ts +2 -2
  451. package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +1 -1
  452. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +6 -3
  453. package/src/unstable/http/Cookies.ts +29 -24
  454. package/src/unstable/http/Headers.ts +8 -8
  455. package/src/unstable/http/HttpClientRequest.ts +57 -0
  456. package/src/unstable/http/HttpServerRequest.ts +5 -4
  457. package/src/unstable/http/Multipart.ts +16 -13
  458. package/src/unstable/http/Template.ts +1 -1
  459. package/src/unstable/http/UrlParams.ts +17 -14
  460. package/src/unstable/httpapi/HttpApi.ts +3 -3
  461. package/src/unstable/httpapi/HttpApiClient.ts +5 -5
  462. package/src/unstable/httpapi/HttpApiGroup.ts +1 -1
  463. package/src/unstable/httpapi/OpenApi.ts +52 -28
  464. package/src/unstable/observability/OtlpExporter.ts +109 -5
  465. package/src/unstable/observability/OtlpLogger.ts +5 -5
  466. package/src/unstable/observability/OtlpMetrics.ts +8 -4
  467. package/src/unstable/observability/OtlpTracer.ts +8 -4
  468. package/src/unstable/persistence/Persistable.ts +3 -2
  469. package/src/unstable/persistence/RateLimiter.ts +2 -2
  470. package/src/unstable/persistence/Redis.ts +2 -2
  471. package/src/unstable/process/ChildProcessSpawner.ts +1 -1
  472. package/src/unstable/reactivity/AsyncResult.ts +4 -3
  473. package/src/unstable/reactivity/Atom.ts +92 -0
  474. package/src/unstable/reactivity/AtomRegistry.ts +1 -1
  475. package/src/unstable/rpc/RpcClient.ts +2 -1
  476. package/src/unstable/schema/VariantSchema.ts +14 -24
  477. package/src/unstable/socket/Socket.ts +1 -1
  478. package/src/unstable/sql/SqlError.ts +2 -2
  479. package/src/unstable/sql/Statement.ts +7 -6
  480. package/dist/SchemaUtils.d.ts +0 -28
  481. package/dist/SchemaUtils.d.ts.map +0 -1
  482. package/dist/SchemaUtils.js +0 -45
  483. package/dist/SchemaUtils.js.map +0 -1
  484. package/dist/internal/schema/arbitrary.d.ts.map +0 -1
  485. package/dist/internal/schema/arbitrary.js.map +0 -1
  486. package/dist/internal/schema/equivalence.d.ts +0 -2
  487. package/dist/internal/schema/equivalence.d.ts.map +0 -1
  488. package/dist/internal/schema/equivalence.js.map +0 -1
  489. package/dist/internal/schema/representation.d.ts +0 -2
  490. package/dist/internal/schema/representation.d.ts.map +0 -1
  491. package/dist/internal/schema/representation.js +0 -865
  492. package/dist/internal/schema/representation.js.map +0 -1
  493. package/src/SchemaUtils.ts +0 -51
  494. package/src/internal/schema/representation.ts +0 -795
@@ -1 +1 @@
1
- {"version":3,"file":"Tool.js","names":["Context","constFalse","constTrue","identity","StackTraceLimit","pipeArguments","Predicate","Schema","SchemaAST","TypeId","ProviderDefinedTypeId","DynamicTypeId","isUserDefined","u","hasProperty","isProviderDefined","isDynamic","clone","self","overrides","Object","assign","create","getPrototypeOf","Proto","_Requirements","pipe","arguments","addDependency","setParameters","parametersSchema","setSuccess","successSchema","setFailure","failureSchema","annotate","tag","value","annotations","add","annotateMerge","context","merge","ProviderDefinedProto","DynamicProto","userDefinedProto","options","id","name","providerDefinedProto","empty","dynamicProto","make","success","Void","failure","Never","description","parameters","EmptyParams","failureMode","needsApproval","dynamic","Unknown","rawParameters","isEffectSchema","isSchema","jsonSchema","undefined","providerDefined","args","isNotUndefined","customName","providerName","argsSchema","requiresHandler","NameMapper","customToProvider","Map","providerToCustom","constructor","tools","tool","set","customNames","Array","from","keys","providerNames","getCustomName","get","getProviderName","getDescription","resolveDescription","ast","getJsonSchema","getJsonSchemaFromSchema","schema","transformer","document","toJsonSchemaDocument","definitions","length","$defs","Title","Service","Meta","Readonly","Reference","defaultValue","Destructive","Idempotent","OpenWorld","Strict","getStrictMode","suspectProtoRx","suspectConstructorRx","_parse","text","obj","JSON","parse","test","filter","next","nodes","node","prototype","hasOwnProperty","call","SyntaxError","key","push","unsafeSecureJsonParse","prevLimit","getStackTraceLimit","setStackTraceLimit","Record","String","isEmptyParamsRecord","indexSignature","parameter","string","isNever","type"],"sources":["../../../src/unstable/ai/Tool.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Tool.js","names":["Context","constFalse","constTrue","identity","StackTraceLimit","pipeArguments","Predicate","Schema","SchemaAST","TypeId","ProviderDefinedTypeId","DynamicTypeId","isUserDefined","u","hasProperty","isProviderDefined","isDynamic","clone","self","overrides","Object","assign","create","getPrototypeOf","Proto","_Requirements","pipe","arguments","addDependency","setParameters","parametersSchema","setSuccess","successSchema","setFailure","failureSchema","setNeedsApproval","needsApproval","annotate","tag","value","annotations","add","annotateMerge","context","merge","ProviderDefinedProto","DynamicProto","userDefinedProto","options","id","name","providerDefinedProto","empty","dynamicProto","make","success","Void","failure","Never","description","parameters","EmptyParams","failureMode","dynamic","Unknown","rawParameters","isEffectSchema","isSchema","jsonSchema","undefined","providerDefined","args","isNotUndefined","customName","providerName","argsSchema","requiresHandler","NameMapper","customToProvider","Map","providerToCustom","constructor","tools","tool","set","customNames","Array","from","keys","providerNames","getCustomName","get","getProviderName","getDescription","resolveDescription","ast","getJsonSchema","getJsonSchemaFromSchema","schema","getJsonSchemaFromSchemaWith","toJsonSchemaDocument","transformer","document","definitions","length","$defs","Title","Service","Meta","Readonly","Reference","defaultValue","Destructive","Idempotent","OpenWorld","Strict","getStrictMode","suspectProtoRx","suspectConstructorRx","_parse","text","obj","JSON","parse","test","filter","next","nodes","node","hasOwn","SyntaxError","key","push","unsafeSecureJsonParse","prevLimit","getStackTraceLimit","setStackTraceLimit","Record","String","isEmptyParamsRecord","indexSignature","parameter","string","isNever","type"],"sources":["../../../src/unstable/ai/Tool.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -70,6 +70,10 @@ export interface Toolkit<in out Tools extends Record<string, Tool.Any>> extends
70
70
  * @since 4.0.0
71
71
  */
72
72
  export interface HandlerContext<Tool extends Tool.Any> {
73
+ /**
74
+ * The unique identifier of the tool call, when available.
75
+ */
76
+ readonly toolCallId?: string | undefined;
73
77
  /**
74
78
  * Emit a preliminary result during long-running tool calls.
75
79
  *
@@ -152,7 +156,11 @@ export interface WithHandler<in out Tools extends Record<string, Tool.Any>> {
152
156
  /**
153
157
  * Parameters to pass to the tool handler.
154
158
  */
155
- params: Tool.Parameters<Tools[Name]>) => Effect.Effect<Stream.Stream<Tool.HandlerResult<Tools[Name]>, Tool.HandlerError<Tools[Name]>, Tool.HandlerServices<Tools[Name]>>, AiError.AiError>;
159
+ params: Tool.Parameters<Tools[Name]>,
160
+ /**
161
+ * The unique identifier of the tool call.
162
+ */
163
+ toolCallId?: string) => Effect.Effect<Stream.Stream<Tool.HandlerResult<Tools[Name]>, Tool.HandlerError<Tools[Name]>, Tool.HandlerServices<Tools[Name]>>, AiError.AiError>;
156
164
  }
157
165
  /**
158
166
  * A utility type which can be used to extract the tools from a toolkit with
@@ -1 +1 @@
1
- {"version":3,"file":"Toolkit.d.ts","sourceRoot":"","sources":["../../../src/unstable/ai/Toolkit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Toolkit.d.ts","sourceRoot":"","sources":["../../../src/unstable/ai/Toolkit.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import * as Effect from "../../Effect.js";
3
3
  import * as Effectable from "../../Effectable.js";
4
4
  import * as Fiber from "../../Fiber.js";
5
5
  import { identity } from "../../Function.js";
6
+ import * as InternalRecord from "../../internal/record.js";
6
7
  import * as Layer from "../../Layer.js";
7
8
  import * as Predicate from "../../Predicate.js";
8
9
  import * as Queue from "../../Queue.js";
@@ -36,8 +37,8 @@ const Proto = {
36
37
  }
37
38
  return schemas;
38
39
  };
39
- const handle = Effect.fnUntraced(function* (name, params) {
40
- const tool = tools[name];
40
+ const handle = Effect.fnUntraced(function* (name, params, toolCallId) {
41
+ const tool = Object.hasOwn(tools, name) ? tools[name] : undefined;
41
42
  yield* Effect.annotateCurrentSpan({
42
43
  tool: name,
43
44
  parameters: params
@@ -68,6 +69,7 @@ const Proto = {
68
69
  // Setup the handler context
69
70
  const queue = yield* Queue.make();
70
71
  const context = {
72
+ toolCallId,
71
73
  preliminary: result => Effect.asVoid(Queue.offer(queue, {
72
74
  result,
73
75
  isFailure: false,
@@ -141,12 +143,14 @@ const Proto = {
141
143
  const handlers = Effect.isEffect(build) ? yield* build : build;
142
144
  const context = new Map();
143
145
  for (const [name, handler] of Object.entries(handlers)) {
144
- const tool = this.tools[name];
145
- context.set(tool.id, {
146
- name,
147
- handler,
148
- context: services
149
- });
146
+ const tool = Object.hasOwn(this.tools, name) ? this.tools[name] : undefined;
147
+ if (tool !== undefined) {
148
+ context.set(tool.id, {
149
+ name,
150
+ handler,
151
+ context: services
152
+ });
153
+ }
150
154
  }
151
155
  return Context.makeUnsafe(context);
152
156
  });
@@ -167,7 +171,7 @@ const makeProto = tools => Object.assign(function () {}, Proto, {
167
171
  const resolveInput = (...tools) => {
168
172
  const output = {};
169
173
  for (const tool of tools) {
170
- output[tool.name] = tool;
174
+ InternalRecord.assignProperty(output, tool.name, tool);
171
175
  }
172
176
  return output;
173
177
  };
@@ -258,7 +262,7 @@ export const merge = (
258
262
  const tools = {};
259
263
  for (const toolkit of toolkits) {
260
264
  for (const [name, tool] of Object.entries(toolkit.tools)) {
261
- tools[name] = tool;
265
+ InternalRecord.assignProperty(tools, name, tool);
262
266
  }
263
267
  }
264
268
  return makeProto(tools);
@@ -1 +1 @@
1
- {"version":3,"file":"Toolkit.js","names":["Context","Effect","Effectable","Fiber","identity","Layer","Predicate","Queue","Schema","Stream","AiError","TypeId","Proto","Prototype","label","evaluate","fnUntraced","parent","tools","services","context","schemasCache","WeakMap","getSchemas","tool","schemas","get","isUndefined","handler","mapUnsafe","id","resultSchema","failureMode","Union","successSchema","failureSchema","decodeParameters","isSchema","parametersSchema","decodeUnknownEffect","u","succeed","decodeResult","encodeResult","encodeUnknownEffect","set","handle","name","params","annotateCurrentSpan","parameters","make","module","method","reason","ToolNotFoundError","toolName","availableTools","Object","keys","decodedParams","pipe","mapError","cause","ToolParameterValidationError","toolParams","description","message","queue","preliminary","result","asVoid","offer","isFailure","fiber","flatMap","updateContext","input","merge","matchCauseEffect","onFailure","failCause","onSuccess","end","forkChild","ToolResultEncodingError","toolResult","normalizeError","error","normalizedError","isSchemaError","InvalidToolResultError","isAiErrorReason","fromQueue","catch","fail","mapEffect","output","encodedResult","onEnd","interrupt","of","toHandlers","build","gen","self","handlers","isEffect","Map","entries","makeUnsafe","toLayer","effectContext","toJSON","_id","Array","from","values","map","makeProto","assign","resolveInput","empty","toolkits","toolkit"],"sources":["../../../src/unstable/ai/Toolkit.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Toolkit.js","names":["Context","Effect","Effectable","Fiber","identity","InternalRecord","Layer","Predicate","Queue","Schema","Stream","AiError","TypeId","Proto","Prototype","label","evaluate","fnUntraced","parent","tools","services","context","schemasCache","WeakMap","getSchemas","tool","schemas","get","isUndefined","handler","mapUnsafe","id","resultSchema","failureMode","Union","successSchema","failureSchema","decodeParameters","isSchema","parametersSchema","decodeUnknownEffect","u","succeed","decodeResult","encodeResult","encodeUnknownEffect","set","handle","name","params","toolCallId","Object","hasOwn","undefined","annotateCurrentSpan","parameters","make","module","method","reason","ToolNotFoundError","toolName","availableTools","keys","decodedParams","pipe","mapError","cause","ToolParameterValidationError","toolParams","description","message","queue","preliminary","result","asVoid","offer","isFailure","fiber","flatMap","updateContext","input","merge","matchCauseEffect","onFailure","failCause","onSuccess","end","forkChild","ToolResultEncodingError","toolResult","normalizeError","error","normalizedError","isSchemaError","InvalidToolResultError","isAiErrorReason","fromQueue","catch","fail","mapEffect","output","encodedResult","onEnd","interrupt","of","toHandlers","build","gen","self","handlers","isEffect","Map","entries","makeUnsafe","toLayer","effectContext","toJSON","_id","Array","from","values","map","makeProto","assign","resolveInput","assignProperty","empty","toolkits","toolkit"],"sources":["../../../src/unstable/ai/Toolkit.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,17 +1,20 @@
1
1
  import * as JsonSchema from "../../../JsonSchema.js";
2
2
  import * as Schema from "../../../Schema.js";
3
- /** @internal */
4
- export const defaultCodecTransformer = codec => {
5
- const document = JsonSchema.resolveTopLevel$ref(Schema.toJsonSchemaDocument(codec));
6
- const jsonSchema = {
7
- ...document.schema
8
- };
9
- if (Object.keys(document.definitions).length > 0) {
10
- jsonSchema.$defs = document.definitions;
11
- }
12
- return {
13
- codec,
14
- jsonSchema
3
+ const makeDefaultCodecTransformer = toJsonSchemaDocument => {
4
+ return codec => {
5
+ const document = JsonSchema.resolveTopLevel$ref(toJsonSchemaDocument(codec));
6
+ const jsonSchema = {
7
+ ...document.schema
8
+ };
9
+ if (Object.keys(document.definitions).length > 0) {
10
+ jsonSchema.$defs = document.definitions;
11
+ }
12
+ return {
13
+ codec,
14
+ jsonSchema
15
+ };
15
16
  };
16
17
  };
18
+ /** @internal */
19
+ export const defaultCodecTransformer = /*#__PURE__*/makeDefaultCodecTransformer(Schema.toJsonSchemaDocument);
17
20
  //# sourceMappingURL=codec-transformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codec-transformer.js","names":["JsonSchema","Schema","defaultCodecTransformer","codec","document","resolveTopLevel$ref","toJsonSchemaDocument","jsonSchema","schema","Object","keys","definitions","length","$defs"],"sources":["../../../../src/unstable/ai/internal/codec-transformer.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,UAAU,MAAM,wBAAwB;AACpD,OAAO,KAAKC,MAAM,MAAM,oBAAoB;AAG5C;AACA,OAAO,MAAMC,uBAAuB,GAAsBC,KAAK,IAAI;EACjE,MAAMC,QAAQ,GAAGJ,UAAU,CAACK,mBAAmB,CAACJ,MAAM,CAACK,oBAAoB,CAACH,KAAK,CAAC,CAAC;EACnF,MAAMI,UAAU,GAAG;IAAE,GAAGH,QAAQ,CAACI;EAAM,CAAE;EACzC,IAAIC,MAAM,CAACC,IAAI,CAACN,QAAQ,CAACO,WAAW,CAAC,CAACC,MAAM,GAAG,CAAC,EAAE;IAChDL,UAAU,CAACM,KAAK,GAAGT,QAAQ,CAACO,WAAW;EACzC;EACA,OAAO;IAAER,KAAK;IAAEI;EAAU,CAAE;AAC9B,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"codec-transformer.js","names":["JsonSchema","Schema","makeDefaultCodecTransformer","toJsonSchemaDocument","codec","document","resolveTopLevel$ref","jsonSchema","schema","Object","keys","definitions","length","$defs","defaultCodecTransformer"],"sources":["../../../../src/unstable/ai/internal/codec-transformer.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,UAAU,MAAM,wBAAwB;AACpD,OAAO,KAAKC,MAAM,MAAM,oBAAoB;AAG5C,MAAMC,2BAA2B,GAC/BC,oBAAyF,IACrE;EACpB,OAAQC,KAAK,IAAI;IACf,MAAMC,QAAQ,GAAGL,UAAU,CAACM,mBAAmB,CAACH,oBAAoB,CAACC,KAAK,CAAC,CAAC;IAC5E,MAAMG,UAAU,GAAG;MAAE,GAAGF,QAAQ,CAACG;IAAM,CAAE;IACzC,IAAIC,MAAM,CAACC,IAAI,CAACL,QAAQ,CAACM,WAAW,CAAC,CAACC,MAAM,GAAG,CAAC,EAAE;MAChDL,UAAU,CAACM,KAAK,GAAGR,QAAQ,CAACM,WAAW;IACzC;IACA,OAAO;MAAEP,KAAK;MAAEG;IAAU,CAAE;EAC9B,CAAC;AACH,CAAC;AAED;AACA,OAAO,MAAMO,uBAAuB,gBAAGZ,2BAA2B,CAACD,MAAM,CAACE,oBAAoB,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=structured-output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structured-output.d.ts","sourceRoot":"","sources":["../../../../src/unstable/ai/internal/structured-output.ts"],"names":[],"mappings":""}
@@ -0,0 +1,316 @@
1
+ import * as Arr from "../../../Array.js";
2
+ import * as InternalRecord from "../../../internal/record.js";
3
+ import * as Option from "../../../Option.js";
4
+ import * as Predicate from "../../../Predicate.js";
5
+ import * as Schema from "../../../Schema.js";
6
+ import * as SchemaAST from "../../../SchemaAST.js";
7
+ import * as SchemaTransformation from "../../../SchemaTransformation.js";
8
+ import * as Tool from "../Tool.js";
9
+ const REST_PROPERTY_NAME = "__rest__";
10
+ const TAIL_PROPERTY_PREFIX = "__tail_";
11
+ const RECORD_DESCRIPTION = "Object encoded as array of [key, value] pairs. Apply object constraints to the decoded object";
12
+ const TUPLE_DESCRIPTION = "Tuple encoded as an object with numeric string keys ('0', '1', ...). If present, '__rest__' contains remaining elements";
13
+ const TUPLE_TAIL_DESCRIPTION = `${TUPLE_DESCRIPTION}. Post-rest elements use '__tail_0__', '__tail_1__', and so on`;
14
+ /** @internal */
15
+ export function toCodec(schema) {
16
+ const jsonCodec = Schema.toCodecJson(schema);
17
+ const encoded = SchemaAST.toEncoded(jsonCodec.ast);
18
+ const from = transform(encoded);
19
+ if (from === encoded) {
20
+ return jsonCodec.ast === schema.ast ? schema : jsonCodec;
21
+ }
22
+ return Schema.make(SchemaAST.decodeTo(from, jsonCodec.ast, SchemaTransformation.passthrough()));
23
+ }
24
+ function transform(root) {
25
+ const cache = new Map();
26
+ function recur(ast) {
27
+ const cached = cache.get(ast);
28
+ if (cached !== undefined) return cached;
29
+ switch (ast._tag) {
30
+ case "Union":
31
+ {
32
+ const types = SchemaAST.mapOrSame(ast.types, recur);
33
+ const checks = prepareChecks(ast.checks);
34
+ const mode = ast.mode === "oneOf" ? "anyOf" : ast.mode;
35
+ if (types === ast.types && checks === ast.checks && mode === ast.mode) return ast;
36
+ return new SchemaAST.Union(types, mode, ast.annotations, checks, ast.encoding, ast.context, ast.encodingChecks);
37
+ }
38
+ case "Arrays":
39
+ {
40
+ if (ast.elements.length > 0 || ast.rest.length > 1) {
41
+ return tupleToObject(ast, recur);
42
+ }
43
+ const elements = SchemaAST.mapOrSame(ast.elements, recur);
44
+ const rest = SchemaAST.mapOrSame(ast.rest, recur);
45
+ const checks = prepareChecks(ast.checks);
46
+ if (elements === ast.elements && rest === ast.rest && checks === ast.checks) return ast;
47
+ return new SchemaAST.Arrays(ast.isMutable, elements, rest, ast.annotations, checks, ast.encoding, ast.context, ast.encodingChecks);
48
+ }
49
+ case "Objects":
50
+ {
51
+ if (ast.indexSignatures.length === 1 && ast.propertySignatures.length === 0) {
52
+ const indexSignature = ast.indexSignatures[0];
53
+ if (Tool.isEmptyParamsRecord(indexSignature)) return ast;
54
+ }
55
+ if (ast.indexSignatures.length > 0) {
56
+ return objectToEntries(ast, recur);
57
+ }
58
+ const propertySignatures = SchemaAST.mapOrSame(ast.propertySignatures, propertySignature => {
59
+ let type = recur(propertySignature.type);
60
+ if (SchemaAST.isOptional(propertySignature.type)) {
61
+ type = optionalToNullable(type);
62
+ }
63
+ return type === propertySignature.type ? propertySignature : new SchemaAST.PropertySignature(propertySignature.name, type);
64
+ });
65
+ const indexSignatures = SchemaAST.mapOrSame(ast.indexSignatures, indexSignature => {
66
+ const parameter = recur(indexSignature.parameter);
67
+ const type = recur(indexSignature.type);
68
+ return parameter === indexSignature.parameter && type === indexSignature.type ? indexSignature : new SchemaAST.IndexSignature(parameter, type, indexSignature.merge);
69
+ });
70
+ const checks = prepareChecks(ast.checks);
71
+ if (propertySignatures === ast.propertySignatures && indexSignatures === ast.indexSignatures && checks === ast.checks) {
72
+ return ast;
73
+ }
74
+ return new SchemaAST.Objects(propertySignatures, indexSignatures, ast.annotations, checks, ast.encoding, ast.context, ast.encodingChecks);
75
+ }
76
+ case "Suspend":
77
+ {
78
+ const out = new SchemaAST.Suspend(() => recur(ast.thunk()), ast.annotations, undefined, ast.encoding, ast.context);
79
+ cache.set(ast, out);
80
+ return out;
81
+ }
82
+ default:
83
+ {
84
+ const checks = prepareChecks(ast.checks);
85
+ return checks === ast.checks ? ast : SchemaAST.replaceChecks(ast, checks);
86
+ }
87
+ }
88
+ }
89
+ return recur(root);
90
+ }
91
+ function tupleToObject(ast, recur) {
92
+ const propertySignatures = ast.elements.map((element, index) => new SchemaAST.PropertySignature(String(index), element));
93
+ if (ast.rest.length === 1) {
94
+ propertySignatures.push(new SchemaAST.PropertySignature(REST_PROPERTY_NAME, new SchemaAST.Arrays(false, [], ast.rest)));
95
+ } else if (ast.rest.length > 1) {
96
+ propertySignatures.push(new SchemaAST.PropertySignature(REST_PROPERTY_NAME, new SchemaAST.Arrays(false, [], [ast.rest[0]])));
97
+ for (let index = 1; index < ast.rest.length; index++) {
98
+ propertySignatures.push(new SchemaAST.PropertySignature(`${TAIL_PROPERTY_PREFIX}${index - 1}__`, ast.rest[index]));
99
+ }
100
+ }
101
+ const from = recur(new SchemaAST.Objects(propertySignatures, [], structuralAnnotations(ast, ast.rest.length > 1 ? TUPLE_TAIL_DESCRIPTION : TUPLE_DESCRIPTION), compilerChecks(ast.checks)));
102
+ return SchemaAST.decodeTo(from, ast, SchemaTransformation.transform({
103
+ decode: object => {
104
+ let tuple = [];
105
+ for (let index = 0; index < ast.elements.length; index++) {
106
+ const key = String(index);
107
+ if (object[key] !== undefined) tuple.push(object[key]);
108
+ }
109
+ if (REST_PROPERTY_NAME in object) {
110
+ tuple = [...tuple, ...object[REST_PROPERTY_NAME]];
111
+ }
112
+ for (let index = 1; index < ast.rest.length; index++) {
113
+ tuple.push(object[`${TAIL_PROPERTY_PREFIX}${index - 1}__`]);
114
+ }
115
+ return tuple;
116
+ },
117
+ encode: tuple => {
118
+ const object = {};
119
+ for (let index = 0; index < ast.elements.length; index++) {
120
+ if (index < tuple.length) object[String(index)] = tuple[index];
121
+ }
122
+ if (ast.rest.length >= 1) {
123
+ const tailLength = ast.rest.length - 1;
124
+ const restEnd = Math.max(ast.elements.length, tuple.length - tailLength);
125
+ object[REST_PROPERTY_NAME] = tuple.slice(ast.elements.length, restEnd);
126
+ for (let index = 0; index < tailLength; index++) {
127
+ object[`${TAIL_PROPERTY_PREFIX}${index}__`] = tuple[restEnd + index];
128
+ }
129
+ }
130
+ return object;
131
+ }
132
+ }));
133
+ }
134
+ function objectToEntries(ast, recur) {
135
+ const checks = combineChecks(recordChecks(ast.checks), compilerChecks(ast.checks));
136
+ const key = unionOrSingle([...ast.propertySignatures.map(propertySignature => new SchemaAST.Literal(propertySignature.name)), ...ast.indexSignatures.map(indexSignature => indexSignature.parameter)]);
137
+ const value = unionOrSingle([...ast.propertySignatures.map(propertySignature => propertySignature.type), ...ast.indexSignatures.map(indexSignature => indexSignature.type)]);
138
+ const from = recur(new SchemaAST.Arrays(false, [], [new SchemaAST.Arrays(false, [key, value], [])], structuralAnnotations(ast, RECORD_DESCRIPTION), checks));
139
+ return SchemaAST.decodeTo(from, ast, SchemaTransformation.transform({
140
+ decode: Object.fromEntries,
141
+ encode: Object.entries
142
+ }));
143
+ }
144
+ function unionOrSingle(types) {
145
+ const unique = Array.from(new Set(types));
146
+ return unique.length === 1 ? unique[0] : new SchemaAST.Union(unique, "anyOf");
147
+ }
148
+ function combineChecks(left, right) {
149
+ if (left === undefined) return right;
150
+ if (right === undefined) return left;
151
+ return [...left, ...right];
152
+ }
153
+ function compilerChecks(checks) {
154
+ if (checks === undefined) return undefined;
155
+ const out = checks.flatMap(compilerCheck);
156
+ return Arr.isArrayNonEmpty(out) ? out : undefined;
157
+ }
158
+ function compilerCheck(check) {
159
+ // Structural rewrites change the value seen by provider-side checks. A
160
+ // no-op proxy lets the generic compiler call `toJsonSchema` with the real
161
+ // provider type and dependency schemas without running the original filter
162
+ // against the wrong runtime shape.
163
+ const annotations = compilerAnnotations(check.annotations);
164
+ if (check._tag === "Filter") {
165
+ return annotations === undefined ? [] : [new SchemaAST.Filter(() => undefined, annotations)];
166
+ }
167
+ const checks = check.checks.flatMap(compilerCheck);
168
+ if (Arr.isArrayNonEmpty(checks)) {
169
+ return [new SchemaAST.FilterGroup(checks, annotations)];
170
+ }
171
+ return annotations === undefined ? [] : [new SchemaAST.Filter(() => undefined, annotations)];
172
+ }
173
+ function compilerAnnotations(annotations) {
174
+ if (annotations?.toJsonSchema === undefined) return undefined;
175
+ return {
176
+ representation: annotations.representation,
177
+ toJsonSchema: annotations.toJsonSchema
178
+ };
179
+ }
180
+ function optionalToNullable(type) {
181
+ return SchemaAST.decodeTo(new SchemaAST.Union([type, SchemaAST.null], "anyOf"), SchemaAST.optionalKey(type), SchemaTransformation.transformOptional({
182
+ decode: Option.filter(Predicate.isNotNull),
183
+ encode: Option.orElseSome(() => null)
184
+ }));
185
+ }
186
+ function prepareChecks(checks) {
187
+ if (checks === undefined) return undefined;
188
+ const out = SchemaAST.mapOrSame(checks, prepareCheck);
189
+ return out;
190
+ }
191
+ function prepareCheck(check) {
192
+ switch (check._tag) {
193
+ case "Filter":
194
+ {
195
+ const id = check.annotations?.representation?.id;
196
+ return id === "effect/schema/isFinite" || id === "effect/schema/isInt" ? check.annotate({
197
+ expected: undefined
198
+ }) : check;
199
+ }
200
+ case "FilterGroup":
201
+ {
202
+ const checks = SchemaAST.mapOrSame(check.checks, prepareCheck);
203
+ return checks === check.checks ? check : new SchemaAST.FilterGroup(checks, check.annotations);
204
+ }
205
+ }
206
+ }
207
+ function recordChecks(checks) {
208
+ if (checks === undefined) return undefined;
209
+ const out = checks.flatMap(recordCheck);
210
+ return Arr.isArrayNonEmpty(out) ? out : undefined;
211
+ }
212
+ function recordCheck(check) {
213
+ if (check._tag === "FilterGroup") return check.checks.flatMap(recordCheck);
214
+ const representation = check.annotations?.representation;
215
+ const payload = representation?.payload;
216
+ if (!isJsonObject(payload)) return [];
217
+ // A decoded record with at least N properties necessarily came from at least
218
+ // N entries. Upper bounds are not transported because duplicate provider
219
+ // keys can collapse during `Object.fromEntries`, so `maxItems` could reject
220
+ // an input that the returned codec accepts.
221
+ switch (representation?.id) {
222
+ case "effect/schema/isMinProperties":
223
+ return typeof payload.minProperties === "number" ? [withoutDescription(Schema.isMinLength(payload.minProperties))] : [];
224
+ case "effect/schema/isPropertiesLengthBetween":
225
+ return typeof payload.minimum === "number" ? [withoutDescription(Schema.isMinLength(payload.minimum))] : [];
226
+ default:
227
+ return [];
228
+ }
229
+ }
230
+ function isJsonObject(input) {
231
+ return typeof input === "object" && input !== null && !Array.isArray(input);
232
+ }
233
+ function withoutDescription(check) {
234
+ return check.annotate({
235
+ description: undefined,
236
+ expected: undefined,
237
+ title: undefined
238
+ });
239
+ }
240
+ function structuralAnnotations(ast, structuralDescription) {
241
+ const descriptions = [];
242
+ appendAnnotationDescription(descriptions, ast.annotations);
243
+ if (ast.checks !== undefined) {
244
+ for (const check of ast.checks) appendCheckDescriptions(descriptions, check);
245
+ }
246
+ return {
247
+ description: descriptions.length === 0 ? structuralDescription : `${structuralDescription}; ${descriptions.join(" and ")}`
248
+ };
249
+ }
250
+ function appendCheckDescriptions(descriptions, check) {
251
+ appendAnnotationDescription(descriptions, check.annotations);
252
+ if (check._tag === "FilterGroup") {
253
+ for (const child of check.checks) appendCheckDescriptions(descriptions, child);
254
+ }
255
+ }
256
+ function appendAnnotationDescription(descriptions, annotations) {
257
+ const description = annotations?.description ?? annotations?.expected;
258
+ if (typeof description === "string" && !descriptions.includes(description)) {
259
+ descriptions.push(description);
260
+ }
261
+ }
262
+ /** @internal */
263
+ export function walkJsonSchema(schema, visitor) {
264
+ const out = {};
265
+ for (const [key, value] of Object.entries(schema)) {
266
+ switch (key) {
267
+ case "properties":
268
+ case "patternProperties":
269
+ {
270
+ if (isJsonSchema(value)) {
271
+ const properties = {};
272
+ for (const [name, property] of Object.entries(value)) {
273
+ InternalRecord.assignProperty(properties, name, isJsonSchema(property) ? walkJsonSchema(property, visitor) : property);
274
+ }
275
+ InternalRecord.assignProperty(out, key, properties);
276
+ } else {
277
+ InternalRecord.assignProperty(out, key, value);
278
+ }
279
+ break;
280
+ }
281
+ case "additionalProperties":
282
+ case "items":
283
+ case "propertyNames":
284
+ {
285
+ InternalRecord.assignProperty(out, key, isJsonSchema(value) ? walkJsonSchema(value, visitor) : value);
286
+ break;
287
+ }
288
+ case "prefixItems":
289
+ case "allOf":
290
+ case "anyOf":
291
+ case "oneOf":
292
+ {
293
+ InternalRecord.assignProperty(out, key, Array.isArray(value) ? value.map(member => isJsonSchema(member) ? walkJsonSchema(member, visitor) : member) : value);
294
+ break;
295
+ }
296
+ default:
297
+ InternalRecord.assignProperty(out, key, value);
298
+ break;
299
+ }
300
+ }
301
+ return visitor(out);
302
+ }
303
+ /** @internal */
304
+ export function appendDescription(schema, description) {
305
+ if (typeof schema.description === "string") {
306
+ const descriptions = schema.description.split(" and ");
307
+ if (!descriptions.includes(description)) schema.description += ` and ${description}`;
308
+ } else {
309
+ schema.description = description;
310
+ }
311
+ }
312
+ /** @internal */
313
+ export function isJsonSchema(input) {
314
+ return typeof input === "object" && input !== null && !Array.isArray(input);
315
+ }
316
+ //# sourceMappingURL=structured-output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structured-output.js","names":["Arr","InternalRecord","Option","Predicate","Schema","SchemaAST","SchemaTransformation","Tool","REST_PROPERTY_NAME","TAIL_PROPERTY_PREFIX","RECORD_DESCRIPTION","TUPLE_DESCRIPTION","TUPLE_TAIL_DESCRIPTION","toCodec","schema","jsonCodec","toCodecJson","encoded","toEncoded","ast","from","transform","make","decodeTo","passthrough","root","cache","Map","recur","cached","get","undefined","_tag","types","mapOrSame","checks","prepareChecks","mode","Union","annotations","encoding","context","encodingChecks","elements","length","rest","tupleToObject","Arrays","isMutable","indexSignatures","propertySignatures","indexSignature","isEmptyParamsRecord","objectToEntries","propertySignature","type","isOptional","optionalToNullable","PropertySignature","name","parameter","IndexSignature","merge","Objects","out","Suspend","thunk","set","replaceChecks","map","element","index","String","push","structuralAnnotations","compilerChecks","decode","object","tuple","key","encode","tailLength","restEnd","Math","max","slice","combineChecks","recordChecks","unionOrSingle","Literal","value","Object","fromEntries","entries","unique","Array","Set","left","right","flatMap","compilerCheck","isArrayNonEmpty","check","compilerAnnotations","Filter","FilterGroup","toJsonSchema","representation","null","optionalKey","transformOptional","filter","isNotNull","orElseSome","prepareCheck","id","annotate","expected","recordCheck","payload","isJsonObject","minProperties","withoutDescription","isMinLength","minimum","input","isArray","description","title","structuralDescription","descriptions","appendAnnotationDescription","appendCheckDescriptions","join","child","includes","walkJsonSchema","visitor","isJsonSchema","properties","property","assignProperty","member","appendDescription","split"],"sources":["../../../../src/unstable/ai/internal/structured-output.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}