effect 4.0.6 → 4.1.0

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 (978) hide show
  1. package/README.md +1 -1
  2. package/dist/Arbitrary.d.ts +10 -2
  3. package/dist/Arbitrary.d.ts.map +1 -1
  4. package/dist/Arbitrary.js +2 -1
  5. package/dist/Arbitrary.js.map +1 -1
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +3 -0
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/Channel.d.ts +12 -6
  10. package/dist/Channel.d.ts.map +1 -1
  11. package/dist/Channel.js +30 -9
  12. package/dist/Channel.js.map +1 -1
  13. package/dist/Config.d.ts +7 -1
  14. package/dist/Config.d.ts.map +1 -1
  15. package/dist/Config.js.map +1 -1
  16. package/dist/Context.d.ts +18 -1
  17. package/dist/Context.d.ts.map +1 -1
  18. package/dist/Context.js +27 -8
  19. package/dist/Context.js.map +1 -1
  20. package/dist/Cron.d.ts +81 -11
  21. package/dist/Cron.d.ts.map +1 -1
  22. package/dist/Cron.js +101 -26
  23. package/dist/Cron.js.map +1 -1
  24. package/dist/Data.d.ts +54 -235
  25. package/dist/Data.d.ts.map +1 -1
  26. package/dist/Data.js.map +1 -1
  27. package/dist/Duration.d.ts +78 -0
  28. package/dist/Duration.d.ts.map +1 -1
  29. package/dist/Duration.js +123 -0
  30. package/dist/Duration.js.map +1 -1
  31. package/dist/Effect.d.ts +165 -8
  32. package/dist/Effect.d.ts.map +1 -1
  33. package/dist/Effect.js +12 -2
  34. package/dist/Effect.js.map +1 -1
  35. package/dist/Equal.d.ts.map +1 -1
  36. package/dist/Equal.js +8 -1
  37. package/dist/Equal.js.map +1 -1
  38. package/dist/Exit.d.ts +3 -3
  39. package/dist/Exit.d.ts.map +1 -1
  40. package/dist/Exit.js.map +1 -1
  41. package/dist/FileSystem.d.ts +59 -4
  42. package/dist/FileSystem.d.ts.map +1 -1
  43. package/dist/FileSystem.js +9 -2
  44. package/dist/FileSystem.js.map +1 -1
  45. package/dist/Formatter.d.ts.map +1 -1
  46. package/dist/Formatter.js +27 -13
  47. package/dist/Formatter.js.map +1 -1
  48. package/dist/Glob.d.ts +165 -0
  49. package/dist/Glob.d.ts.map +1 -0
  50. package/dist/Glob.js +127 -0
  51. package/dist/Glob.js.map +1 -0
  52. package/dist/Hash.d.ts.map +1 -1
  53. package/dist/Hash.js +4 -1
  54. package/dist/Hash.js.map +1 -1
  55. package/dist/JsonPatch.js +4 -0
  56. package/dist/JsonPatch.js.map +1 -1
  57. package/dist/JsonSchema.d.ts.map +1 -1
  58. package/dist/JsonSchema.js +13 -40
  59. package/dist/JsonSchema.js.map +1 -1
  60. package/dist/Match.d.ts +86 -0
  61. package/dist/Match.d.ts.map +1 -1
  62. package/dist/Match.js +72 -0
  63. package/dist/Match.js.map +1 -1
  64. package/dist/Metric.d.ts +3 -3
  65. package/dist/MutableList.d.ts +5 -2
  66. package/dist/MutableList.d.ts.map +1 -1
  67. package/dist/MutableList.js +7 -5
  68. package/dist/MutableList.js.map +1 -1
  69. package/dist/MutableRef.d.ts.map +1 -1
  70. package/dist/MutableRef.js +7 -0
  71. package/dist/MutableRef.js.map +1 -1
  72. package/dist/PartitionedSemaphore.d.ts +2 -1
  73. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  74. package/dist/PartitionedSemaphore.js +22 -12
  75. package/dist/PartitionedSemaphore.js.map +1 -1
  76. package/dist/Pool.d.ts +51 -0
  77. package/dist/Pool.d.ts.map +1 -1
  78. package/dist/Pool.js +136 -36
  79. package/dist/Pool.js.map +1 -1
  80. package/dist/PubSub.d.ts.map +1 -1
  81. package/dist/PubSub.js +5 -6
  82. package/dist/PubSub.js.map +1 -1
  83. package/dist/Random.d.ts.map +1 -1
  84. package/dist/Random.js +3 -3
  85. package/dist/Random.js.map +1 -1
  86. package/dist/RcMap.d.ts.map +1 -1
  87. package/dist/RcMap.js +8 -2
  88. package/dist/RcMap.js.map +1 -1
  89. package/dist/Ref.d.ts.map +1 -1
  90. package/dist/Ref.js +8 -0
  91. package/dist/Ref.js.map +1 -1
  92. package/dist/Schedule.d.ts +18 -1
  93. package/dist/Schedule.d.ts.map +1 -1
  94. package/dist/Schedule.js +8 -3
  95. package/dist/Schedule.js.map +1 -1
  96. package/dist/Schema.d.ts +690 -49
  97. package/dist/Schema.d.ts.map +1 -1
  98. package/dist/Schema.js +687 -28
  99. package/dist/Schema.js.map +1 -1
  100. package/dist/SchemaAST.d.ts +4 -2
  101. package/dist/SchemaAST.d.ts.map +1 -1
  102. package/dist/SchemaAST.js +14 -17
  103. package/dist/SchemaAST.js.map +1 -1
  104. package/dist/SchemaGetter.d.ts +6 -1
  105. package/dist/SchemaGetter.d.ts.map +1 -1
  106. package/dist/SchemaGetter.js +22 -11
  107. package/dist/SchemaGetter.js.map +1 -1
  108. package/dist/SchemaParser.d.ts.map +1 -1
  109. package/dist/SchemaParser.js +48 -22
  110. package/dist/SchemaParser.js.map +1 -1
  111. package/dist/SchemaRepresentation.d.ts +33 -10
  112. package/dist/SchemaRepresentation.d.ts.map +1 -1
  113. package/dist/SchemaRepresentation.js +39 -13
  114. package/dist/SchemaRepresentation.js.map +1 -1
  115. package/dist/SchemaTransformation.d.ts +12 -4
  116. package/dist/SchemaTransformation.d.ts.map +1 -1
  117. package/dist/SchemaTransformation.js +15 -5
  118. package/dist/SchemaTransformation.js.map +1 -1
  119. package/dist/ScopedCache.d.ts.map +1 -1
  120. package/dist/ScopedCache.js +5 -7
  121. package/dist/ScopedCache.js.map +1 -1
  122. package/dist/Semaphore.d.ts +130 -0
  123. package/dist/Semaphore.d.ts.map +1 -1
  124. package/dist/Semaphore.js +94 -35
  125. package/dist/Semaphore.js.map +1 -1
  126. package/dist/Sink.d.ts.map +1 -1
  127. package/dist/Sink.js +7 -2
  128. package/dist/Sink.js.map +1 -1
  129. package/dist/Stream.d.ts +13 -4
  130. package/dist/Stream.d.ts.map +1 -1
  131. package/dist/Stream.js +31 -10
  132. package/dist/Stream.js.map +1 -1
  133. package/dist/String.d.ts +3 -0
  134. package/dist/String.d.ts.map +1 -1
  135. package/dist/String.js +3 -0
  136. package/dist/String.js.map +1 -1
  137. package/dist/Terminal.d.ts +18 -1
  138. package/dist/Terminal.d.ts.map +1 -1
  139. package/dist/Terminal.js +1 -1
  140. package/dist/Terminal.js.map +1 -1
  141. package/dist/Tracer.d.ts +11 -1
  142. package/dist/Tracer.d.ts.map +1 -1
  143. package/dist/Tracer.js +6 -1
  144. package/dist/Tracer.js.map +1 -1
  145. package/dist/ai/AiError.d.ts +43 -116
  146. package/dist/ai/AiError.d.ts.map +1 -1
  147. package/dist/ai/AiError.js +53 -72
  148. package/dist/ai/AiError.js.map +1 -1
  149. package/dist/ai/Decision.d.ts +196 -15
  150. package/dist/ai/Decision.d.ts.map +1 -1
  151. package/dist/ai/Decision.js +130 -0
  152. package/dist/ai/Decision.js.map +1 -1
  153. package/dist/ai/DecisionModel.d.ts +54 -13
  154. package/dist/ai/DecisionModel.d.ts.map +1 -1
  155. package/dist/ai/DecisionModel.js +123 -12
  156. package/dist/ai/DecisionModel.js.map +1 -1
  157. package/dist/ai/LanguageModel.d.ts.map +1 -1
  158. package/dist/ai/LanguageModel.js +9 -0
  159. package/dist/ai/LanguageModel.js.map +1 -1
  160. package/dist/ai/McpSchema.d.ts +110 -110
  161. package/dist/ai/McpSchema.d.ts.map +1 -1
  162. package/dist/ai/McpServer.d.ts +630 -29
  163. package/dist/ai/McpServer.d.ts.map +1 -1
  164. package/dist/ai/McpServer.js +583 -131
  165. package/dist/ai/McpServer.js.map +1 -1
  166. package/dist/ai/McpTest.d.ts +130 -0
  167. package/dist/ai/McpTest.d.ts.map +1 -0
  168. package/dist/ai/McpTest.js +237 -0
  169. package/dist/ai/McpTest.js.map +1 -0
  170. package/dist/ai/Prompt.d.ts +52 -0
  171. package/dist/ai/Prompt.d.ts.map +1 -1
  172. package/dist/ai/Prompt.js +38 -0
  173. package/dist/ai/Prompt.js.map +1 -1
  174. package/dist/ai/Response.d.ts +17 -28
  175. package/dist/ai/Response.d.ts.map +1 -1
  176. package/dist/ai/Response.js +5 -10
  177. package/dist/ai/Response.js.map +1 -1
  178. package/dist/ai/Tool.d.ts +43 -1
  179. package/dist/ai/Tool.d.ts.map +1 -1
  180. package/dist/ai/Tool.js +5 -2
  181. package/dist/ai/Tool.js.map +1 -1
  182. package/dist/ai/Toolkit.d.ts.map +1 -1
  183. package/dist/ai/Toolkit.js +8 -1
  184. package/dist/ai/Toolkit.js.map +1 -1
  185. package/dist/ai/index.d.ts +5 -0
  186. package/dist/ai/index.d.ts.map +1 -1
  187. package/dist/ai/index.js +5 -0
  188. package/dist/ai/index.js.map +1 -1
  189. package/dist/ai/internal/mcpCore.js +17 -12
  190. package/dist/ai/internal/mcpCore.js.map +1 -1
  191. package/dist/ai/internal/mcpProtocol/v2024_11_05.js +4 -5
  192. package/dist/ai/internal/mcpProtocol/v2024_11_05.js.map +1 -1
  193. package/dist/ai/internal/mcpProtocol/v2025_03_26.js +4 -5
  194. package/dist/ai/internal/mcpProtocol/v2025_03_26.js.map +1 -1
  195. package/dist/ai/internal/mcpProtocol/v2025_06_18.js +4 -5
  196. package/dist/ai/internal/mcpProtocol/v2025_06_18.js.map +1 -1
  197. package/dist/ai/internal/mcpProtocol/v2025_11_25.js +4 -5
  198. package/dist/ai/internal/mcpProtocol/v2025_11_25.js.map +1 -1
  199. package/dist/ai/internal/mcpProtocol/v2026_07_28.js +18 -10
  200. package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
  201. package/dist/ai/internal/mcpProtocol.js +13 -0
  202. package/dist/ai/internal/mcpProtocol.js.map +1 -1
  203. package/dist/ai/internal/mcpRuntime.js +5 -3
  204. package/dist/ai/internal/mcpRuntime.js.map +1 -1
  205. package/dist/ai/internal/mcpStatefulRuntime.js +6 -1
  206. package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
  207. package/dist/cli/Argument.d.ts +21 -0
  208. package/dist/cli/Argument.d.ts.map +1 -1
  209. package/dist/cli/Argument.js +7 -0
  210. package/dist/cli/Argument.js.map +1 -1
  211. package/dist/cli/CliError.d.ts +78 -0
  212. package/dist/cli/CliError.d.ts.map +1 -1
  213. package/dist/cli/CliError.js +65 -3
  214. package/dist/cli/CliError.js.map +1 -1
  215. package/dist/cli/CliOutput.d.ts +220 -7
  216. package/dist/cli/CliOutput.d.ts.map +1 -1
  217. package/dist/cli/CliOutput.js +156 -43
  218. package/dist/cli/CliOutput.js.map +1 -1
  219. package/dist/cli/Command.d.ts +47 -16
  220. package/dist/cli/Command.d.ts.map +1 -1
  221. package/dist/cli/Command.js +67 -29
  222. package/dist/cli/Command.js.map +1 -1
  223. package/dist/cli/Completions.d.ts +58 -0
  224. package/dist/cli/Completions.d.ts.map +1 -1
  225. package/dist/cli/Completions.js +49 -9
  226. package/dist/cli/Completions.js.map +1 -1
  227. package/dist/cli/Flag.d.ts +122 -0
  228. package/dist/cli/Flag.d.ts.map +1 -1
  229. package/dist/cli/Flag.js +42 -0
  230. package/dist/cli/Flag.js.map +1 -1
  231. package/dist/cli/GlobalFlag.d.ts.map +1 -1
  232. package/dist/cli/GlobalFlag.js +15 -7
  233. package/dist/cli/GlobalFlag.js.map +1 -1
  234. package/dist/cli/HelpDoc.d.ts +15 -1
  235. package/dist/cli/HelpDoc.d.ts.map +1 -1
  236. package/dist/cli/Param.d.ts +15 -0
  237. package/dist/cli/Param.d.ts.map +1 -1
  238. package/dist/cli/Param.js +23 -2
  239. package/dist/cli/Param.js.map +1 -1
  240. package/dist/cli/Primitive.d.ts +14 -0
  241. package/dist/cli/Primitive.d.ts.map +1 -1
  242. package/dist/cli/Primitive.js +15 -1
  243. package/dist/cli/Primitive.js.map +1 -1
  244. package/dist/cli/Prompt.d.ts +1 -0
  245. package/dist/cli/Prompt.d.ts.map +1 -1
  246. package/dist/cli/Prompt.js +1 -0
  247. package/dist/cli/Prompt.js.map +1 -1
  248. package/dist/cli/TerminalCapabilities.d.ts +3 -2
  249. package/dist/cli/TerminalCapabilities.d.ts.map +1 -1
  250. package/dist/cli/TerminalCapabilities.js +3 -1
  251. package/dist/cli/TerminalCapabilities.js.map +1 -1
  252. package/dist/cli/internal/completions/bash.js +73 -27
  253. package/dist/cli/internal/completions/bash.js.map +1 -1
  254. package/dist/cli/internal/help.d.ts.map +1 -1
  255. package/dist/cli/internal/help.js +17 -10
  256. package/dist/cli/internal/help.js.map +1 -1
  257. package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  258. package/dist/cluster/ClusterWorkflowEngine.js +45 -10
  259. package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
  260. package/dist/cluster/MessageStorage.d.ts +23 -45
  261. package/dist/cluster/MessageStorage.d.ts.map +1 -1
  262. package/dist/cluster/MessageStorage.js +6 -7
  263. package/dist/cluster/MessageStorage.js.map +1 -1
  264. package/dist/cluster/Sharding.d.ts.map +1 -1
  265. package/dist/cluster/Sharding.js +151 -49
  266. package/dist/cluster/Sharding.js.map +1 -1
  267. package/dist/cluster/ShardingConfig.d.ts +76 -0
  268. package/dist/cluster/ShardingConfig.d.ts.map +1 -1
  269. package/dist/cluster/ShardingConfig.js +4 -0
  270. package/dist/cluster/ShardingConfig.js.map +1 -1
  271. package/dist/cluster/SingleRunner.d.ts +3 -3
  272. package/dist/cluster/SingleRunner.d.ts.map +1 -1
  273. package/dist/cluster/SingleRunner.js +1 -1
  274. package/dist/cluster/Snowflake.d.ts.map +1 -1
  275. package/dist/cluster/Snowflake.js +3 -7
  276. package/dist/cluster/Snowflake.js.map +1 -1
  277. package/dist/cluster/SqlMessageStorage.d.ts +37 -6
  278. package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
  279. package/dist/cluster/SqlMessageStorage.js +34 -7
  280. package/dist/cluster/SqlMessageStorage.js.map +1 -1
  281. package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
  282. package/dist/cluster/SqlRunnerStorage.js +109 -46
  283. package/dist/cluster/SqlRunnerStorage.js.map +1 -1
  284. package/dist/cluster/internal/entityManager.js +54 -20
  285. package/dist/cluster/internal/entityManager.js.map +1 -1
  286. package/dist/crypto/Aead.d.ts +322 -0
  287. package/dist/crypto/Aead.d.ts.map +1 -0
  288. package/dist/crypto/Aead.js +331 -0
  289. package/dist/crypto/Aead.js.map +1 -0
  290. package/dist/crypto/Cipher.d.ts +235 -0
  291. package/dist/crypto/Cipher.d.ts.map +1 -0
  292. package/dist/crypto/Cipher.js +233 -0
  293. package/dist/crypto/Cipher.js.map +1 -0
  294. package/dist/crypto/CryptoError.d.ts +212 -0
  295. package/dist/crypto/CryptoError.d.ts.map +1 -0
  296. package/dist/crypto/CryptoError.js +202 -0
  297. package/dist/crypto/CryptoError.js.map +1 -0
  298. package/dist/crypto/Digest.d.ts +143 -0
  299. package/dist/crypto/Digest.d.ts.map +1 -0
  300. package/dist/crypto/Digest.js +146 -0
  301. package/dist/crypto/Digest.js.map +1 -0
  302. package/dist/crypto/Kdf.d.ts +220 -0
  303. package/dist/crypto/Kdf.d.ts.map +1 -0
  304. package/dist/crypto/Kdf.js +212 -0
  305. package/dist/crypto/Kdf.js.map +1 -0
  306. package/dist/crypto/KeyAgreement.d.ts +323 -0
  307. package/dist/crypto/KeyAgreement.d.ts.map +1 -0
  308. package/dist/crypto/KeyAgreement.js +303 -0
  309. package/dist/crypto/KeyAgreement.js.map +1 -0
  310. package/dist/crypto/KeyFormat.d.ts +309 -0
  311. package/dist/crypto/KeyFormat.d.ts.map +1 -0
  312. package/dist/crypto/KeyFormat.js +556 -0
  313. package/dist/crypto/KeyFormat.js.map +1 -0
  314. package/dist/crypto/KeyWrap.d.ts +389 -0
  315. package/dist/crypto/KeyWrap.d.ts.map +1 -0
  316. package/dist/crypto/KeyWrap.js +381 -0
  317. package/dist/crypto/KeyWrap.js.map +1 -0
  318. package/dist/crypto/Mac.d.ts +277 -0
  319. package/dist/crypto/Mac.d.ts.map +1 -0
  320. package/dist/crypto/Mac.js +288 -0
  321. package/dist/crypto/Mac.js.map +1 -0
  322. package/dist/crypto/SecureRandom.d.ts +340 -0
  323. package/dist/crypto/SecureRandom.d.ts.map +1 -0
  324. package/dist/crypto/SecureRandom.js +257 -0
  325. package/dist/crypto/SecureRandom.js.map +1 -0
  326. package/dist/crypto/Signature.d.ts +448 -0
  327. package/dist/crypto/Signature.d.ts.map +1 -0
  328. package/dist/crypto/Signature.js +484 -0
  329. package/dist/crypto/Signature.js.map +1 -0
  330. package/dist/crypto/WebCrypto.d.ts +61 -0
  331. package/dist/crypto/WebCrypto.d.ts.map +1 -0
  332. package/dist/crypto/WebCrypto.js +63 -0
  333. package/dist/crypto/WebCrypto.js.map +1 -0
  334. package/dist/crypto/index.d.ts +65 -0
  335. package/dist/crypto/index.d.ts.map +1 -0
  336. package/dist/crypto/index.js +66 -0
  337. package/dist/crypto/index.js.map +1 -0
  338. package/dist/crypto/internal/asymmetric.d.ts +2 -0
  339. package/dist/crypto/internal/asymmetric.d.ts.map +1 -0
  340. package/dist/crypto/internal/asymmetric.js +210 -0
  341. package/dist/crypto/internal/asymmetric.js.map +1 -0
  342. package/dist/crypto/internal/chacha.d.ts +46 -0
  343. package/dist/crypto/internal/chacha.d.ts.map +1 -0
  344. package/dist/crypto/internal/chacha.js +885 -0
  345. package/dist/crypto/internal/chacha.js.map +1 -0
  346. package/dist/crypto/internal/der.d.ts +6 -0
  347. package/dist/crypto/internal/der.d.ts.map +1 -0
  348. package/dist/crypto/internal/der.js +86 -0
  349. package/dist/crypto/internal/der.js.map +1 -0
  350. package/dist/crypto/internal/digest.d.ts +2 -0
  351. package/dist/crypto/internal/digest.d.ts.map +1 -0
  352. package/dist/crypto/internal/digest.js +15 -0
  353. package/dist/crypto/internal/digest.js.map +1 -0
  354. package/dist/crypto/internal/key.d.ts +2 -0
  355. package/dist/crypto/internal/key.d.ts.map +1 -0
  356. package/dist/crypto/internal/key.js +170 -0
  357. package/dist/crypto/internal/key.js.map +1 -0
  358. package/dist/crypto/internal/md5.d.ts +39 -0
  359. package/dist/crypto/internal/md5.d.ts.map +1 -0
  360. package/dist/crypto/internal/md5.js +179 -0
  361. package/dist/crypto/internal/md5.js.map +1 -0
  362. package/dist/crypto/internal/webCrypto.d.ts +2 -0
  363. package/dist/crypto/internal/webCrypto.d.ts.map +1 -0
  364. package/dist/crypto/internal/webCrypto.js +111 -0
  365. package/dist/crypto/internal/webCrypto.js.map +1 -0
  366. package/dist/devtools/DevToolsClient.d.ts.map +1 -1
  367. package/dist/devtools/DevToolsClient.js +2 -0
  368. package/dist/devtools/DevToolsClient.js.map +1 -1
  369. package/dist/encoding/Base64.js +36 -0
  370. package/dist/encoding/Base64.js.map +1 -1
  371. package/dist/encoding/Base64Url.d.ts.map +1 -1
  372. package/dist/encoding/Base64Url.js +3 -2
  373. package/dist/encoding/Base64Url.js.map +1 -1
  374. package/dist/encoding/Csv.d.ts +608 -0
  375. package/dist/encoding/Csv.d.ts.map +1 -0
  376. package/dist/encoding/Csv.js +718 -0
  377. package/dist/encoding/Csv.js.map +1 -0
  378. package/dist/encoding/Hex.d.ts +3 -2
  379. package/dist/encoding/Hex.d.ts.map +1 -1
  380. package/dist/encoding/Hex.js +3 -2
  381. package/dist/encoding/Hex.js.map +1 -1
  382. package/dist/encoding/SchemaBinary.d.ts.map +1 -1
  383. package/dist/encoding/SchemaBinary.js +42 -4
  384. package/dist/encoding/SchemaBinary.js.map +1 -1
  385. package/dist/encoding/Sse.d.ts.map +1 -1
  386. package/dist/encoding/Sse.js +3 -3
  387. package/dist/encoding/Sse.js.map +1 -1
  388. package/dist/encoding/Toml.d.ts +17 -3
  389. package/dist/encoding/Toml.d.ts.map +1 -1
  390. package/dist/encoding/Toml.js +124 -31
  391. package/dist/encoding/Toml.js.map +1 -1
  392. package/dist/encoding/Yaml.d.ts +8 -1
  393. package/dist/encoding/Yaml.d.ts.map +1 -1
  394. package/dist/encoding/Yaml.js +54 -18
  395. package/dist/encoding/Yaml.js.map +1 -1
  396. package/dist/encoding/index.d.ts +5 -0
  397. package/dist/encoding/index.d.ts.map +1 -1
  398. package/dist/encoding/index.js +5 -0
  399. package/dist/encoding/index.js.map +1 -1
  400. package/dist/eventlog/EventJournal.d.ts.map +1 -1
  401. package/dist/eventlog/EventJournal.js +6 -3
  402. package/dist/eventlog/EventJournal.js.map +1 -1
  403. package/dist/eventlog/EventLog.d.ts +119 -4
  404. package/dist/eventlog/EventLog.d.ts.map +1 -1
  405. package/dist/eventlog/EventLog.js +200 -12
  406. package/dist/eventlog/EventLog.js.map +1 -1
  407. package/dist/eventlog/EventLogEncryption.d.ts +41 -4
  408. package/dist/eventlog/EventLogEncryption.d.ts.map +1 -1
  409. package/dist/eventlog/EventLogEncryption.js +83 -64
  410. package/dist/eventlog/EventLogEncryption.js.map +1 -1
  411. package/dist/eventlog/EventLogMessage.d.ts +279 -0
  412. package/dist/eventlog/EventLogMessage.d.ts.map +1 -1
  413. package/dist/eventlog/EventLogMessage.js +217 -1
  414. package/dist/eventlog/EventLogMessage.js.map +1 -1
  415. package/dist/eventlog/EventLogRemote.d.ts +200 -28
  416. package/dist/eventlog/EventLogRemote.d.ts.map +1 -1
  417. package/dist/eventlog/EventLogRemote.js +186 -16
  418. package/dist/eventlog/EventLogRemote.js.map +1 -1
  419. package/dist/eventlog/EventLogServer.d.ts +3 -0
  420. package/dist/eventlog/EventLogServer.d.ts.map +1 -1
  421. package/dist/eventlog/EventLogServer.js +18 -10
  422. package/dist/eventlog/EventLogServer.js.map +1 -1
  423. package/dist/eventlog/EventLogServerEncrypted.d.ts +326 -5
  424. package/dist/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  425. package/dist/eventlog/EventLogServerEncrypted.js +769 -14
  426. package/dist/eventlog/EventLogServerEncrypted.js.map +1 -1
  427. package/dist/eventlog/EventLogSessionAuth.d.ts +5 -3
  428. package/dist/eventlog/EventLogSessionAuth.d.ts.map +1 -1
  429. package/dist/eventlog/EventLogSessionAuth.js +41 -64
  430. package/dist/eventlog/EventLogSessionAuth.js.map +1 -1
  431. package/dist/eventlog/EventRow.d.ts +4 -0
  432. package/dist/eventlog/EventRow.d.ts.map +1 -1
  433. package/dist/eventlog/EventRow.js +12 -2
  434. package/dist/eventlog/EventRow.js.map +1 -1
  435. package/dist/eventlog/SqlEventJournal.d.ts.map +1 -1
  436. package/dist/eventlog/SqlEventJournal.js +47 -27
  437. package/dist/eventlog/SqlEventJournal.js.map +1 -1
  438. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts +21 -5
  439. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  440. package/dist/eventlog/SqlEventLogServerEncrypted.js +1048 -113
  441. package/dist/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  442. package/dist/eventlog/SqlEventLogServerUnencrypted.js +2 -2
  443. package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  444. package/dist/eventlog/internal/batches.d.ts +12 -0
  445. package/dist/eventlog/internal/batches.d.ts.map +1 -0
  446. package/dist/eventlog/internal/batches.js +26 -0
  447. package/dist/eventlog/internal/batches.js.map +1 -0
  448. package/dist/eventlog/internal/compaction.d.ts +38 -0
  449. package/dist/eventlog/internal/compaction.d.ts.map +1 -0
  450. package/dist/eventlog/internal/compaction.js +33 -0
  451. package/dist/eventlog/internal/compaction.js.map +1 -0
  452. package/dist/eventlog/internal/conflicts.d.ts +0 -1
  453. package/dist/eventlog/internal/conflicts.d.ts.map +1 -1
  454. package/dist/eventlog/internal/conflicts.js +0 -3
  455. package/dist/eventlog/internal/conflicts.js.map +1 -1
  456. package/dist/eventlog/internal/identityRootSecretDerivation.js +66 -67
  457. package/dist/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  458. package/dist/eventlog/internal/remoteCompaction.d.ts +31 -0
  459. package/dist/eventlog/internal/remoteCompaction.d.ts.map +1 -0
  460. package/dist/eventlog/internal/remoteCompaction.js +76 -0
  461. package/dist/eventlog/internal/remoteCompaction.js.map +1 -0
  462. package/dist/http/Cookies.d.ts +172 -0
  463. package/dist/http/Cookies.d.ts.map +1 -1
  464. package/dist/http/Cookies.js +153 -10
  465. package/dist/http/Cookies.js.map +1 -1
  466. package/dist/http/FetchHttpClient.d.ts +26 -2
  467. package/dist/http/FetchHttpClient.d.ts.map +1 -1
  468. package/dist/http/FetchHttpClient.js +78 -15
  469. package/dist/http/FetchHttpClient.js.map +1 -1
  470. package/dist/http/HttpClient.d.ts +502 -8
  471. package/dist/http/HttpClient.d.ts.map +1 -1
  472. package/dist/http/HttpClient.js +296 -12
  473. package/dist/http/HttpClient.js.map +1 -1
  474. package/dist/http/HttpClientError.d.ts +8 -1
  475. package/dist/http/HttpClientError.d.ts.map +1 -1
  476. package/dist/http/HttpClientError.js +37 -1
  477. package/dist/http/HttpClientError.js.map +1 -1
  478. package/dist/http/HttpClientRequest.d.ts +9 -5
  479. package/dist/http/HttpClientRequest.d.ts.map +1 -1
  480. package/dist/http/HttpClientRequest.js +3 -4
  481. package/dist/http/HttpClientRequest.js.map +1 -1
  482. package/dist/http/HttpClientResponse.d.ts.map +1 -1
  483. package/dist/http/HttpClientResponse.js +3 -2
  484. package/dist/http/HttpClientResponse.js.map +1 -1
  485. package/dist/http/HttpMethod.d.ts +7 -1
  486. package/dist/http/HttpMethod.d.ts.map +1 -1
  487. package/dist/http/HttpMethod.js +3 -8
  488. package/dist/http/HttpMethod.js.map +1 -1
  489. package/dist/http/HttpMiddleware.d.ts +1 -1
  490. package/dist/http/HttpMiddleware.d.ts.map +1 -1
  491. package/dist/http/HttpMiddleware.js +14 -16
  492. package/dist/http/HttpMiddleware.js.map +1 -1
  493. package/dist/http/HttpRouter.d.ts.map +1 -1
  494. package/dist/http/HttpRouter.js +2 -1
  495. package/dist/http/HttpRouter.js.map +1 -1
  496. package/dist/http/HttpServerError.js +2 -2
  497. package/dist/http/HttpServerError.js.map +1 -1
  498. package/dist/http/HttpServerRequest.d.ts +11 -3
  499. package/dist/http/HttpServerRequest.d.ts.map +1 -1
  500. package/dist/http/HttpServerRequest.js +77 -25
  501. package/dist/http/HttpServerRequest.js.map +1 -1
  502. package/dist/http/HttpServerResponse.d.ts.map +1 -1
  503. package/dist/http/HttpServerResponse.js +3 -2
  504. package/dist/http/HttpServerResponse.js.map +1 -1
  505. package/dist/http/HttpStaticServer.d.ts.map +1 -1
  506. package/dist/http/HttpStaticServer.js +48 -21
  507. package/dist/http/HttpStaticServer.js.map +1 -1
  508. package/dist/http/HttpTraceContext.d.ts +2 -1
  509. package/dist/http/HttpTraceContext.d.ts.map +1 -1
  510. package/dist/http/HttpTraceContext.js +7 -5
  511. package/dist/http/HttpTraceContext.js.map +1 -1
  512. package/dist/http/MultipartParser/internal/contentType.js +3 -3
  513. package/dist/http/ProblemDetails.d.ts +96 -0
  514. package/dist/http/ProblemDetails.d.ts.map +1 -0
  515. package/dist/http/ProblemDetails.js +98 -0
  516. package/dist/http/ProblemDetails.js.map +1 -0
  517. package/dist/http/UrlParams.d.ts +3 -1
  518. package/dist/http/UrlParams.d.ts.map +1 -1
  519. package/dist/http/UrlParams.js +4 -2
  520. package/dist/http/UrlParams.js.map +1 -1
  521. package/dist/http/index.d.ts +5 -0
  522. package/dist/http/index.d.ts.map +1 -1
  523. package/dist/http/index.js +5 -0
  524. package/dist/http/index.js.map +1 -1
  525. package/dist/http/internal/compression.js +4 -5
  526. package/dist/http/internal/compression.js.map +1 -1
  527. package/dist/http/internal/decompression.js +6 -2
  528. package/dist/http/internal/decompression.js.map +1 -1
  529. package/dist/http/internal/httpBody.js +8 -1
  530. package/dist/http/internal/httpBody.js.map +1 -1
  531. package/dist/http/internal/urlParams.js +33 -0
  532. package/dist/http/internal/urlParams.js.map +1 -1
  533. package/dist/http-api/HttpApi.d.ts +3 -6
  534. package/dist/http-api/HttpApi.d.ts.map +1 -1
  535. package/dist/http-api/HttpApi.js +3 -6
  536. package/dist/http-api/HttpApi.js.map +1 -1
  537. package/dist/http-api/HttpApiBuilder.d.ts.map +1 -1
  538. package/dist/http-api/HttpApiBuilder.js +43 -13
  539. package/dist/http-api/HttpApiBuilder.js.map +1 -1
  540. package/dist/http-api/HttpApiClient.d.ts +140 -7
  541. package/dist/http-api/HttpApiClient.d.ts.map +1 -1
  542. package/dist/http-api/HttpApiClient.js +193 -44
  543. package/dist/http-api/HttpApiClient.js.map +1 -1
  544. package/dist/http-api/HttpApiEndpoint.d.ts +24 -7
  545. package/dist/http-api/HttpApiEndpoint.d.ts.map +1 -1
  546. package/dist/http-api/HttpApiEndpoint.js +123 -32
  547. package/dist/http-api/HttpApiEndpoint.js.map +1 -1
  548. package/dist/http-api/HttpApiError.d.ts +185 -13
  549. package/dist/http-api/HttpApiError.d.ts.map +1 -1
  550. package/dist/http-api/HttpApiError.js +128 -0
  551. package/dist/http-api/HttpApiError.js.map +1 -1
  552. package/dist/http-api/HttpApiMiddleware.d.ts +64 -17
  553. package/dist/http-api/HttpApiMiddleware.d.ts.map +1 -1
  554. package/dist/http-api/HttpApiMiddleware.js +85 -1
  555. package/dist/http-api/HttpApiMiddleware.js.map +1 -1
  556. package/dist/http-api/HttpApiSchema.d.ts +142 -33
  557. package/dist/http-api/HttpApiSchema.d.ts.map +1 -1
  558. package/dist/http-api/HttpApiSchema.js +123 -59
  559. package/dist/http-api/HttpApiSchema.js.map +1 -1
  560. package/dist/http-api/HttpApiTest.d.ts.map +1 -1
  561. package/dist/http-api/HttpApiTest.js +3 -2
  562. package/dist/http-api/HttpApiTest.js.map +1 -1
  563. package/dist/http-api/OpenApi.d.ts.map +1 -1
  564. package/dist/http-api/OpenApi.js +25 -16
  565. package/dist/http-api/OpenApi.js.map +1 -1
  566. package/dist/http-api/internal/toCodecHttpProperties.d.ts +2 -0
  567. package/dist/http-api/internal/toCodecHttpProperties.d.ts.map +1 -0
  568. package/dist/http-api/internal/toCodecHttpProperties.js +38 -0
  569. package/dist/http-api/internal/toCodecHttpProperties.js.map +1 -0
  570. package/dist/index.d.ts +5 -5
  571. package/dist/index.d.ts.map +1 -1
  572. package/dist/index.js +5 -5
  573. package/dist/index.js.map +1 -1
  574. package/dist/internal/arbitrary/runner.d.ts.map +1 -1
  575. package/dist/internal/arbitrary/runner.js +120 -44
  576. package/dist/internal/arbitrary/runner.js.map +1 -1
  577. package/dist/internal/core.js +2 -0
  578. package/dist/internal/core.js.map +1 -1
  579. package/dist/internal/effect.js +46 -27
  580. package/dist/internal/effect.js.map +1 -1
  581. package/dist/internal/equal.js +14 -0
  582. package/dist/internal/equal.js.map +1 -1
  583. package/dist/internal/glob.d.ts +2 -0
  584. package/dist/internal/glob.d.ts.map +1 -0
  585. package/dist/internal/glob.js +630 -0
  586. package/dist/internal/glob.js.map +1 -0
  587. package/dist/internal/jsonSchema.d.ts +2 -0
  588. package/dist/internal/jsonSchema.d.ts.map +1 -0
  589. package/dist/internal/jsonSchema.js +28 -0
  590. package/dist/internal/jsonSchema.js.map +1 -0
  591. package/dist/internal/matcher.js +11 -1
  592. package/dist/internal/matcher.js.map +1 -1
  593. package/dist/internal/persistence.js +9 -0
  594. package/dist/internal/persistence.js.map +1 -1
  595. package/dist/internal/rcRef.js +4 -1
  596. package/dist/internal/rcRef.js.map +1 -1
  597. package/dist/internal/schema/compilerRegistry.js +4 -1
  598. package/dist/internal/schema/compilerRegistry.js.map +1 -1
  599. package/dist/internal/schema/content.d.ts +2 -0
  600. package/dist/internal/schema/content.d.ts.map +1 -0
  601. package/dist/internal/schema/content.js +13 -0
  602. package/dist/internal/schema/content.js.map +1 -0
  603. package/dist/internal/schema/fromJsonSchemaDocument.js +173 -185
  604. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
  605. package/dist/internal/schema/fromRepresentation.js +2 -1
  606. package/dist/internal/schema/fromRepresentation.js.map +1 -1
  607. package/dist/internal/schema/standardSchema.js +8 -2
  608. package/dist/internal/schema/standardSchema.js.map +1 -1
  609. package/dist/internal/schema/toCodeDocument.js +9 -6
  610. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  611. package/dist/internal/schema/toCodec.js +21 -24
  612. package/dist/internal/schema/toCodec.js.map +1 -1
  613. package/dist/internal/schema/toJsonSchemaDocument.js +205 -140
  614. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
  615. package/dist/internal/schema/toRepresentation.js +107 -129
  616. package/dist/internal/schema/toRepresentation.js.map +1 -1
  617. package/dist/internal/sql.d.ts +2 -0
  618. package/dist/internal/sql.d.ts.map +1 -0
  619. package/dist/internal/sql.js +13 -0
  620. package/dist/internal/sql.js.map +1 -0
  621. package/dist/internal/trie.js +42 -13
  622. package/dist/internal/trie.js.map +1 -1
  623. package/dist/internal/ulid.js +41 -0
  624. package/dist/internal/ulid.js.map +1 -1
  625. package/dist/internal/uuid.js +52 -8
  626. package/dist/internal/uuid.js.map +1 -1
  627. package/dist/internal/version.js +1 -1
  628. package/dist/observability/Otlp.d.ts +15 -4
  629. package/dist/observability/Otlp.d.ts.map +1 -1
  630. package/dist/observability/Otlp.js +10 -0
  631. package/dist/observability/Otlp.js.map +1 -1
  632. package/dist/observability/OtlpProxy.d.ts +154 -0
  633. package/dist/observability/OtlpProxy.d.ts.map +1 -0
  634. package/dist/observability/OtlpProxy.js +235 -0
  635. package/dist/observability/OtlpProxy.js.map +1 -0
  636. package/dist/observability/OtlpResource.d.ts +7 -0
  637. package/dist/observability/OtlpResource.d.ts.map +1 -1
  638. package/dist/observability/OtlpResource.js +11 -1
  639. package/dist/observability/OtlpResource.js.map +1 -1
  640. package/dist/observability/OtlpTracer.d.ts.map +1 -1
  641. package/dist/observability/OtlpTracer.js +4 -0
  642. package/dist/observability/OtlpTracer.js.map +1 -1
  643. package/dist/observability/index.d.ts +5 -0
  644. package/dist/observability/index.d.ts.map +1 -1
  645. package/dist/observability/index.js +5 -0
  646. package/dist/observability/index.js.map +1 -1
  647. package/dist/persistence/CircuitBreaker.d.ts +897 -0
  648. package/dist/persistence/CircuitBreaker.d.ts.map +1 -0
  649. package/dist/persistence/CircuitBreaker.js +1165 -0
  650. package/dist/persistence/CircuitBreaker.js.map +1 -0
  651. package/dist/persistence/KeyValueStore.d.ts +47 -2
  652. package/dist/persistence/KeyValueStore.d.ts.map +1 -1
  653. package/dist/persistence/KeyValueStore.js +129 -18
  654. package/dist/persistence/KeyValueStore.js.map +1 -1
  655. package/dist/persistence/PersistedQueue.d.ts +9 -0
  656. package/dist/persistence/PersistedQueue.d.ts.map +1 -1
  657. package/dist/persistence/PersistedQueue.js +94 -52
  658. package/dist/persistence/PersistedQueue.js.map +1 -1
  659. package/dist/persistence/Persistence.d.ts +10 -4
  660. package/dist/persistence/Persistence.d.ts.map +1 -1
  661. package/dist/persistence/Persistence.js +18 -11
  662. package/dist/persistence/Persistence.js.map +1 -1
  663. package/dist/persistence/Redis.d.ts +78 -2
  664. package/dist/persistence/Redis.d.ts.map +1 -1
  665. package/dist/persistence/Redis.js +62 -7
  666. package/dist/persistence/Redis.js.map +1 -1
  667. package/dist/persistence/index.d.ts +5 -0
  668. package/dist/persistence/index.d.ts.map +1 -1
  669. package/dist/persistence/index.js +5 -0
  670. package/dist/persistence/index.js.map +1 -1
  671. package/dist/process/ChildProcess.d.ts +237 -71
  672. package/dist/process/ChildProcess.d.ts.map +1 -1
  673. package/dist/process/ChildProcess.js +56 -158
  674. package/dist/process/ChildProcess.js.map +1 -1
  675. package/dist/process/ChildProcessSpawner.d.ts +35 -0
  676. package/dist/process/ChildProcessSpawner.d.ts.map +1 -1
  677. package/dist/process/ChildProcessSpawner.js +5 -2
  678. package/dist/process/ChildProcessSpawner.js.map +1 -1
  679. package/dist/process/CommandLine.d.ts +294 -0
  680. package/dist/process/CommandLine.d.ts.map +1 -0
  681. package/dist/process/CommandLine.js +481 -0
  682. package/dist/process/CommandLine.js.map +1 -0
  683. package/dist/process/index.d.ts +5 -0
  684. package/dist/process/index.d.ts.map +1 -1
  685. package/dist/process/index.js +5 -0
  686. package/dist/process/index.js.map +1 -1
  687. package/dist/reactivity/AsyncResult.d.ts +1 -1
  688. package/dist/reactivity/AsyncResult.d.ts.map +1 -1
  689. package/dist/reactivity/Atom.d.ts +2 -1
  690. package/dist/reactivity/Atom.d.ts.map +1 -1
  691. package/dist/reactivity/Atom.js +3 -4
  692. package/dist/reactivity/Atom.js.map +1 -1
  693. package/dist/reactivity/AtomRegistry.js.map +1 -1
  694. package/dist/rpc/RpcClient.d.ts +16 -1
  695. package/dist/rpc/RpcClient.d.ts.map +1 -1
  696. package/dist/rpc/RpcClient.js +59 -24
  697. package/dist/rpc/RpcClient.js.map +1 -1
  698. package/dist/rpc/RpcMessage.d.ts +10 -1
  699. package/dist/rpc/RpcMessage.d.ts.map +1 -1
  700. package/dist/rpc/RpcMessage.js +1 -0
  701. package/dist/rpc/RpcMessage.js.map +1 -1
  702. package/dist/rpc/RpcSerialization.d.ts +14 -0
  703. package/dist/rpc/RpcSerialization.d.ts.map +1 -1
  704. package/dist/rpc/RpcSerialization.js +26 -8
  705. package/dist/rpc/RpcSerialization.js.map +1 -1
  706. package/dist/rpc/RpcServer.d.ts +31 -0
  707. package/dist/rpc/RpcServer.d.ts.map +1 -1
  708. package/dist/rpc/RpcServer.js +139 -56
  709. package/dist/rpc/RpcServer.js.map +1 -1
  710. package/dist/rpc/RpcTest.d.ts +1 -0
  711. package/dist/rpc/RpcTest.d.ts.map +1 -1
  712. package/dist/rpc/RpcTest.js +1 -0
  713. package/dist/rpc/RpcTest.js.map +1 -1
  714. package/dist/schema/Model.d.ts +14 -0
  715. package/dist/schema/Model.d.ts.map +1 -1
  716. package/dist/schema/Model.js +18 -3
  717. package/dist/schema/Model.js.map +1 -1
  718. package/dist/sql/Migrator.d.ts +2 -20
  719. package/dist/sql/Migrator.d.ts.map +1 -1
  720. package/dist/sql/Migrator.js +13 -55
  721. package/dist/sql/Migrator.js.map +1 -1
  722. package/dist/sql/MigratorFileSystem.d.ts +21 -0
  723. package/dist/sql/MigratorFileSystem.d.ts.map +1 -0
  724. package/dist/sql/MigratorFileSystem.js +57 -0
  725. package/dist/sql/MigratorFileSystem.js.map +1 -0
  726. package/dist/sql/SqlClient.d.ts +9 -4
  727. package/dist/sql/SqlClient.d.ts.map +1 -1
  728. package/dist/sql/SqlClient.js +13 -10
  729. package/dist/sql/SqlClient.js.map +1 -1
  730. package/dist/sql/SqlResolver.d.ts +4 -0
  731. package/dist/sql/SqlResolver.d.ts.map +1 -1
  732. package/dist/sql/SqlResolver.js +18 -4
  733. package/dist/sql/SqlResolver.js.map +1 -1
  734. package/dist/sql/Statement.d.ts +27 -6
  735. package/dist/sql/Statement.d.ts.map +1 -1
  736. package/dist/sql/Statement.js +21 -15
  737. package/dist/sql/Statement.js.map +1 -1
  738. package/dist/sql/index.js +1 -1
  739. package/dist/testing/index.d.ts +0 -5
  740. package/dist/testing/index.d.ts.map +1 -1
  741. package/dist/testing/index.js +0 -5
  742. package/dist/testing/index.js.map +1 -1
  743. package/dist/workflow/DurableDeferred.d.ts.map +1 -1
  744. package/dist/workflow/DurableDeferred.js +21 -2
  745. package/dist/workflow/DurableDeferred.js.map +1 -1
  746. package/dist/workflow/internal/crypto.js +9 -8
  747. package/dist/workflow/internal/crypto.js.map +1 -1
  748. package/package.json +3 -1
  749. package/src/Arbitrary.ts +10 -2
  750. package/src/BigDecimal.ts +3 -0
  751. package/src/Channel.ts +64 -29
  752. package/src/Config.ts +7 -1
  753. package/src/Context.ts +34 -10
  754. package/src/Cron.ts +178 -29
  755. package/src/Data.ts +60 -265
  756. package/src/Duration.ts +140 -0
  757. package/src/Effect.ts +915 -86
  758. package/src/Equal.ts +8 -1
  759. package/src/Exit.ts +3 -3
  760. package/src/FileSystem.ts +65 -4
  761. package/src/Formatter.ts +28 -13
  762. package/src/Glob.ts +205 -0
  763. package/src/Hash.ts +4 -1
  764. package/src/JsonPatch.ts +4 -0
  765. package/src/JsonSchema.ts +12 -40
  766. package/src/Match.ts +127 -0
  767. package/src/Metric.ts +3 -3
  768. package/src/MutableList.ts +7 -5
  769. package/src/MutableRef.ts +8 -1
  770. package/src/PartitionedSemaphore.ts +24 -13
  771. package/src/Pool.ts +182 -52
  772. package/src/PubSub.ts +5 -6
  773. package/src/Random.ts +3 -3
  774. package/src/RcMap.ts +5 -1
  775. package/src/Ref.ts +8 -0
  776. package/src/Schedule.ts +27 -4
  777. package/src/Schema.ts +1237 -87
  778. package/src/SchemaAST.ts +20 -20
  779. package/src/SchemaGetter.ts +27 -11
  780. package/src/SchemaParser.ts +51 -18
  781. package/src/SchemaRepresentation.ts +50 -34
  782. package/src/SchemaTransformation.ts +17 -5
  783. package/src/ScopedCache.ts +5 -9
  784. package/src/Semaphore.ts +208 -40
  785. package/src/Sink.ts +15 -2
  786. package/src/Stream.ts +48 -22
  787. package/src/String.ts +3 -0
  788. package/src/Terminal.ts +19 -1
  789. package/src/Tracer.ts +15 -1
  790. package/src/ai/AiError.ts +56 -80
  791. package/src/ai/Decision.ts +257 -6
  792. package/src/ai/DecisionModel.ts +171 -28
  793. package/src/ai/LanguageModel.ts +9 -0
  794. package/src/ai/McpServer.ts +1283 -299
  795. package/src/ai/McpTest.ts +380 -0
  796. package/src/ai/Prompt.ts +65 -0
  797. package/src/ai/Response.ts +36 -31
  798. package/src/ai/Tool.ts +65 -10
  799. package/src/ai/Toolkit.ts +4 -1
  800. package/src/ai/index.ts +6 -0
  801. package/src/ai/internal/mcpCore.ts +78 -44
  802. package/src/ai/internal/mcpProtocol/v2024_11_05.ts +4 -7
  803. package/src/ai/internal/mcpProtocol/v2025_03_26.ts +4 -7
  804. package/src/ai/internal/mcpProtocol/v2025_06_18.ts +4 -7
  805. package/src/ai/internal/mcpProtocol/v2025_11_25.ts +4 -7
  806. package/src/ai/internal/mcpProtocol/v2026_07_28.ts +15 -10
  807. package/src/ai/internal/mcpProtocol.ts +29 -0
  808. package/src/ai/internal/mcpRuntime.ts +9 -5
  809. package/src/ai/internal/mcpStatefulRuntime.ts +14 -2
  810. package/src/cli/Argument.ts +21 -0
  811. package/src/cli/CliError.ts +90 -3
  812. package/src/cli/CliOutput.ts +300 -55
  813. package/src/cli/Command.ts +76 -41
  814. package/src/cli/Completions.ts +51 -0
  815. package/src/cli/Flag.ts +122 -0
  816. package/src/cli/GlobalFlag.ts +6 -7
  817. package/src/cli/HelpDoc.ts +18 -1
  818. package/src/cli/Param.ts +35 -6
  819. package/src/cli/Primitive.ts +16 -1
  820. package/src/cli/Prompt.ts +1 -0
  821. package/src/cli/TerminalCapabilities.ts +6 -3
  822. package/src/cli/internal/completions/bash.ts +79 -29
  823. package/src/cli/internal/help.ts +21 -9
  824. package/src/cluster/ClusterWorkflowEngine.ts +46 -16
  825. package/src/cluster/MessageStorage.ts +19 -14
  826. package/src/cluster/Sharding.ts +176 -47
  827. package/src/cluster/ShardingConfig.ts +43 -0
  828. package/src/cluster/SingleRunner.ts +3 -3
  829. package/src/cluster/Snowflake.ts +3 -7
  830. package/src/cluster/SqlMessageStorage.ts +49 -17
  831. package/src/cluster/SqlRunnerStorage.ts +143 -70
  832. package/src/cluster/internal/entityManager.ts +75 -22
  833. package/src/crypto/Aead.ts +517 -0
  834. package/src/crypto/Cipher.ts +326 -0
  835. package/src/crypto/CryptoError.ts +242 -0
  836. package/src/crypto/Digest.ts +167 -0
  837. package/src/crypto/Kdf.ts +315 -0
  838. package/src/crypto/KeyAgreement.ts +489 -0
  839. package/src/crypto/KeyFormat.ts +712 -0
  840. package/src/crypto/KeyWrap.ts +639 -0
  841. package/src/crypto/Mac.ts +386 -0
  842. package/src/crypto/SecureRandom.ts +459 -0
  843. package/src/crypto/Signature.ts +673 -0
  844. package/src/crypto/WebCrypto.ts +64 -0
  845. package/src/crypto/index.ts +78 -0
  846. package/src/crypto/internal/asymmetric.ts +329 -0
  847. package/src/crypto/internal/chacha.ts +1088 -0
  848. package/src/crypto/internal/der.ts +110 -0
  849. package/src/crypto/internal/digest.ts +16 -0
  850. package/src/crypto/internal/key.ts +235 -0
  851. package/src/crypto/internal/md5.ts +170 -0
  852. package/src/crypto/internal/webCrypto.ts +150 -0
  853. package/src/devtools/DevToolsClient.ts +2 -0
  854. package/src/encoding/Base64.ts +38 -0
  855. package/src/encoding/Base64Url.ts +5 -2
  856. package/src/encoding/Csv.ts +1298 -0
  857. package/src/encoding/Hex.ts +3 -2
  858. package/src/encoding/SchemaBinary.ts +40 -4
  859. package/src/encoding/Sse.ts +4 -3
  860. package/src/encoding/Toml.ts +117 -35
  861. package/src/encoding/Yaml.ts +61 -18
  862. package/src/encoding/index.ts +6 -0
  863. package/src/eventlog/EventJournal.ts +4 -3
  864. package/src/eventlog/EventLog.ts +340 -15
  865. package/src/eventlog/EventLogEncryption.ts +118 -110
  866. package/src/eventlog/EventLogMessage.ts +273 -1
  867. package/src/eventlog/EventLogRemote.ts +367 -23
  868. package/src/eventlog/EventLogServer.ts +23 -8
  869. package/src/eventlog/EventLogServerEncrypted.ts +1130 -67
  870. package/src/eventlog/EventLogSessionAuth.ts +56 -70
  871. package/src/eventlog/EventRow.ts +12 -3
  872. package/src/eventlog/SqlEventJournal.ts +68 -45
  873. package/src/eventlog/SqlEventLogServerEncrypted.ts +1244 -136
  874. package/src/eventlog/SqlEventLogServerUnencrypted.ts +2 -2
  875. package/src/eventlog/internal/batches.ts +30 -0
  876. package/src/eventlog/internal/compaction.ts +64 -0
  877. package/src/eventlog/internal/conflicts.ts +0 -4
  878. package/src/eventlog/internal/identityRootSecretDerivation.ts +93 -123
  879. package/src/eventlog/internal/remoteCompaction.ts +92 -0
  880. package/src/http/Cookies.ts +291 -12
  881. package/src/http/FetchHttpClient.ts +88 -16
  882. package/src/http/HttpClient.ts +636 -29
  883. package/src/http/HttpClientError.ts +35 -1
  884. package/src/http/HttpClientRequest.ts +21 -10
  885. package/src/http/HttpClientResponse.ts +3 -2
  886. package/src/http/HttpMethod.ts +10 -2
  887. package/src/http/HttpMiddleware.ts +15 -18
  888. package/src/http/HttpRouter.ts +2 -1
  889. package/src/http/HttpServerError.ts +2 -2
  890. package/src/http/HttpServerRequest.ts +101 -30
  891. package/src/http/HttpServerResponse.ts +3 -2
  892. package/src/http/HttpStaticServer.ts +51 -22
  893. package/src/http/HttpTraceContext.ts +7 -4
  894. package/src/http/MultipartParser/internal/contentType.ts +3 -3
  895. package/src/http/ProblemDetails.ts +149 -0
  896. package/src/http/UrlParams.ts +6 -1
  897. package/src/http/index.ts +6 -0
  898. package/src/http/internal/compression.ts +4 -5
  899. package/src/http/internal/decompression.ts +10 -4
  900. package/src/http/internal/httpBody.ts +10 -2
  901. package/src/http/internal/urlParams.ts +37 -0
  902. package/src/http-api/HttpApi.ts +3 -6
  903. package/src/http-api/HttpApiBuilder.ts +61 -19
  904. package/src/http-api/HttpApiClient.ts +284 -72
  905. package/src/http-api/HttpApiEndpoint.ts +135 -35
  906. package/src/http-api/HttpApiError.ts +250 -0
  907. package/src/http-api/HttpApiMiddleware.ts +95 -1
  908. package/src/http-api/HttpApiSchema.ts +236 -52
  909. package/src/http-api/HttpApiTest.ts +3 -2
  910. package/src/http-api/OpenApi.ts +20 -17
  911. package/src/http-api/internal/toCodecHttpProperties.ts +56 -0
  912. package/src/index.ts +6 -6
  913. package/src/internal/arbitrary/runner.ts +133 -36
  914. package/src/internal/core.ts +2 -0
  915. package/src/internal/effect.ts +58 -34
  916. package/src/internal/equal.ts +17 -0
  917. package/src/internal/glob.ts +736 -0
  918. package/src/internal/jsonSchema.ts +27 -0
  919. package/src/internal/matcher.ts +18 -1
  920. package/src/internal/persistence.ts +11 -0
  921. package/src/internal/rcRef.ts +4 -1
  922. package/src/internal/schema/compilerRegistry.ts +6 -1
  923. package/src/internal/schema/content.ts +18 -0
  924. package/src/internal/schema/fromJsonSchemaDocument.ts +228 -190
  925. package/src/internal/schema/fromRepresentation.ts +2 -1
  926. package/src/internal/schema/standardSchema.ts +2 -2
  927. package/src/internal/schema/toCodeDocument.ts +11 -7
  928. package/src/internal/schema/toCodec.ts +26 -22
  929. package/src/internal/schema/toJsonSchemaDocument.ts +189 -167
  930. package/src/internal/schema/toRepresentation.ts +122 -140
  931. package/src/internal/sql.ts +14 -0
  932. package/src/internal/trie.ts +43 -14
  933. package/src/internal/ulid.ts +44 -0
  934. package/src/internal/uuid.ts +57 -16
  935. package/src/internal/version.ts +1 -1
  936. package/src/observability/Otlp.ts +21 -4
  937. package/src/observability/OtlpProxy.ts +314 -0
  938. package/src/observability/OtlpResource.ts +9 -1
  939. package/src/observability/OtlpTracer.ts +4 -0
  940. package/src/observability/index.ts +6 -0
  941. package/src/persistence/CircuitBreaker.ts +1678 -0
  942. package/src/persistence/KeyValueStore.ts +219 -22
  943. package/src/persistence/PersistedQueue.ts +128 -59
  944. package/src/persistence/Persistence.ts +20 -13
  945. package/src/persistence/Redis.ts +129 -8
  946. package/src/persistence/index.ts +6 -0
  947. package/src/process/ChildProcess.ts +285 -264
  948. package/src/process/ChildProcessSpawner.ts +46 -2
  949. package/src/process/CommandLine.ts +630 -0
  950. package/src/process/index.ts +6 -0
  951. package/src/reactivity/AsyncResult.ts +1 -1
  952. package/src/reactivity/Atom.ts +5 -5
  953. package/src/reactivity/AtomRegistry.ts +1 -1
  954. package/src/rpc/RpcClient.ts +75 -36
  955. package/src/rpc/RpcMessage.ts +10 -1
  956. package/src/rpc/RpcSerialization.ts +35 -9
  957. package/src/rpc/RpcServer.ts +176 -63
  958. package/src/rpc/RpcTest.ts +3 -0
  959. package/src/schema/Model.ts +26 -3
  960. package/src/sql/Migrator.ts +15 -69
  961. package/src/sql/MigratorFileSystem.ts +71 -0
  962. package/src/sql/SqlClient.ts +13 -20
  963. package/src/sql/SqlResolver.ts +23 -9
  964. package/src/sql/Statement.ts +38 -9
  965. package/src/sql/index.ts +1 -1
  966. package/src/testing/index.ts +0 -6
  967. package/src/workflow/DurableDeferred.ts +23 -6
  968. package/src/workflow/internal/crypto.ts +15 -11
  969. package/dist/Crypto.d.ts +0 -244
  970. package/dist/Crypto.d.ts.map +0 -1
  971. package/dist/Crypto.js +0 -139
  972. package/dist/Crypto.js.map +0 -1
  973. package/dist/testing/TestCrypto.d.ts +0 -73
  974. package/dist/testing/TestCrypto.d.ts.map +0 -1
  975. package/dist/testing/TestCrypto.js +0 -87
  976. package/dist/testing/TestCrypto.js.map +0 -1
  977. package/src/Crypto.ts +0 -347
  978. package/src/testing/TestCrypto.ts +0 -94
