effect 4.0.7 → 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 (679) hide show
  1. package/README.md +1 -1
  2. package/dist/BigDecimal.d.ts.map +1 -1
  3. package/dist/BigDecimal.js +3 -0
  4. package/dist/BigDecimal.js.map +1 -1
  5. package/dist/Channel.d.ts +12 -6
  6. package/dist/Channel.d.ts.map +1 -1
  7. package/dist/Channel.js +9 -3
  8. package/dist/Channel.js.map +1 -1
  9. package/dist/Config.d.ts +7 -1
  10. package/dist/Config.d.ts.map +1 -1
  11. package/dist/Config.js.map +1 -1
  12. package/dist/Context.d.ts +18 -1
  13. package/dist/Context.d.ts.map +1 -1
  14. package/dist/Context.js +27 -8
  15. package/dist/Context.js.map +1 -1
  16. package/dist/Cron.d.ts +81 -11
  17. package/dist/Cron.d.ts.map +1 -1
  18. package/dist/Cron.js +101 -26
  19. package/dist/Cron.js.map +1 -1
  20. package/dist/Duration.d.ts +78 -0
  21. package/dist/Duration.d.ts.map +1 -1
  22. package/dist/Duration.js +123 -0
  23. package/dist/Duration.js.map +1 -1
  24. package/dist/Effect.d.ts +164 -7
  25. package/dist/Effect.d.ts.map +1 -1
  26. package/dist/Effect.js +11 -1
  27. package/dist/Effect.js.map +1 -1
  28. package/dist/FileSystem.d.ts +59 -4
  29. package/dist/FileSystem.d.ts.map +1 -1
  30. package/dist/FileSystem.js +9 -2
  31. package/dist/FileSystem.js.map +1 -1
  32. package/dist/Glob.d.ts +165 -0
  33. package/dist/Glob.d.ts.map +1 -0
  34. package/dist/Glob.js +127 -0
  35. package/dist/Glob.js.map +1 -0
  36. package/dist/Match.d.ts +86 -0
  37. package/dist/Match.d.ts.map +1 -1
  38. package/dist/Match.js +72 -0
  39. package/dist/Match.js.map +1 -1
  40. package/dist/Pool.d.ts +51 -0
  41. package/dist/Pool.d.ts.map +1 -1
  42. package/dist/Pool.js +59 -9
  43. package/dist/Pool.js.map +1 -1
  44. package/dist/Random.d.ts.map +1 -1
  45. package/dist/Random.js +3 -3
  46. package/dist/Random.js.map +1 -1
  47. package/dist/RcMap.d.ts.map +1 -1
  48. package/dist/RcMap.js +8 -2
  49. package/dist/RcMap.js.map +1 -1
  50. package/dist/Schedule.d.ts +18 -1
  51. package/dist/Schedule.d.ts.map +1 -1
  52. package/dist/Schedule.js +7 -2
  53. package/dist/Schedule.js.map +1 -1
  54. package/dist/Schema.d.ts +666 -41
  55. package/dist/Schema.d.ts.map +1 -1
  56. package/dist/Schema.js +650 -0
  57. package/dist/Schema.js.map +1 -1
  58. package/dist/SchemaGetter.d.ts +6 -1
  59. package/dist/SchemaGetter.d.ts.map +1 -1
  60. package/dist/SchemaGetter.js +22 -11
  61. package/dist/SchemaGetter.js.map +1 -1
  62. package/dist/SchemaRepresentation.d.ts +14 -0
  63. package/dist/SchemaRepresentation.d.ts.map +1 -1
  64. package/dist/SchemaRepresentation.js +16 -0
  65. package/dist/SchemaRepresentation.js.map +1 -1
  66. package/dist/SchemaTransformation.d.ts +8 -3
  67. package/dist/SchemaTransformation.d.ts.map +1 -1
  68. package/dist/SchemaTransformation.js +6 -3
  69. package/dist/SchemaTransformation.js.map +1 -1
  70. package/dist/ScopedCache.d.ts.map +1 -1
  71. package/dist/ScopedCache.js +5 -7
  72. package/dist/ScopedCache.js.map +1 -1
  73. package/dist/Semaphore.d.ts +130 -0
  74. package/dist/Semaphore.d.ts.map +1 -1
  75. package/dist/Semaphore.js +40 -0
  76. package/dist/Semaphore.js.map +1 -1
  77. package/dist/Stream.d.ts +13 -4
  78. package/dist/Stream.d.ts.map +1 -1
  79. package/dist/Stream.js +9 -0
  80. package/dist/Stream.js.map +1 -1
  81. package/dist/Terminal.d.ts +18 -1
  82. package/dist/Terminal.d.ts.map +1 -1
  83. package/dist/Terminal.js +1 -1
  84. package/dist/Terminal.js.map +1 -1
  85. package/dist/ai/AiError.d.ts +43 -116
  86. package/dist/ai/AiError.d.ts.map +1 -1
  87. package/dist/ai/AiError.js +53 -72
  88. package/dist/ai/AiError.js.map +1 -1
  89. package/dist/ai/Decision.d.ts +196 -15
  90. package/dist/ai/Decision.d.ts.map +1 -1
  91. package/dist/ai/Decision.js +130 -0
  92. package/dist/ai/Decision.js.map +1 -1
  93. package/dist/ai/DecisionModel.d.ts +54 -13
  94. package/dist/ai/DecisionModel.d.ts.map +1 -1
  95. package/dist/ai/DecisionModel.js +123 -12
  96. package/dist/ai/DecisionModel.js.map +1 -1
  97. package/dist/ai/McpServer.d.ts +630 -29
  98. package/dist/ai/McpServer.d.ts.map +1 -1
  99. package/dist/ai/McpServer.js +562 -116
  100. package/dist/ai/McpServer.js.map +1 -1
  101. package/dist/ai/McpTest.d.ts +130 -0
  102. package/dist/ai/McpTest.d.ts.map +1 -0
  103. package/dist/ai/McpTest.js +237 -0
  104. package/dist/ai/McpTest.js.map +1 -0
  105. package/dist/ai/Response.d.ts +1 -25
  106. package/dist/ai/Response.d.ts.map +1 -1
  107. package/dist/ai/Response.js +1 -10
  108. package/dist/ai/Response.js.map +1 -1
  109. package/dist/ai/Tool.d.ts +19 -1
  110. package/dist/ai/Tool.d.ts.map +1 -1
  111. package/dist/ai/Tool.js.map +1 -1
  112. package/dist/ai/index.d.ts +5 -0
  113. package/dist/ai/index.d.ts.map +1 -1
  114. package/dist/ai/index.js +5 -0
  115. package/dist/ai/index.js.map +1 -1
  116. package/dist/ai/internal/mcpCore.js +17 -12
  117. package/dist/ai/internal/mcpCore.js.map +1 -1
  118. package/dist/ai/internal/mcpProtocol/v2024_11_05.js +4 -5
  119. package/dist/ai/internal/mcpProtocol/v2024_11_05.js.map +1 -1
  120. package/dist/ai/internal/mcpProtocol/v2025_03_26.js +4 -5
  121. package/dist/ai/internal/mcpProtocol/v2025_03_26.js.map +1 -1
  122. package/dist/ai/internal/mcpProtocol/v2025_06_18.js +4 -5
  123. package/dist/ai/internal/mcpProtocol/v2025_06_18.js.map +1 -1
  124. package/dist/ai/internal/mcpProtocol/v2025_11_25.js +4 -5
  125. package/dist/ai/internal/mcpProtocol/v2025_11_25.js.map +1 -1
  126. package/dist/ai/internal/mcpProtocol/v2026_07_28.js +18 -10
  127. package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
  128. package/dist/ai/internal/mcpProtocol.js +13 -0
  129. package/dist/ai/internal/mcpProtocol.js.map +1 -1
  130. package/dist/ai/internal/mcpRuntime.js +5 -3
  131. package/dist/ai/internal/mcpRuntime.js.map +1 -1
  132. package/dist/ai/internal/mcpStatefulRuntime.js +6 -1
  133. package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
  134. package/dist/cli/Argument.d.ts +6 -0
  135. package/dist/cli/Argument.d.ts.map +1 -1
  136. package/dist/cli/Argument.js +2 -0
  137. package/dist/cli/Argument.js.map +1 -1
  138. package/dist/cli/CliOutput.d.ts +65 -1
  139. package/dist/cli/CliOutput.d.ts.map +1 -1
  140. package/dist/cli/CliOutput.js +94 -37
  141. package/dist/cli/CliOutput.js.map +1 -1
  142. package/dist/cli/Command.d.ts +23 -0
  143. package/dist/cli/Command.d.ts.map +1 -1
  144. package/dist/cli/Command.js +8 -0
  145. package/dist/cli/Command.js.map +1 -1
  146. package/dist/cli/Flag.d.ts +107 -0
  147. package/dist/cli/Flag.d.ts.map +1 -1
  148. package/dist/cli/Flag.js +37 -0
  149. package/dist/cli/Flag.js.map +1 -1
  150. package/dist/cli/HelpDoc.d.ts +15 -1
  151. package/dist/cli/HelpDoc.d.ts.map +1 -1
  152. package/dist/cli/Param.d.ts +6 -0
  153. package/dist/cli/Param.d.ts.map +1 -1
  154. package/dist/cli/Param.js +2 -0
  155. package/dist/cli/Param.js.map +1 -1
  156. package/dist/cli/Primitive.d.ts +14 -0
  157. package/dist/cli/Primitive.d.ts.map +1 -1
  158. package/dist/cli/Primitive.js +15 -1
  159. package/dist/cli/Primitive.js.map +1 -1
  160. package/dist/cli/Prompt.d.ts +1 -0
  161. package/dist/cli/Prompt.d.ts.map +1 -1
  162. package/dist/cli/Prompt.js +1 -0
  163. package/dist/cli/Prompt.js.map +1 -1
  164. package/dist/cli/internal/help.d.ts.map +1 -1
  165. package/dist/cli/internal/help.js +17 -10
  166. package/dist/cli/internal/help.js.map +1 -1
  167. package/dist/cluster/Sharding.d.ts.map +1 -1
  168. package/dist/cluster/Sharding.js +90 -28
  169. package/dist/cluster/Sharding.js.map +1 -1
  170. package/dist/cluster/ShardingConfig.d.ts +72 -6
  171. package/dist/cluster/ShardingConfig.d.ts.map +1 -1
  172. package/dist/cluster/ShardingConfig.js +4 -0
  173. package/dist/cluster/ShardingConfig.js.map +1 -1
  174. package/dist/cluster/SingleRunner.d.ts +3 -3
  175. package/dist/cluster/SingleRunner.d.ts.map +1 -1
  176. package/dist/cluster/SingleRunner.js +1 -1
  177. package/dist/cluster/SqlMessageStorage.d.ts +37 -6
  178. package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
  179. package/dist/cluster/SqlMessageStorage.js +34 -7
  180. package/dist/cluster/SqlMessageStorage.js.map +1 -1
  181. package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
  182. package/dist/cluster/SqlRunnerStorage.js +23 -8
  183. package/dist/cluster/SqlRunnerStorage.js.map +1 -1
  184. package/dist/crypto/Aead.d.ts +322 -0
  185. package/dist/crypto/Aead.d.ts.map +1 -0
  186. package/dist/crypto/Aead.js +331 -0
  187. package/dist/crypto/Aead.js.map +1 -0
  188. package/dist/crypto/Cipher.d.ts +235 -0
  189. package/dist/crypto/Cipher.d.ts.map +1 -0
  190. package/dist/crypto/Cipher.js +233 -0
  191. package/dist/crypto/Cipher.js.map +1 -0
  192. package/dist/crypto/CryptoError.d.ts +212 -0
  193. package/dist/crypto/CryptoError.d.ts.map +1 -0
  194. package/dist/crypto/CryptoError.js +202 -0
  195. package/dist/crypto/CryptoError.js.map +1 -0
  196. package/dist/crypto/Digest.d.ts +143 -0
  197. package/dist/crypto/Digest.d.ts.map +1 -0
  198. package/dist/crypto/Digest.js +146 -0
  199. package/dist/crypto/Digest.js.map +1 -0
  200. package/dist/crypto/Kdf.d.ts +220 -0
  201. package/dist/crypto/Kdf.d.ts.map +1 -0
  202. package/dist/crypto/Kdf.js +212 -0
  203. package/dist/crypto/Kdf.js.map +1 -0
  204. package/dist/crypto/KeyAgreement.d.ts +323 -0
  205. package/dist/crypto/KeyAgreement.d.ts.map +1 -0
  206. package/dist/crypto/KeyAgreement.js +303 -0
  207. package/dist/crypto/KeyAgreement.js.map +1 -0
  208. package/dist/crypto/KeyFormat.d.ts +309 -0
  209. package/dist/crypto/KeyFormat.d.ts.map +1 -0
  210. package/dist/crypto/KeyFormat.js +556 -0
  211. package/dist/crypto/KeyFormat.js.map +1 -0
  212. package/dist/crypto/KeyWrap.d.ts +389 -0
  213. package/dist/crypto/KeyWrap.d.ts.map +1 -0
  214. package/dist/crypto/KeyWrap.js +381 -0
  215. package/dist/crypto/KeyWrap.js.map +1 -0
  216. package/dist/crypto/Mac.d.ts +277 -0
  217. package/dist/crypto/Mac.d.ts.map +1 -0
  218. package/dist/crypto/Mac.js +288 -0
  219. package/dist/crypto/Mac.js.map +1 -0
  220. package/dist/crypto/SecureRandom.d.ts +340 -0
  221. package/dist/crypto/SecureRandom.d.ts.map +1 -0
  222. package/dist/crypto/SecureRandom.js +257 -0
  223. package/dist/crypto/SecureRandom.js.map +1 -0
  224. package/dist/crypto/Signature.d.ts +448 -0
  225. package/dist/crypto/Signature.d.ts.map +1 -0
  226. package/dist/crypto/Signature.js +484 -0
  227. package/dist/crypto/Signature.js.map +1 -0
  228. package/dist/crypto/WebCrypto.d.ts +61 -0
  229. package/dist/crypto/WebCrypto.d.ts.map +1 -0
  230. package/dist/crypto/WebCrypto.js +63 -0
  231. package/dist/crypto/WebCrypto.js.map +1 -0
  232. package/dist/crypto/index.d.ts +65 -0
  233. package/dist/crypto/index.d.ts.map +1 -0
  234. package/dist/crypto/index.js +66 -0
  235. package/dist/crypto/index.js.map +1 -0
  236. package/dist/crypto/internal/asymmetric.d.ts +2 -0
  237. package/dist/crypto/internal/asymmetric.d.ts.map +1 -0
  238. package/dist/crypto/internal/asymmetric.js +210 -0
  239. package/dist/crypto/internal/asymmetric.js.map +1 -0
  240. package/dist/crypto/internal/chacha.d.ts +46 -0
  241. package/dist/crypto/internal/chacha.d.ts.map +1 -0
  242. package/dist/crypto/internal/chacha.js +885 -0
  243. package/dist/crypto/internal/chacha.js.map +1 -0
  244. package/dist/crypto/internal/der.d.ts +6 -0
  245. package/dist/crypto/internal/der.d.ts.map +1 -0
  246. package/dist/crypto/internal/der.js +86 -0
  247. package/dist/crypto/internal/der.js.map +1 -0
  248. package/dist/crypto/internal/digest.d.ts +2 -0
  249. package/dist/crypto/internal/digest.d.ts.map +1 -0
  250. package/dist/crypto/internal/digest.js +15 -0
  251. package/dist/crypto/internal/digest.js.map +1 -0
  252. package/dist/crypto/internal/key.d.ts +2 -0
  253. package/dist/crypto/internal/key.d.ts.map +1 -0
  254. package/dist/crypto/internal/key.js +170 -0
  255. package/dist/crypto/internal/key.js.map +1 -0
  256. package/dist/crypto/internal/md5.d.ts +39 -0
  257. package/dist/crypto/internal/md5.d.ts.map +1 -0
  258. package/dist/crypto/internal/md5.js +179 -0
  259. package/dist/crypto/internal/md5.js.map +1 -0
  260. package/dist/crypto/internal/webCrypto.d.ts +2 -0
  261. package/dist/crypto/internal/webCrypto.d.ts.map +1 -0
  262. package/dist/crypto/internal/webCrypto.js +111 -0
  263. package/dist/crypto/internal/webCrypto.js.map +1 -0
  264. package/dist/encoding/Base64Url.d.ts.map +1 -1
  265. package/dist/encoding/Base64Url.js +3 -2
  266. package/dist/encoding/Base64Url.js.map +1 -1
  267. package/dist/encoding/Csv.d.ts +608 -0
  268. package/dist/encoding/Csv.d.ts.map +1 -0
  269. package/dist/encoding/Csv.js +718 -0
  270. package/dist/encoding/Csv.js.map +1 -0
  271. package/dist/encoding/Hex.d.ts +3 -2
  272. package/dist/encoding/Hex.d.ts.map +1 -1
  273. package/dist/encoding/Hex.js +3 -2
  274. package/dist/encoding/Hex.js.map +1 -1
  275. package/dist/encoding/SchemaBinary.d.ts.map +1 -1
  276. package/dist/encoding/SchemaBinary.js +42 -4
  277. package/dist/encoding/SchemaBinary.js.map +1 -1
  278. package/dist/encoding/Toml.d.ts +17 -3
  279. package/dist/encoding/Toml.d.ts.map +1 -1
  280. package/dist/encoding/Toml.js +104 -16
  281. package/dist/encoding/Toml.js.map +1 -1
  282. package/dist/encoding/Yaml.d.ts +8 -1
  283. package/dist/encoding/Yaml.d.ts.map +1 -1
  284. package/dist/encoding/Yaml.js +54 -18
  285. package/dist/encoding/Yaml.js.map +1 -1
  286. package/dist/encoding/index.d.ts +5 -0
  287. package/dist/encoding/index.d.ts.map +1 -1
  288. package/dist/encoding/index.js +5 -0
  289. package/dist/encoding/index.js.map +1 -1
  290. package/dist/eventlog/EventJournal.d.ts.map +1 -1
  291. package/dist/eventlog/EventJournal.js +6 -3
  292. package/dist/eventlog/EventJournal.js.map +1 -1
  293. package/dist/eventlog/EventLog.d.ts +119 -4
  294. package/dist/eventlog/EventLog.d.ts.map +1 -1
  295. package/dist/eventlog/EventLog.js +200 -12
  296. package/dist/eventlog/EventLog.js.map +1 -1
  297. package/dist/eventlog/EventLogEncryption.d.ts +41 -4
  298. package/dist/eventlog/EventLogEncryption.d.ts.map +1 -1
  299. package/dist/eventlog/EventLogEncryption.js +83 -64
  300. package/dist/eventlog/EventLogEncryption.js.map +1 -1
  301. package/dist/eventlog/EventLogMessage.d.ts +279 -0
  302. package/dist/eventlog/EventLogMessage.d.ts.map +1 -1
  303. package/dist/eventlog/EventLogMessage.js +217 -1
  304. package/dist/eventlog/EventLogMessage.js.map +1 -1
  305. package/dist/eventlog/EventLogRemote.d.ts +200 -28
  306. package/dist/eventlog/EventLogRemote.d.ts.map +1 -1
  307. package/dist/eventlog/EventLogRemote.js +186 -16
  308. package/dist/eventlog/EventLogRemote.js.map +1 -1
  309. package/dist/eventlog/EventLogServer.d.ts +3 -0
  310. package/dist/eventlog/EventLogServer.d.ts.map +1 -1
  311. package/dist/eventlog/EventLogServer.js +18 -10
  312. package/dist/eventlog/EventLogServer.js.map +1 -1
  313. package/dist/eventlog/EventLogServerEncrypted.d.ts +326 -5
  314. package/dist/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  315. package/dist/eventlog/EventLogServerEncrypted.js +769 -14
  316. package/dist/eventlog/EventLogServerEncrypted.js.map +1 -1
  317. package/dist/eventlog/EventLogSessionAuth.d.ts +5 -3
  318. package/dist/eventlog/EventLogSessionAuth.d.ts.map +1 -1
  319. package/dist/eventlog/EventLogSessionAuth.js +41 -64
  320. package/dist/eventlog/EventLogSessionAuth.js.map +1 -1
  321. package/dist/eventlog/EventRow.d.ts +4 -0
  322. package/dist/eventlog/EventRow.d.ts.map +1 -1
  323. package/dist/eventlog/EventRow.js +12 -2
  324. package/dist/eventlog/EventRow.js.map +1 -1
  325. package/dist/eventlog/SqlEventJournal.js +2 -2
  326. package/dist/eventlog/SqlEventJournal.js.map +1 -1
  327. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts +21 -5
  328. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  329. package/dist/eventlog/SqlEventLogServerEncrypted.js +1048 -113
  330. package/dist/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  331. package/dist/eventlog/SqlEventLogServerUnencrypted.js +2 -2
  332. package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  333. package/dist/eventlog/internal/batches.d.ts +12 -0
  334. package/dist/eventlog/internal/batches.d.ts.map +1 -0
  335. package/dist/eventlog/internal/batches.js +26 -0
  336. package/dist/eventlog/internal/batches.js.map +1 -0
  337. package/dist/eventlog/internal/compaction.d.ts +38 -0
  338. package/dist/eventlog/internal/compaction.d.ts.map +1 -0
  339. package/dist/eventlog/internal/compaction.js +33 -0
  340. package/dist/eventlog/internal/compaction.js.map +1 -0
  341. package/dist/eventlog/internal/identityRootSecretDerivation.js +66 -67
  342. package/dist/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  343. package/dist/eventlog/internal/remoteCompaction.d.ts +31 -0
  344. package/dist/eventlog/internal/remoteCompaction.d.ts.map +1 -0
  345. package/dist/eventlog/internal/remoteCompaction.js +76 -0
  346. package/dist/eventlog/internal/remoteCompaction.js.map +1 -0
  347. package/dist/http/Cookies.d.ts +172 -0
  348. package/dist/http/Cookies.d.ts.map +1 -1
  349. package/dist/http/Cookies.js +143 -1
  350. package/dist/http/Cookies.js.map +1 -1
  351. package/dist/http/FetchHttpClient.d.ts +26 -2
  352. package/dist/http/FetchHttpClient.d.ts.map +1 -1
  353. package/dist/http/FetchHttpClient.js +78 -15
  354. package/dist/http/FetchHttpClient.js.map +1 -1
  355. package/dist/http/HttpClient.d.ts +79 -8
  356. package/dist/http/HttpClient.d.ts.map +1 -1
  357. package/dist/http/HttpClient.js +65 -5
  358. package/dist/http/HttpClient.js.map +1 -1
  359. package/dist/http/HttpClientRequest.d.ts +9 -5
  360. package/dist/http/HttpClientRequest.d.ts.map +1 -1
  361. package/dist/http/HttpClientRequest.js +2 -3
  362. package/dist/http/HttpClientRequest.js.map +1 -1
  363. package/dist/http/HttpClientResponse.d.ts.map +1 -1
  364. package/dist/http/HttpClientResponse.js +3 -2
  365. package/dist/http/HttpClientResponse.js.map +1 -1
  366. package/dist/http/HttpMethod.d.ts +7 -1
  367. package/dist/http/HttpMethod.d.ts.map +1 -1
  368. package/dist/http/HttpMethod.js +3 -8
  369. package/dist/http/HttpMethod.js.map +1 -1
  370. package/dist/http/HttpServerRequest.d.ts +5 -2
  371. package/dist/http/HttpServerRequest.d.ts.map +1 -1
  372. package/dist/http/HttpServerRequest.js +6 -17
  373. package/dist/http/HttpServerRequest.js.map +1 -1
  374. package/dist/http/HttpServerResponse.d.ts.map +1 -1
  375. package/dist/http/HttpServerResponse.js +3 -2
  376. package/dist/http/HttpServerResponse.js.map +1 -1
  377. package/dist/http/HttpTraceContext.d.ts +2 -1
  378. package/dist/http/HttpTraceContext.d.ts.map +1 -1
  379. package/dist/http/HttpTraceContext.js +7 -5
  380. package/dist/http/HttpTraceContext.js.map +1 -1
  381. package/dist/http/ProblemDetails.d.ts +96 -0
  382. package/dist/http/ProblemDetails.d.ts.map +1 -0
  383. package/dist/http/ProblemDetails.js +98 -0
  384. package/dist/http/ProblemDetails.js.map +1 -0
  385. package/dist/http/index.d.ts +5 -0
  386. package/dist/http/index.d.ts.map +1 -1
  387. package/dist/http/index.js +5 -0
  388. package/dist/http/index.js.map +1 -1
  389. package/dist/http/internal/decompression.js +3 -2
  390. package/dist/http/internal/decompression.js.map +1 -1
  391. package/dist/http/internal/urlParams.js +8 -0
  392. package/dist/http/internal/urlParams.js.map +1 -1
  393. package/dist/http-api/HttpApiBuilder.js +19 -5
  394. package/dist/http-api/HttpApiBuilder.js.map +1 -1
  395. package/dist/http-api/HttpApiClient.d.ts +63 -0
  396. package/dist/http-api/HttpApiClient.d.ts.map +1 -1
  397. package/dist/http-api/HttpApiClient.js +51 -0
  398. package/dist/http-api/HttpApiClient.js.map +1 -1
  399. package/dist/http-api/HttpApiEndpoint.d.ts.map +1 -1
  400. package/dist/http-api/HttpApiEndpoint.js +14 -5
  401. package/dist/http-api/HttpApiEndpoint.js.map +1 -1
  402. package/dist/http-api/HttpApiError.d.ts +185 -13
  403. package/dist/http-api/HttpApiError.d.ts.map +1 -1
  404. package/dist/http-api/HttpApiError.js +128 -0
  405. package/dist/http-api/HttpApiError.js.map +1 -1
  406. package/dist/http-api/HttpApiMiddleware.d.ts +64 -17
  407. package/dist/http-api/HttpApiMiddleware.d.ts.map +1 -1
  408. package/dist/http-api/HttpApiMiddleware.js +85 -1
  409. package/dist/http-api/HttpApiMiddleware.js.map +1 -1
  410. package/dist/http-api/HttpApiSchema.d.ts +76 -14
  411. package/dist/http-api/HttpApiSchema.d.ts.map +1 -1
  412. package/dist/http-api/HttpApiSchema.js +53 -0
  413. package/dist/http-api/HttpApiSchema.js.map +1 -1
  414. package/dist/index.d.ts +5 -5
  415. package/dist/index.d.ts.map +1 -1
  416. package/dist/index.js +5 -5
  417. package/dist/index.js.map +1 -1
  418. package/dist/internal/effect.js +25 -14
  419. package/dist/internal/effect.js.map +1 -1
  420. package/dist/internal/glob.d.ts +2 -0
  421. package/dist/internal/glob.d.ts.map +1 -0
  422. package/dist/internal/glob.js +630 -0
  423. package/dist/internal/glob.js.map +1 -0
  424. package/dist/internal/matcher.js +10 -0
  425. package/dist/internal/matcher.js.map +1 -1
  426. package/dist/internal/persistence.js +9 -0
  427. package/dist/internal/persistence.js.map +1 -1
  428. package/dist/internal/rcRef.js +4 -1
  429. package/dist/internal/rcRef.js.map +1 -1
  430. package/dist/internal/schema/toCodeDocument.js +6 -3
  431. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  432. package/dist/internal/trie.js +42 -13
  433. package/dist/internal/trie.js.map +1 -1
  434. package/dist/internal/ulid.js +41 -0
  435. package/dist/internal/ulid.js.map +1 -1
  436. package/dist/internal/uuid.js +52 -8
  437. package/dist/internal/uuid.js.map +1 -1
  438. package/dist/internal/version.js +1 -1
  439. package/dist/observability/Otlp.d.ts +15 -4
  440. package/dist/observability/Otlp.d.ts.map +1 -1
  441. package/dist/observability/Otlp.js +10 -0
  442. package/dist/observability/Otlp.js.map +1 -1
  443. package/dist/observability/OtlpResource.d.ts +7 -0
  444. package/dist/observability/OtlpResource.d.ts.map +1 -1
  445. package/dist/observability/OtlpResource.js +11 -1
  446. package/dist/observability/OtlpResource.js.map +1 -1
  447. package/dist/persistence/KeyValueStore.d.ts +47 -2
  448. package/dist/persistence/KeyValueStore.d.ts.map +1 -1
  449. package/dist/persistence/KeyValueStore.js +129 -18
  450. package/dist/persistence/KeyValueStore.js.map +1 -1
  451. package/dist/persistence/PersistedQueue.d.ts +9 -0
  452. package/dist/persistence/PersistedQueue.d.ts.map +1 -1
  453. package/dist/persistence/PersistedQueue.js +94 -52
  454. package/dist/persistence/PersistedQueue.js.map +1 -1
  455. package/dist/persistence/Persistence.d.ts +10 -4
  456. package/dist/persistence/Persistence.d.ts.map +1 -1
  457. package/dist/persistence/Persistence.js +18 -11
  458. package/dist/persistence/Persistence.js.map +1 -1
  459. package/dist/process/ChildProcess.d.ts +207 -67
  460. package/dist/process/ChildProcess.d.ts.map +1 -1
  461. package/dist/process/ChildProcess.js +56 -158
  462. package/dist/process/ChildProcess.js.map +1 -1
  463. package/dist/process/ChildProcessSpawner.d.ts +5 -0
  464. package/dist/process/ChildProcessSpawner.d.ts.map +1 -1
  465. package/dist/process/ChildProcessSpawner.js.map +1 -1
  466. package/dist/process/CommandLine.d.ts +294 -0
  467. package/dist/process/CommandLine.d.ts.map +1 -0
  468. package/dist/process/CommandLine.js +481 -0
  469. package/dist/process/CommandLine.js.map +1 -0
  470. package/dist/process/index.d.ts +5 -0
  471. package/dist/process/index.d.ts.map +1 -1
  472. package/dist/process/index.js +5 -0
  473. package/dist/process/index.js.map +1 -1
  474. package/dist/reactivity/Atom.d.ts +2 -1
  475. package/dist/reactivity/Atom.d.ts.map +1 -1
  476. package/dist/reactivity/Atom.js +3 -4
  477. package/dist/reactivity/Atom.js.map +1 -1
  478. package/dist/reactivity/AtomRegistry.js.map +1 -1
  479. package/dist/rpc/RpcClient.d.ts +16 -1
  480. package/dist/rpc/RpcClient.d.ts.map +1 -1
  481. package/dist/rpc/RpcClient.js +50 -16
  482. package/dist/rpc/RpcClient.js.map +1 -1
  483. package/dist/rpc/RpcMessage.d.ts +10 -1
  484. package/dist/rpc/RpcMessage.d.ts.map +1 -1
  485. package/dist/rpc/RpcMessage.js +1 -0
  486. package/dist/rpc/RpcMessage.js.map +1 -1
  487. package/dist/rpc/RpcSerialization.d.ts.map +1 -1
  488. package/dist/rpc/RpcSerialization.js +6 -0
  489. package/dist/rpc/RpcSerialization.js.map +1 -1
  490. package/dist/rpc/RpcServer.d.ts +31 -0
  491. package/dist/rpc/RpcServer.d.ts.map +1 -1
  492. package/dist/rpc/RpcServer.js +139 -66
  493. package/dist/rpc/RpcServer.js.map +1 -1
  494. package/dist/schema/Model.d.ts +14 -0
  495. package/dist/schema/Model.d.ts.map +1 -1
  496. package/dist/schema/Model.js +18 -3
  497. package/dist/schema/Model.js.map +1 -1
  498. package/dist/sql/Migrator.d.ts +0 -19
  499. package/dist/sql/Migrator.d.ts.map +1 -1
  500. package/dist/sql/Migrator.js +3 -48
  501. package/dist/sql/Migrator.js.map +1 -1
  502. package/dist/sql/MigratorFileSystem.d.ts +21 -0
  503. package/dist/sql/MigratorFileSystem.d.ts.map +1 -0
  504. package/dist/sql/MigratorFileSystem.js +57 -0
  505. package/dist/sql/MigratorFileSystem.js.map +1 -0
  506. package/dist/sql/SqlClient.d.ts.map +1 -1
  507. package/dist/sql/SqlClient.js +5 -9
  508. package/dist/sql/SqlClient.js.map +1 -1
  509. package/dist/sql/Statement.d.ts +20 -6
  510. package/dist/sql/Statement.d.ts.map +1 -1
  511. package/dist/sql/Statement.js +0 -13
  512. package/dist/sql/Statement.js.map +1 -1
  513. package/dist/sql/index.js +1 -1
  514. package/dist/testing/index.d.ts +0 -5
  515. package/dist/testing/index.d.ts.map +1 -1
  516. package/dist/testing/index.js +0 -5
  517. package/dist/testing/index.js.map +1 -1
  518. package/dist/workflow/internal/crypto.js +9 -8
  519. package/dist/workflow/internal/crypto.js.map +1 -1
  520. package/package.json +3 -1
  521. package/src/BigDecimal.ts +3 -0
  522. package/src/Channel.ts +17 -11
  523. package/src/Config.ts +7 -1
  524. package/src/Context.ts +34 -10
  525. package/src/Cron.ts +178 -29
  526. package/src/Duration.ts +140 -0
  527. package/src/Effect.ts +914 -85
  528. package/src/FileSystem.ts +65 -4
  529. package/src/Glob.ts +205 -0
  530. package/src/Match.ts +127 -0
  531. package/src/Pool.ts +73 -15
  532. package/src/Random.ts +3 -3
  533. package/src/RcMap.ts +5 -1
  534. package/src/Schedule.ts +26 -3
  535. package/src/Schema.ts +1189 -62
  536. package/src/SchemaGetter.ts +27 -11
  537. package/src/SchemaRepresentation.ts +19 -0
  538. package/src/SchemaTransformation.ts +8 -3
  539. package/src/ScopedCache.ts +5 -9
  540. package/src/Semaphore.ts +141 -0
  541. package/src/Stream.ts +15 -6
  542. package/src/Terminal.ts +19 -1
  543. package/src/ai/AiError.ts +56 -80
  544. package/src/ai/Decision.ts +257 -6
  545. package/src/ai/DecisionModel.ts +171 -28
  546. package/src/ai/McpServer.ts +1269 -286
  547. package/src/ai/McpTest.ts +380 -0
  548. package/src/ai/Response.ts +2 -22
  549. package/src/ai/Tool.ts +27 -8
  550. package/src/ai/index.ts +6 -0
  551. package/src/ai/internal/mcpCore.ts +78 -44
  552. package/src/ai/internal/mcpProtocol/v2024_11_05.ts +4 -7
  553. package/src/ai/internal/mcpProtocol/v2025_03_26.ts +4 -7
  554. package/src/ai/internal/mcpProtocol/v2025_06_18.ts +4 -7
  555. package/src/ai/internal/mcpProtocol/v2025_11_25.ts +4 -7
  556. package/src/ai/internal/mcpProtocol/v2026_07_28.ts +15 -10
  557. package/src/ai/internal/mcpProtocol.ts +29 -0
  558. package/src/ai/internal/mcpRuntime.ts +9 -5
  559. package/src/ai/internal/mcpStatefulRuntime.ts +14 -2
  560. package/src/cli/Argument.ts +6 -0
  561. package/src/cli/CliOutput.ts +117 -49
  562. package/src/cli/Command.ts +23 -0
  563. package/src/cli/Flag.ts +107 -0
  564. package/src/cli/HelpDoc.ts +18 -1
  565. package/src/cli/Param.ts +6 -0
  566. package/src/cli/Primitive.ts +16 -1
  567. package/src/cli/Prompt.ts +1 -0
  568. package/src/cli/internal/help.ts +21 -9
  569. package/src/cluster/Sharding.ts +93 -26
  570. package/src/cluster/ShardingConfig.ts +41 -3
  571. package/src/cluster/SingleRunner.ts +3 -3
  572. package/src/cluster/SqlMessageStorage.ts +49 -17
  573. package/src/cluster/SqlRunnerStorage.ts +37 -27
  574. package/src/crypto/Aead.ts +517 -0
  575. package/src/crypto/Cipher.ts +326 -0
  576. package/src/crypto/CryptoError.ts +242 -0
  577. package/src/crypto/Digest.ts +167 -0
  578. package/src/crypto/Kdf.ts +315 -0
  579. package/src/crypto/KeyAgreement.ts +489 -0
  580. package/src/crypto/KeyFormat.ts +712 -0
  581. package/src/crypto/KeyWrap.ts +639 -0
  582. package/src/crypto/Mac.ts +386 -0
  583. package/src/crypto/SecureRandom.ts +459 -0
  584. package/src/crypto/Signature.ts +673 -0
  585. package/src/crypto/WebCrypto.ts +64 -0
  586. package/src/crypto/index.ts +78 -0
  587. package/src/crypto/internal/asymmetric.ts +329 -0
  588. package/src/crypto/internal/chacha.ts +1088 -0
  589. package/src/crypto/internal/der.ts +110 -0
  590. package/src/crypto/internal/digest.ts +16 -0
  591. package/src/crypto/internal/key.ts +235 -0
  592. package/src/crypto/internal/md5.ts +170 -0
  593. package/src/crypto/internal/webCrypto.ts +150 -0
  594. package/src/encoding/Base64Url.ts +5 -2
  595. package/src/encoding/Csv.ts +1298 -0
  596. package/src/encoding/Hex.ts +3 -2
  597. package/src/encoding/SchemaBinary.ts +40 -4
  598. package/src/encoding/Toml.ts +85 -20
  599. package/src/encoding/Yaml.ts +61 -18
  600. package/src/encoding/index.ts +6 -0
  601. package/src/eventlog/EventJournal.ts +4 -3
  602. package/src/eventlog/EventLog.ts +340 -15
  603. package/src/eventlog/EventLogEncryption.ts +118 -110
  604. package/src/eventlog/EventLogMessage.ts +273 -1
  605. package/src/eventlog/EventLogRemote.ts +367 -23
  606. package/src/eventlog/EventLogServer.ts +23 -8
  607. package/src/eventlog/EventLogServerEncrypted.ts +1130 -67
  608. package/src/eventlog/EventLogSessionAuth.ts +56 -70
  609. package/src/eventlog/EventRow.ts +12 -3
  610. package/src/eventlog/SqlEventJournal.ts +2 -2
  611. package/src/eventlog/SqlEventLogServerEncrypted.ts +1244 -136
  612. package/src/eventlog/SqlEventLogServerUnencrypted.ts +2 -2
  613. package/src/eventlog/internal/batches.ts +30 -0
  614. package/src/eventlog/internal/compaction.ts +64 -0
  615. package/src/eventlog/internal/identityRootSecretDerivation.ts +93 -123
  616. package/src/eventlog/internal/remoteCompaction.ts +92 -0
  617. package/src/http/Cookies.ts +281 -1
  618. package/src/http/FetchHttpClient.ts +88 -16
  619. package/src/http/HttpClient.ts +89 -22
  620. package/src/http/HttpClientRequest.ts +12 -9
  621. package/src/http/HttpClientResponse.ts +3 -2
  622. package/src/http/HttpMethod.ts +10 -2
  623. package/src/http/HttpServerRequest.ts +15 -30
  624. package/src/http/HttpServerResponse.ts +3 -2
  625. package/src/http/HttpTraceContext.ts +7 -4
  626. package/src/http/ProblemDetails.ts +149 -0
  627. package/src/http/index.ts +6 -0
  628. package/src/http/internal/decompression.ts +4 -4
  629. package/src/http/internal/urlParams.ts +8 -0
  630. package/src/http-api/HttpApiBuilder.ts +24 -12
  631. package/src/http-api/HttpApiClient.ts +67 -1
  632. package/src/http-api/HttpApiEndpoint.ts +14 -5
  633. package/src/http-api/HttpApiError.ts +250 -0
  634. package/src/http-api/HttpApiMiddleware.ts +95 -1
  635. package/src/http-api/HttpApiSchema.ts +105 -14
  636. package/src/index.ts +6 -6
  637. package/src/internal/effect.ts +34 -18
  638. package/src/internal/glob.ts +736 -0
  639. package/src/internal/matcher.ts +17 -0
  640. package/src/internal/persistence.ts +11 -0
  641. package/src/internal/rcRef.ts +4 -1
  642. package/src/internal/schema/toCodeDocument.ts +7 -3
  643. package/src/internal/trie.ts +43 -14
  644. package/src/internal/ulid.ts +44 -0
  645. package/src/internal/uuid.ts +57 -16
  646. package/src/internal/version.ts +1 -1
  647. package/src/observability/Otlp.ts +21 -4
  648. package/src/observability/OtlpResource.ts +9 -1
  649. package/src/persistence/KeyValueStore.ts +219 -22
  650. package/src/persistence/PersistedQueue.ts +128 -59
  651. package/src/persistence/Persistence.ts +20 -13
  652. package/src/process/ChildProcess.ts +255 -260
  653. package/src/process/ChildProcessSpawner.ts +5 -0
  654. package/src/process/CommandLine.ts +630 -0
  655. package/src/process/index.ts +6 -0
  656. package/src/reactivity/Atom.ts +5 -5
  657. package/src/reactivity/AtomRegistry.ts +1 -1
  658. package/src/rpc/RpcClient.ts +62 -26
  659. package/src/rpc/RpcMessage.ts +10 -1
  660. package/src/rpc/RpcSerialization.ts +3 -0
  661. package/src/rpc/RpcServer.ts +176 -78
  662. package/src/schema/Model.ts +26 -3
  663. package/src/sql/Migrator.ts +4 -63
  664. package/src/sql/MigratorFileSystem.ts +71 -0
  665. package/src/sql/SqlClient.ts +2 -16
  666. package/src/sql/Statement.ts +8 -7
  667. package/src/sql/index.ts +1 -1
  668. package/src/testing/index.ts +0 -6
  669. package/src/workflow/internal/crypto.ts +15 -11
  670. package/dist/Crypto.d.ts +0 -244
  671. package/dist/Crypto.d.ts.map +0 -1
  672. package/dist/Crypto.js +0 -139
  673. package/dist/Crypto.js.map +0 -1
  674. package/dist/testing/TestCrypto.d.ts +0 -73
  675. package/dist/testing/TestCrypto.d.ts.map +0 -1
  676. package/dist/testing/TestCrypto.js +0 -87
  677. package/dist/testing/TestCrypto.js.map +0 -1
  678. package/src/Crypto.ts +0 -347
  679. package/src/testing/TestCrypto.ts +0 -94