@@ -10,6 +10,7 @@
10
10
  * @stability unstable
11
11
  * @since 4.0.0
12
12
  */
13
+ import * as Arr from "../Array.ts";
13
14
  import * as ByteSize from "../ByteSize.ts";
14
15
  import * as Sse from "../encoding/Sse.ts";
15
16
  import { type LazyArg } from "../Function.ts";
@@ -75,13 +76,15 @@ export type StatusLiteral = HttpStatus.Literal;
75
76
  *
76
77
  * **Details**
77
78
  *
78
- * The status is stored with `.annotateKey({ httpApiStatus: code })`, so a named
79
- * schema reused with different statuses still emits a single OpenAPI component.
80
- * If the schema has checks or already has an `httpApiStatus` annotation, it is
81
- * stored with `.annotate({ httpApiStatus: code })` instead. A later
82
- * `.annotate({ httpApiStatus })` takes precedence, and a later check drops the
83
- * status. You can pass either a numeric status code (for example, `201`) or a
84
- * common literal name (for example, `"Created"`).
79
+ * Stores the status with `.annotateKey({ httpApiStatus: code })` unless the
80
+ * schema or any of its checks already has an ordinary `httpApiStatus`
81
+ * annotation, including an explicit `undefined`. In that case, uses
82
+ * `.annotate({ httpApiStatus: code })` instead.
83
+ *
84
+ * Ordinary status annotations take precedence over key annotations. Checks
85
+ * without a status annotation preserve the existing status. You can pass
86
+ * either a numeric code (for example, `201`) or a common literal name
87
+ * (for example, `"Created"`).
85
88
  *
86
89
  * @stability unstable
87
90
  * @category schemas
@@ -185,6 +188,57 @@ export interface asNoContent<S extends Schema.Constraint> extends Schema.decodeT
185
188
  export declare function asNoContent<S extends Schema.Constraint>(options: {
186
189
  readonly decode: LazyArg<S["Type"]>;
187
190
  }): (self: S) => asNoContent<S>;
191
+ /**
192
+ * Schema type returned by `asProblem`, encoding as a problem details body
193
+ * while decoding to the original schema type.
194
+ *
195
+ * @stability unstable
196
+ * @category schemas
197
+ * @since 4.0.6
198
+ */
199
+ export interface asProblem<S extends Schema.Constraint> extends Schema.decodeTo<Schema.toType<S>, Schema.Struct<{
200
+ readonly type: Schema.tag<string>;
201
+ readonly status: Schema.middlewareDecoding<Schema.withDecodingDefaultKey<Schema.tag<number>>, never>;
202
+ readonly title: Schema.middlewareDecoding<Schema.withDecodingDefaultKey<Schema.tag<string>>, never>;
203
+ }>> {
204
+ }
205
+ /**
206
+ * Renders an error class as an RFC 9457 problem.
207
+ *
208
+ * **Details**
209
+ *
210
+ * The server encodes the error as an `application/problem+json` body carrying
211
+ * `type`, `title` and the status of the class. Generated clients decode a body
212
+ * with the same `type` back into an instance by calling `decode`, which
213
+ * defaults to constructing the class without arguments; a body with a
214
+ * different `type` is rejected.
215
+ *
216
+ * **Example** (A built-in error as a problem)
217
+ *
218
+ * ```ts
219
+ * import { HttpApiEndpoint, HttpApiError, HttpApiSchema } from "effect/http-api"
220
+ *
221
+ * const user = HttpApiEndpoint.get("user", "/user", {
222
+ * error: HttpApiError.NotFound.pipe(HttpApiSchema.asProblem({ title: "Not Found" }))
223
+ * })
224
+ * // A NotFound failure responds with 404 and
225
+ * // { "type": "about:blank", "title": "Not Found", "status": 404 }
226
+ * ```
227
+ *
228
+ * @see {@link asNoContent} for the empty-body equivalent.
229
+ *
230
+ * @stability unstable
231
+ * @category encoding
232
+ * @since 4.0.6
233
+ */
234
+ export declare function asProblem<S extends Schema.Constraint & (new () => S["Type"])>(options: {
235
+ /**
236
+ * The problem type URI. Defaults to `about:blank`.
237
+ */
238
+ readonly type?: string | undefined;
239
+ readonly title: string;
240
+ readonly decode?: LazyArg<S["Type"]> | undefined;
241
+ }): (self: S) => asProblem<S>;
188
242
  /**
189
243
  * Mode describing whether an SSE stream emits full events or raw data values.
190
244
  *
@@ -234,6 +288,7 @@ export interface StreamSse<Events extends Sse.EventCodec, Error extends Schema.C
234
288
  readonly mode: "sse";
235
289
  readonly sseMode: StreamSseMode;
236
290
  readonly contentType: string;
291
+ readonly contentTypes: Arr.NonEmptyReadonlyArray<string>;
237
292
  readonly events: Events;
238
293
  readonly error: Error;
239
294
  readonly "~Value"?: Value | undefined;
@@ -275,6 +330,7 @@ export interface StreamUint8Array extends Schema.Bottom<Stream.Stream<Uint8Array
275
330
  readonly _tag: "StreamUint8Array";
276
331
  readonly mode: "uint8array";
277
332
  readonly contentType: string;
333
+ readonly contentTypes: Arr.NonEmptyReadonlyArray<string>;
278
334
  readonly maxBytes: ByteSize.ByteSize | undefined;
279
335
  }
280
336
  /**
@@ -320,6 +376,7 @@ export interface StreamNdjson<S extends Schema.Constraint> extends Schema.Bottom
320
376
  readonly _tag: "StreamNdjson";
321
377
  readonly mode: "ndjson";
322
378
  readonly contentType: string;
379
+ readonly contentTypes: Arr.NonEmptyReadonlyArray<string>;
323
380
  readonly schema: S;
324
381
  readonly maxBytes: ByteSize.ByteSize | undefined;
325
382
  readonly maxElementBytes: ByteSize.ByteSize;
@@ -388,15 +445,17 @@ export declare const StreamSse: {
388
445
  *
389
446
  * **Details**
390
447
  *
391
- * `contentType` defaults to `application/octet-stream`. `maxBytes` only applies
392
- * to request payloads and has no default.
448
+ * `contentType` defaults to `application/octet-stream`. Pass a list when the
449
+ * same stream is sent under several media types. The first entry is the
450
+ * default response type, and payloads are accepted under every entry.
451
+ * `maxBytes` only applies to request payloads and has no default.
393
452
  *
394
453
  * @stability unstable
395
454
  * @category constructors
396
455
  * @since 4.0.0
397
456
  */