@@ -1,4 +1,8 @@
1
1
  import * as Context from "../Context.js";
2
+ import * as Aead from "../crypto/Aead.js";
3
+ import * as Digest from "../crypto/Digest.js";
4
+ import * as SecureRandom from "../crypto/SecureRandom.js";
5
+ import * as WebCrypto from "../crypto/WebCrypto.js";
2
6
  import * as Effect from "../Effect.js";
3
7
  import * as SchemaBinary from "../encoding/SchemaBinary.js";
4
8
  import * as Layer from "../Layer.js";
@@ -6,7 +10,8 @@ import * as Redacted from "../Redacted.js";
6
10
  import * as Schema from "../Schema.js";
7
11
  import * as Transferable from "../workers/Transferable.js";
8
12
  import { EntryFields, entryFromFields, EntryId, RemoteEntry } from "./EventJournal.js";
9
- import { makeGetIdentityRootSecretMaterial } from "./internal/identityRootSecretDerivation.js";
13
+ import { toBatches } from "./internal/batches.js";
14
+ import { cachedByIdentity, deriveEncryptionKey } from "./internal/identityRootSecretDerivation.js";
10
15
  /**
11
16
  * Schema for a batch of journal entries encrypted as one AES-GCM message.
12
17
  *
@@ -42,27 +47,6 @@ export const EncryptedRemoteBatch = /*#__PURE__*/Schema.Struct({
42
47
  sequence: Schema.Natural,
43
48
  ...EncryptedBatch.fields
44
49
  });