398
457
  export declare const StreamUint8Array: (options?: {
399
- readonly contentType?: string | undefined;
458
+ readonly contentType?: string | ReadonlyArray<string> | undefined;
400
459
  readonly maxBytes?: ByteSize.Input | undefined;
401
460
  }) => StreamUint8Array;
402
461
  /**
@@ -405,7 +464,8 @@ export declare const StreamUint8Array: (options?: {
405
464
  * **Details**
406
465
  *
407
466
  * `contentType` defaults to `application/x-ndjson` and `maxElementBytes` to 1
408
- * MiB. `maxBytes` has no default.
467
+ * MiB. `maxBytes` has no default. Pass a list of content types to accept
468
+ * aliases such as `application/jsonl`. The first entry is the default.
409
469
  *
410
470
  * **Example** (Declaring an NDJSON request payload)
411
471
  *
@@ -433,7 +493,7 @@ export declare const StreamUint8Array: (options?: {
433
493
  */
434
494
  export declare const StreamNdjson: <S extends Schema.Constraint>(options: {
435
495
  readonly schema: S;
436
- readonly contentType?: string | undefined;
496
+ readonly contentType?: string | ReadonlyArray<string> | undefined;
437
497
  readonly maxBytes?: ByteSize.Input | undefined;
438
498
  readonly maxElementBytes?: ByteSize.Input | undefined;
439
499
  }) => StreamNdjson<S>;
@@ -446,15 +506,18 @@ declare const UpgradeTypeId = "~effect/http-api/HttpApiSchema/Upgrade";
446
506
  *
447
507
  * Created with {@link Upgrade}. The response is `101 Switching Protocols`, and
448
508
  * the connection then carries raw bytes in both directions as a `Socket`.
509
+ * `Headers` is the schema of the custom `101` headers, or `never` when the
510
+ * upgrade declares none.
449
511
  *
450
512
  * @stability unstable
451
513
  * @category models
452
514
  * @since 4.0.6
453
515
  */
454
- export interface Upgrade extends Schema.Bottom<Socket.Socket, Socket.Socket, never, never, SchemaAST.Declaration, Upgrade> {
455
- readonly "Rebuild": Upgrade;
516
+ export interface Upgrade<Headers extends Schema.Top = Schema.Top> extends Schema.Bottom<Socket.Socket, Socket.Socket, never, never, SchemaAST.Declaration, Upgrade<Headers>> {
517
+ readonly "Rebuild": Upgrade<Headers>;
456
518
  readonly [UpgradeTypeId]: typeof UpgradeTypeId;
457
519
  readonly protocol: string;
520
+ readonly headers: Headers | undefined;
458
521
  }
459
522
  /**
460
523
  * Declares an endpoint success that upgrades the connection to `protocol`,
@@ -462,33 +525,59 @@ export interface Upgrade extends Schema.Bottom<Socket.Socket, Socket.Socket, nev
462
525
  *
463
526
  * **When to use**
464
527
  *
465
- * Use as the only success schema of an endpoint that hands over its
466
- * connection as a raw byte stream after `101 Switching Protocols`. For
467
- * WebSocket, upgrade the request with `HttpServerRequest.upgrade` and
468
- * connect with `Socket.makeWebSocket` instead.
528
+ * Use when an endpoint hands over its connection as a raw byte stream after
529
+ * `101 Switching Protocols`. For WebSocket, upgrade the request with
530
+ * `HttpServerRequest.upgrade` and connect with `Socket.makeWebSocket` instead.
469
531
  *
470
532
  * **Details**
471
533
  *
472
- * The handler receives the connection as `socket`. The `101` response is
473
- * sent when the handler acquires the socket's reader, so a handler can still
474
- * fail with a declared error before then. Requests that do not ask for
475
- * `protocol` get `426 Upgrade Required`.
534
+ * The handler receives an `upgrade` function that returns the connection.
535
+ * The `101` response is sent when the handler acquires the socket's reader,
536
+ * so a handler can still fail with a declared error before then. Requests
537
+ * that do not ask for `protocol` get `426 Upgrade Required`.
476
538
  *
477
- * The client sends `Connection: Upgrade` and `Upgrade: protocol`, and returns
478
- * the response headers with the connection. Other responses are decoded as
479
- * the endpoint's errors.
539
+ * `headers` declares custom `101` response headers, encoded like
540
+ * `WithHeaders` headers. The handler passes them to `upgrade`, so they can
541
+ * depend on the decoded request. `Connection`, `Upgrade`, `Content-Length`
542
+ * and `Transfer-Encoding` cannot be set.
480
543
  *
481
- * The endpoint cannot declare a payload or other success schemas.
544
+ * The endpoint may declare a buffered payload, which is decoded before the
545
+ * handler runs. Streaming payloads are rejected.
482
546
  *
483
- * **Example** (Declaring an attach endpoint)
547
+ * The endpoint may also declare buffered or no-content successes at statuses
548
+ * other than `101`, for a server that declines the upgrade (RFC 9110 §7.8).
549
+ * The handler then either calls `upgrade` and returns nothing, or returns one
550
+ * of those successes without calling it. An endpoint declares at most one
551
+ * upgrade, and streaming successes cannot be combined with it.
552
+ *
553
+ * The client sends `Connection: Upgrade` and `Upgrade: protocol`, and returns
554
+ * the response headers with the connection, decoded with `headers` when
555
+ * declared. Ordinary success responses are decoded as usual, and
556
+ * `HttpApiClient.isUpgraded` tells the two apart. Other responses are decoded
557
+ * as the endpoint's errors.
558
+ *
559
+ * **Example** (Declaring an exec start endpoint)
484
560
  *
485
561
  * ```ts
486
562
  * import { Schema } from "effect"
487
563
  * import { HttpApiEndpoint, HttpApiSchema } from "effect/http-api"
488
564
  *
489
- * const attach = HttpApiEndpoint.post("attach", "/containers/:id/attach", {
565
+ * const start = HttpApiEndpoint.post("start", "/exec/:id/start", {
490
566
  * params: { id: Schema.String },
491
- * success: HttpApiSchema.Upgrade({ protocol: "tcp" })
567
+ * payload: Schema.Struct({ Detach: Schema.Boolean, Tty: Schema.Boolean }),
568
+ * success: [
569
+ * HttpApiSchema.Upgrade({
570
+ * protocol: "tcp",
571
+ * headers: {
572
+ * "content-type": Schema.Literals([
573
+ * "application/vnd.docker.raw-stream",
574
+ * "application/vnd.docker.multiplexed-stream"
575
+ * ])
576
+ * }
577
+ * }),
578
+ * // a detached exec answers with an empty 200 instead
579
+ * HttpApiSchema.Empty(200)
580
+ * ]
492
581
  * })
493
582
  * ```
494
583
  *
@@ -496,9 +585,23 @@ export interface Upgrade extends Schema.Bottom<Socket.Socket, Socket.Socket, nev
496
585
  * @category constructors
497
586
  * @since 4.0.6
498
587
  */
499
- export declare const Upgrade: (options: {
588
+ export declare function Upgrade(options: {
589
+ readonly protocol: string;
590
+ }): Upgrade<never>;
591
+ /**
592
+ * @stability unstable
593
+ */
594
+ export declare function Upgrade<H extends Schema.Struct.Fields>(options: {
500
595
  readonly protocol: string;
501
- }) => Upgrade;
596
+ readonly headers: H;
597
+ }): Upgrade<Schema.Struct<H>>;
598
+ /**
599
+ * @stability unstable
600
+ */
601
+ export declare function Upgrade<H extends Schema.Top>(options: {
602
+ readonly protocol: string;
603
+ readonly headers: H;
604
+ }): Upgrade<H>;
502
605
  /**
503
606
  * Runtime brand key used to mark `WithHeaders` response schemas.
504
607
  *
@@ -547,8 +650,8 @@ export type WithHeadersValueTypeId = typeof WithHeadersValueTypeId;
547
650
  * `StreamSse` and `StreamUint8Array`; error responses remain non-streaming.
548
651
  * Nesting `WithHeaders` is rejected at construction.
549
652
  * - `headers` is any schema; endpoint construction applies
550
- * `Schema.toCodecStringTree` unless codecs are disabled, so leaves become
551
- * `string | undefined` on the wire and `undefined` leaves are omitted from the response.
653
+ * a StringTree codec unless codecs are disabled. Optional headers that encode
654
+ * to `undefined` are omitted from the response.
552
655
  * - Status and response-encoding annotations are resolved from the wrapper
553
656
  * first, falling through to the inner schema.
554
657
  * - A header-carrying response cannot share its status and content type with
@@ -831,6 +934,12 @@ export declare function asJson(options?: {
831
934
  *
832
935
  * The schema's encoded side must be a record of strings.
833
936
  *
937
+ * **Gotchas**
938
+ *
939
+ * Fields are flat on the server. A field that encodes to a nested object is
940
+ * sent as bracket keys that the server does not read back; use an explicit
941
+ * codec such as `Schema.fromJsonString(...)` for structured values.
942
+ *
834
943
  * @stability unstable
835
944
  * @category encoding
836
945
  * @since 4.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"HttpApiSchema.d.ts","sourceRoot":"","sources":["../../src/http-api/HttpApiSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HttpApiSchema.d.ts","sourceRoot":"","sources":["../../src/http-api/HttpApiSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,GAAG,MAAM,aAAa,CAAA;AAClC,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAA;AAC1C,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAExD,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,KAAK,UAAU,MAAM,sBAAsB,CAAA;AAGvD,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAA;AAE5C,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AAGtC,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAU,WAAW,CAAC;QACpB,UAAU,OAAO;YACf,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAa5C;KACF;CACF;AAyBD;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,eAAe,GAAG,gBAAgB,CAAA;AAEzD;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GACvB;IACA,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;IAC1B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,QAAQ,CAAA;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,GAAG,SAAS,CAAA;CAC5D,GACC;IACA,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,YAAY,GAAG,MAAM,CAAA;IAChE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B,CAAA;AAEH;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,YAAY,GAAG,MAAM,CAAA;IAChE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B,CAAA;AAED,QAAA,MAAM,kBAAkB,0CAA0C,CAAA;AAElE;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAA;AAE9C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG;IACpC,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAA;CAC9C,CAAA;AACD;;GAEG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG;IAC3C,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAA;CAC9C,CAAA;AAYD;;;;;;;;;GASG;AACH,eAAO,MAAM,KAAK,SAAU,MAAM,KAAG,MAAM,CAAC,IAAsC,CAAA;AAElF;;;;;;GAMG;AACH,MAAM,WAAW,SAAU,SAAQ,MAAM,CAAC,IAAI;CAAG;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,EAAE,SAAsB,CAAA;AAE9C;;;;;;GAMG;AACH,MAAM,WAAW,OAAQ,SAAQ,MAAM,CAAC,IAAI;CAAG;AAE/C;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,EAAE,OAAoB,CAAA;AAE1C;;;;;;GAMG;AACH,MAAM,WAAW,QAAS,SAAQ,MAAM,CAAC,IAAI;CAAG;AAEhD;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,EAAE,QAAqB,CAAA;AAE5C;;;;;;GAMG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,UAAU,CAAE,SAAQ,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC;CAAG;AAEnH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE;IAChE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;CACpC,UACe,CAAC,KAAG,WAAW,CAAC,CAAC,CAAC,CAWjC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,UAAU,CAAE,SACtD,MAAM,CAAC,QAAQ,CACb,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAChB,MAAM,CAAC,MAAM,CAAC;IACZ,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACpG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;CACpG,CAAC,CACH;CACD;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,UAAU,GAAG,CAAC,UAAS,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE;IACrF;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAA;CACjD,UACe,CAAC,KAAG,SAAS,CAAC,CAAC,CAAC,CAqB/B;AAID;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,CAAA;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,SAAS,CACxB,MAAM,SAAS,GAAG,CAAC,UAAU,EAC7B,KAAK,SAAS,MAAM,CAAC,UAAU,EAC/B,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CACtB,SACA,MAAM,CAAC,UAAU,CACf,SAAS,CAAC,WAAW,EACrB,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAChC;IAED,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;IAC3D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;IAC9D,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;IACnF,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;IACnF,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IACnD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;IACpE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;IACjE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAA;IAC1D,QAAQ,CAAC,CAAC,kBAAkB,CAAC,EAAE,OAAO,kBAAkB,CAAA;IACxD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;IAC1B,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAA;IAC/B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;IACxD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CACtC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB,CAAC,IAAI,SAAS,MAAM,CAAC,UAAU,CAAE,SAChE,MAAM,CAAC,eAAe,CACpB;IACE,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;CAC5B,EACD;IACE,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB,EACD,IAAI,CAAC,kBAAkB,CAAC,EACxB,IAAI,CAAC,kBAAkB,CAAC,CACzB;CACD;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,gBAAiB,SAChC,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,EACzC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,EACzC,KAAK,EACL,KAAK,EACL,SAAS,CAAC,WAAW,EACrB,gBAAgB,CACjB;IAED,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAA;IACpC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,EAAE,OAAO,kBAAkB,CAAA;IACxD,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;IACjC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;IACxD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;CACjD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,UAAU,CAAE,SACzD,MAAM,CAAC,UAAU,CACf,SAAS,CAAC,WAAW,EACrB,YAAY,CAAC,CAAC,CAAC,CAChB;IAED,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACzD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC5D,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAA;IAClD,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAA;IAClD,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;IACnC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAClE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC/D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACxD,QAAQ,CAAC,CAAC,kBAAkB,CAAC,EAAE,OAAO,kBAAkB,CAAA;IACxD,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;IACxD,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;IAChD,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,QAAQ,CAAA;CAC5C;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,YAAY,GACpB,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,GAC9C,gBAAgB,GAChB,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAM5B;;;;;;;;;;GAUG;AACH,eAAO,MAAM,SAAS,EAAE;IACtB;;;;;;;;;;OAUG;IACH,CAAC,MAAM,SAAS,GAAG,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,EAC5E,OAAO,EAAE;QACP,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;KACnC,GACA,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;IAC3C;;;;;;;;;;OAUG;IACH,CAAC,IAAI,SAAS,MAAM,CAAC,UAAU,EAAE,KAAK,SAAS,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,EAC7E,OAAO,EAAE;QACP,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACzC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;QACnB,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;KACnC,GACA,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;CAuB1D,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,gBAAgB,aAAc;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IACjE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;CAC/C,KAAG,gBAOA,CAAA;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,MAAM,CAAC,UAAU,WAAW;IACjE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IACjE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;IAC9C,QAAQ,CAAC,eAAe,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;CACtD,KAAG,YAAY,CAAC,CAAC,CAWd,CAAA;AA0BJ,QAAA,MAAM,aAAa,2CAA2C,CAAA;AAE9D;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,OAAO,CAAC,OAAO,SAAS,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAE,SAChE,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,MAAM,EACb,KAAK,EACL,KAAK,EACL,SAAS,CAAC,WAAW,EACrB,OAAO,CAAC,OAAO,CAAC,CACjB;IAED,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;IACpC,QAAQ,CAAC,CAAC,aAAa,CAAC,EAAE,OAAO,aAAa,CAAA;IAC9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAA;CACtC;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;AAC/E;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE;IAC/D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;CACpB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AAC7B;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE;IACrD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;CACpB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;AA+Dd;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,+CAA+C,CAAA;AAE7E;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAA;AAExD;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,oDAAoD,CAAA;AAEvF;;;;;;GAMG;AACH,MAAM,MAAM,sBAAsB,GAAG,OAAO,sBAAsB,CAAA;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,CAAE,SACvE,MAAM,CAAC,MAAM,CACX,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EACjC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,EAC5C,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,EAC7C,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,EAC7C,SAAS,CAAC,WAAW,EACrB,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAClB;IAED,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACrC,QAAQ,CAAC,CAAC,iBAAiB,CAAC,EAAE,OAAO,iBAAiB,CAAA;IACtD,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;CACpB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,EAAE,CAAC;IAC/B,QAAQ,CAAC,CAAC,sBAAsB,CAAC,EAAE,sBAAsB,CAAA;IACzD,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;IAChB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;CACpB;AAUD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,EAC9E,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GACT,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AACnC;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,MAAM,CAAC,GAAG,EACpE,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,CAAC,GACT,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAqBpB;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,CAAC,WAAW;IACzC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;IAChB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;CACpB,KAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAIlB,CAAA;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,aAAa,MAAO,OAAO,KAAG,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CACf,CAAA;AAiBnE;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB,CAClC,CAAC,SAAS,MAAM,CAAC,GAAG,EACpB,IAAI,SAAS,MAAM,CAAC,GAAG,EACvB,OAAO,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,CACpC,SACA,MAAM,CAAC,QAAQ,CACb,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAChB,MAAM,CAAC,MAAM,CAAC;IACZ,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;CACzC,CAAC,CACH;CACD;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,wBAAgB,mBAAmB,CACjC,CAAC,SAAS,MAAM,CAAC,GAAG,EACpB,IAAI,SAAS,MAAM,CAAC,GAAG,EACvB,OAAO,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,EACpC,OAAO,EAAE;IACT,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B,EAAE,cAAc,EAAE;IACjB,QAAQ,CAAC,MAAM,EAAE,CACf,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC,KACzF,CAAC,CAAC,MAAM,CAAC,CAAA;IACd,QAAQ,CAAC,MAAM,EAAE,CACf,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KACb,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC,CAAA;CAC3F,UACe,CAAC,KAAG,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAyBxD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,6CAA6C,CAAA;AAEzE;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAA;AAEpD;;;;;;GAMG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,CAAE,SAAQ,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;CAAG;AAEzG;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,IACzD,CAAC,SAAS,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAG,WAAW,CAAC,CAAC,CAAC,CASvD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,mDAAmD,CAAA;AAErF;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG,OAAO,qBAAqB,CAAA;AAEhE;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,CAAE,SAAQ,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC;CAAG;AAErH;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,IAC/D,CAAC,SAAS,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAG,iBAAiB,CAAC,CAAC,CAAC,CAS7D;AA6BD;;;;;;GAMG;AACH,wBAAgB,MAAM,CAAC,OAAO,CAAC,EAAE;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B,IACS,CAAC,SAAS,MAAM,CAAC,GAAG,QAAQ,CAAC,kBACtC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B,IACS,CAAC,SAAS,MAAM,CAAC,GAAG,QACpB,CAAC,kBAEV;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,MAAM,CAAC,OAAO,CAAC,EAAE;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B,IACS,CAAC,SAAS,MAAM,CAAC,GAAG,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,QAAQ,CAAC,kBAErE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B,IACS,CAAC,SAAS,MAAM,CAAC,GAAG,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAA;CAAE,QAAQ,CAAC,kBAEzE;AACD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,WAAW,QAAS,SAAS,CAAC,GAAG,KAAG,OAOhD,CAAA"}
@@ -10,26 +10,29 @@
10
10
  * @stability unstable
11
11
  * @since 4.0.0
12
12
  */
13
+ import * as Arr from "../Array.js";
13
14
  import * as ByteSize from "../ByteSize.js";
14
15
  import * as Sse from "../encoding/Sse.js";
15
16
  import { constVoid } from "../Function.js";
16
17
  import { hasBody } from "../http/HttpMethod.js";
17
18
  import * as HttpStatus from "../http/HttpStatus.js";
19
+ import * as ProblemDetails from "../http/ProblemDetails.js";
18
20
  import * as Predicate from "../Predicate.js";
19
21
  import * as Schema from "../Schema.js";
20
22
  import * as SchemaAST from "../SchemaAST.js";
21
23
  import * as SchemaTransformation from "../SchemaTransformation.js";
22
24
  import * as Socket from "../socket/Socket.js";
23
25
  import * as Stream from "../Stream.js";
26
+ import * as MediaType from "./internal/mediaType.js";
24
27
  const StreamSchemaTypeId = "~effect/http-api/HttpApiSchema/Stream";
25
28
  /**
26
29
  * @stability unstable
27
30
  */
28
31
  export function status(code) {
29
32
  const statusCode = typeof code === "string" ? HttpStatus.fromLiteral(code) : code;
30
- return self => self.ast.checks !== undefined || hasStatusAnnotation(self.ast) ? self.annotate({
33
+ return self => findHttpApiStatusAnnotation(self.ast) === undefined ? self.annotateKey({
31
34
  httpApiStatus: statusCode
32
- }) : self.annotateKey({
35
+ }) : self.annotate({
33
36
  httpApiStatus: statusCode
34
37
  });
35
38
  }
@@ -91,6 +94,58 @@ export function asNoContent(options) {
91
94
  })));