45
- const maxBatchEntries = 100;
46
- const maxBatchPayloadBytes = 256 * 1024;
47
- // A batch holds at most `maxBatchEntries` entries or `maxBatchPayloadBytes` of
48
- // payload, whichever comes first. A single larger entry is a batch on its own.
49
- const toBatches = entries => {
50
- const batches = [];
51
- let current = [];
52
- let bytes = 0;
53
- for (const entry of entries) {
54
- const size = entry.payload.byteLength;
55
- if (current.length > 0 && (current.length === maxBatchEntries || bytes + size > maxBatchPayloadBytes)) {
56
- batches.push(current);
57
- current = [];
58
- bytes = 0;
59
- }
60
- current.push(entry);
61
- bytes += size;
62
- }
63
- if (current.length > 0) batches.push(current);
64
- return batches;
65
- };
66
50
  const textEncoder = /*#__PURE__*/new TextEncoder();
67
51
  // The store id is length-prefixed, followed by the 16-byte entry ids.
68
52
  const additionalData = (storeId, entryIds) => {
@@ -87,11 +71,6 @@ const equalBytes = (a, b) => {
87
71
  const BatchFromSchemaBinary = /*#__PURE__*/SchemaBinary.toCodec(/*#__PURE__*/Schema.NonEmptyArray(EntryFields));
88
72
  const encodeBatch = /*#__PURE__*/Schema.encodeEffect(BatchFromSchemaBinary);
89
73
  const decodeBatch = /*#__PURE__*/Schema.decodeEffect(BatchFromSchemaBinary);
90
- const toArrayBuffer = data => {
91
- const buffer = new ArrayBuffer(data.byteLength);
92
- new Uint8Array(buffer).set(data);
93
- return buffer;
94
- };
95
74
  /**
96
75
  * Service that provides identity generation, entry
97
76
  * encryption and decryption, and SHA-256 hashing for event-log replication.
@@ -107,47 +86,58 @@ const toArrayBuffer = data => {
107
86
  */
108
87
  export class EventLogEncryption extends /*#__PURE__*/Context.Service()("effect/eventlog/EventLogEncryption") {}
109
88
  /**
110
- * Creates an `EventLogEncryption` service backed by the Web Crypto `SubtleCrypto`
111
- * APIs from the supplied `Crypto` implementation.
89
+ * Creates an `EventLogEncryption` service from the `effect/crypto` services.
90
+ *
91
+ * **Details**
92
+ *
93
+ * Each identity's AES-256-GCM key is derived from its root secret with
94
+ * `Digest` and cached per identity. Batches are encrypted with `Aead` under a
95
+ * random 12-byte nonce from `SecureRandom`, which also generates identities.
96
+ * A batch that fails authentication, or whose entries do not match its entry
97
+ * ids, is a defect.
112
98
  *
113
99
  * @stability unstable
114
- * @category encryption
100
+ * @category constructors
115
101
  * @since 4.0.0
116
102
  */
117
- export const makeEncryptionSubtle = crypto => Effect.sync(() => {
118
- const getIdentityRootSecretMaterial = makeGetIdentityRootSecretMaterial(crypto);
103
+ export const make = /*#__PURE__*/Effect.gen(function* () {
104
+ const aead = yield* Aead.Aead;
105
+ const digest = yield* Digest.Digest;
106
+ const random = yield* SecureRandom.SecureRandom;
107
+ const getEncryptionKey = cachedByIdentity(rootSecret => deriveEncryptionKey(rootSecret).pipe(Effect.map(({
108
+ encryptionKey
109
+ }) => encryptionKey), Effect.provideService(Digest.Digest, digest)));
119
110
  return EventLogEncryption.of({
120
111
  encrypt: Effect.fnUntraced(function* (identity, storeId, entries) {
121
- const key = (yield* getIdentityRootSecretMaterial(identity)).encryptionKey;
112
+ const key = yield* getEncryptionKey(identity);
122
113
  const batches = toBatches(entries);
123
114
  const data = yield* Effect.orDie(Effect.forEach(batches, batch => encodeBatch(batch)));
124
- return yield* Effect.promise(() => Promise.all(batches.map((batch, i) => {
115
+ return yield* Effect.forEach(batches, (batch, i) => {
125
116
  const entryIds = batch.map(entry => entry.id);
126
- const iv = crypto.getRandomValues(new Uint8Array(12));
127
- return crypto.subtle.encrypt({
128
- name: "AES-GCM",
129
- iv,
130
- additionalData: additionalData(storeId, entryIds),
131
- tagLength: 128
132
- }, key, data[i]).then(encryptedBatch => ({
117
+ return Effect.flatMap(random.randomBytes(12), iv => Effect.map(aead.encrypt(key, data[i], {
118
+ nonce: iv,
119
+ aad: additionalData(storeId, entryIds)
120
+ }), encryptedBatch => ({
133
121
  entryIds,
134
- iv,
135
- encryptedBatch: new Uint8Array(encryptedBatch)
136
- }));
137
- })));
122
+ iv: iv,
123
+ encryptedBatch: encryptedBatch
124
+ })));
125
+ }, {
126
+ concurrency: "unbounded"
127
+ }).pipe(Effect.orDie);
138
128
  }),
139
129
  decrypt: Effect.fnUntraced(function* (identity, storeId, batches) {
140
- const key = (yield* getIdentityRootSecretMaterial(identity)).encryptionKey;
141
- const decrypted = yield* Effect.promise(() => Promise.all(batches.map(batch => crypto.subtle.decrypt({
142
- name: "AES-GCM",
143
- iv: batch.iv,
144
- additionalData: additionalData(storeId, batch.entryIds),
145
- tagLength: 128
146
- }, key, batch.encryptedBatch))));
130
+ const key = yield* getEncryptionKey(identity);
131
+ const decrypted = yield* Effect.forEach(batches, batch => aead.decrypt(key, batch.encryptedBatch, {
132
+ nonce: batch.iv,
133
+ aad: additionalData(storeId, batch.entryIds)
134
+ }), {
135
+ concurrency: "unbounded"
136
+ }).pipe(Effect.orDie);
147
137
  const result = [];
148
138
  for (let i = 0; i < batches.length; i++) {
149
139
  const batch = batches[i];
150
- const fields = yield* Effect.orDie(decodeBatch(new Uint8Array(decrypted[i])));
140
+ const fields = yield* Effect.orDie(decodeBatch(decrypted[i]));
151
141
  const entries = fields.map(entryFromFields);
152
142
  if (entries.length !== batch.entryIds.length || entries.some((entry, j) => !equalBytes(entry.id, batch.entryIds[j]))) {
153
143
  return yield* Effect.die(new Error("Encrypted batch entries do not match its entry ids"));
@@ -161,24 +151,53 @@ export const makeEncryptionSubtle = crypto => Effect.sync(() => {
161
151
  }
162
152
  return result;
163
153
  }),
164
- sha256: data => Effect.promise(() => crypto.subtle.digest("SHA-256", toArrayBuffer(data))).pipe(Effect.map(hash => new Uint8Array(hash))),
165
- sha256String: data => Effect.map(Effect.promise(() => crypto.subtle.digest("SHA-256", toArrayBuffer(data))), hash => {
166
- const hashArray = Array.from(new Uint8Array(hash));
167
- const hashHex = hashArray.map(bytes => bytes.toString(16).padStart(2, "0")).join("");
168
- return hashHex;
169
- }),
170
- generateIdentity: Effect.sync(() => ({
171
- publicKey: crypto.randomUUID(),
172
- privateKey: Redacted.make(crypto.getRandomValues(new Uint8Array(32)))
154
+ sha256: data => digest.digest(Digest.sha256, data),
155
+ generateIdentity: Effect.zipWith(random.uuidV4(), random.randomBytes(32), (publicKey, privateKey) => ({
156
+ publicKey,
157
+ privateKey: Redacted.make(privateKey)
173
158
  }))
174
159
  });
175
160
  });
176
161
  /**
177
- * Provides `EventLogEncryption` using `globalThis.crypto`.
162
+ * Provides `EventLogEncryption` from the `Aead`, `Digest` and `SecureRandom`
163
+ * services.
164
+ *
165
+ * **When to use**
166
+ *
167
+ * Use to choose the crypto layers yourself, such as the `NodeCrypto` layers.
168
+ *
169
+ * @stability unstable
170
+ * @category layers
171
+ * @since 4.0.0
172
+ */
173
+ export const layer = /*#__PURE__*/Layer.effect(EventLogEncryption, make);
174
+ const layerWebCrypto = /*#__PURE__*/Layer.mergeAll(Aead.layerWebCrypto, Digest.layerWebCrypto).pipe(/*#__PURE__*/Layer.provideMerge(SecureRandom.layerWebCrypto));
175
+ /**
176
+ * Creates an `EventLogEncryption` service on the Web Crypto layers of
177
+ * `Aead`, `Digest` and `SecureRandom`, using the supplied `Crypto` object.
178
+ *
179
+ * @stability unstable
180
+ * @category encryption
181
+ * @since 4.0.0
182
+ */
183
+ export const makeEncryptionSubtle = crypto =>
184
+ // `local` keeps enclosing Web Crypto layers, built on another `Crypto`, from
185
+ // being reused.
186
+ Effect.provide(make, Layer.provide(layerWebCrypto, WebCrypto.layer(crypto)), {
187
+ local: true
188
+ });
189
+ /**
190
+ * Provides `EventLogEncryption` on the Web Crypto layers of `Aead`, `Digest`
191
+ * and `SecureRandom`.
192
+ *
193
+ * **Details**
194
+ *
195
+ * The layers use the `Crypto` object of the `WebCrypto` reference, which
196
+ * defaults to `globalThis.crypto`.
178
197
  *
179
198
  * @stability unstable
180
199
  * @category layers
181
200
  * @since 4.0.0
182
201
  */
183
- export const layerSubtle = /*#__PURE__*/Layer.effect(EventLogEncryption, /*#__PURE__*/makeEncryptionSubtle(globalThis.crypto));
202
+ export const layerSubtle = /*#__PURE__*/Layer.provide(layer, layerWebCrypto);
184
203
  //# sourceMappingURL=EventLogEncryption.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EventLogEncryption.js","names":[],"sources":["../../src/eventlog/EventLogEncryption.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"EventLogEncryption.js","names":[],"sources":["../../src/eventlog/EventLogEncryption.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -96,6 +96,7 @@ declare const HelloResponse_base: Schema.Class<HelloResponse, Schema.Struct<{
96
96
  readonly remoteId: Schema.brand<Schema.Uint8Array, "effect/eventlog/EventJournal/RemoteId">;
97
97
  readonly challenge: Transferable.Transferable<Schema.instanceOf<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>>;
98
98
  readonly firstSequence: Schema.optional<Schema.Natural>;
99
+ readonly compaction: Schema.optional<Schema.Literal<true>>;
99
100
  }>, {}>;
100
101
  /**
101
102
  * Response sent by the remote server during the authentication handshake.
@@ -104,6 +105,7 @@ declare const HelloResponse_base: Schema.Class<HelloResponse, Schema.Struct<{
104
105
  *
105
106
  * Contains the remote id, a challenge for the client to sign, and the lowest
106
107
  * assigned sequence (default 0) for initializing acknowledgement cursors.
108
+ * `compaction` is `true` when the server serves `EventLogCompactionRpcs`.
107
109
  *
108
110
  * @stability unstable
109
111
  * @category protocols
@@ -369,5 +371,282 @@ declare const EventLogRemoteRpcs_base: RpcGroup.RpcGroup<typeof HelloRpc | typeo
369
371
  */
370
372
  export declare class EventLogRemoteRpcs extends EventLogRemoteRpcs_base {
371
373
  }
374
+ declare const CompactionStatus_base: Schema.Class<CompactionStatus, Schema.Struct<{
375
+ readonly wanted: Schema.Boolean;
376
+ readonly head: Schema.Int;
377
+ }>, {}>;
378
+ /**
379
+ * The compaction state of a store, as reported to clients.
380
+ *
381
+ * **Details**
382
+ *
383
+ * `wanted` is `true` when the server would open a compaction stage. `head` is
384
+ * the highest stored sequence.
385
+ *
386
+ * @stability unstable
387
+ * @category protocols
388
+ * @since 4.0.0
389
+ */
390
+ export declare class CompactionStatus extends CompactionStatus_base {
391
+ }
392
+ declare const CompactionStatusRpc_base: Rpc.Rpc<"EventLog.CompactionStatus", Schema.Struct<{
393
+ publicKey: Schema.String;
394
+ storeId: Schema.brand<Schema.String, "effect/eventlog/EventLog/StoreId">;
395
+ }>, typeof CompactionStatus, typeof EventLogProtocolError, typeof EventLogAuthentication, never>;
396
+ /**
397
+ * RPC that reports a store's compaction state.
398
+ *
399
+ * @stability unstable
400
+ * @category protocols
401
+ * @since 4.0.0
402
+ */
403
+ export declare class CompactionStatusRpc extends CompactionStatusRpc_base {
404
+ }
405
+ /**
406
+ * Schema for the result of opening a compaction stage.
407
+ *
408
+ * **Details**
409
+ *
410
+ * `Started` pins the stage to the active generation and to the last input
411
+ * sequence. `Busy` means another stage is open on the store. `NotWanted` means
412
+ * the store doesn't need compacting.
413
+ *
414
+ * @stability unstable
415
+ * @category protocols
416
+ * @since 4.0.0
417
+ */
418
+ export declare const CompactionBeginResult: Schema.Union<readonly [Schema.TaggedStruct<"Started", {
419
+ readonly stageId: Schema.String;
420
+ }>, Schema.TaggedStruct<"Busy", {}>, Schema.TaggedStruct<"NotWanted", {}>]>;
421
+ /**
422
+ * The result of opening a compaction stage.
423
+ *
424
+ * @stability unstable
425
+ * @category protocols
426
+ * @since 4.0.0
427
+ */
428
+ export type CompactionBeginResult = typeof CompactionBeginResult.Type;
429
+ declare const CompactionBeginRpc_base: Rpc.Rpc<"EventLog.CompactionBegin", Schema.Struct<{
430
+ publicKey: Schema.String;
431
+ storeId: Schema.brand<Schema.String, "effect/eventlog/EventLog/StoreId">;
432
+ }>, Schema.Union<readonly [Schema.TaggedStruct<"Started", {
433
+ readonly stageId: Schema.String;
434
+ }>, Schema.TaggedStruct<"Busy", {}>, Schema.TaggedStruct<"NotWanted", {}>]>, typeof EventLogProtocolError, typeof EventLogAuthentication, never>;
435
+ /**
436
+ * RPC that opens a compaction stage.
437
+ *
438
+ * @stability unstable
439
+ * @category protocols
440
+ * @since 4.0.0
441
+ */
442
+ export declare class CompactionBeginRpc extends CompactionBeginRpc_base {
443
+ }
444
+ /**
445
+ * Schema for the header of one compaction input batch.
446
+ *
447
+ * **Details**
448
+ *
449
+ * An entry's input sequence is the batch `sequence` plus its position in
450
+ * `entryIds`.
451
+ *
452
+ * @stability unstable
453
+ * @category protocols
454
+ * @since 4.0.0
455
+ */
456
+ export declare const CompactionInputHeader: Schema.Struct<{
457
+ readonly sequence: Schema.Natural;
458
+ readonly entryIds: Schema.NonEmptyArray<Schema.brand<Schema.instanceOf<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>, "effect/eventlog/EventJournal/EntryId">>;
459
+ }>;
460
+ /**
461
+ * The header of one compaction input batch.
462
+ *
463
+ * @stability unstable
464
+ * @category protocols
465
+ * @since 4.0.0
466
+ */
467
+ export type CompactionInputHeader = typeof CompactionInputHeader.Type;
468
+ declare const CompactionInputRpc_base: Rpc.Rpc<"EventLog.CompactionInput", Schema.Struct<{
469
+ publicKey: Schema.String;
470
+ storeId: Schema.brand<Schema.String, "effect/eventlog/EventLog/StoreId">;
471
+ stageId: Schema.String;
472
+ }>, import("../rpc/RpcSchema.ts").Stream<Schema.Union<readonly [typeof SingleMessage, typeof ChunkedMessage]>, typeof EventLogProtocolError>, Schema.Never, typeof EventLogAuthentication, never>;
473
+ /**
474
+ * RPC that streams a stage's input batch headers in input order.
475
+ *
476
+ * **Details**
477
+ *
478
+ * The input is the pinned snapshot, then the originals up to the stage's
479
+ * `through`. Headers are framed as `SingleMessage` values or `ChunkedMessage`
480
+ * parts, as in `ChangesRpc`. It fails with a `NotFound` error once the stage
481
+ * or its pin is gone.
482
+ *
483
+ * @stability unstable
484
+ * @category protocols
485
+ * @since 4.0.0
486
+ */
487
+ export declare class CompactionInputRpc extends CompactionInputRpc_base {
488
+ static HeadersFromSchemaBinary: SchemaBinary.toCodec<Schema.NonEmptyArray<Schema.Struct<{
489
+ readonly sequence: Schema.Natural;
490
+ readonly entryIds: Schema.NonEmptyArray<Schema.brand<Schema.instanceOf<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>, "effect/eventlog/EventJournal/EntryId">>;
491
+ }>>>;
492
+ static encodeHeaders: (input: readonly [{
493
+ readonly sequence: number;
494
+ readonly entryIds: readonly [Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">, ...(Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">)[]];
495
+ }, ...{
496
+ readonly sequence: number;
497
+ readonly entryIds: readonly [Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">, ...(Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">)[]];
498
+ }[]], options?: SchemaAST.ParseOptions) => Effect.Effect<Uint8Array<ArrayBuffer>, Schema.SchemaError, never>;
499
+ static decodeHeaders: (input: Uint8Array<ArrayBuffer>, options?: SchemaAST.ParseOptions) => Effect.Effect<readonly [{
500
+ readonly sequence: number;
501
+ readonly entryIds: readonly [Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">, ...(Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">)[]];
502
+ }, ...{
503
+ readonly sequence: number;
504
+ readonly entryIds: readonly [Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">, ...(Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">)[]];
505
+ }[]], Schema.SchemaError, never>;
506
+ }
507
+ declare const CompactionFetchRpc_base: Rpc.Rpc<"EventLog.CompactionFetch", Schema.Struct<{
508
+ publicKey: Schema.String;
509
+ storeId: Schema.brand<Schema.String, "effect/eventlog/EventLog/StoreId">;
510
+ stageId: Schema.String;
511
+ batches: Schema.$Array<Schema.Natural>;
512
+ }>, import("../rpc/RpcSchema.ts").Stream<Schema.Union<readonly [typeof SingleMessage, typeof ChunkedMessage]>, typeof EventLogProtocolError>, Schema.Never, typeof EventLogAuthentication, never>;
513
+ /**
514
+ * RPC that streams the encrypted input batches at the given input sequences.
515
+ *
516
+ * **Details**
517
+ *
518
+ * `batches` holds the input sequence of each batch to fetch. Batches are framed
519
+ * and encoded as in `ChangesRpc`. It fails with a `NotFound` error once the
520
+ * stage or its pin is gone.
521
+ *
522
+ * @stability unstable
523
+ * @category protocols
524
+ * @since 4.0.0
525
+ */
526
+ export declare class CompactionFetchRpc extends CompactionFetchRpc_base {
527
+ }
528
+ declare const CompactionPartRpc_base: Rpc.Rpc<"EventLog.CompactionPart", Schema.Struct<{
529
+ publicKey: Schema.String;
530
+ storeId: Schema.brand<Schema.String, "effect/eventlog/EventLog/StoreId">;
531
+ stageId: Schema.String;
532
+ chunk: typeof ChunkedMessage;
533
+ }>, Schema.Void, typeof EventLogProtocolError, typeof EventLogAuthentication, never>;
534
+ /**
535
+ * RPC that uploads one piece of a compaction snapshot segment.
536
+ *
537
+ * **Details**
538
+ *
539
+ * A segment is an encoded non-empty array of encrypted batches, indexed by
540
+ * `chunk.id`, and is split into pieces when larger than
541
+ * `ChunkedMessage.chunkSize`. Re-uploading a stored segment is acknowledged
542
+ * without storing it again. A segment that fails validation aborts the stage
543
+ * with an `InvalidRequest` error.
544
+ *
545
+ * @stability unstable
546
+ * @category protocols
547
+ * @since 4.0.0
548
+ */
549
+ export declare class CompactionPartRpc extends CompactionPartRpc_base {
550
+ static SegmentFromSchemaBinary: SchemaBinary.toCodec<Schema.NonEmptyArray<Schema.Struct<{
551
+ readonly entryIds: Schema.NonEmptyArray<Schema.brand<Schema.instanceOf<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>, "effect/eventlog/EventJournal/EntryId">>;
552
+ readonly iv: Transferable.Transferable<Schema.instanceOf<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>>;
553
+ readonly encryptedBatch: Transferable.Transferable<Schema.instanceOf<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>>;
554
+ }>>>;
555
+ static encodeSegment: (input: readonly [{
556
+ readonly entryIds: readonly [Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">, ...(Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">)[]];
557
+ readonly iv: Uint8Array<ArrayBuffer>;
558
+ readonly encryptedBatch: Uint8Array<ArrayBuffer>;
559
+ }, ...{
560
+ readonly entryIds: readonly [Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">, ...(Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">)[]];
561
+ readonly iv: Uint8Array<ArrayBuffer>;
562
+ readonly encryptedBatch: Uint8Array<ArrayBuffer>;
563
+ }[]], options?: SchemaAST.ParseOptions) => Effect.Effect<Uint8Array<ArrayBuffer>, Schema.SchemaError, never>;
564
+ static decodeSegment: (input: Uint8Array<ArrayBuffer>, options?: SchemaAST.ParseOptions) => Effect.Effect<readonly [{
565
+ readonly entryIds: readonly [Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">, ...(Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">)[]];
566
+ readonly iv: Uint8Array<ArrayBuffer>;
567
+ readonly encryptedBatch: Uint8Array<ArrayBuffer>;
568
+ }, ...{
569
+ readonly entryIds: readonly [Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">, ...(Uint8Array<ArrayBuffer> & Brand<"effect/eventlog/EventJournal/EntryId">)[]];
570
+ readonly iv: Uint8Array<ArrayBuffer>;
571
+ readonly encryptedBatch: Uint8Array<ArrayBuffer>;
572
+ }[]], Schema.SchemaError, never>;
573
+ }
574
+ declare const CompactionAbortRpc_base: Rpc.Rpc<"EventLog.CompactionAbort", Schema.Struct<{
575
+ publicKey: Schema.String;
576
+ storeId: Schema.brand<Schema.String, "effect/eventlog/EventLog/StoreId">;
577
+ stageId: Schema.String;
578
+ }>, Schema.Void, typeof EventLogProtocolError, typeof EventLogAuthentication, never>;
579
+ /**
580
+ * RPC that releases an open compaction stage. A late abort is a no-op.
581
+ *
582
+ * @stability unstable
583
+ * @category protocols
584
+ * @since 4.0.0
585
+ */
586
+ export declare class CompactionAbortRpc extends CompactionAbortRpc_base {
587
+ }
588
+ /**
589
+ * Schema for the outcome of a compaction run reported at commit.
590
+ *
591
+ * **Details**
592
+ *
593
+ * `Snapshot` activates the `segmentCount` uploaded segments. `NoOp` reports a
594
+ * run that dropped nothing.
595
+ *
596
+ * @stability unstable
597
+ * @category protocols
598
+ * @since 4.0.0
599
+ */
600
+ export declare const CompactionResult: Schema.Union<readonly [Schema.TaggedStruct<"Snapshot", {
601
+ readonly segmentCount: Schema.Natural;
602
+ }>, Schema.TaggedStruct<"NoOp", {}>]>;
603
+ /**
604
+ * The outcome of a compaction run reported at commit.
605
+ *
606
+ * @stability unstable
607
+ * @category protocols
608
+ * @since 4.0.0
609
+ */
610
+ export type CompactionResult = typeof CompactionResult.Type;
611
+ declare const CompactionCommitRpc_base: Rpc.Rpc<"EventLog.CompactionCommit", Schema.Struct<{
612
+ publicKey: Schema.String;
613
+ storeId: Schema.brand<Schema.String, "effect/eventlog/EventLog/StoreId">;
614
+ stageId: Schema.String;
615
+ result: Schema.Union<readonly [Schema.TaggedStruct<"Snapshot", {
616
+ readonly segmentCount: Schema.Natural;
617
+ }>, Schema.TaggedStruct<"NoOp", {}>]>;
618
+ }>, Schema.Literals<readonly ["Committed", "Superseded"]>, typeof EventLogProtocolError, typeof EventLogAuthentication, never>;
619
+ /**
620
+ * RPC that commits a compaction stage.
621
+ *
622
+ * **Details**
623
+ *
624
+ * Answers `Superseded` when the stage's pinned generation is no longer active.
625
+ * Fails with `InvalidRequest`, aborting the stage, when the segments are
626
+ * incomplete or the kept ids are not a non-empty, repeat-free subsequence of
627
+ * the pinned input. Fails with `NotFound` when the stage expired, was aborted
628
+ * or committed, or is unknown, so a retried commit fails too.
629
+ *
630
+ * @stability unstable
631
+ * @category protocols
632
+ * @since 4.0.0
633
+ */
634
+ export declare class CompactionCommitRpc extends CompactionCommitRpc_base {
635
+ }
636
+ declare const EventLogCompactionRpcs_base: RpcGroup.RpcGroup<typeof CompactionStatusRpc | typeof CompactionBeginRpc | typeof CompactionInputRpc | typeof CompactionFetchRpc | typeof CompactionPartRpc | typeof CompactionAbortRpc | typeof CompactionCommitRpc>;
637
+ /**
638
+ * RPC group for encrypted remote compaction.
639
+ *
640
+ * **Details**
641
+ *
642
+ * Served by the encrypted server alongside `EventLogRemoteRpcs`. Clients call
643
+ * it only when `HelloResponse.compaction` is set.
644
+ *
645
+ * @stability unstable
646
+ * @category protocols
647
+ * @since 4.0.0
648
+ */
649
+ export declare class EventLogCompactionRpcs extends EventLogCompactionRpcs_base {
650
+ }
372
651
  export {};
373
652
  //# sourceMappingURL=EventLogMessage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EventLogMessage.d.ts","sourceRoot":"","sources":["../../src/eventlog/EventLogMessage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EventLogMessage.d.ts","sourceRoot":"","sources":["../../src/eventlog/EventLogMessage.ts"],"names":[],"mappings":"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"}