92
95
  };
93
96
  }
97
+ /**
98
+ * Renders an error class as an RFC 9457 problem.
99
+ *
100
+ * **Details**
101
+ *
102
+ * The server encodes the error as an `application/problem+json` body carrying
103
+ * `type`, `title` and the status of the class. Generated clients decode a body
104
+ * with the same `type` back into an instance by calling `decode`, which
105
+ * defaults to constructing the class without arguments; a body with a
106
+ * different `type` is rejected.
107
+ *
108
+ * **Example** (A built-in error as a problem)
109
+ *
110
+ * ```ts
111
+ * import { HttpApiEndpoint, HttpApiError, HttpApiSchema } from "effect/http-api"
112
+ *
113
+ * const user = HttpApiEndpoint.get("user", "/user", {
114
+ * error: HttpApiError.NotFound.pipe(HttpApiSchema.asProblem({ title: "Not Found" }))
115
+ * })
116
+ * // A NotFound failure responds with 404 and
117
+ * // { "type": "about:blank", "title": "Not Found", "status": 404 }
118
+ * ```
119
+ *
120
+ * @see {@link asNoContent} for the empty-body equivalent.
121
+ *
122
+ * @stability unstable
123
+ * @category encoding
124
+ * @since 4.0.6
125
+ */
126
+ export function asProblem(options) {
127
+ return self => {
128
+ const status = getStatusError(self.ast);
129
+ const type = options.type ?? ProblemDetails.blankType;
130
+ const body = {
131
+ type,
132
+ status,
133
+ title: options.title
134
+ };
135
+ const decode = options.decode ?? (() => new self());
136
+ const problem = Schema.Struct({
137
+ type: Schema.tag(type),
138
+ status: ProblemDetails.fixedMember(status),
139
+ title: ProblemDetails.fixedMember(options.title)
140
+ });
141
+ return problem.pipe(Schema.decodeTo(Schema.toType(self), SchemaTransformation.transform({
142
+ decode,
143
+ encode: () => body
144
+ })), asJson({
145
+ contentType: ProblemDetails.contentType
146
+ }));
147
+ };
148
+ }
94
149
  const streamSchema = /*#__PURE__*/Schema.declare(Stream.isStream);
95
150
  const defaultMaxElementBytes = /*#__PURE__*/ByteSize.mebibytes(1);
96
151
  /**
@@ -117,7 +172,7 @@ export const StreamSse = options => {
117
172
  _tag: "StreamSse",
118
173
  mode: "sse",
119
174
  sseMode: options.events === undefined ? "data" : "events",
120
- contentType: options.contentType ?? defaultStreamContentType("sse"),
175
+ ...streamContentTypes(options.contentType, "sse"),
121
176
  events,
122
177
  error: options.error ?? Schema.Never
123
178
  });
@@ -127,8 +182,10 @@ export const StreamSse = options => {
127
182
  *
128
183
  * **Details**
129
184
  *
130
- * `contentType` defaults to `application/octet-stream`. `maxBytes` only applies
131
- * to request payloads and has no default.
185
+ * `contentType` defaults to `application/octet-stream`. Pass a list when the
186
+ * same stream is sent under several media types. The first entry is the
187
+ * default response type, and payloads are accepted under every entry.
188
+ * `maxBytes` only applies to request payloads and has no default.
132
189
  *
133
190
  * @stability unstable
134
191
  * @category constructors
@@ -138,7 +195,7 @@ export const StreamUint8Array = options => Schema.make(streamSchema.ast, {
138
195
  [StreamSchemaTypeId]: StreamSchemaTypeId,
139
196
  _tag: "StreamUint8Array",
140
197
  mode: "uint8array",
141
- contentType: options?.contentType ?? defaultStreamContentType("uint8array"),
198
+ ...streamContentTypes(options?.contentType, "uint8array"),
142
199
  maxBytes: options?.maxBytes === undefined ? undefined : ByteSize.fromInputUnsafe(options.maxBytes)
143
200
  });
144
201
  /**
@@ -147,7 +204,8 @@ export const StreamUint8Array = options => Schema.make(streamSchema.ast, {
147
204
  * **Details**
148
205
  *
149
206
  * `contentType` defaults to `application/x-ndjson` and `maxElementBytes` to 1
150
- * MiB. `maxBytes` has no default.
207
+ * MiB. `maxBytes` has no default. Pass a list of content types to accept
208
+ * aliases such as `application/jsonl`. The first entry is the default.
151
209
  *
152
210
  * **Example** (Declaring an NDJSON request payload)
153
211
  *
@@ -177,7 +235,7 @@ export const StreamNdjson = options => Schema.make(streamSchema.ast, {
177
235
  [StreamSchemaTypeId]: StreamSchemaTypeId,
178
236
  _tag: "StreamNdjson",
179
237
  mode: "ndjson",
180
- contentType: options.contentType ?? defaultStreamContentType("ndjson"),
238
+ ...streamContentTypes(options.contentType, "ndjson"),
181
239
  schema: options.schema,
182
240
  maxBytes: options.maxBytes === undefined ? undefined : ByteSize.fromInputUnsafe(options.maxBytes),
183
241
  maxElementBytes: options.maxElementBytes === undefined ? defaultMaxElementBytes : ByteSize.fromInputUnsafe(options.maxElementBytes)
@@ -201,58 +259,49 @@ export const isStreamNdjson = u => isStreamSchema(u) && u._tag === "StreamNdjson
201
259
  const UpgradeTypeId = "~effect/http-api/HttpApiSchema/Upgrade";
202
260
  const upgradeSchema = /*#__PURE__*/Schema.declare(Socket.isSocket).pipe(/*#__PURE__*/status(101));
203
261
  /**
204
- * Declares an endpoint success that upgrades the connection to `protocol`,
205
- * such as Docker's `tcp` for container attach.
206
- *
207
- * **When to use**
208
- *
209
- * Use as the only success schema of an endpoint that hands over its
210
- * connection as a raw byte stream after `101 Switching Protocols`. For
211
- * WebSocket, upgrade the request with `HttpServerRequest.upgrade` and
212
- * connect with `Socket.makeWebSocket` instead.
213
- *
214
- * **Details**
215
- *
216
- * The handler receives the connection as `socket`. The `101` response is
217
- * sent when the handler acquires the socket's reader, so a handler can still
218
- * fail with a declared error before then. Requests that do not ask for
219
- * `protocol` get `426 Upgrade Required`.
220
- *
221
- * The client sends `Connection: Upgrade` and `Upgrade: protocol`, and returns
222
- * the response headers with the connection. Other responses are decoded as
223
- * the endpoint's errors.
224
- *
225
- * The endpoint cannot declare a payload or other success schemas.
226
- *
227
- * **Example** (Declaring an attach endpoint)
228
- *
229
- * ```ts
230
- * import { Schema } from "effect"
231
- * import { HttpApiEndpoint, HttpApiSchema } from "effect/http-api"
232
- *
233
- * const attach = HttpApiEndpoint.post("attach", "/containers/:id/attach", {
234
- * params: { id: Schema.String },
235
- * success: HttpApiSchema.Upgrade({ protocol: "tcp" })
236
- * })
237
- * ```
238
- *
239
262
  * @stability unstable
240
- * @category constructors
241
- * @since 4.0.6
242
263
  */
243
- export const Upgrade = options => {
264
+ export function Upgrade(options) {
244
265
  if (options.protocol.toLowerCase() === "websocket") {
245
266
  throw new Error("Upgrade does not support WebSocket");
246
267
  }
247
- return Schema.make(upgradeSchema.ast, {
248
- [UpgradeTypeId]: UpgradeTypeId,
249
- protocol: options.protocol
250
- });
251
- };
268
+ const headers = options.headers === undefined || Schema.isSchema(options.headers) ? options.headers : Schema.Struct(options.headers);
269
+ return rebuildUpgrade(options.protocol, headers);
270
+ }
271
+ /**
272
+ * @internal
273
+ */
274
+ export const rebuildUpgrade = (protocol, headers) => Schema.make(upgradeSchema.ast, {
275
+ [UpgradeTypeId]: UpgradeTypeId,
276
+ protocol,
277
+ headers
278
+ });
252
279
  /**
253
280
  * @internal
254
281
  */
255
282
  export const isUpgrade = u => Schema.isSchema(u) && Predicate.hasProperty(u, UpgradeTypeId);
283
+ function streamContentTypes(contentType, mode) {
284
+ if (contentType === undefined) contentType = defaultStreamContentType(mode);
285
+ if (typeof contentType === "string") return {
286
+ contentType,
287
+ contentTypes: [contentType]
288
+ };
289
+ if (!Arr.isReadonlyArrayNonEmpty(contentType)) {
290
+ throw new Error("Stream schemas require at least one content type");
291
+ }
292
+ const seen = new Set();
293
+ for (const entry of contentType) {
294
+ const normalized = MediaType.normalize(entry);
295
+ if (seen.has(normalized)) {
296
+ throw new Error(`Duplicate stream content type: ${entry}`);
297
+ }
298
+ seen.add(normalized);
299
+ }
300
+ return {
301
+ contentType: contentType[0],
302
+ contentTypes: contentType
303
+ };
304
+ }
256
305
  function defaultStreamContentType(mode) {
257
306
  switch (mode) {
258
307
  case "sse":
@@ -528,6 +577,12 @@ export function asJson(options) {
528
577
  *
529
578
  * The schema's encoded side must be a record of strings.
530
579
  *
580
+ * **Gotchas**
581
+ *
582
+ * Fields are flat on the server. A field that encodes to a nested object is
583
+ * sent as bracket keys that the server does not read back; use an explicit
584
+ * codec such as `Schema.fromJsonString(...)` for structured values.
585
+ *
531
586
  * @stability unstable
532
587
  * @category encoding
533
588
  * @since 4.0.0
@@ -597,16 +652,25 @@ const resolveHttpApiEncoding = /*#__PURE__*/SchemaAST.resolveAt("~httpApiEncodin
597
652
  * @internal
598
653
  */
599
654
  export const getWithHeadersAnnotation = /*#__PURE__*/SchemaAST.resolveAt("~httpApiWithHeaders");
600
- const resolveHttpApiStatusAnnotation = /*#__PURE__*/SchemaAST.resolveAt("httpApiStatus");
601
- function hasStatusAnnotation(ast) {
602
- const annotations = SchemaAST.resolve(ast);
603
- return annotations !== undefined && "httpApiStatus" in annotations;
655
+ function findHttpApiStatusAnnotation(ast) {
656
+ if (ast.checks) {
657
+ for (let i = ast.checks.length - 1; i >= 0; i--) {
658
+ const check = ast.checks[i];
659
+ if (check.annotations && "httpApiStatus" in check.annotations) return check.annotations;
660
+ if (check._tag === "FilterGroup") {
661
+ const annotations = findHttpApiStatusAnnotation(check);
662
+ if (annotations !== undefined) return annotations;
663
+ }
664
+ }
665
+ }
666
+ const annotations = ast.annotations;
667
+ return annotations && "httpApiStatus" in annotations ? annotations : undefined;
604
668
  }
605
- // An `httpApiStatus` annotation, even `undefined`, overrides the key context set by
606
- // `status`, which a later check drops, matching annotations
607
669
  function resolveHttpApiStatus(ast) {
608
- if (hasStatusAnnotation(ast)) return resolveHttpApiStatusAnnotation(ast);
609
- return ast.checks === undefined ? ast.context?.annotations?.httpApiStatus : undefined;
670
+ const annotations = findHttpApiStatusAnnotation(ast);
671
+ // An explicit undefined clears the status instead of falling back to key context.
672
+ if (annotations !== undefined) return annotations.httpApiStatus;
673
+ return ast.context?.annotations?.httpApiStatus;
610
674
  }
611
675
  const defaultJsonEncoding = {
612
676
  _tag: "Json",