@sayoriqwq/effect-harness 0.0.1

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 (2055) hide show
  1. package/HARNESS.md +34 -0
  2. package/README.md +113 -0
  3. package/dist/bin/effect-harness.d.ts +2 -0
  4. package/dist/bin/effect-harness.js +39 -0
  5. package/dist/bin/effect-harness.js.map +1 -0
  6. package/dist/src/cli/Main.d.ts +6 -0
  7. package/dist/src/cli/Main.js +141 -0
  8. package/dist/src/cli/Main.js.map +1 -0
  9. package/dist/src/harness/CraftSkills.d.ts +14 -0
  10. package/dist/src/harness/CraftSkills.js +164 -0
  11. package/dist/src/harness/CraftSkills.js.map +1 -0
  12. package/dist/src/harness/Errors.d.ts +24 -0
  13. package/dist/src/harness/Errors.js +26 -0
  14. package/dist/src/harness/Errors.js.map +1 -0
  15. package/dist/src/harness/GuardrailRules.d.ts +6 -0
  16. package/dist/src/harness/GuardrailRules.js +303 -0
  17. package/dist/src/harness/GuardrailRules.js.map +1 -0
  18. package/dist/src/harness/Guardrails.d.ts +10 -0
  19. package/dist/src/harness/Guardrails.js +69 -0
  20. package/dist/src/harness/Guardrails.js.map +1 -0
  21. package/dist/src/harness/Init.d.ts +9 -0
  22. package/dist/src/harness/Init.js +234 -0
  23. package/dist/src/harness/Init.js.map +1 -0
  24. package/dist/src/harness/Model.d.ts +44 -0
  25. package/dist/src/harness/Model.js +169 -0
  26. package/dist/src/harness/Model.js.map +1 -0
  27. package/dist/src/harness/ModuleSources.d.ts +5 -0
  28. package/dist/src/harness/ModuleSources.js +47 -0
  29. package/dist/src/harness/ModuleSources.js.map +1 -0
  30. package/dist/src/harness/PnpmWorkspace.d.ts +2 -0
  31. package/dist/src/harness/PnpmWorkspace.js +23 -0
  32. package/dist/src/harness/PnpmWorkspace.js.map +1 -0
  33. package/dist/src/harness/Publish.d.ts +53 -0
  34. package/dist/src/harness/Publish.js +282 -0
  35. package/dist/src/harness/Publish.js.map +1 -0
  36. package/dist/src/harness/SelfVerify.d.ts +4 -0
  37. package/dist/src/harness/SelfVerify.js +56 -0
  38. package/dist/src/harness/SelfVerify.js.map +1 -0
  39. package/dist/src/harness/SourcePin.d.ts +12 -0
  40. package/dist/src/harness/SourcePin.js +320 -0
  41. package/dist/src/harness/SourcePin.js.map +1 -0
  42. package/dist/src/harness/Status.d.ts +12 -0
  43. package/dist/src/harness/Status.js +88 -0
  44. package/dist/src/harness/Status.js.map +1 -0
  45. package/dist/src/harness/TargetVerify.d.ts +8 -0
  46. package/dist/src/harness/TargetVerify.js +432 -0
  47. package/dist/src/harness/TargetVerify.js.map +1 -0
  48. package/dist/src/harness/TestContract.d.ts +6 -0
  49. package/dist/src/harness/TestContract.js +45 -0
  50. package/dist/src/harness/TestContract.js.map +1 -0
  51. package/dist/src/platform/Json.d.ts +8 -0
  52. package/dist/src/platform/Json.js +35 -0
  53. package/dist/src/platform/Json.js.map +1 -0
  54. package/dist/src/platform/ManagedFiles.d.ts +8 -0
  55. package/dist/src/platform/ManagedFiles.js +59 -0
  56. package/dist/src/platform/ManagedFiles.js.map +1 -0
  57. package/dist/src/platform/Process.d.ts +8 -0
  58. package/dist/src/platform/Process.js +80 -0
  59. package/dist/src/platform/Process.js.map +1 -0
  60. package/guide/default-capabilities.md +38 -0
  61. package/guide/index.md +49 -0
  62. package/guide/setup.md +64 -0
  63. package/harness/default-capabilities.md +32 -0
  64. package/harness/exposure.md +46 -0
  65. package/harness/feedback/index.md +60 -0
  66. package/harness/index.md +22 -0
  67. package/harness/official-inventory.md +85 -0
  68. package/harness/runtime/codex/AGENTS.fragment.md +28 -0
  69. package/harness/runtime/codex/agents/effect-worker.md +26 -0
  70. package/harness/runtime/codex/skills/effect-code/SKILL.md +72 -0
  71. package/harness/runtime/codex/skills/effect-code/agents/openai.yaml +4 -0
  72. package/harness/runtime/codex/skills/effect-feedback/SKILL.md +66 -0
  73. package/harness/runtime/codex/skills/effect-feedback/agents/openai.yaml +4 -0
  74. package/harness/source.md +52 -0
  75. package/harness/target-agent-contract.md +205 -0
  76. package/package.json +68 -0
  77. package/repos/craft-skills.manifest.json +34 -0
  78. package/repos/effect/.agents/skills/grill-me/SKILL.md +43 -0
  79. package/repos/effect/.agents/skills/jsdocs/SKILL.md +203 -0
  80. package/repos/effect/.agents/skills/scratchpad/SKILL.md +44 -0
  81. package/repos/effect/.agents/skills/scratchpad/agents/openai.yaml +7 -0
  82. package/repos/effect/.agents/skills/scratchpad/scripts/extract-example.mjs +260 -0
  83. package/repos/effect/.changeset/add-bigdecimal-sumall-multiplyall.md +5 -0
  84. package/repos/effect/.changeset/add-chunk-schema.md +5 -0
  85. package/repos/effect/.changeset/add-command-hidden.md +19 -0
  86. package/repos/effect/.changeset/add-config-nested.md +5 -0
  87. package/repos/effect/.changeset/add-flag-hidden.md +15 -0
  88. package/repos/effect/.changeset/add-from-string-schemas.md +5 -0
  89. package/repos/effect/.changeset/add-headers-remove-many.md +5 -0
  90. package/repos/effect/.changeset/add-indexeddb-kvs-layer.md +5 -0
  91. package/repos/effect/.changeset/add-make-msgpack.md +5 -0
  92. package/repos/effect/.changeset/add-make-option.md +5 -0
  93. package/repos/effect/.changeset/add-missing-tx-modules.md +11 -0
  94. package/repos/effect/.changeset/add-newtype-module.md +5 -0
  95. package/repos/effect/.changeset/add-scalar-show-operation-id.md +5 -0
  96. package/repos/effect/.changeset/add-schedule-tap.md +5 -0
  97. package/repos/effect/.changeset/add-schema-annotate-encoded.md +5 -0
  98. package/repos/effect/.changeset/add-schema-array-ensure.md +5 -0
  99. package/repos/effect/.changeset/add-schema-bigdecimal.md +5 -0
  100. package/repos/effect/.changeset/add-schema-datetime.md +5 -0
  101. package/repos/effect/.changeset/add-schema-option-from-optional-nullor.md +5 -0
  102. package/repos/effect/.changeset/add-schema-option-from-undefined-nullish.md +5 -0
  103. package/repos/effect/.changeset/add-schema-string-encoding.md +5 -0
  104. package/repos/effect/.changeset/add-sql-pglite.md +5 -0
  105. package/repos/effect/.changeset/add-standard-jsdoc-rule.md +5 -0
  106. package/repos/effect/.changeset/add-stream-broadcastn.md +5 -0
  107. package/repos/effect/.changeset/add-unstable-encoding-export.md +5 -0
  108. package/repos/effect/.changeset/afraid-cobras-like.md +5 -0
  109. package/repos/effect/.changeset/ai-openai-config-field-leak.md +6 -0
  110. package/repos/effect/.changeset/ai-openai-file-nullable-fields.md +5 -0
  111. package/repos/effect/.changeset/anthropic-4-6-structured-output.md +5 -0
  112. package/repos/effect/.changeset/asyncresult-exhaustive.md +5 -0
  113. package/repos/effect/.changeset/atom-stream-error-type.md +5 -0
  114. package/repos/effect/.changeset/beige-paths-sort.md +5 -0
  115. package/repos/effect/.changeset/better-apples-nail.md +5 -0
  116. package/repos/effect/.changeset/better-rocks-arrive.md +5 -0
  117. package/repos/effect/.changeset/big-pans-look.md +5 -0
  118. package/repos/effect/.changeset/blue-dingos-greet.md +5 -0
  119. package/repos/effect/.changeset/blue-ligers-cheat.md +5 -0
  120. package/repos/effect/.changeset/blue-onions-smile.md +5 -0
  121. package/repos/effect/.changeset/blue-ravens-type.md +5 -0
  122. package/repos/effect/.changeset/blue-trams-kiss.md +7 -0
  123. package/repos/effect/.changeset/bold-chairs-yawn.md +5 -0
  124. package/repos/effect/.changeset/bold-planets-shout.md +30 -0
  125. package/repos/effect/.changeset/breezy-meals-see.md +5 -0
  126. package/repos/effect/.changeset/bright-bugs-bow.md +5 -0
  127. package/repos/effect/.changeset/bright-canyons-clean.md +5 -0
  128. package/repos/effect/.changeset/bright-dogs-fail.md +5 -0
  129. package/repos/effect/.changeset/bright-flags-stand.md +5 -0
  130. package/repos/effect/.changeset/bright-laws-teach.md +5 -0
  131. package/repos/effect/.changeset/bright-lemons-dance.md +5 -0
  132. package/repos/effect/.changeset/bright-planes-smash.md +5 -0
  133. package/repos/effect/.changeset/bright-rats-attend.md +5 -0
  134. package/repos/effect/.changeset/bright-toes-rush.md +5 -0
  135. package/repos/effect/.changeset/bumpy-boxes-teach.md +5 -0
  136. package/repos/effect/.changeset/busy-lions-sneeze.md +5 -0
  137. package/repos/effect/.changeset/busy-maps-attend.md +7 -0
  138. package/repos/effect/.changeset/calm-buckets-own.md +5 -0
  139. package/repos/effect/.changeset/calm-carrots-march.md +7 -0
  140. package/repos/effect/.changeset/calm-cars-rest.md +5 -0
  141. package/repos/effect/.changeset/calm-panthers-nail.md +5 -0
  142. package/repos/effect/.changeset/calm-seas-smile.md +5 -0
  143. package/repos/effect/.changeset/calm-squids-hug.md +5 -0
  144. package/repos/effect/.changeset/chatty-poets-type.md +5 -0
  145. package/repos/effect/.changeset/chilled-mice-wash.md +5 -0
  146. package/repos/effect/.changeset/chilly-pumas-rule.md +5 -0
  147. package/repos/effect/.changeset/chubby-buckets-feel.md +5 -0
  148. package/repos/effect/.changeset/chubby-parents-flow.md +5 -0
  149. package/repos/effect/.changeset/chubby-planets-fall.md +5 -0
  150. package/repos/effect/.changeset/clean-balloons-tan.md +5 -0
  151. package/repos/effect/.changeset/clean-bulldogs-care.md +5 -0
  152. package/repos/effect/.changeset/clean-dryers-sneeze.md +5 -0
  153. package/repos/effect/.changeset/clean-geese-work.md +5 -0
  154. package/repos/effect/.changeset/clean-goats-wave.md +5 -0
  155. package/repos/effect/.changeset/clean-needles-shake.md +23 -0
  156. package/repos/effect/.changeset/clean-tires-guess.md +5 -0
  157. package/repos/effect/.changeset/clear-spies-boil.md +5 -0
  158. package/repos/effect/.changeset/cli-help-choices.md +5 -0
  159. package/repos/effect/.changeset/cold-knives-lie.md +35 -0
  160. package/repos/effect/.changeset/cold-rooms-show.md +5 -0
  161. package/repos/effect/.changeset/cold-sloths-wave.md +5 -0
  162. package/repos/effect/.changeset/compact-json-schema-enum.md +25 -0
  163. package/repos/effect/.changeset/config-withdefault-eager.md +7 -0
  164. package/repos/effect/.changeset/config.json +24 -0
  165. package/repos/effect/.changeset/consolidate-encoding.md +5 -0
  166. package/repos/effect/.changeset/consolidate-sql-error.md +16 -0
  167. package/repos/effect/.changeset/crisp-seas-warn.md +5 -0
  168. package/repos/effect/.changeset/cuddly-rooms-bet.md +5 -0
  169. package/repos/effect/.changeset/curly-poems-talk.md +5 -0
  170. package/repos/effect/.changeset/curly-spies-relax.md +5 -0
  171. package/repos/effect/.changeset/curvy-apples-float.md +5 -0
  172. package/repos/effect/.changeset/custom-http-security-openapi-generator.md +5 -0
  173. package/repos/effect/.changeset/cute-heads-thank.md +5 -0
  174. package/repos/effect/.changeset/cyan-loops-grow.md +5 -0
  175. package/repos/effect/.changeset/cyan-radios-switch.md +5 -0
  176. package/repos/effect/.changeset/deep-rivers-spend.md +5 -0
  177. package/repos/effect/.changeset/dirty-lamps-trade.md +5 -0
  178. package/repos/effect/.changeset/dirty-laws-wear.md +5 -0
  179. package/repos/effect/.changeset/duration-temporal-object-input.md +7 -0
  180. package/repos/effect/.changeset/eager-coats-cheat.md +5 -0
  181. package/repos/effect/.changeset/early-birds-dream.md +5 -0
  182. package/repos/effect/.changeset/early-donuts-argue.md +5 -0
  183. package/repos/effect/.changeset/early-peaches-check.md +6 -0
  184. package/repos/effect/.changeset/eff-691-default-logger-ordering.md +5 -0
  185. package/repos/effect/.changeset/eff-693-rpcgroup-handler-deps.md +5 -0
  186. package/repos/effect/.changeset/eff-694-cli-completions-module.md +5 -0
  187. package/repos/effect/.changeset/eff-695-layer-mock-dual-api.md +5 -0
  188. package/repos/effect/.changeset/eff-697-rpcserialization-json-array-decode.md +5 -0
  189. package/repos/effect/.changeset/eff-698-rpcserialization-unreachable-branch.md +5 -0
  190. package/repos/effect/.changeset/eff-700-httpapi-middleware-errors.md +12 -0
  191. package/repos/effect/.changeset/eff-701-httpapierror-respondable.md +5 -0
  192. package/repos/effect/.changeset/eff-704-stream-merge-predicate.md +5 -0
  193. package/repos/effect/.changeset/eff-705-layer-tap-apis.md +5 -0
  194. package/repos/effect/.changeset/eff-706-servicemap-mutate.md +6 -0
  195. package/repos/effect/.changeset/eff-716-response-id-tracker-map.md +5 -0
  196. package/repos/effect/.changeset/eff-717-openai-socket-cancel.md +5 -0
  197. package/repos/effect/.changeset/eff-718-embedding-model-surface.md +13 -0
  198. package/repos/effect/.changeset/eff-725-fix-catch-jsdoc.md +5 -0
  199. package/repos/effect/.changeset/eff-726-model-dimensions.md +7 -0
  200. package/repos/effect/.changeset/eff-727-cli-help-alignment.md +5 -0
  201. package/repos/effect/.changeset/eff-730-language-model-incremental-fallback.md +5 -0
  202. package/repos/effect/.changeset/eff-736-cached-with-ttl.md +5 -0
  203. package/repos/effect/.changeset/eff-738-cron-prev.md +5 -0
  204. package/repos/effect/.changeset/eff-739-openai-function-call-done.md +5 -0
  205. package/repos/effect/.changeset/eff-740-missing-summary-parts.md +5 -0
  206. package/repos/effect/.changeset/eff-742-http-client-request-web.md +5 -0
  207. package/repos/effect/.changeset/eff-744-sqlite-migrator-lock.md +5 -0
  208. package/repos/effect/.changeset/eff-746-fixed-iteration-catchup.md +5 -0
  209. package/repos/effect/.changeset/eff-747-unify-effect.md +5 -0
  210. package/repos/effect/.changeset/eff-754-url-builder-any.md +6 -0
  211. package/repos/effect/.changeset/eff-755-references-core.md +5 -0
  212. package/repos/effect/.changeset/eff-769-select-text-highlight.md +5 -0
  213. package/repos/effect/.changeset/eff-774-mutable-list-append-all-empty-array.md +5 -0
  214. package/repos/effect/.changeset/eff-777-schema-make-effect.md +5 -0
  215. package/repos/effect/.changeset/eff-778-http-middleware-path-logger.md +5 -0
  216. package/repos/effect/.changeset/eff-779-keyvaluestore-layer-sql.md +5 -0
  217. package/repos/effect/.changeset/eff-780-layer-unify.md +5 -0
  218. package/repos/effect/.changeset/eff-781-fix-stream-toqueue-types.md +5 -0
  219. package/repos/effect/.changeset/eff-782-httpapi-status-literals.md +5 -0
  220. package/repos/effect/.changeset/eff-783-atom-http-api-errors.md +5 -0
  221. package/repos/effect/.changeset/eff-819-cluster-workflow-shard-groups.md +5 -0
  222. package/repos/effect/.changeset/eight-turkeys-own.md +7 -0
  223. package/repos/effect/.changeset/eighty-lies-deny.md +5 -0
  224. package/repos/effect/.changeset/eighty-poets-draw.md +9 -0
  225. package/repos/effect/.changeset/eighty-swans-scream.md +5 -0
  226. package/repos/effect/.changeset/eighty-teeth-sniff.md +5 -0
  227. package/repos/effect/.changeset/eleven-apes-share.md +5 -0
  228. package/repos/effect/.changeset/eleven-numbers-bake.md +5 -0
  229. package/repos/effect/.changeset/empty-gifts-beg.md +5 -0
  230. package/repos/effect/.changeset/empty-http-rpc-client.md +5 -0
  231. package/repos/effect/.changeset/eventlog-unencrypted.md +5 -0
  232. package/repos/effect/.changeset/expand-schema-filter-output.md +24 -0
  233. package/repos/effect/.changeset/export-schema-encode-keys-interface.md +7 -0
  234. package/repos/effect/.changeset/extract-semaphore-latch.md +10 -0
  235. package/repos/effect/.changeset/fair-bees-relax.md +5 -0
  236. package/repos/effect/.changeset/fair-buttons-share.md +7 -0
  237. package/repos/effect/.changeset/fair-cooks-stop.md +5 -0
  238. package/repos/effect/.changeset/fair-cups-train.md +5 -0
  239. package/repos/effect/.changeset/fair-dryers-speak.md +5 -0
  240. package/repos/effect/.changeset/fair-forks-shake.md +5 -0
  241. package/repos/effect/.changeset/fair-pandas-prove.md +5 -0
  242. package/repos/effect/.changeset/fair-pants-float.md +5 -0
  243. package/repos/effect/.changeset/fair-poems-visit.md +5 -0
  244. package/repos/effect/.changeset/famous-wolves-lead.md +5 -0
  245. package/repos/effect/.changeset/fancy-glasses-grow.md +5 -0
  246. package/repos/effect/.changeset/fast-times-camp.md +5 -0
  247. package/repos/effect/.changeset/few-birds-matter.md +5 -0
  248. package/repos/effect/.changeset/few-cougars-dig.md +5 -0
  249. package/repos/effect/.changeset/few-foxes-grin.md +5 -0
  250. package/repos/effect/.changeset/few-mirrors-pull.md +14 -0
  251. package/repos/effect/.changeset/few-socks-poke.md +5 -0
  252. package/repos/effect/.changeset/fiber-runtime-start-metrics.md +5 -0
  253. package/repos/effect/.changeset/fiery-jokes-care.md +5 -0
  254. package/repos/effect/.changeset/fiery-mammals-call.md +5 -0
  255. package/repos/effect/.changeset/fine-walls-decide.md +5 -0
  256. package/repos/effect/.changeset/first-success-of.md +5 -0
  257. package/repos/effect/.changeset/five-parents-relax.md +5 -0
  258. package/repos/effect/.changeset/five-worms-rhyme.md +5 -0
  259. package/repos/effect/.changeset/fix-1332.md +5 -0
  260. package/repos/effect/.changeset/fix-1917.md +11 -0
  261. package/repos/effect/.changeset/fix-1927.md +5 -0
  262. package/repos/effect/.changeset/fix-1940.md +7 -0
  263. package/repos/effect/.changeset/fix-1947.md +7 -0
  264. package/repos/effect/.changeset/fix-2002.md +5 -0
  265. package/repos/effect/.changeset/fix-2012.md +5 -0
  266. package/repos/effect/.changeset/fix-2015.md +5 -0
  267. package/repos/effect/.changeset/fix-2260.md +5 -0
  268. package/repos/effect/.changeset/fix-2268.md +5 -0
  269. package/repos/effect/.changeset/fix-2271.md +5 -0
  270. package/repos/effect/.changeset/fix-2384.md +7 -0
  271. package/repos/effect/.changeset/fix-ai-empty-params-structured-output.md +5 -0
  272. package/repos/effect/.changeset/fix-ai-text-toolkit-typing.md +5 -0
  273. package/repos/effect/.changeset/fix-catch-orelse-error-erasure.md +5 -0
  274. package/repos/effect/.changeset/fix-class-constructor-defaults.md +5 -0
  275. package/repos/effect/.changeset/fix-cli-mixed-global-flag-context.md +7 -0
  276. package/repos/effect/.changeset/fix-config-withDefault.md +5 -0
  277. package/repos/effect/.changeset/fix-config-withdefault-filter.md +7 -0
  278. package/repos/effect/.changeset/fix-datetime-gmt.md +5 -0
  279. package/repos/effect/.changeset/fix-devtools-flush-on-teardown.md +10 -0
  280. package/repos/effect/.changeset/fix-duration-symmetric-rounding.md +5 -0
  281. package/repos/effect/.changeset/fix-entity-manager-defect-replay.md +5 -0
  282. package/repos/effect/.changeset/fix-entity-proxy-rpc-handler-context.md +5 -0
  283. package/repos/effect/.changeset/fix-entity-proxy-server-path-params.md +5 -0
  284. package/repos/effect/.changeset/fix-from-readable-stream-cancel-defect.md +5 -0
  285. package/repos/effect/.changeset/fix-graph-undirected-traversal.md +5 -0
  286. package/repos/effect/.changeset/fix-has-interrupts-only-empty.md +5 -0
  287. package/repos/effect/.changeset/fix-hashmap-bit31-ordering.md +5 -0
  288. package/repos/effect/.changeset/fix-headers-proto-enumerability.md +5 -0
  289. package/repos/effect/.changeset/fix-http-incoming-message-parse-options.md +5 -0
  290. package/repos/effect/.changeset/fix-httpapi-endpoint-error-inference.md +5 -0
  291. package/repos/effect/.changeset/fix-httpapi-schema-types.md +5 -0
  292. package/repos/effect/.changeset/fix-httpapi-security-middleware-cache.md +5 -0
  293. package/repos/effect/.changeset/fix-is-json-dag.md +7 -0
  294. package/repos/effect/.changeset/fix-json-schema-anyof-oneof-siblings.md +5 -0
  295. package/repos/effect/.changeset/fix-json-schema-import-json.md +5 -0
  296. package/repos/effect/.changeset/fix-keepalive-blocked-timers.md +5 -0
  297. package/repos/effect/.changeset/fix-mcp-param-name-resolution.md +5 -0
  298. package/repos/effect/.changeset/fix-mermaid-escape-special-chars.md +5 -0
  299. package/repos/effect/.changeset/fix-mutable-list-filter-length.md +5 -0
  300. package/repos/effect/.changeset/fix-object-keyword-json-schema.md +5 -0
  301. package/repos/effect/.changeset/fix-openai-mcp-tool-names.md +5 -0
  302. package/repos/effect/.changeset/fix-openapi-generator-form-urlencoded.md +5 -0
  303. package/repos/effect/.changeset/fix-openapi-generator-swagger2openapi.md +5 -0
  304. package/repos/effect/.changeset/fix-openapi-preserve-multiple-response-content-types.md +5 -0
  305. package/repos/effect/.changeset/fix-openrouter-sparse-array.md +5 -0
  306. package/repos/effect/.changeset/fix-otel-logger-clock-skew.md +7 -0
  307. package/repos/effect/.changeset/fix-otel-logger-severity-number.md +20 -0
  308. package/repos/effect/.changeset/fix-queue-collect-duplication.md +5 -0
  309. package/repos/effect/.changeset/fix-random-string-seeds.md +5 -0
  310. package/repos/effect/.changeset/fix-ratelimiter-tokenbucket-redis-ttl.md +5 -0
  311. package/repos/effect/.changeset/fix-remainder-scientific-notation.md +5 -0
  312. package/repos/effect/.changeset/fix-request-resolver-pending-batches-leak.md +5 -0
  313. package/repos/effect/.changeset/fix-retry-transient-autocomplete.md +5 -0
  314. package/repos/effect/.changeset/fix-rpc-http-requestids-finalizer.md +5 -0
  315. package/repos/effect/.changeset/fix-rpc-json-id-edges.md +5 -0
  316. package/repos/effect/.changeset/fix-schedule-fixed-double-exec.md +9 -0
  317. package/repos/effect/.changeset/fix-schedule-reduce-sync-state.md +5 -0
  318. package/repos/effect/.changeset/fix-schema-arbitrary-exclusive-bounds.md +5 -0
  319. package/repos/effect/.changeset/fix-schema-defect-message.md +5 -0
  320. package/repos/effect/.changeset/fix-schema-encode-keys-property-keys.md +5 -0
  321. package/repos/effect/.changeset/fix-schema-encodekeys-class.md +5 -0
  322. package/repos/effect/.changeset/fix-schema-encodekeys-struct.md +5 -0
  323. package/repos/effect/.changeset/fix-schema-identifier-expected-message.md +5 -0
  324. package/repos/effect/.changeset/fix-schema-is-uuid.md +5 -0
  325. package/repos/effect/.changeset/fix-schema-option-non-schema-failures.md +17 -0
  326. package/repos/effect/.changeset/fix-schema-parser-checks.md +9 -0
  327. package/repos/effect/.changeset/fix-searchparam-initial-decode.md +5 -0
  328. package/repos/effect/.changeset/fix-serializable-wire-transfer.md +7 -0
  329. package/repos/effect/.changeset/fix-stream-grouped-within-flush.md +5 -0
  330. package/repos/effect/.changeset/fix-stream-run-for-each-while.md +5 -0
  331. package/repos/effect/.changeset/fix-stream-scan-effect.md +5 -0
  332. package/repos/effect/.changeset/fix-stream-scoped-scope.md +5 -0
  333. package/repos/effect/.changeset/fix-strip-approval-artifacts-multi-round.md +13 -0
  334. package/repos/effect/.changeset/fix-struct-utility-types-simplify.md +5 -0
  335. package/repos/effect/.changeset/fix-structwithrest-index-signatures.md +6 -0
  336. package/repos/effect/.changeset/fix-tagged-union-class-sentinels.md +5 -0
  337. package/repos/effect/.changeset/fix-tagged-union-match-unify.md +6 -0
  338. package/repos/effect/.changeset/fix-to-tagged-union-isanyof-custom-tags.md +10 -0
  339. package/repos/effect/.changeset/fix-tuple-with-rest-post-rest-index-drift.md +5 -0
  340. package/repos/effect/.changeset/fix-tuple-with-rest-post-rest-validation.md +5 -0
  341. package/repos/effect/.changeset/fix-types-voidifempty.md +5 -0
  342. package/repos/effect/.changeset/fix-void-response-encoding.md +5 -0
  343. package/repos/effect/.changeset/fix-workflow-proxy-rpc-handler-context.md +5 -0
  344. package/repos/effect/.changeset/flat-chicken-remain.md +5 -0
  345. package/repos/effect/.changeset/floppy-cows-spend.md +5 -0
  346. package/repos/effect/.changeset/floppy-items-admire.md +5 -0
  347. package/repos/effect/.changeset/floppy-pigs-kiss.md +5 -0
  348. package/repos/effect/.changeset/fluffy-meals-matter.md +5 -0
  349. package/repos/effect/.changeset/fluffy-pumas-push.md +5 -0
  350. package/repos/effect/.changeset/forked-memo-maps.md +6 -0
  351. package/repos/effect/.changeset/forty-hounds-cheer.md +5 -0
  352. package/repos/effect/.changeset/forty-otters-cry.md +5 -0
  353. package/repos/effect/.changeset/forty-rings-film.md +7 -0
  354. package/repos/effect/.changeset/forty-signs-stay.md +5 -0
  355. package/repos/effect/.changeset/forty-swans-divide.md +5 -0
  356. package/repos/effect/.changeset/forty-trees-pay.md +5 -0
  357. package/repos/effect/.changeset/four-papayas-bow.md +5 -0
  358. package/repos/effect/.changeset/four-points-repeat.md +5 -0
  359. package/repos/effect/.changeset/fresh-cats-smash.md +5 -0
  360. package/repos/effect/.changeset/fresh-emus-cheat.md +5 -0
  361. package/repos/effect/.changeset/fresh-monkeys-smoke.md +9 -0
  362. package/repos/effect/.changeset/fruity-houses-learn.md +6 -0
  363. package/repos/effect/.changeset/full-adults-double.md +5 -0
  364. package/repos/effect/.changeset/funny-crabs-hang.md +6 -0
  365. package/repos/effect/.changeset/funny-forks-move.md +5 -0
  366. package/repos/effect/.changeset/fuzzy-camels-hunt.md +5 -0
  367. package/repos/effect/.changeset/fuzzy-dodos-help.md +5 -0
  368. package/repos/effect/.changeset/fuzzy-lions-perform.md +5 -0
  369. package/repos/effect/.changeset/fuzzy-planets-sneeze.md +5 -0
  370. package/repos/effect/.changeset/gold-meteors-move.md +5 -0
  371. package/repos/effect/.changeset/gold-readers-hug.md +5 -0
  372. package/repos/effect/.changeset/gold-rings-start.md +5 -0
  373. package/repos/effect/.changeset/good-tools-work.md +7 -0
  374. package/repos/effect/.changeset/graph-algorithm-fixes.md +5 -0
  375. package/repos/effect/.changeset/great-trains-mate.md +5 -0
  376. package/repos/effect/.changeset/great-trams-report.md +5 -0
  377. package/repos/effect/.changeset/green-beds-unref.md +7 -0
  378. package/repos/effect/.changeset/green-chips-wash.md +5 -0
  379. package/repos/effect/.changeset/green-moons-smile.md +5 -0
  380. package/repos/effect/.changeset/green-pugs-play.md +5 -0
  381. package/repos/effect/.changeset/green-rings-prove.md +5 -0
  382. package/repos/effect/.changeset/happy-mirrors-dream.md +5 -0
  383. package/repos/effect/.changeset/heavy-loops-cut.md +5 -0
  384. package/repos/effect/.changeset/heavy-trams-fix.md +5 -0
  385. package/repos/effect/.changeset/hip-socks-travel.md +5 -0
  386. package/repos/effect/.changeset/honest-pens-thank.md +5 -0
  387. package/repos/effect/.changeset/honest-rivers-notice.md +5 -0
  388. package/repos/effect/.changeset/hot-taxis-fry.md +5 -0
  389. package/repos/effect/.changeset/httpapi-endpoint-relax-constraints.md +5 -0
  390. package/repos/effect/.changeset/httpapi-schema-service-types.md +6 -0
  391. package/repos/effect/.changeset/huge-moons-rhyme.md +5 -0
  392. package/repos/effect/.changeset/humble-pigs-dig.md +5 -0
  393. package/repos/effect/.changeset/icy-flies-cross.md +5 -0
  394. package/repos/effect/.changeset/itchy-radios-poke.md +5 -0
  395. package/repos/effect/.changeset/itchy-results-bet.md +5 -0
  396. package/repos/effect/.changeset/itchy-shrimps-deny.md +5 -0
  397. package/repos/effect/.changeset/itchy-toes-promise.md +5 -0
  398. package/repos/effect/.changeset/k8s-last-transition-null.md +5 -0
  399. package/repos/effect/.changeset/khaki-cats-learn.md +5 -0
  400. package/repos/effect/.changeset/khaki-melons-appear.md +5 -0
  401. package/repos/effect/.changeset/kind-hounds-float.md +5 -0
  402. package/repos/effect/.changeset/kind-windows-fall.md +5 -0
  403. package/repos/effect/.changeset/late-hotels-rule.md +5 -0
  404. package/repos/effect/.changeset/late-lamps-care.md +5 -0
  405. package/repos/effect/.changeset/late-rivers-applaud.md +5 -0
  406. package/repos/effect/.changeset/layer-map-dynamic-idle-ttl.md +5 -0
  407. package/repos/effect/.changeset/lazy-queens-rush.md +5 -0
  408. package/repos/effect/.changeset/lazy-recursive-forward-refs.md +5 -0
  409. package/repos/effect/.changeset/lazy-timers-exist.md +5 -0
  410. package/repos/effect/.changeset/legal-pants-drop.md +5 -0
  411. package/repos/effect/.changeset/lemon-taxis-sin.md +5 -0
  412. package/repos/effect/.changeset/light-kids-sneeze.md +5 -0
  413. package/repos/effect/.changeset/little-dryers-allow.md +7 -0
  414. package/repos/effect/.changeset/long-cameras-think.md +5 -0
  415. package/repos/effect/.changeset/lovely-cobras-change.md +5 -0
  416. package/repos/effect/.changeset/lovely-frogs-rescue.md +5 -0
  417. package/repos/effect/.changeset/lucky-buttons-jump.md +5 -0
  418. package/repos/effect/.changeset/lucky-phones-listen.md +5 -0
  419. package/repos/effect/.changeset/lucky-worms-type.md +5 -0
  420. package/repos/effect/.changeset/mean-dingos-share.md +5 -0
  421. package/repos/effect/.changeset/mean-trains-smash.md +5 -0
  422. package/repos/effect/.changeset/metal-parts-yell.md +5 -0
  423. package/repos/effect/.changeset/mighty-games-matter.md +5 -0
  424. package/repos/effect/.changeset/modern-uuid-guid-filter.md +5 -0
  425. package/repos/effect/.changeset/nasty-geese-grow.md +5 -0
  426. package/repos/effect/.changeset/neat-goats-wave.md +5 -0
  427. package/repos/effect/.changeset/neat-kings-chew.md +5 -0
  428. package/repos/effect/.changeset/neat-lions-rest.md +5 -0
  429. package/repos/effect/.changeset/neat-snails-wash.md +5 -0
  430. package/repos/effect/.changeset/neat-taxis-notice.md +5 -0
  431. package/repos/effect/.changeset/new-dogs-swim.md +5 -0
  432. package/repos/effect/.changeset/new-toes-stop.md +5 -0
  433. package/repos/effect/.changeset/ninety-geese-exist.md +5 -0
  434. package/repos/effect/.changeset/odd-boats-think.md +5 -0
  435. package/repos/effect/.changeset/odd-bulldogs-sleep.md +5 -0
  436. package/repos/effect/.changeset/odd-fans-glow.md +5 -0
  437. package/repos/effect/.changeset/odd-forks-talk.md +5 -0
  438. package/repos/effect/.changeset/odd-laws-draw.md +5 -0
  439. package/repos/effect/.changeset/odd-owls-smoke.md +5 -0
  440. package/repos/effect/.changeset/odd-socks-boil.md +5 -0
  441. package/repos/effect/.changeset/odd-suns-dance.md +5 -0
  442. package/repos/effect/.changeset/old-brooms-cry.md +5 -0
  443. package/repos/effect/.changeset/old-facts-stand.md +5 -0
  444. package/repos/effect/.changeset/old-mirrors-float.md +5 -0
  445. package/repos/effect/.changeset/olive-poems-visit.md +5 -0
  446. package/repos/effect/.changeset/open-hotels-remain.md +5 -0
  447. package/repos/effect/.changeset/openai-compat-nullable-tool-name.md +7 -0
  448. package/repos/effect/.changeset/openai-compat-reasoning.md +5 -0
  449. package/repos/effect/.changeset/otel-resource-env-precedence.md +5 -0
  450. package/repos/effect/.changeset/perfect-buckets-tickle.md +5 -0
  451. package/repos/effect/.changeset/petite-months-allow.md +6 -0
  452. package/repos/effect/.changeset/platform-crypto-service.md +9 -0
  453. package/repos/effect/.changeset/platform-node-shared-barrel.md +5 -0
  454. package/repos/effect/.changeset/plenty-moons-pull.md +5 -0
  455. package/repos/effect/.changeset/polite-brooms-tickle.md +5 -0
  456. package/repos/effect/.changeset/polite-pigs-speak.md +5 -0
  457. package/repos/effect/.changeset/polite-tables-kneel.md +5 -0
  458. package/repos/effect/.changeset/port-react-hydration.md +8 -0
  459. package/repos/effect/.changeset/pre.json +588 -0
  460. package/repos/effect/.changeset/public-deer-ring.md +5 -0
  461. package/repos/effect/.changeset/public-jeans-stop.md +5 -0
  462. package/repos/effect/.changeset/pubsub-publish-false.md +5 -0
  463. package/repos/effect/.changeset/puny-pens-clap.md +6 -0
  464. package/repos/effect/.changeset/purple-bars-prove.md +5 -0
  465. package/repos/effect/.changeset/purple-schools-float.md +5 -0
  466. package/repos/effect/.changeset/purple-turtles-draw.md +5 -0
  467. package/repos/effect/.changeset/quick-dragons-fix.md +5 -0
  468. package/repos/effect/.changeset/quick-falcons-travel.md +5 -0
  469. package/repos/effect/.changeset/quick-geese-relax.md +5 -0
  470. package/repos/effect/.changeset/quick-lamps-dig.md +5 -0
  471. package/repos/effect/.changeset/quick-lizards-fall.md +5 -0
  472. package/repos/effect/.changeset/quick-trees-join.md +5 -0
  473. package/repos/effect/.changeset/quiet-carpets-grin.md +5 -0
  474. package/repos/effect/.changeset/quiet-files-hunt.md +5 -0
  475. package/repos/effect/.changeset/quiet-lamps-jam.md +5 -0
  476. package/repos/effect/.changeset/quiet-radios-wave.md +5 -0
  477. package/repos/effect/.changeset/quiet-redis-scripts.md +5 -0
  478. package/repos/effect/.changeset/ready-olives-divide.md +5 -0
  479. package/repos/effect/.changeset/real-trains-ring.md +5 -0
  480. package/repos/effect/.changeset/red-pigs-repair.md +5 -0
  481. package/repos/effect/.changeset/redacted-representation-options.md +7 -0
  482. package/repos/effect/.changeset/refactor-cli-global-flags.md +27 -0
  483. package/repos/effect/.changeset/refactor-config-provider.md +23 -0
  484. package/repos/effect/.changeset/refactor-representation-references.md +5 -0
  485. package/repos/effect/.changeset/remove-effect-transactionwith.md +5 -0
  486. package/repos/effect/.changeset/remove-http-span-counter.md +5 -0
  487. package/repos/effect/.changeset/remove-nullor.md +5 -0
  488. package/repos/effect/.changeset/remove-openapi-fromapi-options.md +7 -0
  489. package/repos/effect/.changeset/remove-types-mergerecord.md +5 -0
  490. package/repos/effect/.changeset/remove-unused-utils-apis.md +5 -0
  491. package/repos/effect/.changeset/rename-rebuild-out.md +5 -0
  492. package/repos/effect/.changeset/restore-schema-parse-options.md +5 -0
  493. package/repos/effect/.changeset/rich-dots-push.md +5 -0
  494. package/repos/effect/.changeset/rich-hoops-nail.md +5 -0
  495. package/repos/effect/.changeset/rich-sloths-draw.md +5 -0
  496. package/repos/effect/.changeset/ripe-lies-battle.md +5 -0
  497. package/repos/effect/.changeset/rpc-middleware-provides-fix.md +5 -0
  498. package/repos/effect/.changeset/scalar-custom-fetch.md +5 -0
  499. package/repos/effect/.changeset/schema-as-class.md +17 -0
  500. package/repos/effect/.changeset/schema-asserts-signature.md +5 -0
  501. package/repos/effect/.changeset/schema-clean-up-additionalProperties.md +7 -0
  502. package/repos/effect/.changeset/schema-datetime-utc-from-string.md +5 -0
  503. package/repos/effect/.changeset/schema-decoding-defaults-services.md +7 -0
  504. package/repos/effect/.changeset/schema-defaults-issue-channel.md +7 -0
  505. package/repos/effect/.changeset/schema-dollar-prefix.md +5 -0
  506. package/repos/effect/.changeset/schema-missing-self-generic.md +5 -0
  507. package/repos/effect/.changeset/schema-ordered-arbitrary-constraints.md +12 -0
  508. package/repos/effect/.changeset/schema-parser-adapter-errors.md +5 -0
  509. package/repos/effect/.changeset/schema-refactor-toCodecJson.md +5 -0
  510. package/repos/effect/.changeset/schema-remove-annotate-in.md +5 -0
  511. package/repos/effect/.changeset/schema-rename-makeUnsafe-to-make.md +7 -0
  512. package/repos/effect/.changeset/schema-rename-parser-makeUnsafe.md +5 -0
  513. package/repos/effect/.changeset/schema-result-combinators.md +5 -0
  514. package/repos/effect/.changeset/schema-struct-simplify.md +5 -0
  515. package/repos/effect/.changeset/seven-mugs-marry.md +5 -0
  516. package/repos/effect/.changeset/shaggy-birds-stay.md +5 -0
  517. package/repos/effect/.changeset/shaggy-cities-push.md +5 -0
  518. package/repos/effect/.changeset/shaggy-numbers-accept.md +5 -0
  519. package/repos/effect/.changeset/sharp-emus-applaud.md +5 -0
  520. package/repos/effect/.changeset/sharp-goats-wink.md +5 -0
  521. package/repos/effect/.changeset/sharp-pandas-care.md +5 -0
  522. package/repos/effect/.changeset/sharp-peas-march.md +5 -0
  523. package/repos/effect/.changeset/sharp-rules-draw.md +5 -0
  524. package/repos/effect/.changeset/sharp-singers-sort.md +5 -0
  525. package/repos/effect/.changeset/shiny-trains-hug.md +5 -0
  526. package/repos/effect/.changeset/short-cows-relate.md +5 -0
  527. package/repos/effect/.changeset/short-foxes-admire.md +5 -0
  528. package/repos/effect/.changeset/shy-cycles-flow.md +5 -0
  529. package/repos/effect/.changeset/shy-geckos-sniff.md +30 -0
  530. package/repos/effect/.changeset/silent-geckos-matter.md +5 -0
  531. package/repos/effect/.changeset/silent-needles-design.md +6 -0
  532. package/repos/effect/.changeset/silent-plants-matter.md +8 -0
  533. package/repos/effect/.changeset/silent-spoons-stare.md +5 -0
  534. package/repos/effect/.changeset/silly-loops-tickle.md +5 -0
  535. package/repos/effect/.changeset/silver-bulk-indexeddb.md +5 -0
  536. package/repos/effect/.changeset/silver-emus-smoke.md +5 -0
  537. package/repos/effect/.changeset/silver-kings-poke.md +5 -0
  538. package/repos/effect/.changeset/silver-snails-sqlite.md +17 -0
  539. package/repos/effect/.changeset/silver-wings-watch.md +5 -0
  540. package/repos/effect/.changeset/six-cups-taste.md +5 -0
  541. package/repos/effect/.changeset/sixty-mails-shout.md +5 -0
  542. package/repos/effect/.changeset/sixty-socks-yell.md +5 -0
  543. package/repos/effect/.changeset/slimy-planets-divide.md +5 -0
  544. package/repos/effect/.changeset/slimy-turtles-juggle.md +5 -0
  545. package/repos/effect/.changeset/slow-beans-battle.md +28 -0
  546. package/repos/effect/.changeset/slow-berries-enjoy.md +5 -0
  547. package/repos/effect/.changeset/small-bugs-hunt.md +5 -0
  548. package/repos/effect/.changeset/small-crabs-care.md +9 -0
  549. package/repos/effect/.changeset/small-pets-sit.md +6 -0
  550. package/repos/effect/.changeset/smart-ducks-jump.md +6 -0
  551. package/repos/effect/.changeset/smart-pillows-buy.md +6 -0
  552. package/repos/effect/.changeset/smart-timers-fly.md +5 -0
  553. package/repos/effect/.changeset/smart-tips-sort.md +5 -0
  554. package/repos/effect/.changeset/social-pumas-prove.md +5 -0
  555. package/repos/effect/.changeset/soft-comics-wink.md +5 -0
  556. package/repos/effect/.changeset/soft-delete-sqlmodel.md +5 -0
  557. package/repos/effect/.changeset/soft-seals-allow.md +5 -0
  558. package/repos/effect/.changeset/solid-cougars-attack.md +5 -0
  559. package/repos/effect/.changeset/solid-doors-ring.md +5 -0
  560. package/repos/effect/.changeset/solid-items-tease.md +5 -0
  561. package/repos/effect/.changeset/solid-towns-smoke.md +5 -0
  562. package/repos/effect/.changeset/sour-canyons-rescue.md +5 -0
  563. package/repos/effect/.changeset/sparkly-bears-act.md +5 -0
  564. package/repos/effect/.changeset/sparkly-coins-sit.md +5 -0
  565. package/repos/effect/.changeset/spotty-comics-fry.md +5 -0
  566. package/repos/effect/.changeset/sql-migrator-mjs-mts.md +5 -0
  567. package/repos/effect/.changeset/stale-dots-tell.md +5 -0
  568. package/repos/effect/.changeset/stale-snakes-know.md +5 -0
  569. package/repos/effect/.changeset/strict-areas-end.md +5 -0
  570. package/repos/effect/.changeset/strict-buckets-hug.md +8 -0
  571. package/repos/effect/.changeset/strip-resolved-approvals.md +5 -0
  572. package/repos/effect/.changeset/strong-balloons-tickle.md +5 -0
  573. package/repos/effect/.changeset/strong-bees-queue.md +5 -0
  574. package/repos/effect/.changeset/struct-record.md +5 -0
  575. package/repos/effect/.changeset/sunny-ads-hang.md +5 -0
  576. package/repos/effect/.changeset/sunny-bikes-sleep.md +5 -0
  577. package/repos/effect/.changeset/sunny-rooms-invent.md +5 -0
  578. package/repos/effect/.changeset/sweet-donuts-bet.md +5 -0
  579. package/repos/effect/.changeset/sweet-hotels-give.md +5 -0
  580. package/repos/effect/.changeset/sweet-views-learn.md +5 -0
  581. package/repos/effect/.changeset/swift-spiders-unpack.md +5 -0
  582. package/repos/effect/.changeset/swift-symbols-stand.md +5 -0
  583. package/repos/effect/.changeset/tagged-error-class-optional-empty-props.md +5 -0
  584. package/repos/effect/.changeset/tall-hairs-return.md +5 -0
  585. package/repos/effect/.changeset/tall-mails-listen.md +5 -0
  586. package/repos/effect/.changeset/tall-queens-cheer.md +5 -0
  587. package/repos/effect/.changeset/tall-wombats-wave.md +5 -0
  588. package/repos/effect/.changeset/tangy-colts-lose.md +5 -0
  589. package/repos/effect/.changeset/tasty-comics-send.md +5 -0
  590. package/repos/effect/.changeset/ten-kings-fry.md +5 -0
  591. package/repos/effect/.changeset/thick-pandas-wait.md +5 -0
  592. package/repos/effect/.changeset/thin-ducks-wonder.md +5 -0
  593. package/repos/effect/.changeset/thirty-ducks-go.md +5 -0
  594. package/repos/effect/.changeset/thirty-pans-love.md +5 -0
  595. package/repos/effect/.changeset/three-corners-sort.md +5 -0
  596. package/repos/effect/.changeset/three-ravens-jam.md +5 -0
  597. package/repos/effect/.changeset/three-tomatoes-wave.md +5 -0
  598. package/repos/effect/.changeset/tidy-foxes-own.md +5 -0
  599. package/repos/effect/.changeset/tidy-icons-glow.md +5 -0
  600. package/repos/effect/.changeset/tidy-stacks-encode.md +5 -0
  601. package/repos/effect/.changeset/tidy-stars-drive.md +5 -0
  602. package/repos/effect/.changeset/tiny-buckets-wave.md +5 -0
  603. package/repos/effect/.changeset/tiny-lilies-flash.md +5 -0
  604. package/repos/effect/.changeset/tiny-rabbits-smile.md +5 -0
  605. package/repos/effect/.changeset/tocodecjson-return-json-type.md +10 -0
  606. package/repos/effect/.changeset/tool-get-json-schema-tests.md +5 -0
  607. package/repos/effect/.changeset/true-actors-battle.md +5 -0
  608. package/repos/effect/.changeset/twenty-buttons-cheer.md +5 -0
  609. package/repos/effect/.changeset/two-roses-double.md +5 -0
  610. package/repos/effect/.changeset/unify-error-defect-stack-options.md +23 -0
  611. package/repos/effect/.changeset/update-schema-arbitrary-report.md +22 -0
  612. package/repos/effect/.changeset/upset-colts-stick.md +5 -0
  613. package/repos/effect/.changeset/vast-bananas-send.md +5 -0
  614. package/repos/effect/.changeset/vast-deserts-travel.md +5 -0
  615. package/repos/effect/.changeset/violet-peaches-feel.md +5 -0
  616. package/repos/effect/.changeset/vitest-layer-top-level-options.md +5 -0
  617. package/repos/effect/.changeset/wacky-grapes-poke.md +5 -0
  618. package/repos/effect/.changeset/wacky-rice-add.md +5 -0
  619. package/repos/effect/.changeset/warm-dolls-brake.md +5 -0
  620. package/repos/effect/.changeset/warm-friends-tie.md +5 -0
  621. package/repos/effect/.changeset/warm-snails-shop.md +7 -0
  622. package/repos/effect/.changeset/wet-news-invent.md +5 -0
  623. package/repos/effect/.changeset/wild-readers-clean.md +5 -0
  624. package/repos/effect/.changeset/wild-suns-bearer-space.md +5 -0
  625. package/repos/effect/.changeset/wise-ants-wave.md +6 -0
  626. package/repos/effect/.changeset/wise-flags-shift.md +22 -0
  627. package/repos/effect/.changeset/wise-oranges-stay.md +5 -0
  628. package/repos/effect/.changeset/witty-lobsters-share.md +5 -0
  629. package/repos/effect/.changeset/yellow-adults-study.md +5 -0
  630. package/repos/effect/.changeset/yellow-clocks-dance.md +5 -0
  631. package/repos/effect/.changeset/yellow-dingos-jump.md +5 -0
  632. package/repos/effect/.changeset/young-doors-change.md +5 -0
  633. package/repos/effect/.envrc +1 -0
  634. package/repos/effect/.github/actions/setup/action.yaml +33 -0
  635. package/repos/effect/.github/workflows/ai-codegen.yml +66 -0
  636. package/repos/effect/.github/workflows/bundle-comment.yml +72 -0
  637. package/repos/effect/.github/workflows/check.yml +195 -0
  638. package/repos/effect/.github/workflows/release.yml +47 -0
  639. package/repos/effect/.github/workflows/snapshot.yml +34 -0
  640. package/repos/effect/.oxlintrc.json +25 -0
  641. package/repos/effect/.patterns/effect.md +102 -0
  642. package/repos/effect/.patterns/jsdoc.md +53 -0
  643. package/repos/effect/.patterns/testing.md +44 -0
  644. package/repos/effect/.specs/README.md +2 -0
  645. package/repos/effect/.vscode/extensions.json +6 -0
  646. package/repos/effect/.vscode/settings.json +44 -0
  647. package/repos/effect/AGENTS.md +139 -0
  648. package/repos/effect/LICENSE +21 -0
  649. package/repos/effect/LLMS.md +343 -0
  650. package/repos/effect/MIGRATION.md +83 -0
  651. package/repos/effect/README.md +3 -0
  652. package/repos/effect/TODOS.md +28 -0
  653. package/repos/effect/ai-docs/README.md +44 -0
  654. package/repos/effect/ai-docs/package.json +36 -0
  655. package/repos/effect/ai-docs/src/01_effect/01_basics/01_effect-gen.ts +30 -0
  656. package/repos/effect/ai-docs/src/01_effect/01_basics/02_effect-fn.ts +39 -0
  657. package/repos/effect/ai-docs/src/01_effect/01_basics/10_creating-effects.ts +74 -0
  658. package/repos/effect/ai-docs/src/01_effect/01_basics/index.md +5 -0
  659. package/repos/effect/ai-docs/src/01_effect/02_services/01_service.ts +45 -0
  660. package/repos/effect/ai-docs/src/01_effect/02_services/10_reference.ts +10 -0
  661. package/repos/effect/ai-docs/src/01_effect/02_services/20_layer-composition.ts +70 -0
  662. package/repos/effect/ai-docs/src/01_effect/02_services/20_layer-unwrap.ts +66 -0
  663. package/repos/effect/ai-docs/src/01_effect/02_services/index.md +5 -0
  664. package/repos/effect/ai-docs/src/01_effect/03_errors/01_error-handling.ts +30 -0
  665. package/repos/effect/ai-docs/src/01_effect/03_errors/10_catch-tags.ts +24 -0
  666. package/repos/effect/ai-docs/src/01_effect/03_errors/20_reason-errors.ts +64 -0
  667. package/repos/effect/ai-docs/src/01_effect/03_errors/index.md +1 -0
  668. package/repos/effect/ai-docs/src/01_effect/04_resources/10_acquire-release.ts +105 -0
  669. package/repos/effect/ai-docs/src/01_effect/04_resources/20_layer-side-effects.ts +31 -0
  670. package/repos/effect/ai-docs/src/01_effect/04_resources/30_layer-map.ts +86 -0
  671. package/repos/effect/ai-docs/src/01_effect/04_resources/index.md +3 -0
  672. package/repos/effect/ai-docs/src/01_effect/05_running/10_run-main.ts +30 -0
  673. package/repos/effect/ai-docs/src/01_effect/05_running/20_layer-launch.ts +27 -0
  674. package/repos/effect/ai-docs/src/01_effect/05_running/index.md +1 -0
  675. package/repos/effect/ai-docs/src/01_effect/06_pubsub/10_pubsub.ts +56 -0
  676. package/repos/effect/ai-docs/src/01_effect/06_pubsub/index.md +3 -0
  677. package/repos/effect/ai-docs/src/02_stream/10_creating-streams.ts +103 -0
  678. package/repos/effect/ai-docs/src/02_stream/20_consuming-streams.ts +137 -0
  679. package/repos/effect/ai-docs/src/02_stream/30_encoding.ts +165 -0
  680. package/repos/effect/ai-docs/src/02_stream/index.md +4 -0
  681. package/repos/effect/ai-docs/src/03_integration/10_managed-runtime.ts +129 -0
  682. package/repos/effect/ai-docs/src/03_integration/index.md +5 -0
  683. package/repos/effect/ai-docs/src/05_batching/10_request-resolver.ts +89 -0
  684. package/repos/effect/ai-docs/src/05_batching/index.md +3 -0
  685. package/repos/effect/ai-docs/src/06_schedule/10_schedules.ts +102 -0
  686. package/repos/effect/ai-docs/src/06_schedule/index.md +3 -0
  687. package/repos/effect/ai-docs/src/07_datetime/10_creating-and-formatting.ts +30 -0
  688. package/repos/effect/ai-docs/src/07_datetime/20_time-zones.ts +44 -0
  689. package/repos/effect/ai-docs/src/07_datetime/index.md +5 -0
  690. package/repos/effect/ai-docs/src/08_observability/10_logging.ts +66 -0
  691. package/repos/effect/ai-docs/src/08_observability/20_otlp-tracing.ts +95 -0
  692. package/repos/effect/ai-docs/src/08_observability/index.md +7 -0
  693. package/repos/effect/ai-docs/src/09_testing/10_effect-tests.ts +55 -0
  694. package/repos/effect/ai-docs/src/09_testing/20_layer-tests.ts +138 -0
  695. package/repos/effect/ai-docs/src/09_testing/index.md +1 -0
  696. package/repos/effect/ai-docs/src/50_http-client/10_basics.ts +102 -0
  697. package/repos/effect/ai-docs/src/50_http-client/index.md +3 -0
  698. package/repos/effect/ai-docs/src/51_http-server/10_basics.ts +116 -0
  699. package/repos/effect/ai-docs/src/51_http-server/fixtures/api/Api.ts +14 -0
  700. package/repos/effect/ai-docs/src/51_http-server/fixtures/api/Authorization.ts +36 -0
  701. package/repos/effect/ai-docs/src/51_http-server/fixtures/api/System.ts +10 -0
  702. package/repos/effect/ai-docs/src/51_http-server/fixtures/api/Users.ts +91 -0
  703. package/repos/effect/ai-docs/src/51_http-server/fixtures/domain/User.ts +12 -0
  704. package/repos/effect/ai-docs/src/51_http-server/fixtures/domain/UserErrors.ts +22 -0
  705. package/repos/effect/ai-docs/src/51_http-server/fixtures/server/Authorization.ts +36 -0
  706. package/repos/effect/ai-docs/src/51_http-server/fixtures/server/Users/http.ts +71 -0
  707. package/repos/effect/ai-docs/src/51_http-server/fixtures/server/Users.ts +62 -0
  708. package/repos/effect/ai-docs/src/51_http-server/index.md +3 -0
  709. package/repos/effect/ai-docs/src/60_child-process/10_working-with-child-processes.ts +117 -0
  710. package/repos/effect/ai-docs/src/60_child-process/index.md +3 -0
  711. package/repos/effect/ai-docs/src/70_cli/10_basics.ts +136 -0
  712. package/repos/effect/ai-docs/src/70_cli/index.md +5 -0
  713. package/repos/effect/ai-docs/src/71_ai/10_language-model.ts +156 -0
  714. package/repos/effect/ai-docs/src/71_ai/20_tools.ts +226 -0
  715. package/repos/effect/ai-docs/src/71_ai/30_chat.ts +158 -0
  716. package/repos/effect/ai-docs/src/71_ai/fixtures/domain/LaunchPlan.ts +9 -0
  717. package/repos/effect/ai-docs/src/71_ai/index.md +5 -0
  718. package/repos/effect/ai-docs/src/80_cluster/10_entities.ts +97 -0
  719. package/repos/effect/ai-docs/src/80_cluster/index.md +4 -0
  720. package/repos/effect/ai-docs/src/index.md +12 -0
  721. package/repos/effect/ai-docs/tsconfig.json +24 -0
  722. package/repos/effect/cookbooks/schedule.md +3507 -0
  723. package/repos/effect/deno.json +33 -0
  724. package/repos/effect/docker-compose.yaml +18 -0
  725. package/repos/effect/dprint.json +32 -0
  726. package/repos/effect/flake.lock +27 -0
  727. package/repos/effect/flake.nix +24 -0
  728. package/repos/effect/jsdocs.config.json +16 -0
  729. package/repos/effect/migration/cause.md +163 -0
  730. package/repos/effect/migration/equality.md +72 -0
  731. package/repos/effect/migration/error-handling.md +106 -0
  732. package/repos/effect/migration/fiber-keep-alive.md +74 -0
  733. package/repos/effect/migration/fiberref.md +109 -0
  734. package/repos/effect/migration/forking.md +94 -0
  735. package/repos/effect/migration/generators.md +32 -0
  736. package/repos/effect/migration/layer-memoization.md +98 -0
  737. package/repos/effect/migration/runtime.md +88 -0
  738. package/repos/effect/migration/schema.md +1032 -0
  739. package/repos/effect/migration/scope.md +50 -0
  740. package/repos/effect/migration/services.md +235 -0
  741. package/repos/effect/migration/v3-to-v4.md +421 -0
  742. package/repos/effect/migration/yieldable.md +173 -0
  743. package/repos/effect/package.json +104 -0
  744. package/repos/effect/packages/ai/anthropic/CHANGELOG.md +611 -0
  745. package/repos/effect/packages/ai/anthropic/codegen.yml +63 -0
  746. package/repos/effect/packages/ai/anthropic/docgen.json +26 -0
  747. package/repos/effect/packages/ai/anthropic/package.json +67 -0
  748. package/repos/effect/packages/ai/anthropic/src/AnthropicClient.ts +432 -0
  749. package/repos/effect/packages/ai/anthropic/src/AnthropicConfig.ts +84 -0
  750. package/repos/effect/packages/ai/anthropic/src/AnthropicError.ts +212 -0
  751. package/repos/effect/packages/ai/anthropic/src/AnthropicLanguageModel.ts +3098 -0
  752. package/repos/effect/packages/ai/anthropic/src/AnthropicTelemetry.ts +132 -0
  753. package/repos/effect/packages/ai/anthropic/src/AnthropicTool.ts +2512 -0
  754. package/repos/effect/packages/ai/anthropic/src/Generated.ts +12600 -0
  755. package/repos/effect/packages/ai/anthropic/src/index.ts +40 -0
  756. package/repos/effect/packages/ai/anthropic/src/internal/errors.ts +370 -0
  757. package/repos/effect/packages/ai/anthropic/src/internal/utilities.ts +26 -0
  758. package/repos/effect/packages/ai/anthropic/test/AnthropicLanguageModel.test.ts +300 -0
  759. package/repos/effect/packages/ai/anthropic/tsconfig.json +8 -0
  760. package/repos/effect/packages/ai/anthropic/vitest.config.ts +6 -0
  761. package/repos/effect/packages/ai/openai/CHANGELOG.md +668 -0
  762. package/repos/effect/packages/ai/openai/codegen.yaml +41 -0
  763. package/repos/effect/packages/ai/openai/docgen.json +24 -0
  764. package/repos/effect/packages/ai/openai/package.json +67 -0
  765. package/repos/effect/packages/ai/openai/src/Generated.ts +35774 -0
  766. package/repos/effect/packages/ai/openai/src/OpenAiClient.ts +730 -0
  767. package/repos/effect/packages/ai/openai/src/OpenAiClientGenerated.ts +202 -0
  768. package/repos/effect/packages/ai/openai/src/OpenAiConfig.ts +93 -0
  769. package/repos/effect/packages/ai/openai/src/OpenAiEmbeddingModel.ts +258 -0
  770. package/repos/effect/packages/ai/openai/src/OpenAiError.ts +242 -0
  771. package/repos/effect/packages/ai/openai/src/OpenAiLanguageModel.ts +3133 -0
  772. package/repos/effect/packages/ai/openai/src/OpenAiSchema.ts +1286 -0
  773. package/repos/effect/packages/ai/openai/src/OpenAiTelemetry.ts +162 -0
  774. package/repos/effect/packages/ai/openai/src/OpenAiTool.ts +342 -0
  775. package/repos/effect/packages/ai/openai/src/index.ts +55 -0
  776. package/repos/effect/packages/ai/openai/src/internal/errors.ts +349 -0
  777. package/repos/effect/packages/ai/openai/src/internal/utilities.ts +33 -0
  778. package/repos/effect/packages/ai/openai/test/OpenAiClient.test.ts +798 -0
  779. package/repos/effect/packages/ai/openai/test/OpenAiEmbeddingModel.test.ts +289 -0
  780. package/repos/effect/packages/ai/openai/test/OpenAiLanguageModel.test.ts +1528 -0
  781. package/repos/effect/packages/ai/openai/test/OpenAiSchema.test.ts +273 -0
  782. package/repos/effect/packages/ai/openai/tsconfig.json +8 -0
  783. package/repos/effect/packages/ai/openai/vitest.config.ts +6 -0
  784. package/repos/effect/packages/ai/openai-compat/CHANGELOG.md +626 -0
  785. package/repos/effect/packages/ai/openai-compat/docgen.json +24 -0
  786. package/repos/effect/packages/ai/openai-compat/package.json +69 -0
  787. package/repos/effect/packages/ai/openai-compat/src/OpenAiClient.ts +1221 -0
  788. package/repos/effect/packages/ai/openai-compat/src/OpenAiConfig.ts +87 -0
  789. package/repos/effect/packages/ai/openai-compat/src/OpenAiEmbeddingModel.ts +254 -0
  790. package/repos/effect/packages/ai/openai-compat/src/OpenAiError.ts +178 -0
  791. package/repos/effect/packages/ai/openai-compat/src/OpenAiLanguageModel.ts +1951 -0
  792. package/repos/effect/packages/ai/openai-compat/src/OpenAiTelemetry.ts +164 -0
  793. package/repos/effect/packages/ai/openai-compat/src/index.ts +35 -0
  794. package/repos/effect/packages/ai/openai-compat/src/internal/errors.ts +327 -0
  795. package/repos/effect/packages/ai/openai-compat/src/internal/utilities.ts +33 -0
  796. package/repos/effect/packages/ai/openai-compat/test/OpenAiClient.test.ts +474 -0
  797. package/repos/effect/packages/ai/openai-compat/test/OpenAiEmbeddingModel.test.ts +216 -0
  798. package/repos/effect/packages/ai/openai-compat/test/OpenAiLanguageModel.test.ts +1505 -0
  799. package/repos/effect/packages/ai/openai-compat/tsconfig.json +8 -0
  800. package/repos/effect/packages/ai/openai-compat/vitest.config.ts +6 -0
  801. package/repos/effect/packages/ai/openrouter/CHANGELOG.md +607 -0
  802. package/repos/effect/packages/ai/openrouter/codegen.yml +35 -0
  803. package/repos/effect/packages/ai/openrouter/docgen.json +24 -0
  804. package/repos/effect/packages/ai/openrouter/package.json +67 -0
  805. package/repos/effect/packages/ai/openrouter/src/Generated.ts +10028 -0
  806. package/repos/effect/packages/ai/openrouter/src/OpenRouterClient.ts +357 -0
  807. package/repos/effect/packages/ai/openrouter/src/OpenRouterConfig.ts +99 -0
  808. package/repos/effect/packages/ai/openrouter/src/OpenRouterError.ts +225 -0
  809. package/repos/effect/packages/ai/openrouter/src/OpenRouterLanguageModel.ts +1796 -0
  810. package/repos/effect/packages/ai/openrouter/src/index.ts +30 -0
  811. package/repos/effect/packages/ai/openrouter/src/internal/errors.ts +375 -0
  812. package/repos/effect/packages/ai/openrouter/src/internal/utilities.ts +92 -0
  813. package/repos/effect/packages/ai/openrouter/tsconfig.json +10 -0
  814. package/repos/effect/packages/ai/openrouter/vitest.config.ts +6 -0
  815. package/repos/effect/packages/atom/react/CHANGELOG.md +599 -0
  816. package/repos/effect/packages/atom/react/LICENSE +21 -0
  817. package/repos/effect/packages/atom/react/README.md +7 -0
  818. package/repos/effect/packages/atom/react/docgen.json +25 -0
  819. package/repos/effect/packages/atom/react/package.json +79 -0
  820. package/repos/effect/packages/atom/react/src/Hooks.ts +476 -0
  821. package/repos/effect/packages/atom/react/src/ReactHydration.ts +109 -0
  822. package/repos/effect/packages/atom/react/src/RegistryContext.ts +108 -0
  823. package/repos/effect/packages/atom/react/src/ScopedAtom.ts +151 -0
  824. package/repos/effect/packages/atom/react/src/index.ts +23 -0
  825. package/repos/effect/packages/atom/react/test/index.test.tsx +650 -0
  826. package/repos/effect/packages/atom/react/tsconfig.json +8 -0
  827. package/repos/effect/packages/atom/react/vitest.config.ts +9 -0
  828. package/repos/effect/packages/atom/react/vitest.setup.ts +8 -0
  829. package/repos/effect/packages/atom/solid/CHANGELOG.md +595 -0
  830. package/repos/effect/packages/atom/solid/LICENSE +21 -0
  831. package/repos/effect/packages/atom/solid/README.md +7 -0
  832. package/repos/effect/packages/atom/solid/docgen.json +26 -0
  833. package/repos/effect/packages/atom/solid/package.json +72 -0
  834. package/repos/effect/packages/atom/solid/src/Hooks.ts +359 -0
  835. package/repos/effect/packages/atom/solid/src/RegistryContext.ts +80 -0
  836. package/repos/effect/packages/atom/solid/src/index.ts +13 -0
  837. package/repos/effect/packages/atom/solid/test/index.test.tsx +296 -0
  838. package/repos/effect/packages/atom/solid/tsconfig.json +8 -0
  839. package/repos/effect/packages/atom/solid/vitest.config.ts +15 -0
  840. package/repos/effect/packages/atom/solid/vitest.setup.ts +8 -0
  841. package/repos/effect/packages/atom/vue/CHANGELOG.md +593 -0
  842. package/repos/effect/packages/atom/vue/LICENSE +21 -0
  843. package/repos/effect/packages/atom/vue/README.md +7 -0
  844. package/repos/effect/packages/atom/vue/docgen.json +24 -0
  845. package/repos/effect/packages/atom/vue/package.json +68 -0
  846. package/repos/effect/packages/atom/vue/src/index.ts +211 -0
  847. package/repos/effect/packages/atom/vue/test/index.test.ts +5 -0
  848. package/repos/effect/packages/atom/vue/tsconfig.json +14 -0
  849. package/repos/effect/packages/atom/vue/vitest.config.ts +8 -0
  850. package/repos/effect/packages/effect/CHANGELOG.md +1607 -0
  851. package/repos/effect/packages/effect/CONFIG.md +690 -0
  852. package/repos/effect/packages/effect/HTTPAPI.md +3213 -0
  853. package/repos/effect/packages/effect/LICENSE +21 -0
  854. package/repos/effect/packages/effect/MCP.md +369 -0
  855. package/repos/effect/packages/effect/OPTIC.md +620 -0
  856. package/repos/effect/packages/effect/README.md +53 -0
  857. package/repos/effect/packages/effect/SCHEMA.md +7284 -0
  858. package/repos/effect/packages/effect/benchmark/schema/Enums.ts +40 -0
  859. package/repos/effect/packages/effect/benchmark/schema/Optic.ts +79 -0
  860. package/repos/effect/packages/effect/benchmark/schema/array.ts +74 -0
  861. package/repos/effect/packages/effect/benchmark/schema/filter.ts +74 -0
  862. package/repos/effect/packages/effect/benchmark/schema/object.ts +82 -0
  863. package/repos/effect/packages/effect/benchmark/schema/tagged-union.ts +69 -0
  864. package/repos/effect/packages/effect/benchmark/schema/transformation.ts +91 -0
  865. package/repos/effect/packages/effect/benchmark/stream/splitLines.ts +46 -0
  866. package/repos/effect/packages/effect/docgen.json +38 -0
  867. package/repos/effect/packages/effect/package.json +127 -0
  868. package/repos/effect/packages/effect/src/Array.ts +4908 -0
  869. package/repos/effect/packages/effect/src/BigDecimal.ts +1943 -0
  870. package/repos/effect/packages/effect/src/BigInt.ts +1029 -0
  871. package/repos/effect/packages/effect/src/Boolean.ts +481 -0
  872. package/repos/effect/packages/effect/src/Brand.ts +318 -0
  873. package/repos/effect/packages/effect/src/Cache.ts +1295 -0
  874. package/repos/effect/packages/effect/src/Cause.ts +1939 -0
  875. package/repos/effect/packages/effect/src/Channel.ts +8615 -0
  876. package/repos/effect/packages/effect/src/ChannelSchema.ts +308 -0
  877. package/repos/effect/packages/effect/src/Chunk.ts +2976 -0
  878. package/repos/effect/packages/effect/src/Clock.ts +194 -0
  879. package/repos/effect/packages/effect/src/Combiner.ts +316 -0
  880. package/repos/effect/packages/effect/src/Config.ts +1416 -0
  881. package/repos/effect/packages/effect/src/ConfigProvider.ts +1159 -0
  882. package/repos/effect/packages/effect/src/Console.ts +653 -0
  883. package/repos/effect/packages/effect/src/Context.ts +1339 -0
  884. package/repos/effect/packages/effect/src/Cron.ts +1212 -0
  885. package/repos/effect/packages/effect/src/Crypto.ts +318 -0
  886. package/repos/effect/packages/effect/src/Data.ts +774 -0
  887. package/repos/effect/packages/effect/src/DateTime.ts +2922 -0
  888. package/repos/effect/packages/effect/src/Deferred.ts +917 -0
  889. package/repos/effect/packages/effect/src/Differ.ts +32 -0
  890. package/repos/effect/packages/effect/src/Duration.ts +1827 -0
  891. package/repos/effect/packages/effect/src/Effect.ts +15347 -0
  892. package/repos/effect/packages/effect/src/Effectable.ts +68 -0
  893. package/repos/effect/packages/effect/src/Encoding.ts +1046 -0
  894. package/repos/effect/packages/effect/src/Equal.ts +550 -0
  895. package/repos/effect/packages/effect/src/Equivalence.ts +870 -0
  896. package/repos/effect/packages/effect/src/ErrorReporter.ts +543 -0
  897. package/repos/effect/packages/effect/src/ExecutionPlan.ts +416 -0
  898. package/repos/effect/packages/effect/src/Exit.ts +1085 -0
  899. package/repos/effect/packages/effect/src/Fiber.ts +632 -0
  900. package/repos/effect/packages/effect/src/FiberHandle.ts +815 -0
  901. package/repos/effect/packages/effect/src/FiberMap.ts +1030 -0
  902. package/repos/effect/packages/effect/src/FiberSet.ts +713 -0
  903. package/repos/effect/packages/effect/src/FileSystem.ts +1394 -0
  904. package/repos/effect/packages/effect/src/Filter.ts +827 -0
  905. package/repos/effect/packages/effect/src/Formatter.ts +319 -0
  906. package/repos/effect/packages/effect/src/Function.ts +1415 -0
  907. package/repos/effect/packages/effect/src/Graph.ts +4892 -0
  908. package/repos/effect/packages/effect/src/HKT.ts +213 -0
  909. package/repos/effect/packages/effect/src/Hash.ts +539 -0
  910. package/repos/effect/packages/effect/src/HashMap.ts +1236 -0
  911. package/repos/effect/packages/effect/src/HashRing.ts +426 -0
  912. package/repos/effect/packages/effect/src/HashSet.ts +605 -0
  913. package/repos/effect/packages/effect/src/Inspectable.ts +329 -0
  914. package/repos/effect/packages/effect/src/Iterable.ts +2483 -0
  915. package/repos/effect/packages/effect/src/JsonPatch.ts +469 -0
  916. package/repos/effect/packages/effect/src/JsonPointer.ts +80 -0
  917. package/repos/effect/packages/effect/src/JsonSchema.ts +948 -0
  918. package/repos/effect/packages/effect/src/Latch.ts +373 -0
  919. package/repos/effect/packages/effect/src/Layer.ts +2773 -0
  920. package/repos/effect/packages/effect/src/LayerMap.ts +468 -0
  921. package/repos/effect/packages/effect/src/LogLevel.ts +412 -0
  922. package/repos/effect/packages/effect/src/Logger.ts +1284 -0
  923. package/repos/effect/packages/effect/src/ManagedRuntime.ts +381 -0
  924. package/repos/effect/packages/effect/src/Match.ts +2606 -0
  925. package/repos/effect/packages/effect/src/Metric.ts +4058 -0
  926. package/repos/effect/packages/effect/src/MutableHashMap.ts +845 -0
  927. package/repos/effect/packages/effect/src/MutableHashSet.ts +422 -0
  928. package/repos/effect/packages/effect/src/MutableList.ts +967 -0
  929. package/repos/effect/packages/effect/src/MutableRef.ts +822 -0
  930. package/repos/effect/packages/effect/src/Newtype.ts +319 -0
  931. package/repos/effect/packages/effect/src/NonEmptyIterable.ts +221 -0
  932. package/repos/effect/packages/effect/src/Number.ts +860 -0
  933. package/repos/effect/packages/effect/src/Optic.ts +1701 -0
  934. package/repos/effect/packages/effect/src/Option.ts +2664 -0
  935. package/repos/effect/packages/effect/src/Order.ts +982 -0
  936. package/repos/effect/packages/effect/src/Ordering.ts +182 -0
  937. package/repos/effect/packages/effect/src/PartitionedSemaphore.ts +561 -0
  938. package/repos/effect/packages/effect/src/Path.ts +870 -0
  939. package/repos/effect/packages/effect/src/Pipeable.ts +674 -0
  940. package/repos/effect/packages/effect/src/PlatformError.ts +221 -0
  941. package/repos/effect/packages/effect/src/Pool.ts +699 -0
  942. package/repos/effect/packages/effect/src/Predicate.ts +1872 -0
  943. package/repos/effect/packages/effect/src/PrimaryKey.ts +123 -0
  944. package/repos/effect/packages/effect/src/PubSub.ts +2797 -0
  945. package/repos/effect/packages/effect/src/Pull.ts +376 -0
  946. package/repos/effect/packages/effect/src/Queue.ts +1962 -0
  947. package/repos/effect/packages/effect/src/Random.ts +549 -0
  948. package/repos/effect/packages/effect/src/RcMap.ts +612 -0
  949. package/repos/effect/packages/effect/src/RcRef.ts +225 -0
  950. package/repos/effect/packages/effect/src/Record.ts +1563 -0
  951. package/repos/effect/packages/effect/src/Redactable.ts +168 -0
  952. package/repos/effect/packages/effect/src/Redacted.ts +314 -0
  953. package/repos/effect/packages/effect/src/Reducer.ts +178 -0
  954. package/repos/effect/packages/effect/src/Ref.ts +801 -0
  955. package/repos/effect/packages/effect/src/References.ts +786 -0
  956. package/repos/effect/packages/effect/src/RegExp.ts +82 -0
  957. package/repos/effect/packages/effect/src/Request.ts +598 -0
  958. package/repos/effect/packages/effect/src/RequestResolver.ts +1249 -0
  959. package/repos/effect/packages/effect/src/Resource.ts +184 -0
  960. package/repos/effect/packages/effect/src/Result.ts +1939 -0
  961. package/repos/effect/packages/effect/src/Runtime.ts +432 -0
  962. package/repos/effect/packages/effect/src/Schedule.ts +3564 -0
  963. package/repos/effect/packages/effect/src/Scheduler.ts +285 -0
  964. package/repos/effect/packages/effect/src/Schema.ts +14653 -0
  965. package/repos/effect/packages/effect/src/SchemaAST.ts +3903 -0
  966. package/repos/effect/packages/effect/src/SchemaGetter.ts +1870 -0
  967. package/repos/effect/packages/effect/src/SchemaIssue.ts +1176 -0
  968. package/repos/effect/packages/effect/src/SchemaParser.ts +1105 -0
  969. package/repos/effect/packages/effect/src/SchemaRepresentation.ts +3944 -0
  970. package/repos/effect/packages/effect/src/SchemaTransformation.ts +1818 -0
  971. package/repos/effect/packages/effect/src/SchemaUtils.ts +51 -0
  972. package/repos/effect/packages/effect/src/Scope.ts +572 -0
  973. package/repos/effect/packages/effect/src/ScopedCache.ts +820 -0
  974. package/repos/effect/packages/effect/src/ScopedRef.ts +192 -0
  975. package/repos/effect/packages/effect/src/Semaphore.ts +517 -0
  976. package/repos/effect/packages/effect/src/Sink.ts +2174 -0
  977. package/repos/effect/packages/effect/src/Stdio.ts +143 -0
  978. package/repos/effect/packages/effect/src/Stream.ts +11722 -0
  979. package/repos/effect/packages/effect/src/String.ts +1427 -0
  980. package/repos/effect/packages/effect/src/Struct.ts +979 -0
  981. package/repos/effect/packages/effect/src/SubscriptionRef.ts +1021 -0
  982. package/repos/effect/packages/effect/src/Symbol.ts +31 -0
  983. package/repos/effect/packages/effect/src/SynchronizedRef.ts +668 -0
  984. package/repos/effect/packages/effect/src/Take.ts +46 -0
  985. package/repos/effect/packages/effect/src/Terminal.ts +188 -0
  986. package/repos/effect/packages/effect/src/Tracer.ts +683 -0
  987. package/repos/effect/packages/effect/src/Trie.ts +953 -0
  988. package/repos/effect/packages/effect/src/Tuple.ts +737 -0
  989. package/repos/effect/packages/effect/src/TxChunk.ts +822 -0
  990. package/repos/effect/packages/effect/src/TxDeferred.ts +319 -0
  991. package/repos/effect/packages/effect/src/TxHashMap.ts +2165 -0
  992. package/repos/effect/packages/effect/src/TxHashSet.ts +908 -0
  993. package/repos/effect/packages/effect/src/TxPriorityQueue.ts +567 -0
  994. package/repos/effect/packages/effect/src/TxPubSub.ts +684 -0
  995. package/repos/effect/packages/effect/src/TxQueue.ts +1488 -0
  996. package/repos/effect/packages/effect/src/TxReentrantLock.ts +655 -0
  997. package/repos/effect/packages/effect/src/TxRef.ts +282 -0
  998. package/repos/effect/packages/effect/src/TxSemaphore.ts +707 -0
  999. package/repos/effect/packages/effect/src/TxSubscriptionRef.ts +518 -0
  1000. package/repos/effect/packages/effect/src/Types.ts +1121 -0
  1001. package/repos/effect/packages/effect/src/UndefinedOr.ts +239 -0
  1002. package/repos/effect/packages/effect/src/Unify.ts +314 -0
  1003. package/repos/effect/packages/effect/src/Utils.ts +221 -0
  1004. package/repos/effect/packages/effect/src/index.ts +712 -0
  1005. package/repos/effect/packages/effect/src/internal/array.ts +8 -0
  1006. package/repos/effect/packages/effect/src/internal/concurrency.ts +52 -0
  1007. package/repos/effect/packages/effect/src/internal/core.ts +666 -0
  1008. package/repos/effect/packages/effect/src/internal/dateTime.ts +1264 -0
  1009. package/repos/effect/packages/effect/src/internal/doNotation.ts +117 -0
  1010. package/repos/effect/packages/effect/src/internal/effect.ts +6427 -0
  1011. package/repos/effect/packages/effect/src/internal/equal.ts +28 -0
  1012. package/repos/effect/packages/effect/src/internal/errors.ts +9 -0
  1013. package/repos/effect/packages/effect/src/internal/executionPlan.ts +120 -0
  1014. package/repos/effect/packages/effect/src/internal/hashMap.ts +1309 -0
  1015. package/repos/effect/packages/effect/src/internal/hashSet.ts +190 -0
  1016. package/repos/effect/packages/effect/src/internal/layer.ts +88 -0
  1017. package/repos/effect/packages/effect/src/internal/matcher.ts +637 -0
  1018. package/repos/effect/packages/effect/src/internal/metric.ts +2 -0
  1019. package/repos/effect/packages/effect/src/internal/option.ts +98 -0
  1020. package/repos/effect/packages/effect/src/internal/random.ts +20 -0
  1021. package/repos/effect/packages/effect/src/internal/rcRef.ts +189 -0
  1022. package/repos/effect/packages/effect/src/internal/record.ts +18 -0
  1023. package/repos/effect/packages/effect/src/internal/redacted.ts +19 -0
  1024. package/repos/effect/packages/effect/src/internal/references.ts +72 -0
  1025. package/repos/effect/packages/effect/src/internal/request.ts +205 -0
  1026. package/repos/effect/packages/effect/src/internal/result.ts +112 -0
  1027. package/repos/effect/packages/effect/src/internal/schedule.ts +248 -0
  1028. package/repos/effect/packages/effect/src/internal/schema/annotations.ts +37 -0
  1029. package/repos/effect/packages/effect/src/internal/schema/arbitrary.ts +894 -0
  1030. package/repos/effect/packages/effect/src/internal/schema/cause.ts +26 -0
  1031. package/repos/effect/packages/effect/src/internal/schema/equivalence.ts +154 -0
  1032. package/repos/effect/packages/effect/src/internal/schema/representation.ts +799 -0
  1033. package/repos/effect/packages/effect/src/internal/schema/schema.ts +128 -0
  1034. package/repos/effect/packages/effect/src/internal/stream.ts +28 -0
  1035. package/repos/effect/packages/effect/src/internal/tracer.ts +41 -0
  1036. package/repos/effect/packages/effect/src/internal/trie.ts +733 -0
  1037. package/repos/effect/packages/effect/src/internal/version.ts +2 -0
  1038. package/repos/effect/packages/effect/src/testing/FastCheck.ts +89 -0
  1039. package/repos/effect/packages/effect/src/testing/TestClock.ts +547 -0
  1040. package/repos/effect/packages/effect/src/testing/TestConsole.ts +369 -0
  1041. package/repos/effect/packages/effect/src/testing/TestSchema.ts +567 -0
  1042. package/repos/effect/packages/effect/src/testing/index.ts +25 -0
  1043. package/repos/effect/packages/effect/src/unstable/ai/AiError.ts +1629 -0
  1044. package/repos/effect/packages/effect/src/unstable/ai/AnthropicStructuredOutput.ts +407 -0
  1045. package/repos/effect/packages/effect/src/unstable/ai/Chat.ts +931 -0
  1046. package/repos/effect/packages/effect/src/unstable/ai/EmbeddingModel.ts +269 -0
  1047. package/repos/effect/packages/effect/src/unstable/ai/IdGenerator.ts +300 -0
  1048. package/repos/effect/packages/effect/src/unstable/ai/LanguageModel.ts +2221 -0
  1049. package/repos/effect/packages/effect/src/unstable/ai/McpSchema.ts +2527 -0
  1050. package/repos/effect/packages/effect/src/unstable/ai/McpServer.ts +1468 -0
  1051. package/repos/effect/packages/effect/src/unstable/ai/Model.ts +166 -0
  1052. package/repos/effect/packages/effect/src/unstable/ai/OpenAiStructuredOutput.ts +476 -0
  1053. package/repos/effect/packages/effect/src/unstable/ai/Prompt.ts +2234 -0
  1054. package/repos/effect/packages/effect/src/unstable/ai/Response.ts +2582 -0
  1055. package/repos/effect/packages/effect/src/unstable/ai/ResponseIdTracker.ts +139 -0
  1056. package/repos/effect/packages/effect/src/unstable/ai/Telemetry.ts +515 -0
  1057. package/repos/effect/packages/effect/src/unstable/ai/Tokenizer.ts +176 -0
  1058. package/repos/effect/packages/effect/src/unstable/ai/Tool.ts +2003 -0
  1059. package/repos/effect/packages/effect/src/unstable/ai/Toolkit.ts +554 -0
  1060. package/repos/effect/packages/effect/src/unstable/ai/index.ts +90 -0
  1061. package/repos/effect/packages/effect/src/unstable/ai/internal/codec-transformer.ts +13 -0
  1062. package/repos/effect/packages/effect/src/unstable/cli/Argument.ts +749 -0
  1063. package/repos/effect/packages/effect/src/unstable/cli/CliError.ts +549 -0
  1064. package/repos/effect/packages/effect/src/unstable/cli/CliOutput.ts +607 -0
  1065. package/repos/effect/packages/effect/src/unstable/cli/Command.ts +1610 -0
  1066. package/repos/effect/packages/effect/src/unstable/cli/Completions.ts +123 -0
  1067. package/repos/effect/packages/effect/src/unstable/cli/Flag.ts +986 -0
  1068. package/repos/effect/packages/effect/src/unstable/cli/GlobalFlag.ts +295 -0
  1069. package/repos/effect/packages/effect/src/unstable/cli/HelpDoc.ts +323 -0
  1070. package/repos/effect/packages/effect/src/unstable/cli/Param.ts +2193 -0
  1071. package/repos/effect/packages/effect/src/unstable/cli/Primitive.ts +766 -0
  1072. package/repos/effect/packages/effect/src/unstable/cli/Prompt.ts +3852 -0
  1073. package/repos/effect/packages/effect/src/unstable/cli/SEMANTICS.md +157 -0
  1074. package/repos/effect/packages/effect/src/unstable/cli/index.ts +60 -0
  1075. package/repos/effect/packages/effect/src/unstable/cli/internal/ansi.ts +152 -0
  1076. package/repos/effect/packages/effect/src/unstable/cli/internal/auto-suggest.ts +41 -0
  1077. package/repos/effect/packages/effect/src/unstable/cli/internal/command.ts +340 -0
  1078. package/repos/effect/packages/effect/src/unstable/cli/internal/completions/bash.ts +222 -0
  1079. package/repos/effect/packages/effect/src/unstable/cli/internal/completions/descriptor.ts +133 -0
  1080. package/repos/effect/packages/effect/src/unstable/cli/internal/completions/fish.ts +253 -0
  1081. package/repos/effect/packages/effect/src/unstable/cli/internal/completions/zsh.ts +220 -0
  1082. package/repos/effect/packages/effect/src/unstable/cli/internal/config.ts +272 -0
  1083. package/repos/effect/packages/effect/src/unstable/cli/internal/help.ts +181 -0
  1084. package/repos/effect/packages/effect/src/unstable/cli/internal/lexer.ts +70 -0
  1085. package/repos/effect/packages/effect/src/unstable/cli/internal/parser.ts +932 -0
  1086. package/repos/effect/packages/effect/src/unstable/cluster/ClusterCron.ts +163 -0
  1087. package/repos/effect/packages/effect/src/unstable/cluster/ClusterError.ts +238 -0
  1088. package/repos/effect/packages/effect/src/unstable/cluster/ClusterMetrics.ts +112 -0
  1089. package/repos/effect/packages/effect/src/unstable/cluster/ClusterSchema.ts +170 -0
  1090. package/repos/effect/packages/effect/src/unstable/cluster/ClusterWorkflowEngine.ts +778 -0
  1091. package/repos/effect/packages/effect/src/unstable/cluster/DeliverAt.ts +58 -0
  1092. package/repos/effect/packages/effect/src/unstable/cluster/Entity.ts +779 -0
  1093. package/repos/effect/packages/effect/src/unstable/cluster/EntityAddress.ts +93 -0
  1094. package/repos/effect/packages/effect/src/unstable/cluster/EntityId.ts +50 -0
  1095. package/repos/effect/packages/effect/src/unstable/cluster/EntityProxy.ts +263 -0
  1096. package/repos/effect/packages/effect/src/unstable/cluster/EntityProxyServer.ts +149 -0
  1097. package/repos/effect/packages/effect/src/unstable/cluster/EntityResource.ts +184 -0
  1098. package/repos/effect/packages/effect/src/unstable/cluster/EntityType.ts +52 -0
  1099. package/repos/effect/packages/effect/src/unstable/cluster/Envelope.ts +433 -0
  1100. package/repos/effect/packages/effect/src/unstable/cluster/HttpRunner.ts +345 -0
  1101. package/repos/effect/packages/effect/src/unstable/cluster/K8sHttpClient.ts +297 -0
  1102. package/repos/effect/packages/effect/src/unstable/cluster/MachineId.ts +54 -0
  1103. package/repos/effect/packages/effect/src/unstable/cluster/Message.ts +314 -0
  1104. package/repos/effect/packages/effect/src/unstable/cluster/MessageStorage.ts +1072 -0
  1105. package/repos/effect/packages/effect/src/unstable/cluster/Reply.ts +455 -0
  1106. package/repos/effect/packages/effect/src/unstable/cluster/Runner.ts +129 -0
  1107. package/repos/effect/packages/effect/src/unstable/cluster/RunnerAddress.ts +112 -0
  1108. package/repos/effect/packages/effect/src/unstable/cluster/RunnerHealth.ts +145 -0
  1109. package/repos/effect/packages/effect/src/unstable/cluster/RunnerServer.ts +220 -0
  1110. package/repos/effect/packages/effect/src/unstable/cluster/RunnerStorage.ts +243 -0
  1111. package/repos/effect/packages/effect/src/unstable/cluster/Runners.ts +690 -0
  1112. package/repos/effect/packages/effect/src/unstable/cluster/ShardId.ts +178 -0
  1113. package/repos/effect/packages/effect/src/unstable/cluster/Sharding.ts +1488 -0
  1114. package/repos/effect/packages/effect/src/unstable/cluster/ShardingConfig.ts +367 -0
  1115. package/repos/effect/packages/effect/src/unstable/cluster/ShardingRegistrationEvent.ts +76 -0
  1116. package/repos/effect/packages/effect/src/unstable/cluster/SingleRunner.ts +75 -0
  1117. package/repos/effect/packages/effect/src/unstable/cluster/Singleton.ts +56 -0
  1118. package/repos/effect/packages/effect/src/unstable/cluster/SingletonAddress.ts +49 -0
  1119. package/repos/effect/packages/effect/src/unstable/cluster/Snowflake.ts +282 -0
  1120. package/repos/effect/packages/effect/src/unstable/cluster/SocketRunner.ts +96 -0
  1121. package/repos/effect/packages/effect/src/unstable/cluster/SqlMessageStorage.ts +1045 -0
  1122. package/repos/effect/packages/effect/src/unstable/cluster/SqlRunnerStorage.ts +700 -0
  1123. package/repos/effect/packages/effect/src/unstable/cluster/TestRunner.ts +36 -0
  1124. package/repos/effect/packages/effect/src/unstable/cluster/index.ts +195 -0
  1125. package/repos/effect/packages/effect/src/unstable/cluster/internal/entityManager.ts +678 -0
  1126. package/repos/effect/packages/effect/src/unstable/cluster/internal/entityReaper.ts +58 -0
  1127. package/repos/effect/packages/effect/src/unstable/cluster/internal/hash.ts +23 -0
  1128. package/repos/effect/packages/effect/src/unstable/cluster/internal/interruptors.ts +2 -0
  1129. package/repos/effect/packages/effect/src/unstable/cluster/internal/resourceMap.ts +100 -0
  1130. package/repos/effect/packages/effect/src/unstable/cluster/internal/resourceRef.ts +99 -0
  1131. package/repos/effect/packages/effect/src/unstable/devtools/DevTools.ts +68 -0
  1132. package/repos/effect/packages/effect/src/unstable/devtools/DevToolsClient.ts +236 -0
  1133. package/repos/effect/packages/effect/src/unstable/devtools/DevToolsSchema.ts +558 -0
  1134. package/repos/effect/packages/effect/src/unstable/devtools/DevToolsServer.ts +94 -0
  1135. package/repos/effect/packages/effect/src/unstable/devtools/index.ts +25 -0
  1136. package/repos/effect/packages/effect/src/unstable/encoding/Msgpack.ts +383 -0
  1137. package/repos/effect/packages/effect/src/unstable/encoding/Ndjson.ts +602 -0
  1138. package/repos/effect/packages/effect/src/unstable/encoding/Sse.ts +593 -0
  1139. package/repos/effect/packages/effect/src/unstable/encoding/index.ts +20 -0
  1140. package/repos/effect/packages/effect/src/unstable/eventlog/Event.ts +447 -0
  1141. package/repos/effect/packages/effect/src/unstable/eventlog/EventGroup.ts +193 -0
  1142. package/repos/effect/packages/effect/src/unstable/eventlog/EventJournal.ts +795 -0
  1143. package/repos/effect/packages/effect/src/unstable/eventlog/EventLog.ts +1030 -0
  1144. package/repos/effect/packages/effect/src/unstable/eventlog/EventLogEncryption.ts +169 -0
  1145. package/repos/effect/packages/effect/src/unstable/eventlog/EventLogMessage.ts +354 -0
  1146. package/repos/effect/packages/effect/src/unstable/eventlog/EventLogRemote.ts +377 -0
  1147. package/repos/effect/packages/effect/src/unstable/eventlog/EventLogServer.ts +242 -0
  1148. package/repos/effect/packages/effect/src/unstable/eventlog/EventLogServerEncrypted.ts +268 -0
  1149. package/repos/effect/packages/effect/src/unstable/eventlog/EventLogServerUnencrypted.ts +898 -0
  1150. package/repos/effect/packages/effect/src/unstable/eventlog/EventLogSessionAuth.ts +524 -0
  1151. package/repos/effect/packages/effect/src/unstable/eventlog/SqlEventJournal.ts +353 -0
  1152. package/repos/effect/packages/effect/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +343 -0
  1153. package/repos/effect/packages/effect/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +527 -0
  1154. package/repos/effect/packages/effect/src/unstable/eventlog/index.ts +75 -0
  1155. package/repos/effect/packages/effect/src/unstable/eventlog/internal/identityRootSecretDerivation.ts +153 -0
  1156. package/repos/effect/packages/effect/src/unstable/http/Cookies.ts +952 -0
  1157. package/repos/effect/packages/effect/src/unstable/http/Etag.ts +141 -0
  1158. package/repos/effect/packages/effect/src/unstable/http/FetchHttpClient.ts +123 -0
  1159. package/repos/effect/packages/effect/src/unstable/http/FindMyWay.ts +15 -0
  1160. package/repos/effect/packages/effect/src/unstable/http/Headers.ts +438 -0
  1161. package/repos/effect/packages/effect/src/unstable/http/HttpBody.ts +545 -0
  1162. package/repos/effect/packages/effect/src/unstable/http/HttpClient.ts +1630 -0
  1163. package/repos/effect/packages/effect/src/unstable/http/HttpClientError.ts +328 -0
  1164. package/repos/effect/packages/effect/src/unstable/http/HttpClientRequest.ts +968 -0
  1165. package/repos/effect/packages/effect/src/unstable/http/HttpClientResponse.ts +408 -0
  1166. package/repos/effect/packages/effect/src/unstable/http/HttpEffect.ts +400 -0
  1167. package/repos/effect/packages/effect/src/unstable/http/HttpIncomingMessage.ts +153 -0
  1168. package/repos/effect/packages/effect/src/unstable/http/HttpMethod.ts +124 -0
  1169. package/repos/effect/packages/effect/src/unstable/http/HttpMiddleware.ts +394 -0
  1170. package/repos/effect/packages/effect/src/unstable/http/HttpPlatform.ts +165 -0
  1171. package/repos/effect/packages/effect/src/unstable/http/HttpRouter.ts +1341 -0
  1172. package/repos/effect/packages/effect/src/unstable/http/HttpServer.ts +329 -0
  1173. package/repos/effect/packages/effect/src/unstable/http/HttpServerError.ts +374 -0
  1174. package/repos/effect/packages/effect/src/unstable/http/HttpServerRequest.ts +1081 -0
  1175. package/repos/effect/packages/effect/src/unstable/http/HttpServerRespondable.ts +115 -0
  1176. package/repos/effect/packages/effect/src/unstable/http/HttpServerResponse.ts +1381 -0
  1177. package/repos/effect/packages/effect/src/unstable/http/HttpStaticServer.ts +464 -0
  1178. package/repos/effect/packages/effect/src/unstable/http/HttpTraceContext.ts +160 -0
  1179. package/repos/effect/packages/effect/src/unstable/http/Multipart.ts +830 -0
  1180. package/repos/effect/packages/effect/src/unstable/http/Multipasta/HeadersParser.ts +14 -0
  1181. package/repos/effect/packages/effect/src/unstable/http/Multipasta/Node.ts +14 -0
  1182. package/repos/effect/packages/effect/src/unstable/http/Multipasta/Search.ts +14 -0
  1183. package/repos/effect/packages/effect/src/unstable/http/Multipasta/Web.ts +14 -0
  1184. package/repos/effect/packages/effect/src/unstable/http/Multipasta.ts +15 -0
  1185. package/repos/effect/packages/effect/src/unstable/http/Template.ts +262 -0
  1186. package/repos/effect/packages/effect/src/unstable/http/Url.ts +330 -0
  1187. package/repos/effect/packages/effect/src/unstable/http/UrlParams.ts +678 -0
  1188. package/repos/effect/packages/effect/src/unstable/http/index.ts +145 -0
  1189. package/repos/effect/packages/effect/src/unstable/http/internal/preResponseHandler.ts +15 -0
  1190. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApi.ts +316 -0
  1191. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiBuilder.ts +1015 -0
  1192. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiClient.ts +1005 -0
  1193. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiEndpoint.ts +1545 -0
  1194. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiError.ts +443 -0
  1195. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiGroup.ts +381 -0
  1196. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiMiddleware.ts +478 -0
  1197. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiScalar.ts +267 -0
  1198. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiSchema.ts +733 -0
  1199. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiSecurity.ts +244 -0
  1200. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiSwagger.ts +68 -0
  1201. package/repos/effect/packages/effect/src/unstable/httpapi/HttpApiTest.ts +112 -0
  1202. package/repos/effect/packages/effect/src/unstable/httpapi/OpenApi.ts +1098 -0
  1203. package/repos/effect/packages/effect/src/unstable/httpapi/index.ts +70 -0
  1204. package/repos/effect/packages/effect/src/unstable/httpapi/internal/html.ts +18 -0
  1205. package/repos/effect/packages/effect/src/unstable/httpapi/internal/httpApiScalar.ts +5 -0
  1206. package/repos/effect/packages/effect/src/unstable/httpapi/internal/httpApiSwagger.ts +9 -0
  1207. package/repos/effect/packages/effect/src/unstable/observability/Otlp.ts +172 -0
  1208. package/repos/effect/packages/effect/src/unstable/observability/OtlpExporter.ts +149 -0
  1209. package/repos/effect/packages/effect/src/unstable/observability/OtlpLogger.ts +340 -0
  1210. package/repos/effect/packages/effect/src/unstable/observability/OtlpMetrics.ts +826 -0
  1211. package/repos/effect/packages/effect/src/unstable/observability/OtlpResource.ts +288 -0
  1212. package/repos/effect/packages/effect/src/unstable/observability/OtlpSerialization.ts +66 -0
  1213. package/repos/effect/packages/effect/src/unstable/observability/OtlpTracer.ts +442 -0
  1214. package/repos/effect/packages/effect/src/unstable/observability/PrometheusMetrics.ts +468 -0
  1215. package/repos/effect/packages/effect/src/unstable/observability/index.ts +45 -0
  1216. package/repos/effect/packages/effect/src/unstable/observability/internal/otlpEnv.ts +39 -0
  1217. package/repos/effect/packages/effect/src/unstable/observability/internal/otlpProtobuf.ts +779 -0
  1218. package/repos/effect/packages/effect/src/unstable/observability/internal/protobuf.ts +262 -0
  1219. package/repos/effect/packages/effect/src/unstable/persistence/KeyValueStore.ts +864 -0
  1220. package/repos/effect/packages/effect/src/unstable/persistence/Persistable.ts +252 -0
  1221. package/repos/effect/packages/effect/src/unstable/persistence/PersistedCache.ts +111 -0
  1222. package/repos/effect/packages/effect/src/unstable/persistence/PersistedQueue.ts +1196 -0
  1223. package/repos/effect/packages/effect/src/unstable/persistence/Persistence.ts +1071 -0
  1224. package/repos/effect/packages/effect/src/unstable/persistence/RateLimiter.ts +748 -0
  1225. package/repos/effect/packages/effect/src/unstable/persistence/Redis.ts +188 -0
  1226. package/repos/effect/packages/effect/src/unstable/persistence/index.ts +40 -0
  1227. package/repos/effect/packages/effect/src/unstable/process/ChildProcess.ts +1036 -0
  1228. package/repos/effect/packages/effect/src/unstable/process/ChildProcessSpawner.ts +285 -0
  1229. package/repos/effect/packages/effect/src/unstable/process/index.ts +15 -0
  1230. package/repos/effect/packages/effect/src/unstable/reactivity/AsyncResult.ts +1081 -0
  1231. package/repos/effect/packages/effect/src/unstable/reactivity/Atom.ts +2520 -0
  1232. package/repos/effect/packages/effect/src/unstable/reactivity/AtomHttpApi.ts +352 -0
  1233. package/repos/effect/packages/effect/src/unstable/reactivity/AtomRef.ts +352 -0
  1234. package/repos/effect/packages/effect/src/unstable/reactivity/AtomRegistry.ts +1127 -0
  1235. package/repos/effect/packages/effect/src/unstable/reactivity/AtomRpc.ts +305 -0
  1236. package/repos/effect/packages/effect/src/unstable/reactivity/Hydration.ts +155 -0
  1237. package/repos/effect/packages/effect/src/unstable/reactivity/Reactivity.ts +348 -0
  1238. package/repos/effect/packages/effect/src/unstable/reactivity/index.ts +45 -0
  1239. package/repos/effect/packages/effect/src/unstable/rpc/Rpc.ts +1255 -0
  1240. package/repos/effect/packages/effect/src/unstable/rpc/RpcClient.ts +1370 -0
  1241. package/repos/effect/packages/effect/src/unstable/rpc/RpcClientError.ts +57 -0
  1242. package/repos/effect/packages/effect/src/unstable/rpc/RpcGroup.ts +409 -0
  1243. package/repos/effect/packages/effect/src/unstable/rpc/RpcMessage.ts +402 -0
  1244. package/repos/effect/packages/effect/src/unstable/rpc/RpcMiddleware.ts +344 -0
  1245. package/repos/effect/packages/effect/src/unstable/rpc/RpcSchema.ts +97 -0
  1246. package/repos/effect/packages/effect/src/unstable/rpc/RpcSerialization.ts +546 -0
  1247. package/repos/effect/packages/effect/src/unstable/rpc/RpcServer.ts +1492 -0
  1248. package/repos/effect/packages/effect/src/unstable/rpc/RpcTest.ts +56 -0
  1249. package/repos/effect/packages/effect/src/unstable/rpc/RpcWorker.ts +118 -0
  1250. package/repos/effect/packages/effect/src/unstable/rpc/Utils.ts +120 -0
  1251. package/repos/effect/packages/effect/src/unstable/rpc/index.ts +65 -0
  1252. package/repos/effect/packages/effect/src/unstable/schema/Model.ts +862 -0
  1253. package/repos/effect/packages/effect/src/unstable/schema/VariantSchema.ts +604 -0
  1254. package/repos/effect/packages/effect/src/unstable/schema/index.ts +15 -0
  1255. package/repos/effect/packages/effect/src/unstable/socket/Socket.ts +911 -0
  1256. package/repos/effect/packages/effect/src/unstable/socket/SocketServer.ts +147 -0
  1257. package/repos/effect/packages/effect/src/unstable/socket/index.ts +15 -0
  1258. package/repos/effect/packages/effect/src/unstable/sql/Migrator.ts +440 -0
  1259. package/repos/effect/packages/effect/src/unstable/sql/SqlClient.ts +342 -0
  1260. package/repos/effect/packages/effect/src/unstable/sql/SqlConnection.ts +83 -0
  1261. package/repos/effect/packages/effect/src/unstable/sql/SqlError.ts +590 -0
  1262. package/repos/effect/packages/effect/src/unstable/sql/SqlModel.ts +359 -0
  1263. package/repos/effect/packages/effect/src/unstable/sql/SqlResolver.ts +380 -0
  1264. package/repos/effect/packages/effect/src/unstable/sql/SqlSchema.ts +172 -0
  1265. package/repos/effect/packages/effect/src/unstable/sql/SqlStream.ts +81 -0
  1266. package/repos/effect/packages/effect/src/unstable/sql/Statement.ts +1500 -0
  1267. package/repos/effect/packages/effect/src/unstable/sql/index.ts +50 -0
  1268. package/repos/effect/packages/effect/src/unstable/workers/Transferable.ts +191 -0
  1269. package/repos/effect/packages/effect/src/unstable/workers/Worker.ts +245 -0
  1270. package/repos/effect/packages/effect/src/unstable/workers/WorkerError.ts +148 -0
  1271. package/repos/effect/packages/effect/src/unstable/workers/WorkerRunner.ts +57 -0
  1272. package/repos/effect/packages/effect/src/unstable/workers/index.ts +25 -0
  1273. package/repos/effect/packages/effect/src/unstable/workflow/Activity.ts +322 -0
  1274. package/repos/effect/packages/effect/src/unstable/workflow/DurableClock.ts +117 -0
  1275. package/repos/effect/packages/effect/src/unstable/workflow/DurableDeferred.ts +653 -0
  1276. package/repos/effect/packages/effect/src/unstable/workflow/DurableQueue.ts +360 -0
  1277. package/repos/effect/packages/effect/src/unstable/workflow/Workflow.ts +898 -0
  1278. package/repos/effect/packages/effect/src/unstable/workflow/WorkflowEngine.ts +759 -0
  1279. package/repos/effect/packages/effect/src/unstable/workflow/WorkflowProxy.ts +212 -0
  1280. package/repos/effect/packages/effect/src/unstable/workflow/WorkflowProxyServer.ts +151 -0
  1281. package/repos/effect/packages/effect/src/unstable/workflow/index.ts +45 -0
  1282. package/repos/effect/packages/effect/src/unstable/workflow/internal/crypto.ts +15 -0
  1283. package/repos/effect/packages/effect/test/Array.test.ts +1579 -0
  1284. package/repos/effect/packages/effect/test/AtomRef.test.ts +27 -0
  1285. package/repos/effect/packages/effect/test/BigDecimal.test.ts +525 -0
  1286. package/repos/effect/packages/effect/test/BigInt.test.ts +57 -0
  1287. package/repos/effect/packages/effect/test/Boolean.test.ts +289 -0
  1288. package/repos/effect/packages/effect/test/Brand.test.ts +160 -0
  1289. package/repos/effect/packages/effect/test/Cache.test.ts +1423 -0
  1290. package/repos/effect/packages/effect/test/Cause.test.ts +834 -0
  1291. package/repos/effect/packages/effect/test/Channel.test.ts +556 -0
  1292. package/repos/effect/packages/effect/test/Chunk.test.ts +874 -0
  1293. package/repos/effect/packages/effect/test/Combiner.test.ts +42 -0
  1294. package/repos/effect/packages/effect/test/Config.test.ts +1416 -0
  1295. package/repos/effect/packages/effect/test/ConfigProvider.test.ts +726 -0
  1296. package/repos/effect/packages/effect/test/Cron.test.ts +401 -0
  1297. package/repos/effect/packages/effect/test/Crypto.test.ts +86 -0
  1298. package/repos/effect/packages/effect/test/Data.test.ts +269 -0
  1299. package/repos/effect/packages/effect/test/DateTime.test.ts +953 -0
  1300. package/repos/effect/packages/effect/test/Deferred.test.ts +165 -0
  1301. package/repos/effect/packages/effect/test/Duration.test.ts +679 -0
  1302. package/repos/effect/packages/effect/test/Effect.test.ts +2658 -0
  1303. package/repos/effect/packages/effect/test/EffectEager.test.ts +678 -0
  1304. package/repos/effect/packages/effect/test/EffectKeepAlive.test.ts +71 -0
  1305. package/repos/effect/packages/effect/test/Equal.test.ts +1278 -0
  1306. package/repos/effect/packages/effect/test/Equivalence.test.ts +170 -0
  1307. package/repos/effect/packages/effect/test/ExecutionPlan.test.ts +117 -0
  1308. package/repos/effect/packages/effect/test/Exit.test.ts +12 -0
  1309. package/repos/effect/packages/effect/test/Fiber.test.ts +9 -0
  1310. package/repos/effect/packages/effect/test/FiberHandle.test.ts +146 -0
  1311. package/repos/effect/packages/effect/test/FiberMap.test.ts +171 -0
  1312. package/repos/effect/packages/effect/test/FiberSet.test.ts +119 -0
  1313. package/repos/effect/packages/effect/test/Formatter.test.ts +247 -0
  1314. package/repos/effect/packages/effect/test/Function.test.ts +333 -0
  1315. package/repos/effect/packages/effect/test/Graph.test.ts +3505 -0
  1316. package/repos/effect/packages/effect/test/HashMap.test.ts +618 -0
  1317. package/repos/effect/packages/effect/test/HashSet.test.ts +298 -0
  1318. package/repos/effect/packages/effect/test/HttpClient.test.ts +131 -0
  1319. package/repos/effect/packages/effect/test/Iterable.test.ts +486 -0
  1320. package/repos/effect/packages/effect/test/JsonPatch.test.ts +948 -0
  1321. package/repos/effect/packages/effect/test/JsonPointer.test.ts +353 -0
  1322. package/repos/effect/packages/effect/test/JsonSchema.test.ts +1253 -0
  1323. package/repos/effect/packages/effect/test/Latch.test.ts +21 -0
  1324. package/repos/effect/packages/effect/test/Layer.test.ts +648 -0
  1325. package/repos/effect/packages/effect/test/LayerMap.test.ts +98 -0
  1326. package/repos/effect/packages/effect/test/LogLevel.test.ts +28 -0
  1327. package/repos/effect/packages/effect/test/Logger.test.ts +154 -0
  1328. package/repos/effect/packages/effect/test/ManagedRuntime.test.ts +58 -0
  1329. package/repos/effect/packages/effect/test/Match.test.ts +27 -0
  1330. package/repos/effect/packages/effect/test/Metric.test.ts +682 -0
  1331. package/repos/effect/packages/effect/test/Migrator.test.ts +69 -0
  1332. package/repos/effect/packages/effect/test/MutableHashMap.test.ts +309 -0
  1333. package/repos/effect/packages/effect/test/MutableHashSet.test.ts +10 -0
  1334. package/repos/effect/packages/effect/test/MutableList.test.ts +58 -0
  1335. package/repos/effect/packages/effect/test/Newtype.test.ts +90 -0
  1336. package/repos/effect/packages/effect/test/Number.test.ts +422 -0
  1337. package/repos/effect/packages/effect/test/Optic.test.ts +452 -0
  1338. package/repos/effect/packages/effect/test/Option.test.ts +564 -0
  1339. package/repos/effect/packages/effect/test/Order.test.ts +163 -0
  1340. package/repos/effect/packages/effect/test/Ordering.test.ts +18 -0
  1341. package/repos/effect/packages/effect/test/PartitionedSemaphore.test.ts +74 -0
  1342. package/repos/effect/packages/effect/test/Pathfinding.test.ts +426 -0
  1343. package/repos/effect/packages/effect/test/Pool.test.ts +422 -0
  1344. package/repos/effect/packages/effect/test/Predicate.test.ts +555 -0
  1345. package/repos/effect/packages/effect/test/PubSub.test.ts +538 -0
  1346. package/repos/effect/packages/effect/test/Queue.test.ts +317 -0
  1347. package/repos/effect/packages/effect/test/Random.test.ts +238 -0
  1348. package/repos/effect/packages/effect/test/RcMap.test.ts +237 -0
  1349. package/repos/effect/packages/effect/test/RcRef.test.ts +97 -0
  1350. package/repos/effect/packages/effect/test/Record.test.ts +395 -0
  1351. package/repos/effect/packages/effect/test/Redacted.test.ts +59 -0
  1352. package/repos/effect/packages/effect/test/Reducer.test.ts +12 -0
  1353. package/repos/effect/packages/effect/test/Ref.test.ts +187 -0
  1354. package/repos/effect/packages/effect/test/Request.test.ts +305 -0
  1355. package/repos/effect/packages/effect/test/Resource.test.ts +59 -0
  1356. package/repos/effect/packages/effect/test/Result.test.ts +517 -0
  1357. package/repos/effect/packages/effect/test/Schedule.test.ts +395 -0
  1358. package/repos/effect/packages/effect/test/Scheduler.test.ts +70 -0
  1359. package/repos/effect/packages/effect/test/Scope.test.ts +19 -0
  1360. package/repos/effect/packages/effect/test/ScopedCache.test.ts +2316 -0
  1361. package/repos/effect/packages/effect/test/ScopedRef.test.ts +80 -0
  1362. package/repos/effect/packages/effect/test/Semaphore.test.ts +469 -0
  1363. package/repos/effect/packages/effect/test/Sink.test.ts +230 -0
  1364. package/repos/effect/packages/effect/test/Stream.test.ts +4712 -0
  1365. package/repos/effect/packages/effect/test/String.test.ts +690 -0
  1366. package/repos/effect/packages/effect/test/Struct.test.ts +216 -0
  1367. package/repos/effect/packages/effect/test/SubscriptionRef.test.ts +90 -0
  1368. package/repos/effect/packages/effect/test/Symbol.test.ts +50 -0
  1369. package/repos/effect/packages/effect/test/SynchronizedRef.test.ts +105 -0
  1370. package/repos/effect/packages/effect/test/TestClock.test.ts +71 -0
  1371. package/repos/effect/packages/effect/test/Tracer.test.ts +410 -0
  1372. package/repos/effect/packages/effect/test/Trie.test.ts +531 -0
  1373. package/repos/effect/packages/effect/test/Tuple.test.ts +127 -0
  1374. package/repos/effect/packages/effect/test/TxChunk.test.ts +342 -0
  1375. package/repos/effect/packages/effect/test/TxDeferred.test.ts +197 -0
  1376. package/repos/effect/packages/effect/test/TxHashMap.test.ts +963 -0
  1377. package/repos/effect/packages/effect/test/TxHashSet.test.ts +442 -0
  1378. package/repos/effect/packages/effect/test/TxPriorityQueue.test.ts +187 -0
  1379. package/repos/effect/packages/effect/test/TxPubSub.test.ts +391 -0
  1380. package/repos/effect/packages/effect/test/TxQueue.test.ts +1260 -0
  1381. package/repos/effect/packages/effect/test/TxReentrantLock.test.ts +413 -0
  1382. package/repos/effect/packages/effect/test/TxSemaphore.test.ts +283 -0
  1383. package/repos/effect/packages/effect/test/TxSubscriptionRef.test.ts +197 -0
  1384. package/repos/effect/packages/effect/test/UndefinedOr.test.ts +65 -0
  1385. package/repos/effect/packages/effect/test/cluster/ClusterWorkflowEngine.test.ts +652 -0
  1386. package/repos/effect/packages/effect/test/cluster/Entity.test.ts +81 -0
  1387. package/repos/effect/packages/effect/test/cluster/K8sHttpClient.test.ts +34 -0
  1388. package/repos/effect/packages/effect/test/cluster/MessageStorage.test.ts +196 -0
  1389. package/repos/effect/packages/effect/test/cluster/Sharding.test.ts +578 -0
  1390. package/repos/effect/packages/effect/test/cluster/TestEntity.ts +132 -0
  1391. package/repos/effect/packages/effect/test/reactivity/AsyncResult.test.ts +41 -0
  1392. package/repos/effect/packages/effect/test/reactivity/Atom.test.ts +2551 -0
  1393. package/repos/effect/packages/effect/test/reactivity/AtomHttpApi.test.ts +86 -0
  1394. package/repos/effect/packages/effect/test/reactivity/AtomRpc.test.ts +70 -0
  1395. package/repos/effect/packages/effect/test/rpc/Rpc.test.ts +73 -0
  1396. package/repos/effect/packages/effect/test/rpc/RpcClient.test.ts +58 -0
  1397. package/repos/effect/packages/effect/test/rpc/RpcSerialization.test.ts +171 -0
  1398. package/repos/effect/packages/effect/test/schema/HMR.test.ts +72 -0
  1399. package/repos/effect/packages/effect/test/schema/Schema.test.ts +9133 -0
  1400. package/repos/effect/packages/effect/test/schema/SchemaAST.test.ts +280 -0
  1401. package/repos/effect/packages/effect/test/schema/SchemaGetter.test.ts +383 -0
  1402. package/repos/effect/packages/effect/test/schema/SchemaIssue.test.ts +9 -0
  1403. package/repos/effect/packages/effect/test/schema/SchemaParser.test.ts +323 -0
  1404. package/repos/effect/packages/effect/test/schema/fixtures/HMR-Class.ts +5 -0
  1405. package/repos/effect/packages/effect/test/schema/fixtures/HMR-sanity-check.ts +3 -0
  1406. package/repos/effect/packages/effect/test/schema/representation/fromASTs.test.ts +820 -0
  1407. package/repos/effect/packages/effect/test/schema/representation/fromJsonSchemaDocument.test.ts +2137 -0
  1408. package/repos/effect/packages/effect/test/schema/representation/toCodeDocument.test.ts +2089 -0
  1409. package/repos/effect/packages/effect/test/schema/representation/toJsonSchemaMultiDocument.test.ts +39 -0
  1410. package/repos/effect/packages/effect/test/schema/representation/toSchema.test.ts +506 -0
  1411. package/repos/effect/packages/effect/test/schema/toArbitrary.test.ts +1693 -0
  1412. package/repos/effect/packages/effect/test/schema/toCodec.test.ts +3149 -0
  1413. package/repos/effect/packages/effect/test/schema/toDifferJsonPatch.test.ts +239 -0
  1414. package/repos/effect/packages/effect/test/schema/toEquivalence.test.ts +519 -0
  1415. package/repos/effect/packages/effect/test/schema/toFormatter.test.ts +565 -0
  1416. package/repos/effect/packages/effect/test/schema/toIso.test.ts +394 -0
  1417. package/repos/effect/packages/effect/test/schema/toJsonSchemaDocument.test.ts +3630 -0
  1418. package/repos/effect/packages/effect/test/schema/toStandardJSONSchemaV1.test.ts +126 -0
  1419. package/repos/effect/packages/effect/test/schema/toStandardSchemaV1.test.ts +495 -0
  1420. package/repos/effect/packages/effect/test/schema/v3-v4.test.ts +250 -0
  1421. package/repos/effect/packages/effect/test/testing/TestSchema.test.ts +78 -0
  1422. package/repos/effect/packages/effect/test/unstable/ai/AiError.test.ts +823 -0
  1423. package/repos/effect/packages/effect/test/unstable/ai/AnthropicStructuredOutput.test.ts +593 -0
  1424. package/repos/effect/packages/effect/test/unstable/ai/Chat.test.ts +147 -0
  1425. package/repos/effect/packages/effect/test/unstable/ai/EmbeddingModel.test.ts +185 -0
  1426. package/repos/effect/packages/effect/test/unstable/ai/LanguageModel.test.ts +1714 -0
  1427. package/repos/effect/packages/effect/test/unstable/ai/LanguageModelTrackerLifecycle.test.ts +413 -0
  1428. package/repos/effect/packages/effect/test/unstable/ai/McpServer.test.ts +82 -0
  1429. package/repos/effect/packages/effect/test/unstable/ai/Model.test.ts +16 -0
  1430. package/repos/effect/packages/effect/test/unstable/ai/OpenAiStructuredOutput.test.ts +723 -0
  1431. package/repos/effect/packages/effect/test/unstable/ai/Prompt.test.ts +346 -0
  1432. package/repos/effect/packages/effect/test/unstable/ai/ResponseIdTracker.test.ts +424 -0
  1433. package/repos/effect/packages/effect/test/unstable/ai/Tool.test.ts +1264 -0
  1434. package/repos/effect/packages/effect/test/unstable/ai/utils.ts +68 -0
  1435. package/repos/effect/packages/effect/test/unstable/cli/Arguments.test.ts +390 -0
  1436. package/repos/effect/packages/effect/test/unstable/cli/Command.test.ts +1801 -0
  1437. package/repos/effect/packages/effect/test/unstable/cli/Errors.test.ts +150 -0
  1438. package/repos/effect/packages/effect/test/unstable/cli/Help.test.ts +572 -0
  1439. package/repos/effect/packages/effect/test/unstable/cli/LogLevel.test.ts +202 -0
  1440. package/repos/effect/packages/effect/test/unstable/cli/Param.test.ts +391 -0
  1441. package/repos/effect/packages/effect/test/unstable/cli/Primitive.test.ts +321 -0
  1442. package/repos/effect/packages/effect/test/unstable/cli/Prompt.test.ts +597 -0
  1443. package/repos/effect/packages/effect/test/unstable/cli/completions/completions.test.ts +656 -0
  1444. package/repos/effect/packages/effect/test/unstable/cli/completions/descriptor.test.ts +245 -0
  1445. package/repos/effect/packages/effect/test/unstable/cli/fixtures/ComprehensiveCli.ts +422 -0
  1446. package/repos/effect/packages/effect/test/unstable/cli/services/MockTerminal.ts +135 -0
  1447. package/repos/effect/packages/effect/test/unstable/cli/services/TestActions.ts +36 -0
  1448. package/repos/effect/packages/effect/test/unstable/encoding/Ndjson.test.ts +18 -0
  1449. package/repos/effect/packages/effect/test/unstable/encoding/Sse.test.ts +62 -0
  1450. package/repos/effect/packages/effect/test/unstable/eventlog/EventJournal.test.ts +25 -0
  1451. package/repos/effect/packages/effect/test/unstable/eventlog/EventLog.test.ts +104 -0
  1452. package/repos/effect/packages/effect/test/unstable/eventlog/EventLogIdentityDerivation.test.ts +85 -0
  1453. package/repos/effect/packages/effect/test/unstable/eventlog/EventLogRemote.test.ts +176 -0
  1454. package/repos/effect/packages/effect/test/unstable/eventlog/EventLogSessionAuth.test.ts +130 -0
  1455. package/repos/effect/packages/effect/test/unstable/eventlog/SqlEventLogServerUnencryptedStorageTest.ts +169 -0
  1456. package/repos/effect/packages/effect/test/unstable/http/Cookies.test.ts +80 -0
  1457. package/repos/effect/packages/effect/test/unstable/http/Headers.test.ts +73 -0
  1458. package/repos/effect/packages/effect/test/unstable/http/HttpClient.test.ts +306 -0
  1459. package/repos/effect/packages/effect/test/unstable/http/HttpClientRequest.test.ts +164 -0
  1460. package/repos/effect/packages/effect/test/unstable/http/HttpEffect.test.ts +254 -0
  1461. package/repos/effect/packages/effect/test/unstable/http/HttpMiddleware.test.ts +57 -0
  1462. package/repos/effect/packages/effect/test/unstable/http/HttpServerError.test.ts +121 -0
  1463. package/repos/effect/packages/effect/test/unstable/http/HttpServerRequest.test.ts +157 -0
  1464. package/repos/effect/packages/effect/test/unstable/http/HttpServerResponse.test.ts +76 -0
  1465. package/repos/effect/packages/effect/test/unstable/http/Multipart.test.ts +69 -0
  1466. package/repos/effect/packages/effect/test/unstable/http/Url.test.ts +98 -0
  1467. package/repos/effect/packages/effect/test/unstable/http/UrlParams.test.ts +30 -0
  1468. package/repos/effect/packages/effect/test/unstable/httpapi/HttpApiBuilder.test.ts +186 -0
  1469. package/repos/effect/packages/effect/test/unstable/httpapi/HttpApiClient.test.ts +446 -0
  1470. package/repos/effect/packages/effect/test/unstable/httpapi/HttpApiEndpoint.test.ts +160 -0
  1471. package/repos/effect/packages/effect/test/unstable/httpapi/HttpApiSchema.test.ts +108 -0
  1472. package/repos/effect/packages/effect/test/unstable/httpapi/HttpApiSecurity.test.ts +41 -0
  1473. package/repos/effect/packages/effect/test/unstable/httpapi/OpenApi.test.ts +39 -0
  1474. package/repos/effect/packages/effect/test/unstable/observability/OtlpConfig.test.ts +151 -0
  1475. package/repos/effect/packages/effect/test/unstable/observability/OtlpExporter.test.ts +108 -0
  1476. package/repos/effect/packages/effect/test/unstable/observability/OtlpMetrics.test.ts +518 -0
  1477. package/repos/effect/packages/effect/test/unstable/observability/OtlpResource.test.ts +84 -0
  1478. package/repos/effect/packages/effect/test/unstable/observability/PrometheusMetrics.test.ts +417 -0
  1479. package/repos/effect/packages/effect/test/unstable/persistence/KeyValueStore.test.ts +164 -0
  1480. package/repos/effect/packages/effect/test/unstable/persistence/KeyValueStoreTest.ts +85 -0
  1481. package/repos/effect/packages/effect/test/unstable/persistence/PersistedCache.test.ts +4 -0
  1482. package/repos/effect/packages/effect/test/unstable/persistence/PersistedCacheTest.ts +111 -0
  1483. package/repos/effect/packages/effect/test/unstable/persistence/PersistedQueue.test.ts +4 -0
  1484. package/repos/effect/packages/effect/test/unstable/persistence/PersistedQueueTest.ts +106 -0
  1485. package/repos/effect/packages/effect/test/unstable/persistence/RateLimiter.test.ts +145 -0
  1486. package/repos/effect/packages/effect/test/unstable/persistence/Redis.test.ts +43 -0
  1487. package/repos/effect/packages/effect/test/unstable/process/ChildProcess.test.ts +352 -0
  1488. package/repos/effect/packages/effect/test/unstable/schema/VariantSchema.test.ts +72 -0
  1489. package/repos/effect/packages/effect/test/unstable/sql/SqlError.test.ts +228 -0
  1490. package/repos/effect/packages/effect/test/unstable/sql/SqlSchema.test.ts +168 -0
  1491. package/repos/effect/packages/effect/test/unstable/workers/WorkerError.test.ts +90 -0
  1492. package/repos/effect/packages/effect/test/unstable/workflow/DurableQueue.test.ts +105 -0
  1493. package/repos/effect/packages/effect/test/unstable/workflow/WorkflowEngine.test.ts +60 -0
  1494. package/repos/effect/packages/effect/test/utils/assert.ts +182 -0
  1495. package/repos/effect/packages/effect/test/utils/chunkCoordination.ts +36 -0
  1496. package/repos/effect/packages/effect/test/utils/counter.ts +54 -0
  1497. package/repos/effect/packages/effect/tsconfig.json +8 -0
  1498. package/repos/effect/packages/effect/typetest/AiError.tst.ts +49 -0
  1499. package/repos/effect/packages/effect/typetest/Array.tst.ts +1289 -0
  1500. package/repos/effect/packages/effect/typetest/Brand.tst.ts +51 -0
  1501. package/repos/effect/packages/effect/typetest/Channel.tst.ts +112 -0
  1502. package/repos/effect/packages/effect/typetest/Config.tst.ts +31 -0
  1503. package/repos/effect/packages/effect/typetest/Data.tst.ts +121 -0
  1504. package/repos/effect/packages/effect/typetest/Effect.tst.ts +976 -0
  1505. package/repos/effect/packages/effect/typetest/Equivalence.tst.ts +19 -0
  1506. package/repos/effect/packages/effect/typetest/Newtype.tst.ts +72 -0
  1507. package/repos/effect/packages/effect/typetest/Optic.tst.ts +130 -0
  1508. package/repos/effect/packages/effect/typetest/Option.tst.ts +72 -0
  1509. package/repos/effect/packages/effect/typetest/Order.tst.ts +19 -0
  1510. package/repos/effect/packages/effect/typetest/Predicate.tst.ts +251 -0
  1511. package/repos/effect/packages/effect/typetest/Result.tst.ts +353 -0
  1512. package/repos/effect/packages/effect/typetest/Schedule.tst.ts +21 -0
  1513. package/repos/effect/packages/effect/typetest/Stream.tst.ts +197 -0
  1514. package/repos/effect/packages/effect/typetest/Struct.tst.ts +422 -0
  1515. package/repos/effect/packages/effect/typetest/Tuple.tst.ts +177 -0
  1516. package/repos/effect/packages/effect/typetest/Types.tst.ts +364 -0
  1517. package/repos/effect/packages/effect/typetest/VariantSchema.tst.ts +76 -0
  1518. package/repos/effect/packages/effect/typetest/schema/Array.tst.ts +46 -0
  1519. package/repos/effect/packages/effect/typetest/schema/Literals.tst.ts +58 -0
  1520. package/repos/effect/packages/effect/typetest/schema/Record.tst.ts +145 -0
  1521. package/repos/effect/packages/effect/typetest/schema/Schema.tst.ts +1854 -0
  1522. package/repos/effect/packages/effect/typetest/schema/Struct.tst.ts +745 -0
  1523. package/repos/effect/packages/effect/typetest/schema/Tuple.tst.ts +199 -0
  1524. package/repos/effect/packages/effect/typetest/schema/Union.tst.ts +198 -0
  1525. package/repos/effect/packages/effect/typetest/schema/api.tst.ts +276 -0
  1526. package/repos/effect/packages/effect/typetest/schema/toArbitrary.tst.ts +65 -0
  1527. package/repos/effect/packages/effect/typetest/schema/toIso.tst.ts +282 -0
  1528. package/repos/effect/packages/effect/typetest/unstable/ai/LanguageModel.tst.ts +191 -0
  1529. package/repos/effect/packages/effect/typetest/unstable/ai/Tool.tst.ts +33 -0
  1530. package/repos/effect/packages/effect/typetest/unstable/cli/Command.tst.ts +124 -0
  1531. package/repos/effect/packages/effect/typetest/unstable/cli/Param.tst.ts +20 -0
  1532. package/repos/effect/packages/effect/typetest/unstable/cli/Prompt.tst.ts +97 -0
  1533. package/repos/effect/packages/effect/typetest/unstable/encoding/Ndjson.tst.ts +24 -0
  1534. package/repos/effect/packages/effect/typetest/unstable/http/HttpClient.tst.ts +143 -0
  1535. package/repos/effect/packages/effect/typetest/unstable/httpapi/HttpApiBuilder.tst.ts +98 -0
  1536. package/repos/effect/packages/effect/typetest/unstable/httpapi/HttpApiClient.tst.ts +677 -0
  1537. package/repos/effect/packages/effect/typetest/unstable/httpapi/HttpApiEndpoint.tst.ts +466 -0
  1538. package/repos/effect/packages/effect/typetest/unstable/httpapi/HttpApiMiddleware.tst.ts +90 -0
  1539. package/repos/effect/packages/effect/typetest/unstable/httpapi/HttpApiSchema.tst.ts +135 -0
  1540. package/repos/effect/packages/effect/typetest/unstable/reactivity/AsyncResult.tst.ts +65 -0
  1541. package/repos/effect/packages/effect/typetest/unstable/reactivity/AtomHttpApi.tst.ts +63 -0
  1542. package/repos/effect/packages/effect/typetest/unstable/rpc/Rpc.tst.ts +74 -0
  1543. package/repos/effect/packages/effect/typetest/unstable/rpc/RpcGroup.tst.ts +61 -0
  1544. package/repos/effect/packages/effect/typetest/unstable/rpc/RpcMiddleware.tst.ts +41 -0
  1545. package/repos/effect/packages/effect/typetest/unstable/rpc/RpcServer.tst.ts +26 -0
  1546. package/repos/effect/packages/effect/typetest/unstable/sql/SqlSchema.tst.ts +75 -0
  1547. package/repos/effect/packages/effect/typetest/unstable/workflow/Workflow.tst.ts +16 -0
  1548. package/repos/effect/packages/effect/vitest.config.ts +11 -0
  1549. package/repos/effect/packages/opentelemetry/CHANGELOG.md +620 -0
  1550. package/repos/effect/packages/opentelemetry/LICENSE +21 -0
  1551. package/repos/effect/packages/opentelemetry/README.md +5 -0
  1552. package/repos/effect/packages/opentelemetry/docgen.json +30 -0
  1553. package/repos/effect/packages/opentelemetry/package.json +126 -0
  1554. package/repos/effect/packages/opentelemetry/src/Logger.ts +193 -0
  1555. package/repos/effect/packages/opentelemetry/src/Metrics.ts +138 -0
  1556. package/repos/effect/packages/opentelemetry/src/NodeSdk.ts +162 -0
  1557. package/repos/effect/packages/opentelemetry/src/Resource.ts +147 -0
  1558. package/repos/effect/packages/opentelemetry/src/Tracer.ts +594 -0
  1559. package/repos/effect/packages/opentelemetry/src/WebSdk.ts +140 -0
  1560. package/repos/effect/packages/opentelemetry/src/index.ts +35 -0
  1561. package/repos/effect/packages/opentelemetry/src/internal/attributes.ts +28 -0
  1562. package/repos/effect/packages/opentelemetry/src/internal/metrics.ts +463 -0
  1563. package/repos/effect/packages/opentelemetry/src/internal/utilities.ts +5 -0
  1564. package/repos/effect/packages/opentelemetry/test/Logger.test.ts +122 -0
  1565. package/repos/effect/packages/opentelemetry/test/Metrics.test.ts +339 -0
  1566. package/repos/effect/packages/opentelemetry/test/Tracer.test.ts +167 -0
  1567. package/repos/effect/packages/opentelemetry/tsconfig.json +8 -0
  1568. package/repos/effect/packages/opentelemetry/vitest.config.ts +6 -0
  1569. package/repos/effect/packages/platform-browser/CHANGELOG.md +637 -0
  1570. package/repos/effect/packages/platform-browser/LICENSE +21 -0
  1571. package/repos/effect/packages/platform-browser/README.md +1 -0
  1572. package/repos/effect/packages/platform-browser/docgen.json +21 -0
  1573. package/repos/effect/packages/platform-browser/package.json +74 -0
  1574. package/repos/effect/packages/platform-browser/src/BrowserCrypto.ts +97 -0
  1575. package/repos/effect/packages/platform-browser/src/BrowserHttpClient.ts +430 -0
  1576. package/repos/effect/packages/platform-browser/src/BrowserKeyValueStore.ts +177 -0
  1577. package/repos/effect/packages/platform-browser/src/BrowserPersistence.ts +334 -0
  1578. package/repos/effect/packages/platform-browser/src/BrowserRuntime.ts +53 -0
  1579. package/repos/effect/packages/platform-browser/src/BrowserSocket.ts +52 -0
  1580. package/repos/effect/packages/platform-browser/src/BrowserStream.ts +56 -0
  1581. package/repos/effect/packages/platform-browser/src/BrowserWorker.ts +98 -0
  1582. package/repos/effect/packages/platform-browser/src/BrowserWorkerRunner.ts +199 -0
  1583. package/repos/effect/packages/platform-browser/src/Clipboard.ts +143 -0
  1584. package/repos/effect/packages/platform-browser/src/Geolocation.ts +233 -0
  1585. package/repos/effect/packages/platform-browser/src/IndexedDb.ts +113 -0
  1586. package/repos/effect/packages/platform-browser/src/IndexedDbDatabase.ts +648 -0
  1587. package/repos/effect/packages/platform-browser/src/IndexedDbQueryBuilder.ts +2032 -0
  1588. package/repos/effect/packages/platform-browser/src/IndexedDbTable.ts +260 -0
  1589. package/repos/effect/packages/platform-browser/src/IndexedDbVersion.ts +138 -0
  1590. package/repos/effect/packages/platform-browser/src/Permissions.ts +146 -0
  1591. package/repos/effect/packages/platform-browser/src/index.ts +90 -0
  1592. package/repos/effect/packages/platform-browser/test/BrowserCrypto.test.ts +74 -0
  1593. package/repos/effect/packages/platform-browser/test/BrowserHttpClient.test.ts +91 -0
  1594. package/repos/effect/packages/platform-browser/test/BrowserKeyValueStore.test.ts +23 -0
  1595. package/repos/effect/packages/platform-browser/test/BrowserPersistence.test.ts +209 -0
  1596. package/repos/effect/packages/platform-browser/test/BrowserPersistencePersistedCache.test.ts +29 -0
  1597. package/repos/effect/packages/platform-browser/test/IndexedDbDatabase.test.ts +253 -0
  1598. package/repos/effect/packages/platform-browser/test/IndexedDbQueryBuilder.test.ts +1459 -0
  1599. package/repos/effect/packages/platform-browser/test/IndexedDbTable.test.ts +101 -0
  1600. package/repos/effect/packages/platform-browser/test/IndexedDbVersion.test.ts +50 -0
  1601. package/repos/effect/packages/platform-browser/test/Permissions.test.ts +12 -0
  1602. package/repos/effect/packages/platform-browser/test/RpcWorker.test.ts +19 -0
  1603. package/repos/effect/packages/platform-browser/test/fixtures/rpc-e2e.ts +141 -0
  1604. package/repos/effect/packages/platform-browser/test/fixtures/rpc-schemas.ts +157 -0
  1605. package/repos/effect/packages/platform-browser/test/fixtures/rpc-worker.ts +12 -0
  1606. package/repos/effect/packages/platform-browser/tsconfig.json +8 -0
  1607. package/repos/effect/packages/platform-browser/vitest.config.ts +17 -0
  1608. package/repos/effect/packages/platform-browser/vitest.setup.ts +5 -0
  1609. package/repos/effect/packages/platform-bun/CHANGELOG.md +691 -0
  1610. package/repos/effect/packages/platform-bun/LICENSE +21 -0
  1611. package/repos/effect/packages/platform-bun/README.md +7 -0
  1612. package/repos/effect/packages/platform-bun/docgen.json +20 -0
  1613. package/repos/effect/packages/platform-bun/package.json +73 -0
  1614. package/repos/effect/packages/platform-bun/src/BunChildProcessSpawner.ts +6 -0
  1615. package/repos/effect/packages/platform-bun/src/BunClusterHttp.ts +174 -0
  1616. package/repos/effect/packages/platform-bun/src/BunClusterSocket.ts +153 -0
  1617. package/repos/effect/packages/platform-bun/src/BunCrypto.ts +24 -0
  1618. package/repos/effect/packages/platform-bun/src/BunFileSystem.ts +20 -0
  1619. package/repos/effect/packages/platform-bun/src/BunHttpClient.ts +9 -0
  1620. package/repos/effect/packages/platform-bun/src/BunHttpPlatform.ts +50 -0
  1621. package/repos/effect/packages/platform-bun/src/BunHttpServer.ts +600 -0
  1622. package/repos/effect/packages/platform-bun/src/BunHttpServerRequest.ts +19 -0
  1623. package/repos/effect/packages/platform-bun/src/BunMultipart.ts +54 -0
  1624. package/repos/effect/packages/platform-bun/src/BunPath.ts +37 -0
  1625. package/repos/effect/packages/platform-bun/src/BunRedis.ts +88 -0
  1626. package/repos/effect/packages/platform-bun/src/BunRuntime.ts +52 -0
  1627. package/repos/effect/packages/platform-bun/src/BunServices.ts +49 -0
  1628. package/repos/effect/packages/platform-bun/src/BunSink.ts +8 -0
  1629. package/repos/effect/packages/platform-bun/src/BunSocket.ts +54 -0
  1630. package/repos/effect/packages/platform-bun/src/BunSocketServer.ts +8 -0
  1631. package/repos/effect/packages/platform-bun/src/BunStdio.ts +22 -0
  1632. package/repos/effect/packages/platform-bun/src/BunStream.ts +68 -0
  1633. package/repos/effect/packages/platform-bun/src/BunTerminal.ts +32 -0
  1634. package/repos/effect/packages/platform-bun/src/BunWorker.ts +92 -0
  1635. package/repos/effect/packages/platform-bun/src/BunWorkerRunner.ts +113 -0
  1636. package/repos/effect/packages/platform-bun/src/index.ts +115 -0
  1637. package/repos/effect/packages/platform-bun/tsconfig.json +12 -0
  1638. package/repos/effect/packages/platform-node/CHANGELOG.md +695 -0
  1639. package/repos/effect/packages/platform-node/LICENSE +21 -0
  1640. package/repos/effect/packages/platform-node/README.md +7 -0
  1641. package/repos/effect/packages/platform-node/docgen.json +24 -0
  1642. package/repos/effect/packages/platform-node/package.json +82 -0
  1643. package/repos/effect/packages/platform-node/src/Mime.ts +25 -0
  1644. package/repos/effect/packages/platform-node/src/NodeChildProcessSpawner.ts +6 -0
  1645. package/repos/effect/packages/platform-node/src/NodeClusterHttp.ts +155 -0
  1646. package/repos/effect/packages/platform-node/src/NodeClusterSocket.ts +176 -0
  1647. package/repos/effect/packages/platform-node/src/NodeCrypto.ts +24 -0
  1648. package/repos/effect/packages/platform-node/src/NodeFileSystem.ts +21 -0
  1649. package/repos/effect/packages/platform-node/src/NodeHttpClient.ts +664 -0
  1650. package/repos/effect/packages/platform-node/src/NodeHttpIncomingMessage.ts +141 -0
  1651. package/repos/effect/packages/platform-node/src/NodeHttpPlatform.ts +70 -0
  1652. package/repos/effect/packages/platform-node/src/NodeHttpServer.ts +646 -0
  1653. package/repos/effect/packages/platform-node/src/NodeHttpServerRequest.ts +33 -0
  1654. package/repos/effect/packages/platform-node/src/NodeMultipart.ts +183 -0
  1655. package/repos/effect/packages/platform-node/src/NodePath.ts +40 -0
  1656. package/repos/effect/packages/platform-node/src/NodeRedis.ts +92 -0
  1657. package/repos/effect/packages/platform-node/src/NodeRuntime.ts +53 -0
  1658. package/repos/effect/packages/platform-node/src/NodeServices.ts +50 -0
  1659. package/repos/effect/packages/platform-node/src/NodeSink.ts +8 -0
  1660. package/repos/effect/packages/platform-node/src/NodeSocket.ts +72 -0
  1661. package/repos/effect/packages/platform-node/src/NodeSocketServer.ts +8 -0
  1662. package/repos/effect/packages/platform-node/src/NodeStdio.ts +22 -0
  1663. package/repos/effect/packages/platform-node/src/NodeStream.ts +8 -0
  1664. package/repos/effect/packages/platform-node/src/NodeTerminal.ts +32 -0
  1665. package/repos/effect/packages/platform-node/src/NodeWorker.ts +121 -0
  1666. package/repos/effect/packages/platform-node/src/NodeWorkerRunner.ts +110 -0
  1667. package/repos/effect/packages/platform-node/src/Undici.ts +29 -0
  1668. package/repos/effect/packages/platform-node/src/index.ts +130 -0
  1669. package/repos/effect/packages/platform-node/test/HttpApi.test.ts +1831 -0
  1670. package/repos/effect/packages/platform-node/test/HttpStaticServer.test.ts +253 -0
  1671. package/repos/effect/packages/platform-node/test/HttpStaticServerConditional.test.ts +296 -0
  1672. package/repos/effect/packages/platform-node/test/NodeCrypto.test.ts +59 -0
  1673. package/repos/effect/packages/platform-node/test/NodeHttpClient.test.ts +157 -0
  1674. package/repos/effect/packages/platform-node/test/NodeHttpPlatform.test.ts +51 -0
  1675. package/repos/effect/packages/platform-node/test/NodeHttpServer.test.ts +598 -0
  1676. package/repos/effect/packages/platform-node/test/NodeRedis.test.ts +31 -0
  1677. package/repos/effect/packages/platform-node/test/NodeSocket.test.ts +153 -0
  1678. package/repos/effect/packages/platform-node/test/OpenApi.test.ts +1573 -0
  1679. package/repos/effect/packages/platform-node/test/RpcServer.test.ts +213 -0
  1680. package/repos/effect/packages/platform-node/test/__snapshots__/HttpApi.test.ts.snap +715 -0
  1681. package/repos/effect/packages/platform-node/test/cluster/MessageStorageTest.ts +196 -0
  1682. package/repos/effect/packages/platform-node/test/cluster/SocketRunner.test.ts +120 -0
  1683. package/repos/effect/packages/platform-node/test/cluster/SqlMessageStorage.test.ts +222 -0
  1684. package/repos/effect/packages/platform-node/test/cluster/SqlRunnerStorage.test.ts +101 -0
  1685. package/repos/effect/packages/platform-node/test/fixtures/http-static-server/conditional.txt +1 -0
  1686. package/repos/effect/packages/platform-node/test/fixtures/http-static-server/custom/home.html +1 -0
  1687. package/repos/effect/packages/platform-node/test/fixtures/http-static-server/file.binx +1 -0
  1688. package/repos/effect/packages/platform-node/test/fixtures/http-static-server/guide/index.html +1 -0
  1689. package/repos/effect/packages/platform-node/test/fixtures/http-static-server/hello.txt +1 -0
  1690. package/repos/effect/packages/platform-node/test/fixtures/http-static-server/index.html +1 -0
  1691. package/repos/effect/packages/platform-node/test/fixtures/http-static-server/range.txt +1 -0
  1692. package/repos/effect/packages/platform-node/test/fixtures/http-static-server-outside.txt +1 -0
  1693. package/repos/effect/packages/platform-node/test/fixtures/mysql2-utils.ts +64 -0
  1694. package/repos/effect/packages/platform-node/test/fixtures/pg-utils.ts +39 -0
  1695. package/repos/effect/packages/platform-node/test/fixtures/rpc-e2e.ts +149 -0
  1696. package/repos/effect/packages/platform-node/test/fixtures/rpc-schemas.ts +175 -0
  1697. package/repos/effect/packages/platform-node/test/fixtures/text.txt +1 -0
  1698. package/repos/effect/packages/platform-node/tsconfig.json +12 -0
  1699. package/repos/effect/packages/platform-node/vitest.config.ts +6 -0
  1700. package/repos/effect/packages/platform-node-shared/CHANGELOG.md +617 -0
  1701. package/repos/effect/packages/platform-node-shared/LICENSE +21 -0
  1702. package/repos/effect/packages/platform-node-shared/README.md +7 -0
  1703. package/repos/effect/packages/platform-node-shared/docgen.json +38 -0
  1704. package/repos/effect/packages/platform-node-shared/package.json +76 -0
  1705. package/repos/effect/packages/platform-node-shared/src/NodeChildProcessSpawner.ts +713 -0
  1706. package/repos/effect/packages/platform-node-shared/src/NodeClusterSocket.ts +70 -0
  1707. package/repos/effect/packages/platform-node-shared/src/NodeCrypto.ts +60 -0
  1708. package/repos/effect/packages/platform-node-shared/src/NodeFileSystem.ts +652 -0
  1709. package/repos/effect/packages/platform-node-shared/src/NodePath.ts +80 -0
  1710. package/repos/effect/packages/platform-node-shared/src/NodeRuntime.ts +59 -0
  1711. package/repos/effect/packages/platform-node-shared/src/NodeSink.ts +116 -0
  1712. package/repos/effect/packages/platform-node-shared/src/NodeSocket.ts +269 -0
  1713. package/repos/effect/packages/platform-node-shared/src/NodeSocketServer.ts +301 -0
  1714. package/repos/effect/packages/platform-node-shared/src/NodeStdio.ts +67 -0
  1715. package/repos/effect/packages/platform-node-shared/src/NodeStream.ts +445 -0
  1716. package/repos/effect/packages/platform-node-shared/src/NodeTerminal.ts +129 -0
  1717. package/repos/effect/packages/platform-node-shared/src/index.ts +65 -0
  1718. package/repos/effect/packages/platform-node-shared/src/internal/utils.ts +51 -0
  1719. package/repos/effect/packages/platform-node-shared/test/NodeChildProcessSpawner.test.ts +1069 -0
  1720. package/repos/effect/packages/platform-node-shared/test/NodeFileSystem.test.ts +214 -0
  1721. package/repos/effect/packages/platform-node-shared/test/NodeSink.test.ts +153 -0
  1722. package/repos/effect/packages/platform-node-shared/test/NodeStream.test.ts +173 -0
  1723. package/repos/effect/packages/platform-node-shared/test/fixtures/bash/no-permissions.sh +3 -0
  1724. package/repos/effect/packages/platform-node-shared/test/fixtures/bash/parent-exits-early.sh +31 -0
  1725. package/repos/effect/packages/platform-node-shared/test/fixtures/bash/spawn-children.sh +32 -0
  1726. package/repos/effect/packages/platform-node-shared/test/fixtures/config/SHOUTING +1 -0
  1727. package/repos/effect/packages/platform-node-shared/test/fixtures/config/integer +1 -0
  1728. package/repos/effect/packages/platform-node-shared/test/fixtures/config/nested/config +1 -0
  1729. package/repos/effect/packages/platform-node-shared/test/fixtures/config/secret +1 -0
  1730. package/repos/effect/packages/platform-node-shared/test/fixtures/helloworld.tar.gz +0 -0
  1731. package/repos/effect/packages/platform-node-shared/test/fixtures/text.txt +1 -0
  1732. package/repos/effect/packages/platform-node-shared/tsconfig.json +11 -0
  1733. package/repos/effect/packages/platform-node-shared/vitest.config.ts +6 -0
  1734. package/repos/effect/packages/sql/clickhouse/CHANGELOG.md +681 -0
  1735. package/repos/effect/packages/sql/clickhouse/LICENSE +21 -0
  1736. package/repos/effect/packages/sql/clickhouse/README.md +7 -0
  1737. package/repos/effect/packages/sql/clickhouse/docgen.json +24 -0
  1738. package/repos/effect/packages/sql/clickhouse/package.json +72 -0
  1739. package/repos/effect/packages/sql/clickhouse/src/ClickhouseClient.ts +546 -0
  1740. package/repos/effect/packages/sql/clickhouse/src/ClickhouseMigrator.ts +51 -0
  1741. package/repos/effect/packages/sql/clickhouse/src/index.ts +15 -0
  1742. package/repos/effect/packages/sql/clickhouse/test/Client.test.ts +6 -0
  1743. package/repos/effect/packages/sql/clickhouse/test/SqlErrorClassification.test.ts +75 -0
  1744. package/repos/effect/packages/sql/clickhouse/tsconfig.json +12 -0
  1745. package/repos/effect/packages/sql/clickhouse/vitest.config.ts +6 -0
  1746. package/repos/effect/packages/sql/d1/CHANGELOG.md +597 -0
  1747. package/repos/effect/packages/sql/d1/LICENSE +21 -0
  1748. package/repos/effect/packages/sql/d1/README.md +7 -0
  1749. package/repos/effect/packages/sql/d1/docgen.json +24 -0
  1750. package/repos/effect/packages/sql/d1/package.json +75 -0
  1751. package/repos/effect/packages/sql/d1/src/D1Client.ts +249 -0
  1752. package/repos/effect/packages/sql/d1/src/index.ts +10 -0
  1753. package/repos/effect/packages/sql/d1/test/Client.test.ts +65 -0
  1754. package/repos/effect/packages/sql/d1/test/Resolver.test.ts +176 -0
  1755. package/repos/effect/packages/sql/d1/test/utils.ts +38 -0
  1756. package/repos/effect/packages/sql/d1/tsconfig.json +8 -0
  1757. package/repos/effect/packages/sql/d1/vitest.config.ts +6 -0
  1758. package/repos/effect/packages/sql/libsql/CHANGELOG.md +601 -0
  1759. package/repos/effect/packages/sql/libsql/LICENSE +21 -0
  1760. package/repos/effect/packages/sql/libsql/README.md +7 -0
  1761. package/repos/effect/packages/sql/libsql/docgen.json +24 -0
  1762. package/repos/effect/packages/sql/libsql/package.json +73 -0
  1763. package/repos/effect/packages/sql/libsql/src/LibsqlClient.ts +381 -0
  1764. package/repos/effect/packages/sql/libsql/src/LibsqlMigrator.ts +46 -0
  1765. package/repos/effect/packages/sql/libsql/src/index.ts +15 -0
  1766. package/repos/effect/packages/sql/libsql/test/Client.test.ts +106 -0
  1767. package/repos/effect/packages/sql/libsql/test/Resolver.test.ts +177 -0
  1768. package/repos/effect/packages/sql/libsql/test/util.ts +54 -0
  1769. package/repos/effect/packages/sql/libsql/tsconfig.json +9 -0
  1770. package/repos/effect/packages/sql/libsql/vitest.config.ts +6 -0
  1771. package/repos/effect/packages/sql/mssql/CHANGELOG.md +601 -0
  1772. package/repos/effect/packages/sql/mssql/LICENSE +21 -0
  1773. package/repos/effect/packages/sql/mssql/README.md +7 -0
  1774. package/repos/effect/packages/sql/mssql/docgen.json +24 -0
  1775. package/repos/effect/packages/sql/mssql/package.json +70 -0
  1776. package/repos/effect/packages/sql/mssql/src/MssqlClient.ts +732 -0
  1777. package/repos/effect/packages/sql/mssql/src/MssqlMigrator.ts +45 -0
  1778. package/repos/effect/packages/sql/mssql/src/Parameter.ts +64 -0
  1779. package/repos/effect/packages/sql/mssql/src/Procedure.ts +213 -0
  1780. package/repos/effect/packages/sql/mssql/src/index.ts +32 -0
  1781. package/repos/effect/packages/sql/mssql/test/Client.test.ts +91 -0
  1782. package/repos/effect/packages/sql/mssql/test/SqlErrorClassification.test.ts +206 -0
  1783. package/repos/effect/packages/sql/mssql/tsconfig.json +8 -0
  1784. package/repos/effect/packages/sql/mssql/vitest.config.ts +6 -0
  1785. package/repos/effect/packages/sql/mysql2/CHANGELOG.md +603 -0
  1786. package/repos/effect/packages/sql/mysql2/LICENSE +21 -0
  1787. package/repos/effect/packages/sql/mysql2/README.md +7 -0
  1788. package/repos/effect/packages/sql/mysql2/docgen.json +24 -0
  1789. package/repos/effect/packages/sql/mysql2/package.json +71 -0
  1790. package/repos/effect/packages/sql/mysql2/src/MysqlClient.ts +517 -0
  1791. package/repos/effect/packages/sql/mysql2/src/MysqlMigrator.ts +102 -0
  1792. package/repos/effect/packages/sql/mysql2/src/index.ts +15 -0
  1793. package/repos/effect/packages/sql/mysql2/test/Client.test.ts +34 -0
  1794. package/repos/effect/packages/sql/mysql2/test/KeyValueStore.test.ts +16 -0
  1795. package/repos/effect/packages/sql/mysql2/test/Model.test.ts +227 -0
  1796. package/repos/effect/packages/sql/mysql2/test/MysqlClient.test.ts +35 -0
  1797. package/repos/effect/packages/sql/mysql2/test/Persistence.test.ts +22 -0
  1798. package/repos/effect/packages/sql/mysql2/test/SqlErrorClassification.test.ts +133 -0
  1799. package/repos/effect/packages/sql/mysql2/test/SqlEventLogServerUnencrypted.test.ts +7 -0
  1800. package/repos/effect/packages/sql/mysql2/test/utils.ts +64 -0
  1801. package/repos/effect/packages/sql/mysql2/tsconfig.json +9 -0
  1802. package/repos/effect/packages/sql/mysql2/vitest.config.ts +6 -0
  1803. package/repos/effect/packages/sql/pg/CHANGELOG.md +3432 -0
  1804. package/repos/effect/packages/sql/pg/LICENSE +21 -0
  1805. package/repos/effect/packages/sql/pg/README.md +7 -0
  1806. package/repos/effect/packages/sql/pg/docgen.json +24 -0
  1807. package/repos/effect/packages/sql/pg/package.json +77 -0
  1808. package/repos/effect/packages/sql/pg/src/PgClient.ts +947 -0
  1809. package/repos/effect/packages/sql/pg/src/PgMigrator.ts +120 -0
  1810. package/repos/effect/packages/sql/pg/src/index.ts +15 -0
  1811. package/repos/effect/packages/sql/pg/test/Client.test.ts +373 -0
  1812. package/repos/effect/packages/sql/pg/test/KeyValueStore.test.ts +16 -0
  1813. package/repos/effect/packages/sql/pg/test/Persistence.test.ts +20 -0
  1814. package/repos/effect/packages/sql/pg/test/SqlErrorClassification.test.ts +81 -0
  1815. package/repos/effect/packages/sql/pg/test/SqlEventLogServerUnencrypted.test.ts +7 -0
  1816. package/repos/effect/packages/sql/pg/test/TransactionAcquire.test.ts +52 -0
  1817. package/repos/effect/packages/sql/pg/test/utils.ts +49 -0
  1818. package/repos/effect/packages/sql/pg/tsconfig.json +9 -0
  1819. package/repos/effect/packages/sql/pg/vitest.config.ts +6 -0
  1820. package/repos/effect/packages/sql/pglite/CHANGELOG.md +198 -0
  1821. package/repos/effect/packages/sql/pglite/LICENSE +21 -0
  1822. package/repos/effect/packages/sql/pglite/README.md +7 -0
  1823. package/repos/effect/packages/sql/pglite/docgen.json +24 -0
  1824. package/repos/effect/packages/sql/pglite/package.json +74 -0
  1825. package/repos/effect/packages/sql/pglite/src/PgliteClient.ts +503 -0
  1826. package/repos/effect/packages/sql/pglite/src/PgliteMigrator.ts +44 -0
  1827. package/repos/effect/packages/sql/pglite/src/index.ts +15 -0
  1828. package/repos/effect/packages/sql/pglite/test/Client.test.ts +149 -0
  1829. package/repos/effect/packages/sql/pglite/test/Migrator.test.ts +45 -0
  1830. package/repos/effect/packages/sql/pglite/test/SqlErrorClassification.test.ts +56 -0
  1831. package/repos/effect/packages/sql/pglite/test/Transaction.test.ts +62 -0
  1832. package/repos/effect/packages/sql/pglite/tsconfig.json +8 -0
  1833. package/repos/effect/packages/sql/pglite/vitest.config.ts +6 -0
  1834. package/repos/effect/packages/sql/sqlite-bun/CHANGELOG.md +601 -0
  1835. package/repos/effect/packages/sql/sqlite-bun/LICENSE +21 -0
  1836. package/repos/effect/packages/sql/sqlite-bun/README.md +7 -0
  1837. package/repos/effect/packages/sql/sqlite-bun/docgen.json +24 -0
  1838. package/repos/effect/packages/sql/sqlite-bun/package.json +69 -0
  1839. package/repos/effect/packages/sql/sqlite-bun/src/SqliteClient.ts +262 -0
  1840. package/repos/effect/packages/sql/sqlite-bun/src/SqliteMigrator.ts +90 -0
  1841. package/repos/effect/packages/sql/sqlite-bun/src/index.ts +15 -0
  1842. package/repos/effect/packages/sql/sqlite-bun/test/Client.test.ts +6 -0
  1843. package/repos/effect/packages/sql/sqlite-bun/tsconfig.json +11 -0
  1844. package/repos/effect/packages/sql/sqlite-bun/vitest.config.ts +6 -0
  1845. package/repos/effect/packages/sql/sqlite-do/CHANGELOG.md +601 -0
  1846. package/repos/effect/packages/sql/sqlite-do/LICENSE +21 -0
  1847. package/repos/effect/packages/sql/sqlite-do/README.md +7 -0
  1848. package/repos/effect/packages/sql/sqlite-do/docgen.json +24 -0
  1849. package/repos/effect/packages/sql/sqlite-do/package.json +68 -0
  1850. package/repos/effect/packages/sql/sqlite-do/src/SqliteClient.ts +249 -0
  1851. package/repos/effect/packages/sql/sqlite-do/src/SqliteMigrator.ts +45 -0
  1852. package/repos/effect/packages/sql/sqlite-do/src/index.ts +15 -0
  1853. package/repos/effect/packages/sql/sqlite-do/test/Client.test.ts +24 -0
  1854. package/repos/effect/packages/sql/sqlite-do/tsconfig.json +8 -0
  1855. package/repos/effect/packages/sql/sqlite-do/vitest.config.ts +6 -0
  1856. package/repos/effect/packages/sql/sqlite-node/CHANGELOG.md +3415 -0
  1857. package/repos/effect/packages/sql/sqlite-node/LICENSE +21 -0
  1858. package/repos/effect/packages/sql/sqlite-node/README.md +7 -0
  1859. package/repos/effect/packages/sql/sqlite-node/docgen.json +24 -0
  1860. package/repos/effect/packages/sql/sqlite-node/package.json +72 -0
  1861. package/repos/effect/packages/sql/sqlite-node/src/SqliteClient.ts +312 -0
  1862. package/repos/effect/packages/sql/sqlite-node/src/SqliteMigrator.ts +90 -0
  1863. package/repos/effect/packages/sql/sqlite-node/src/index.ts +15 -0
  1864. package/repos/effect/packages/sql/sqlite-node/test/Client.test.ts +75 -0
  1865. package/repos/effect/packages/sql/sqlite-node/test/KeyValueStore.test.ts +29 -0
  1866. package/repos/effect/packages/sql/sqlite-node/test/Persistence.test.ts +109 -0
  1867. package/repos/effect/packages/sql/sqlite-node/test/Resolver.test.ts +183 -0
  1868. package/repos/effect/packages/sql/sqlite-node/test/SqlEventJournal.test.ts +84 -0
  1869. package/repos/effect/packages/sql/sqlite-node/test/SqlEventLogServerEncrypted.test.ts +249 -0
  1870. package/repos/effect/packages/sql/sqlite-node/test/SqlEventLogServerUnencrypted.test.ts +110 -0
  1871. package/repos/effect/packages/sql/sqlite-node/test/SqliteMigrator.test.ts +48 -0
  1872. package/repos/effect/packages/sql/sqlite-node/tsconfig.json +8 -0
  1873. package/repos/effect/packages/sql/sqlite-node/vitest.config.ts +6 -0
  1874. package/repos/effect/packages/sql/sqlite-react-native/CHANGELOG.md +601 -0
  1875. package/repos/effect/packages/sql/sqlite-react-native/LICENSE +21 -0
  1876. package/repos/effect/packages/sql/sqlite-react-native/README.md +7 -0
  1877. package/repos/effect/packages/sql/sqlite-react-native/docgen.json +24 -0
  1878. package/repos/effect/packages/sql/sqlite-react-native/package.json +69 -0
  1879. package/repos/effect/packages/sql/sqlite-react-native/src/SqliteClient.ts +354 -0
  1880. package/repos/effect/packages/sql/sqlite-react-native/src/SqliteMigrator.ts +55 -0
  1881. package/repos/effect/packages/sql/sqlite-react-native/src/index.ts +15 -0
  1882. package/repos/effect/packages/sql/sqlite-react-native/test/Client.test.ts +6 -0
  1883. package/repos/effect/packages/sql/sqlite-react-native/tsconfig.json +8 -0
  1884. package/repos/effect/packages/sql/sqlite-react-native/vitest.config.ts +6 -0
  1885. package/repos/effect/packages/sql/sqlite-wasm/CHANGELOG.md +601 -0
  1886. package/repos/effect/packages/sql/sqlite-wasm/LICENSE +21 -0
  1887. package/repos/effect/packages/sql/sqlite-wasm/README.md +7 -0
  1888. package/repos/effect/packages/sql/sqlite-wasm/docgen.json +24 -0
  1889. package/repos/effect/packages/sql/sqlite-wasm/package.json +69 -0
  1890. package/repos/effect/packages/sql/sqlite-wasm/src/OpfsWorker.ts +118 -0
  1891. package/repos/effect/packages/sql/sqlite-wasm/src/SqliteClient.ts +551 -0
  1892. package/repos/effect/packages/sql/sqlite-wasm/src/SqliteMigrator.ts +55 -0
  1893. package/repos/effect/packages/sql/sqlite-wasm/src/index.ts +14 -0
  1894. package/repos/effect/packages/sql/sqlite-wasm/src/internal/opfsWorker.ts +7 -0
  1895. package/repos/effect/packages/sql/sqlite-wasm/src/sqlite-wasm.d.ts +47 -0
  1896. package/repos/effect/packages/sql/sqlite-wasm/test/Client.test.ts +6 -0
  1897. package/repos/effect/packages/sql/sqlite-wasm/tsconfig.json +8 -0
  1898. package/repos/effect/packages/sql/sqlite-wasm/vitest.config.ts +6 -0
  1899. package/repos/effect/packages/tools/ai-codegen/codegen.schema.json +92 -0
  1900. package/repos/effect/packages/tools/ai-codegen/docgen.json +4 -0
  1901. package/repos/effect/packages/tools/ai-codegen/package.json +61 -0
  1902. package/repos/effect/packages/tools/ai-codegen/src/Config.ts +292 -0
  1903. package/repos/effect/packages/tools/ai-codegen/src/Discovery.ts +197 -0
  1904. package/repos/effect/packages/tools/ai-codegen/src/Generator.ts +183 -0
  1905. package/repos/effect/packages/tools/ai-codegen/src/Glob.ts +56 -0
  1906. package/repos/effect/packages/tools/ai-codegen/src/PostProcess.ts +157 -0
  1907. package/repos/effect/packages/tools/ai-codegen/src/SpecFetcher.ts +154 -0
  1908. package/repos/effect/packages/tools/ai-codegen/src/bin.ts +10 -0
  1909. package/repos/effect/packages/tools/ai-codegen/src/main.ts +237 -0
  1910. package/repos/effect/packages/tools/ai-codegen/tsconfig.json +15 -0
  1911. package/repos/effect/packages/tools/ai-docgen/docgen.json +4 -0
  1912. package/repos/effect/packages/tools/ai-docgen/package.json +60 -0
  1913. package/repos/effect/packages/tools/ai-docgen/src/Glob.ts +48 -0
  1914. package/repos/effect/packages/tools/ai-docgen/src/main.ts +186 -0
  1915. package/repos/effect/packages/tools/ai-docgen/tsconfig.json +14 -0
  1916. package/repos/effect/packages/tools/bundle/docgen.json +4 -0
  1917. package/repos/effect/packages/tools/bundle/fixtures/basic.ts +3 -0
  1918. package/repos/effect/packages/tools/bundle/fixtures/batching.ts +25 -0
  1919. package/repos/effect/packages/tools/bundle/fixtures/brand.ts +5 -0
  1920. package/repos/effect/packages/tools/bundle/fixtures/cache.ts +10 -0
  1921. package/repos/effect/packages/tools/bundle/fixtures/config.ts +13 -0
  1922. package/repos/effect/packages/tools/bundle/fixtures/differ.ts +9 -0
  1923. package/repos/effect/packages/tools/bundle/fixtures/http-client.ts +12 -0
  1924. package/repos/effect/packages/tools/bundle/fixtures/logger.ts +5 -0
  1925. package/repos/effect/packages/tools/bundle/fixtures/metric.ts +13 -0
  1926. package/repos/effect/packages/tools/bundle/fixtures/optic.ts +6 -0
  1927. package/repos/effect/packages/tools/bundle/fixtures/pubsub.ts +22 -0
  1928. package/repos/effect/packages/tools/bundle/fixtures/queue.ts +18 -0
  1929. package/repos/effect/packages/tools/bundle/fixtures/schedule.ts +9 -0
  1930. package/repos/effect/packages/tools/bundle/fixtures/schema-fromJsonSchemaDocument.ts +16 -0
  1931. package/repos/effect/packages/tools/bundle/fixtures/schema-representation-roundtrip.ts +16 -0
  1932. package/repos/effect/packages/tools/bundle/fixtures/schema-string-transformation.ts +20 -0
  1933. package/repos/effect/packages/tools/bundle/fixtures/schema-string.ts +8 -0
  1934. package/repos/effect/packages/tools/bundle/fixtures/schema-template-literal.ts +8 -0
  1935. package/repos/effect/packages/tools/bundle/fixtures/schema-toArbitraryLazy.ts +9 -0
  1936. package/repos/effect/packages/tools/bundle/fixtures/schema-toCodeDocument.ts +12 -0
  1937. package/repos/effect/packages/tools/bundle/fixtures/schema-toCodecJson.ts +9 -0
  1938. package/repos/effect/packages/tools/bundle/fixtures/schema-toEquivalence.ts +9 -0
  1939. package/repos/effect/packages/tools/bundle/fixtures/schema-toFormatter.ts +9 -0
  1940. package/repos/effect/packages/tools/bundle/fixtures/schema-toJsonSchemaDocument.ts +9 -0
  1941. package/repos/effect/packages/tools/bundle/fixtures/schema-toRepresentation.ts +9 -0
  1942. package/repos/effect/packages/tools/bundle/fixtures/schema.ts +12 -0
  1943. package/repos/effect/packages/tools/bundle/fixtures/stm.ts +21 -0
  1944. package/repos/effect/packages/tools/bundle/fixtures/stream.ts +7 -0
  1945. package/repos/effect/packages/tools/bundle/package.json +52 -0
  1946. package/repos/effect/packages/tools/bundle/src/Cli.ts +104 -0
  1947. package/repos/effect/packages/tools/bundle/src/Fixtures.ts +51 -0
  1948. package/repos/effect/packages/tools/bundle/src/Plugins.ts +131 -0
  1949. package/repos/effect/packages/tools/bundle/src/Reporter.ts +200 -0
  1950. package/repos/effect/packages/tools/bundle/src/Rollup.ts +179 -0
  1951. package/repos/effect/packages/tools/bundle/src/bin.ts +23 -0
  1952. package/repos/effect/packages/tools/bundle/tsconfig.fixtures.json +13 -0
  1953. package/repos/effect/packages/tools/bundle/tsconfig.json +9 -0
  1954. package/repos/effect/packages/tools/bundle/tsconfig.src.json +13 -0
  1955. package/repos/effect/packages/tools/jsdocs/docgen.json +4 -0
  1956. package/repos/effect/packages/tools/jsdocs/package.json +64 -0
  1957. package/repos/effect/packages/tools/jsdocs/src/Jsdocs.ts +3303 -0
  1958. package/repos/effect/packages/tools/jsdocs/src/bin.ts +23 -0
  1959. package/repos/effect/packages/tools/jsdocs/test/jsdocs.test.ts +979 -0
  1960. package/repos/effect/packages/tools/jsdocs/tsconfig.json +8 -0
  1961. package/repos/effect/packages/tools/jsdocs/vitest.config.ts +6 -0
  1962. package/repos/effect/packages/tools/openapi-generator/CHANGELOG.md +691 -0
  1963. package/repos/effect/packages/tools/openapi-generator/LICENSE +21 -0
  1964. package/repos/effect/packages/tools/openapi-generator/docgen.json +4 -0
  1965. package/repos/effect/packages/tools/openapi-generator/package.json +78 -0
  1966. package/repos/effect/packages/tools/openapi-generator/src/HttpApiTransformer.ts +552 -0
  1967. package/repos/effect/packages/tools/openapi-generator/src/JsonSchemaGenerator.ts +319 -0
  1968. package/repos/effect/packages/tools/openapi-generator/src/OpenApiGenerator.ts +1201 -0
  1969. package/repos/effect/packages/tools/openapi-generator/src/OpenApiPatch.ts +539 -0
  1970. package/repos/effect/packages/tools/openapi-generator/src/OpenApiTransformer.ts +1019 -0
  1971. package/repos/effect/packages/tools/openapi-generator/src/ParsedOperation.ts +277 -0
  1972. package/repos/effect/packages/tools/openapi-generator/src/Utils.ts +111 -0
  1973. package/repos/effect/packages/tools/openapi-generator/src/bin.ts +10 -0
  1974. package/repos/effect/packages/tools/openapi-generator/src/main.ts +116 -0
  1975. package/repos/effect/packages/tools/openapi-generator/test/JsonSchemaGenerator.test.ts +173 -0
  1976. package/repos/effect/packages/tools/openapi-generator/test/OpenApiGenerator.test.ts +2130 -0
  1977. package/repos/effect/packages/tools/openapi-generator/test/OpenApiGeneratorCli.test.ts +147 -0
  1978. package/repos/effect/packages/tools/openapi-generator/test/OpenApiPatch.test.ts +380 -0
  1979. package/repos/effect/packages/tools/openapi-generator/test/Utils.test.ts +33 -0
  1980. package/repos/effect/packages/tools/openapi-generator/test/fixtures/cli-basic-spec.json +35 -0
  1981. package/repos/effect/packages/tools/openapi-generator/test/fixtures/cli-warning-spec.json +57 -0
  1982. package/repos/effect/packages/tools/openapi-generator/test/fixtures/patches/invalid-op.json +7 -0
  1983. package/repos/effect/packages/tools/openapi-generator/test/fixtures/patches/missing-path.json +6 -0
  1984. package/repos/effect/packages/tools/openapi-generator/test/fixtures/patches/missing-value.json +6 -0
  1985. package/repos/effect/packages/tools/openapi-generator/test/fixtures/patches/valid-add.json +8 -0
  1986. package/repos/effect/packages/tools/openapi-generator/test/fixtures/patches/valid-multiple.json +17 -0
  1987. package/repos/effect/packages/tools/openapi-generator/test/fixtures/patches/valid-patch.yaml +6 -0
  1988. package/repos/effect/packages/tools/openapi-generator/test/fixtures/patches/valid-remove.json +6 -0
  1989. package/repos/effect/packages/tools/openapi-generator/test/fixtures/patches/valid-replace.json +7 -0
  1990. package/repos/effect/packages/tools/openapi-generator/tsconfig.json +9 -0
  1991. package/repos/effect/packages/tools/openapi-generator/vitest.config.ts +6 -0
  1992. package/repos/effect/packages/tools/oxc/docgen.json +4 -0
  1993. package/repos/effect/packages/tools/oxc/oxlintrc.json +83 -0
  1994. package/repos/effect/packages/tools/oxc/package.json +72 -0
  1995. package/repos/effect/packages/tools/oxc/src/oxlint/index.ts +18 -0
  1996. package/repos/effect/packages/tools/oxc/src/oxlint/rules/jsdocs.ts +108 -0
  1997. package/repos/effect/packages/tools/oxc/src/oxlint/rules/no-bigint-literals.ts +25 -0
  1998. package/repos/effect/packages/tools/oxc/src/oxlint/rules/no-import-from-barrel-package.ts +144 -0
  1999. package/repos/effect/packages/tools/oxc/src/oxlint/rules/no-js-extension-imports.ts +73 -0
  2000. package/repos/effect/packages/tools/oxc/src/oxlint/rules/no-opaque-instance-fields.ts +92 -0
  2001. package/repos/effect/packages/tools/oxc/test/jsdocs.test.ts +75 -0
  2002. package/repos/effect/packages/tools/oxc/test/no-import-from-barrel-package.test.ts +182 -0
  2003. package/repos/effect/packages/tools/oxc/test/no-js-extension-imports.test.ts +120 -0
  2004. package/repos/effect/packages/tools/oxc/test/no-opaque-instance-fields.test.ts +276 -0
  2005. package/repos/effect/packages/tools/oxc/test/utils.ts +61 -0
  2006. package/repos/effect/packages/tools/oxc/tsconfig.json +8 -0
  2007. package/repos/effect/packages/tools/oxc/vitest.config.ts +6 -0
  2008. package/repos/effect/packages/tools/utils/docgen.json +4 -0
  2009. package/repos/effect/packages/tools/utils/package.json +59 -0
  2010. package/repos/effect/packages/tools/utils/src/Codegen.ts +214 -0
  2011. package/repos/effect/packages/tools/utils/src/Glob.ts +61 -0
  2012. package/repos/effect/packages/tools/utils/src/bin.ts +16 -0
  2013. package/repos/effect/packages/tools/utils/src/commands/codegen.ts +44 -0
  2014. package/repos/effect/packages/tools/utils/tsconfig.json +9 -0
  2015. package/repos/effect/packages/vitest/CHANGELOG.md +601 -0
  2016. package/repos/effect/packages/vitest/LICENSE +21 -0
  2017. package/repos/effect/packages/vitest/README.md +320 -0
  2018. package/repos/effect/packages/vitest/docgen.json +24 -0
  2019. package/repos/effect/packages/vitest/package.json +60 -0
  2020. package/repos/effect/packages/vitest/src/index.ts +259 -0
  2021. package/repos/effect/packages/vitest/src/internal/internal.ts +374 -0
  2022. package/repos/effect/packages/vitest/src/utils.ts +321 -0
  2023. package/repos/effect/packages/vitest/test/index.test.ts +222 -0
  2024. package/repos/effect/packages/vitest/test/isolation.test.ts +105 -0
  2025. package/repos/effect/packages/vitest/test/nested-isolation.test.ts +212 -0
  2026. package/repos/effect/packages/vitest/tsconfig.json +11 -0
  2027. package/repos/effect/packages/vitest/typetest/index.tst.ts +56 -0
  2028. package/repos/effect/packages/vitest/vitest.config.ts +6 -0
  2029. package/repos/effect/patches/@changesets__assemble-release-plan.patch +26 -0
  2030. package/repos/effect/patches/@changesets__get-github-info.patch +44 -0
  2031. package/repos/effect/pnpm-lock.yaml +13483 -0
  2032. package/repos/effect/pnpm-workspace.yaml +10 -0
  2033. package/repos/effect/scripts/bundle-compare.sh +42 -0
  2034. package/repos/effect/scripts/check-cookbook-schedule.ts +390 -0
  2035. package/repos/effect/scripts/circular.mjs +26 -0
  2036. package/repos/effect/scripts/clean.mjs +19 -0
  2037. package/repos/effect/scripts/codemod.mjs +22 -0
  2038. package/repos/effect/scripts/codemods/jsdoc.ts +79 -0
  2039. package/repos/effect/scripts/docs.mjs +64 -0
  2040. package/repos/effect/scripts/package-scalar.mjs +14 -0
  2041. package/repos/effect/scripts/package-swagger.mjs +23 -0
  2042. package/repos/effect/scripts/package.json +22 -0
  2043. package/repos/effect/scripts/tsconfig.json +18 -0
  2044. package/repos/effect/scripts/version.mjs +9 -0
  2045. package/repos/effect/scripts/version.template.txt +2 -0
  2046. package/repos/effect/scripts/worktree-setup.sh +27 -0
  2047. package/repos/effect/stats.txt +30 -0
  2048. package/repos/effect/tsconfig.base.json +46 -0
  2049. package/repos/effect/tsconfig.json +128 -0
  2050. package/repos/effect/tsconfig.packages.json +39 -0
  2051. package/repos/effect/tstyche.json +7 -0
  2052. package/repos/effect/vitest.config.ts +31 -0
  2053. package/repos/effect/vitest.setup.ts +4 -0
  2054. package/repos/effect/vitest.shared.ts +61 -0
  2055. package/repos/effect.subtree.json +16 -0
@@ -0,0 +1,2582 @@
1
+ /**
2
+ * Defines a shared data model for AI model output.
3
+ *
4
+ * Responses are represented as typed parts so different providers can expose
5
+ * text, reasoning, tool calls, files, sources, metadata, finish information, and
6
+ * errors through one shape. The same model is used for complete responses and
7
+ * streaming responses, where start, delta, and end parts describe content as it
8
+ * arrives. This module also carries provider metadata and schemas used by tools
9
+ * that need to validate response parts.
10
+ *
11
+ * @since 4.0.0
12
+ */
13
+ import type * as DateTime from "../../DateTime.ts"
14
+ import * as Effect from "../../Effect.ts"
15
+ import { identity } from "../../Function.ts"
16
+ import * as Predicate from "../../Predicate.ts"
17
+ import * as Schema from "../../Schema.ts"
18
+ import * as SchemaTransformation from "../../SchemaTransformation.ts"
19
+ import type * as Tool from "./Tool.ts"
20
+ import type * as Toolkit from "./Toolkit.ts"
21
+
22
+ const PartTypeId = "~effect/ai/Content/Part" as const
23
+
24
+ // =============================================================================
25
+ // All Parts
26
+ // =============================================================================
27
+
28
+ /**
29
+ * Type guard to check if a value is a Response Part.
30
+ *
31
+ * @category guards
32
+ * @since 4.0.0
33
+ */
34
+ export const isPart = (u: unknown): u is AnyPart => Predicate.hasProperty(u, PartTypeId)
35
+
36
+ /**
37
+ * Union type representing all possible response content parts.
38
+ *
39
+ * @category models
40
+ * @since 4.0.0
41
+ */
42
+ export type AnyPart =
43
+ | TextPart
44
+ | TextStartPart
45
+ | TextDeltaPart
46
+ | TextEndPart
47
+ | ReasoningPart
48
+ | ReasoningStartPart
49
+ | ReasoningDeltaPart
50
+ | ReasoningEndPart
51
+ | ToolParamsStartPart
52
+ | ToolParamsDeltaPart
53
+ | ToolParamsEndPart
54
+ | ToolCallPart<any, any>
55
+ | ToolResultPart<any, any, any>
56
+ | ToolApprovalRequestPart
57
+ | FilePart
58
+ | DocumentSourcePart
59
+ | UrlSourcePart
60
+ | ResponseMetadataPart
61
+ | FinishPart
62
+ | ErrorPart
63
+
64
+ /**
65
+ * Encoded representation of all possible response content parts for serialization.
66
+ *
67
+ * @category models
68
+ * @since 4.0.0
69
+ */
70
+ export type AnyPartEncoded =
71
+ | TextPartEncoded
72
+ | TextStartPartEncoded
73
+ | TextDeltaPartEncoded
74
+ | TextEndPartEncoded
75
+ | ReasoningPartEncoded
76
+ | ReasoningStartPartEncoded
77
+ | ReasoningDeltaPartEncoded
78
+ | ReasoningEndPartEncoded
79
+ | ToolParamsStartPartEncoded
80
+ | ToolParamsDeltaPartEncoded
81
+ | ToolParamsEndPartEncoded
82
+ | ToolCallPartEncoded
83
+ | ToolResultPartEncoded
84
+ | ToolApprovalRequestPartEncoded
85
+ | FilePartEncoded
86
+ | DocumentSourcePartEncoded
87
+ | UrlSourcePartEncoded
88
+ | ResponseMetadataPartEncoded
89
+ | FinishPartEncoded
90
+ | ErrorPartEncoded
91
+
92
+ /**
93
+ * Union type for all response parts with tool-specific typing.
94
+ *
95
+ * @category models
96
+ * @since 4.0.0
97
+ */
98
+ export type AllParts<Tools extends Record<string, Tool.Any>> =
99
+ | TextPart
100
+ | TextStartPart
101
+ | TextDeltaPart
102
+ | TextEndPart
103
+ | ReasoningPart
104
+ | ReasoningStartPart
105
+ | ReasoningDeltaPart
106
+ | ReasoningEndPart
107
+ | ToolParamsStartPart
108
+ | ToolParamsDeltaPart
109
+ | ToolParamsEndPart
110
+ | ToolCallParts<Tools>
111
+ | ToolResultParts<Tools>
112
+ | ToolApprovalRequestPart
113
+ | FilePart
114
+ | DocumentSourcePart
115
+ | UrlSourcePart
116
+ | ResponseMetadataPart
117
+ | FinishPart
118
+ | ErrorPart
119
+
120
+ /**
121
+ * Encoded representation of all response parts for serialization.
122
+ *
123
+ * @category models
124
+ * @since 4.0.0
125
+ */
126
+ export type AllPartsEncoded =
127
+ | TextPartEncoded
128
+ | TextStartPartEncoded
129
+ | TextDeltaPartEncoded
130
+ | TextEndPartEncoded
131
+ | ReasoningPartEncoded
132
+ | ReasoningStartPartEncoded
133
+ | ReasoningDeltaPartEncoded
134
+ | ReasoningEndPartEncoded
135
+ | ToolParamsStartPartEncoded
136
+ | ToolParamsDeltaPartEncoded
137
+ | ToolParamsEndPartEncoded
138
+ | ToolCallPartEncoded
139
+ | ToolResultPartEncoded
140
+ | ToolApprovalRequestPartEncoded
141
+ | FilePartEncoded
142
+ | DocumentSourcePartEncoded
143
+ | UrlSourcePartEncoded
144
+ | ResponseMetadataPartEncoded
145
+ | FinishPartEncoded
146
+ | ErrorPartEncoded
147
+
148
+ /**
149
+ * Creates a Schema for all response parts based on a toolkit.
150
+ *
151
+ * **Details**
152
+ *
153
+ * Generates a schema that includes all possible response parts, with tool call
154
+ * and tool result parts dynamically created based on the provided toolkit.
155
+ *
156
+ * **Example** (Building a response parts schema)
157
+ *
158
+ * ```ts
159
+ * import { Schema } from "effect"
160
+ * import { Response, Tool, Toolkit } from "effect/unstable/ai"
161
+ *
162
+ * const myToolkit = Toolkit.make(
163
+ * Tool.make("GetWeather", {
164
+ * parameters: Schema.Struct({ city: Schema.String }),
165
+ * success: Schema.Struct({ temperature: Schema.Number })
166
+ * })
167
+ * )
168
+ *
169
+ * const allPartsSchema = Response.AllParts(myToolkit)
170
+ * ```
171
+ *
172
+ * @category schemas
173
+ * @since 4.0.0
174
+ */
175
+ export const AllParts = <T extends Toolkit.Any | Toolkit.WithHandler<any>>(
176
+ toolkit: T
177
+ ): Schema.Codec<
178
+ AllParts<T extends Toolkit.Any ? Toolkit.Tools<T> : Toolkit.WithHandlerTools<T>>,
179
+ AllPartsEncoded,
180
+ Tool.ResultDecodingServices<Toolkit.Tools<T>[keyof Toolkit.Tools<T>]>,
181
+ Tool.ResultEncodingServices<Toolkit.Tools<T>[keyof Toolkit.Tools<T>]>
182
+ > => {
183
+ const toolCalls: Array<Schema.Top> = []
184
+ const toolResults: Array<Schema.Top> = []
185
+ for (const tool of Object.values(toolkit.tools as Record<string, Tool.Any>)) {
186
+ const toolCall = ToolCallPart(tool.name, tool.parametersSchema)
187
+ const toolResult = ToolResultPart(tool.name, tool.successSchema, tool.failureSchema)
188
+ toolCalls.push(toolCall)
189
+ toolResults.push(toolResult)
190
+ }
191
+ return Schema.Union([
192
+ TextPart,
193
+ TextStartPart,
194
+ TextDeltaPart,
195
+ TextEndPart,
196
+ ReasoningPart,
197
+ ReasoningStartPart,
198
+ ReasoningDeltaPart,
199
+ ReasoningEndPart,
200
+ ToolParamsStartPart,
201
+ ToolParamsDeltaPart,
202
+ ToolParamsEndPart,
203
+ ToolApprovalRequestPart,
204
+ FilePart,
205
+ DocumentSourcePart,
206
+ UrlSourcePart,
207
+ ResponseMetadataPart,
208
+ FinishPart,
209
+ ErrorPart,
210
+ ...toolCalls,
211
+ ...toolResults
212
+ ]) as any
213
+ }
214
+
215
+ // =============================================================================
216
+ // Parts
217
+ // =============================================================================
218
+
219
+ /**
220
+ * A type for representing non-streaming response parts with tool-specific
221
+ * typing.
222
+ *
223
+ * @category models
224
+ * @since 4.0.0
225
+ */
226
+ export type Part<Tools extends Record<string, Tool.Any>> =
227
+ | TextPart
228
+ | ReasoningPart
229
+ | ToolCallParts<Tools>
230
+ | ToolResultParts<Tools>
231
+ | ToolApprovalRequestPart
232
+ | FilePart
233
+ | DocumentSourcePart
234
+ | UrlSourcePart
235
+ | ResponseMetadataPart
236
+ | FinishPart
237
+
238
+ /**
239
+ * Encoded representation of non-streaming response parts for serialization.
240
+ *
241
+ * @category models
242
+ * @since 4.0.0
243
+ */
244
+ export type PartEncoded =
245
+ | TextPartEncoded
246
+ | ReasoningPartEncoded
247
+ | ReasoningDeltaPartEncoded
248
+ | ReasoningEndPartEncoded
249
+ | ToolCallPartEncoded
250
+ | ToolResultPartEncoded
251
+ | ToolApprovalRequestPartEncoded
252
+ | FilePartEncoded
253
+ | DocumentSourcePartEncoded
254
+ | UrlSourcePartEncoded
255
+ | ResponseMetadataPartEncoded
256
+ | FinishPartEncoded
257
+
258
+ /**
259
+ * Creates a Schema for non-streaming response parts based on a toolkit.
260
+ *
261
+ * @category schemas
262
+ * @since 4.0.0
263
+ */
264
+ export const Part = <T extends Toolkit.Any | Toolkit.WithHandler<any>>(
265
+ toolkit: T
266
+ ): Schema.Codec<
267
+ Part<T extends Toolkit.Any ? Toolkit.Tools<T> : Toolkit.WithHandlerTools<T>>,
268
+ PartEncoded,
269
+ Tool.ResultDecodingServices<Toolkit.Tools<T>[keyof Toolkit.Tools<T>]>,
270
+ Tool.ResultEncodingServices<Toolkit.Tools<T>[keyof Toolkit.Tools<T>]>
271
+ > => {
272
+ const toolCalls: Array<Schema.Top> = []
273
+ const toolResults: Array<Schema.Top> = []
274
+ for (const tool of Object.values(toolkit.tools as Record<string, Tool.Any>)) {
275
+ const toolCall = ToolCallPart(tool.name, tool.parametersSchema)
276
+ const toolResult = ToolResultPart(tool.name, tool.successSchema, tool.failureSchema)
277
+ toolCalls.push(toolCall)
278
+ toolResults.push(toolResult)
279
+ }
280
+ return Schema.Union([
281
+ TextPart,
282
+ ReasoningPart,
283
+ ToolApprovalRequestPart,
284
+ FilePart,
285
+ DocumentSourcePart,
286
+ UrlSourcePart,
287
+ ResponseMetadataPart,
288
+ FinishPart,
289
+ ...toolCalls,
290
+ ...toolResults
291
+ ]) as any
292
+ }
293
+
294
+ // =============================================================================
295
+ // Stream Parts
296
+ // =============================================================================
297
+
298
+ /**
299
+ * A type for representing streaming response parts with tool-specific typing.
300
+ *
301
+ * @category models
302
+ * @since 4.0.0
303
+ */
304
+ export type StreamPart<Tools extends Record<string, Tool.Any>> =
305
+ | TextStartPart
306
+ | TextDeltaPart
307
+ | TextEndPart
308
+ | ReasoningStartPart
309
+ | ReasoningDeltaPart
310
+ | ReasoningEndPart
311
+ | ToolParamsStartPart
312
+ | ToolParamsDeltaPart
313
+ | ToolParamsEndPart
314
+ | ToolCallParts<Tools>
315
+ | ToolResultParts<Tools>
316
+ | ToolApprovalRequestPart
317
+ | FilePart
318
+ | DocumentSourcePart
319
+ | UrlSourcePart
320
+ | ResponseMetadataPart
321
+ | FinishPart
322
+ | ErrorPart
323
+
324
+ /**
325
+ * Encoded representation of streaming response parts for serialization.
326
+ *
327
+ * @category models
328
+ * @since 4.0.0
329
+ */
330
+ export type StreamPartEncoded =
331
+ | TextStartPartEncoded
332
+ | TextDeltaPartEncoded
333
+ | TextEndPartEncoded
334
+ | ReasoningStartPartEncoded
335
+ | ReasoningDeltaPartEncoded
336
+ | ReasoningEndPartEncoded
337
+ | ToolParamsStartPartEncoded
338
+ | ToolParamsDeltaPartEncoded
339
+ | ToolParamsEndPartEncoded
340
+ | ToolCallPartEncoded
341
+ | ToolResultPartEncoded
342
+ | ToolApprovalRequestPartEncoded
343
+ | FilePartEncoded
344
+ | DocumentSourcePartEncoded
345
+ | UrlSourcePartEncoded
346
+ | ResponseMetadataPartEncoded
347
+ | FinishPartEncoded
348
+ | ErrorPartEncoded
349
+
350
+ /**
351
+ * Creates a Schema for streaming response parts based on a toolkit.
352
+ *
353
+ * @category schemas
354
+ * @since 4.0.0
355
+ */
356
+ export const StreamPart = <T extends Toolkit.Any | Toolkit.WithHandler<any>>(
357
+ toolkit: T
358
+ ): Schema.Codec<
359
+ StreamPart<T extends Toolkit.Any ? Toolkit.Tools<T> : Toolkit.WithHandlerTools<T>>,
360
+ StreamPartEncoded,
361
+ Tool.ResultDecodingServices<Toolkit.Tools<T>[keyof Toolkit.Tools<T>]>,
362
+ Tool.ResultEncodingServices<Toolkit.Tools<T>[keyof Toolkit.Tools<T>]>
363
+ > => {
364
+ const toolCalls: Array<Schema.Top> = []
365
+ const toolResults: Array<Schema.Top> = []
366
+ for (const tool of Object.values(toolkit.tools as Record<string, Tool.Any>)) {
367
+ const toolCall = ToolCallPart(tool.name, tool.parametersSchema)
368
+ const toolResult = ToolResultPart(tool.name, tool.successSchema, tool.failureSchema)
369
+ toolCalls.push(toolCall)
370
+ toolResults.push(toolResult)
371
+ }
372
+ return Schema.Union([
373
+ TextStartPart,
374
+ TextDeltaPart,
375
+ TextEndPart,
376
+ ReasoningStartPart,
377
+ ReasoningDeltaPart,
378
+ ReasoningEndPart,
379
+ ToolParamsStartPart,
380
+ ToolParamsDeltaPart,
381
+ ToolParamsEndPart,
382
+ ToolApprovalRequestPart,
383
+ FilePart,
384
+ DocumentSourcePart,
385
+ UrlSourcePart,
386
+ ResponseMetadataPart,
387
+ FinishPart,
388
+ ErrorPart,
389
+ ...toolCalls,
390
+ ...toolResults
391
+ ]) as any
392
+ }
393
+
394
+ // =============================================================================
395
+ // utility types
396
+ // =============================================================================
397
+
398
+ /**
399
+ * Utility type that extracts tool call parts from a set of tools.
400
+ *
401
+ * @category utility types
402
+ * @since 4.0.0
403
+ */
404
+ export type ToolCallParts<Tools extends Record<string, Tool.Any>> = {
405
+ [Name in keyof Tools]: Name extends string ? ToolCallPart<Name, Tool.Parameters<Tools[Name]>>
406
+ : never
407
+ }[keyof Tools]
408
+
409
+ /**
410
+ * Utility type that extracts tool result parts from a set of tools.
411
+ *
412
+ * @category utility types
413
+ * @since 4.0.0
414
+ */
415
+ export type ToolResultParts<Tools extends Record<string, Tool.Any>> = {
416
+ [Name in keyof Tools]: Name extends string
417
+ ? ToolResultPart<Name, Tool.Success<Tools[Name]>, Tool.FailureResult<Tools[Name]>>
418
+ : never
419
+ }[keyof Tools]
420
+
421
+ // =============================================================================
422
+ // Base Part
423
+ // =============================================================================
424
+
425
+ /**
426
+ * Schema for provider-specific metadata attached to response parts,
427
+ * represented as a record from provider-specific keys to JSON values or `null`.
428
+ *
429
+ * @category schemas
430
+ * @since 4.0.0
431
+ */
432
+ export const ProviderMetadata: Schema.$Record<
433
+ Schema.String,
434
+ Schema.NullOr<Schema.Codec<Schema.Json>>
435
+ > = Schema.Record(Schema.String, Schema.NullOr(Schema.Json))
436
+
437
+ /**
438
+ * Type of provider-specific metadata attached to response parts, keyed by
439
+ * provider-specific names with JSON or `null` values.
440
+ *
441
+ * @category models
442
+ * @since 4.0.0
443
+ */
444
+ export type ProviderMetadata = typeof ProviderMetadata.Type
445
+
446
+ /**
447
+ * Base interface for all response content parts, including the type identifier
448
+ * and optional metadata.
449
+ *
450
+ * @category models
451
+ * @since 4.0.0
452
+ */
453
+ export interface BasePart<Type extends string, Metadata extends ProviderMetadata> {
454
+ readonly [PartTypeId]: typeof PartTypeId
455
+ /**
456
+ * The type of this response part.
457
+ */
458
+ readonly type: Type
459
+ /**
460
+ * Optional provider-specific metadata for this part.
461
+ */
462
+ readonly metadata: Metadata
463
+ }
464
+
465
+ /**
466
+ * Base interface for encoded response content parts.
467
+ *
468
+ * @category models
469
+ * @since 4.0.0
470
+ */
471
+ export interface BasePartEncoded<Type extends string, Metadata extends ProviderMetadata> {
472
+ /**
473
+ * The type of this response part.
474
+ */
475
+ readonly type: Type
476
+ /**
477
+ * Optional provider-specific metadata for this part.
478
+ */
479
+ readonly metadata?: Metadata | undefined
480
+ }
481
+
482
+ const BasePart = Schema.Struct({
483
+ [PartTypeId]: Schema.tag(PartTypeId).pipe(
484
+ Schema.withDecodingDefaultKey(Effect.succeed(PartTypeId), { encodingStrategy: "omit" })
485
+ ),
486
+ metadata: ProviderMetadata.pipe(
487
+ Schema.withDecodingDefault(Effect.succeed({}))
488
+ )
489
+ })
490
+
491
+ /**
492
+ * Creates a new response content part of the specified type.
493
+ *
494
+ * **Example** (Creating response content parts)
495
+ *
496
+ * ```ts
497
+ * import { Response } from "effect/unstable/ai"
498
+ *
499
+ * const textPart = Response.makePart("text", {
500
+ * text: "Hello, world!"
501
+ * })
502
+ *
503
+ * const toolCallPart = Response.makePart("tool-call", {
504
+ * id: "call_123",
505
+ * name: "get_weather",
506
+ * params: { city: "San Francisco" },
507
+ * providerExecuted: false
508
+ * })
509
+ * ```
510
+ *
511
+ * @category constructors
512
+ * @since 4.0.0
513
+ */
514
+ export const makePart = <const Type extends AnyPart["type"]>(
515
+ /**
516
+ * The type of part to create.
517
+ */
518
+ type: Type,
519
+ /**
520
+ * Parameters specific to the part type being created.
521
+ */
522
+ params: Omit<Extract<AnyPart, { type: Type }>, typeof PartTypeId | "type" | "metadata"> & {
523
+ /**
524
+ * Optional provider-specific metadata for this part.
525
+ */
526
+ readonly metadata?: Extract<AnyPart, { type: Type }>["metadata"] | undefined
527
+ }
528
+ ): Extract<AnyPart, { type: Type }> => (({
529
+ ...params,
530
+ [PartTypeId]: PartTypeId,
531
+ type,
532
+ metadata: params.metadata ?? {}
533
+ }) as any)
534
+
535
+ /**
536
+ * A utility type for specifying the parameters required to construct a
537
+ * specific response part.
538
+ *
539
+ * @category utility types
540
+ * @since 4.0.0
541
+ */
542
+ export type ConstructorParams<Part extends AnyPart> =
543
+ & Omit<Part, typeof PartTypeId | "type" | "sourceType" | "metadata">
544
+ & {
545
+ /**
546
+ * Optional provider-specific metadata for this part.
547
+ */
548
+ readonly metadata?: Part["metadata"] | undefined
549
+ }
550
+
551
+ // =============================================================================
552
+ // Text Part
553
+ // =============================================================================
554
+
555
+ /**
556
+ * Response part representing plain text content.
557
+ *
558
+ * **Example** (Creating a text part)
559
+ *
560
+ * ```ts
561
+ * import { Response } from "effect/unstable/ai"
562
+ *
563
+ * const textPart: Response.TextPart = Response.makePart("text", {
564
+ * text: "The answer to your question is 42."
565
+ * })
566
+ * ```
567
+ *
568
+ * @category models
569
+ * @since 4.0.0
570
+ */
571
+ export interface TextPart extends BasePart<"text", TextPartMetadata> {
572
+ /**
573
+ * The text content.
574
+ */
575
+ readonly text: string
576
+ }
577
+
578
+ /**
579
+ * Encoded representation of text parts for serialization.
580
+ *
581
+ * @category models
582
+ * @since 4.0.0
583
+ */
584
+ export interface TextPartEncoded extends BasePartEncoded<"text", TextPartMetadata> {
585
+ /**
586
+ * The text content.
587
+ */
588
+ readonly text: string
589
+ }
590
+
591
+ /**
592
+ * Represents provider-specific metadata that can be associated with a
593
+ * `TextPart` through module augmentation.
594
+ *
595
+ * @category configuration
596
+ * @since 4.0.0
597
+ */
598
+ export interface TextPartMetadata extends ProviderMetadata {}
599
+
600
+ /**
601
+ * Schema for validation and encoding of text parts.
602
+ *
603
+ * @category schemas
604
+ * @since 4.0.0
605
+ */
606
+ export const TextPart: Schema.Struct<{
607
+ readonly type: Schema.tag<"text">
608
+ readonly text: Schema.String
609
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
610
+ readonly metadata: Schema.withDecodingDefault<
611
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
612
+ >
613
+ }> = Schema.Struct({
614
+ ...BasePart.fields,
615
+ type: Schema.tag("text"),
616
+ text: Schema.String
617
+ }).annotate({ identifier: "TextPart" }) satisfies Schema.Codec<TextPart, TextPartEncoded>
618
+
619
+ // =============================================================================
620
+ // Text Start Part
621
+ // =============================================================================
622
+
623
+ /**
624
+ * Response part indicating the start of streaming text content with a unique
625
+ * text chunk identifier.
626
+ *
627
+ * @category models
628
+ * @since 4.0.0
629
+ */
630
+ export interface TextStartPart extends BasePart<"text-start", TextStartPartMetadata> {
631
+ /**
632
+ * Unique identifier for this text chunk.
633
+ */
634
+ readonly id: string
635
+ }
636
+
637
+ /**
638
+ * Encoded representation of text start parts for serialization.
639
+ *
640
+ * @category models
641
+ * @since 4.0.0
642
+ */
643
+ export interface TextStartPartEncoded extends BasePartEncoded<"text-start", TextStartPartMetadata> {
644
+ /**
645
+ * Unique identifier for this text chunk.
646
+ */
647
+ readonly id: string
648
+ }
649
+
650
+ /**
651
+ * Represents provider-specific metadata that can be associated with a
652
+ * `TextStartPart` through module augmentation.
653
+ *
654
+ * @category configuration
655
+ * @since 4.0.0
656
+ */
657
+ export interface TextStartPartMetadata extends ProviderMetadata {}
658
+
659
+ /**
660
+ * Schema for validation and encoding of text start parts.
661
+ *
662
+ * @category schemas
663
+ * @since 4.0.0
664
+ */
665
+ export const TextStartPart: Schema.Struct<{
666
+ readonly type: Schema.tag<"text-start">
667
+ readonly id: Schema.String
668
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
669
+ readonly metadata: Schema.withDecodingDefault<
670
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
671
+ >
672
+ }> = Schema.Struct({
673
+ ...BasePart.fields,
674
+ type: Schema.tag("text-start"),
675
+ id: Schema.String
676
+ }).annotate({ identifier: "TextStartPart" }) satisfies Schema.Codec<TextStartPart, TextStartPartEncoded>
677
+
678
+ // =============================================================================
679
+ // Text Delta Part
680
+ // =============================================================================
681
+
682
+ /**
683
+ * Response part containing incremental text content to be added to the existing
684
+ * text chunk with the same unique identifier.
685
+ *
686
+ * @category models
687
+ * @since 4.0.0
688
+ */
689
+ export interface TextDeltaPart extends BasePart<"text-delta", TextDeltaPartMetadata> {
690
+ /**
691
+ * Unique identifier matching the corresponding text chunk.
692
+ */
693
+ readonly id: string
694
+ /**
695
+ * The incremental text content to add.
696
+ */
697
+ readonly delta: string
698
+ }
699
+
700
+ /**
701
+ * Encoded representation of text delta parts for serialization.
702
+ *
703
+ * @category models
704
+ * @since 4.0.0
705
+ */
706
+ export interface TextDeltaPartEncoded extends BasePartEncoded<"text-delta", TextDeltaPartMetadata> {
707
+ /**
708
+ * Unique identifier matching the corresponding text chunk.
709
+ */
710
+ readonly id: string
711
+ /**
712
+ * The incremental text content to add.
713
+ */
714
+ readonly delta: string
715
+ }
716
+
717
+ /**
718
+ * Represents provider-specific metadata that can be associated with a
719
+ * `TextDeltaPart` through module augmentation.
720
+ *
721
+ * @category configuration
722
+ * @since 4.0.0
723
+ */
724
+ export interface TextDeltaPartMetadata extends ProviderMetadata {}
725
+
726
+ /**
727
+ * Schema for validation and encoding of text delta parts.
728
+ *
729
+ * @category schemas
730
+ * @since 4.0.0
731
+ */
732
+ export const TextDeltaPart: Schema.Struct<{
733
+ readonly type: Schema.tag<"text-delta">
734
+ readonly id: Schema.String
735
+ readonly delta: Schema.String
736
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
737
+ readonly metadata: Schema.withDecodingDefault<
738
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
739
+ >
740
+ }> = Schema.Struct({
741
+ ...BasePart.fields,
742
+ type: Schema.tag("text-delta"),
743
+ id: Schema.String,
744
+ delta: Schema.String
745
+ }).annotate({ identifier: "TextDeltaPart" }) satisfies Schema.Codec<TextDeltaPart, TextDeltaPartEncoded>
746
+
747
+ // =============================================================================
748
+ // Text End Part
749
+ // =============================================================================
750
+
751
+ /**
752
+ * Response part indicating the completion of a streaming text chunk.
753
+ *
754
+ * @category models
755
+ * @since 4.0.0
756
+ */
757
+ export interface TextEndPart extends BasePart<"text-end", TextEndPartMetadata> {
758
+ /**
759
+ * Unique identifier matching the corresponding text chunk.
760
+ */
761
+ readonly id: string
762
+ }
763
+
764
+ /**
765
+ * Encoded representation of text end parts for serialization.
766
+ *
767
+ * @category models
768
+ * @since 4.0.0
769
+ */
770
+ export interface TextEndPartEncoded extends BasePartEncoded<"text-end", TextEndPartMetadata> {
771
+ /**
772
+ * Unique identifier matching the corresponding text chunk.
773
+ */
774
+ readonly id: string
775
+ }
776
+
777
+ /**
778
+ * Represents provider-specific metadata that can be associated with a
779
+ * `TextEndPart` through module augmentation.
780
+ *
781
+ * @category configuration
782
+ * @since 4.0.0
783
+ */
784
+ export interface TextEndPartMetadata extends ProviderMetadata {}
785
+
786
+ /**
787
+ * Schema for validation and encoding of text end parts.
788
+ *
789
+ * @category schemas
790
+ * @since 4.0.0
791
+ */
792
+ export const TextEndPart: Schema.Struct<{
793
+ readonly type: Schema.tag<"text-end">
794
+ readonly id: Schema.String
795
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
796
+ readonly metadata: Schema.withDecodingDefault<
797
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
798
+ >
799
+ }> = Schema.Struct({
800
+ ...BasePart.fields,
801
+ type: Schema.tag("text-end"),
802
+ id: Schema.String
803
+ }).annotate({ identifier: "TextEndPart" }) satisfies Schema.Codec<TextEndPart, TextEndPartEncoded>
804
+
805
+ // =============================================================================
806
+ // Reasoning Part
807
+ // =============================================================================
808
+
809
+ /**
810
+ * Response part carrying provider-supplied reasoning text, such as an exposed
811
+ * reasoning summary or explanation. Do not assume it contains hidden
812
+ * chain-of-thought.
813
+ *
814
+ * **Example** (Creating a reasoning part)
815
+ *
816
+ * ```ts
817
+ * import { Response } from "effect/unstable/ai"
818
+ *
819
+ * const reasoningPart: Response.ReasoningPart = Response.makePart("reasoning", {
820
+ * text:
821
+ * "Let me think step by step: First I need to analyze the user's question..."
822
+ * })
823
+ * ```
824
+ *
825
+ * @category models
826
+ * @since 4.0.0
827
+ */
828
+ export interface ReasoningPart extends BasePart<"reasoning", ReasoningPartMetadata> {
829
+ /**
830
+ * The reasoning or thought process text.
831
+ */
832
+ readonly text: string
833
+ }
834
+
835
+ /**
836
+ * Encoded representation of reasoning parts for serialization.
837
+ *
838
+ * @category models
839
+ * @since 4.0.0
840
+ */
841
+ export interface ReasoningPartEncoded extends BasePartEncoded<"reasoning", ReasoningPartMetadata> {
842
+ /**
843
+ * The reasoning or thought process text.
844
+ */
845
+ readonly text: string
846
+ }
847
+
848
+ /**
849
+ * Represents provider-specific metadata that can be associated with a
850
+ * `ReasoningPart` through module augmentation.
851
+ *
852
+ * @category configuration
853
+ * @since 4.0.0
854
+ */
855
+ export interface ReasoningPartMetadata extends ProviderMetadata {}
856
+
857
+ /**
858
+ * Schema for validation and encoding of reasoning parts.
859
+ *
860
+ * @category schemas
861
+ * @since 4.0.0
862
+ */
863
+ export const ReasoningPart: Schema.Struct<{
864
+ readonly type: Schema.tag<"reasoning">
865
+ readonly text: Schema.String
866
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
867
+ readonly metadata: Schema.withDecodingDefault<
868
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
869
+ >
870
+ }> = Schema.Struct({
871
+ ...BasePart.fields,
872
+ type: Schema.tag("reasoning"),
873
+ text: Schema.String
874
+ }).annotate({ identifier: "ReasoningPart" }) satisfies Schema.Codec<ReasoningPart, ReasoningPartEncoded>
875
+
876
+ // =============================================================================
877
+ // Reasoning Start Part
878
+ // =============================================================================
879
+
880
+ /**
881
+ * Response part indicating the start of streaming reasoning content with a
882
+ * unique reasoning chunk identifier.
883
+ *
884
+ * @category models
885
+ * @since 4.0.0
886
+ */
887
+ export interface ReasoningStartPart extends BasePart<"reasoning-start", ReasoningStartPartMetadata> {
888
+ /**
889
+ * Unique identifier for this reasoning chunk.
890
+ */
891
+ readonly id: string
892
+ }
893
+
894
+ /**
895
+ * Encoded representation of reasoning start parts for serialization.
896
+ *
897
+ * @category models
898
+ * @since 4.0.0
899
+ */
900
+ export interface ReasoningStartPartEncoded extends BasePartEncoded<"reasoning-start", ReasoningStartPartMetadata> {
901
+ /**
902
+ * Unique identifier for this reasoning stream.
903
+ */
904
+ readonly id: string
905
+ }
906
+
907
+ /**
908
+ * Represents provider-specific metadata that can be associated with a
909
+ * `ReasoningStartPart` through module augmentation.
910
+ *
911
+ * @category configuration
912
+ * @since 4.0.0
913
+ */
914
+ export interface ReasoningStartPartMetadata extends ProviderMetadata {}
915
+
916
+ /**
917
+ * Schema for validation and encoding of reasoning start parts.
918
+ *
919
+ * @category schemas
920
+ * @since 4.0.0
921
+ */
922
+ export const ReasoningStartPart: Schema.Struct<{
923
+ readonly type: Schema.tag<"reasoning-start">
924
+ readonly id: Schema.String
925
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
926
+ readonly metadata: Schema.withDecodingDefault<
927
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
928
+ >
929
+ }> = Schema.Struct({
930
+ ...BasePart.fields,
931
+ type: Schema.tag("reasoning-start"),
932
+ id: Schema.String
933
+ }).annotate({ identifier: "ReasoningStartPart" }) satisfies Schema.Codec<ReasoningStartPart, ReasoningStartPartEncoded>
934
+
935
+ // =============================================================================
936
+ // Reasoning Delta Part
937
+ // =============================================================================
938
+
939
+ /**
940
+ * Response part containing incremental reasoning content to be added to the
941
+ * existing chunk of reasoning text with the same unique identifier.
942
+ *
943
+ * @category models
944
+ * @since 4.0.0
945
+ */
946
+ export interface ReasoningDeltaPart extends BasePart<"reasoning-delta", ReasoningDeltaPartMetadata> {
947
+ /**
948
+ * Unique identifier matching the corresponding reasoning chunk.
949
+ */
950
+ readonly id: string
951
+ /**
952
+ * The incremental reasoning content to add.
953
+ */
954
+ readonly delta: string
955
+ }
956
+
957
+ /**
958
+ * Encoded representation of reasoning delta parts for serialization.
959
+ *
960
+ * @category models
961
+ * @since 4.0.0
962
+ */
963
+ export interface ReasoningDeltaPartEncoded extends BasePartEncoded<"reasoning-delta", ReasoningDeltaPartMetadata> {
964
+ /**
965
+ * Unique identifier matching the corresponding reasoning chunk.
966
+ */
967
+ readonly id: string
968
+ /**
969
+ * The incremental reasoning content to add.
970
+ */
971
+ readonly delta: string
972
+ }
973
+
974
+ /**
975
+ * Represents provider-specific metadata that can be associated with a
976
+ * `ReasoningDeltaPart` through module augmentation.
977
+ *
978
+ * @category configuration
979
+ * @since 4.0.0
980
+ */
981
+ export interface ReasoningDeltaPartMetadata extends ProviderMetadata {}
982
+
983
+ /**
984
+ * Schema for validation and encoding of reasoning delta parts.
985
+ *
986
+ * @category schemas
987
+ * @since 4.0.0
988
+ */
989
+ export const ReasoningDeltaPart: Schema.Struct<{
990
+ readonly type: Schema.tag<"reasoning-delta">
991
+ readonly id: Schema.String
992
+ readonly delta: Schema.String
993
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
994
+ readonly metadata: Schema.withDecodingDefault<
995
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
996
+ >
997
+ }> = Schema.Struct({
998
+ ...BasePart.fields,
999
+ type: Schema.tag("reasoning-delta"),
1000
+ id: Schema.String,
1001
+ delta: Schema.String
1002
+ }).annotate({ identifier: "ReasoningDeltaPart" }) satisfies Schema.Codec<ReasoningDeltaPart, ReasoningDeltaPartEncoded>
1003
+
1004
+ // =============================================================================
1005
+ // Reasoning End Part
1006
+ // =============================================================================
1007
+
1008
+ /**
1009
+ * Response part indicating the completion of a streaming reasoning chunk.
1010
+ *
1011
+ * @category models
1012
+ * @since 4.0.0
1013
+ */
1014
+ export interface ReasoningEndPart extends BasePart<"reasoning-end", ReasoningEndPartMetadata> {
1015
+ /**
1016
+ * Unique identifier matching the corresponding reasoning chunk.
1017
+ */
1018
+ readonly id: string
1019
+ }
1020
+
1021
+ /**
1022
+ * Encoded representation of reasoning end parts for serialization.
1023
+ *
1024
+ * @category models
1025
+ * @since 4.0.0
1026
+ */
1027
+ export interface ReasoningEndPartEncoded extends BasePartEncoded<"reasoning-end", ReasoningEndPartMetadata> {
1028
+ /**
1029
+ * Unique identifier matching the corresponding reasoning chunk.
1030
+ */
1031
+ readonly id: string
1032
+ }
1033
+
1034
+ /**
1035
+ * Represents provider-specific metadata that can be associated with a
1036
+ * `ReasoningEndPart` through module augmentation.
1037
+ *
1038
+ * @category configuration
1039
+ * @since 4.0.0
1040
+ */
1041
+ export interface ReasoningEndPartMetadata extends ProviderMetadata {}
1042
+
1043
+ /**
1044
+ * Schema for validation and encoding of reasoning end parts.
1045
+ *
1046
+ * @category schemas
1047
+ * @since 4.0.0
1048
+ */
1049
+ export const ReasoningEndPart: Schema.Struct<{
1050
+ readonly type: Schema.tag<"reasoning-end">
1051
+ readonly id: Schema.String
1052
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
1053
+ readonly metadata: Schema.withDecodingDefault<
1054
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
1055
+ >
1056
+ }> = Schema.Struct({
1057
+ ...BasePart.fields,
1058
+ type: Schema.tag("reasoning-end"),
1059
+ id: Schema.String
1060
+ }).annotate({ identifier: "ReasoningEndPart" }) satisfies Schema.Codec<ReasoningEndPart, ReasoningEndPartEncoded>
1061
+
1062
+ // =============================================================================
1063
+ // Tool Params Start Part
1064
+ // =============================================================================
1065
+
1066
+ /**
1067
+ * Response part indicating the start of streaming tool parameters.
1068
+ *
1069
+ * **Details**
1070
+ *
1071
+ * Marks the beginning of tool parameter streaming with metadata about the tool
1072
+ * call.
1073
+ *
1074
+ * @category models
1075
+ * @since 4.0.0
1076
+ */
1077
+ export interface ToolParamsStartPart extends BasePart<"tool-params-start", ToolParamsStartPartMetadata> {
1078
+ /**
1079
+ * Unique identifier for this tool parameter chunk.
1080
+ */
1081
+ readonly id: string
1082
+ /**
1083
+ * Name of the tool being called, which corresponds to the name of the tool
1084
+ * in the `Toolkit` included with the request.
1085
+ */
1086
+ readonly name: string
1087
+ /**
1088
+ * Whether the tool was executed by the provider (true) or framework (false).
1089
+ */
1090
+ readonly providerExecuted: boolean
1091
+ }
1092
+
1093
+ /**
1094
+ * Encoded representation of tool params start parts for serialization.
1095
+ *
1096
+ * @category models
1097
+ * @since 4.0.0
1098
+ */
1099
+ export interface ToolParamsStartPartEncoded extends BasePartEncoded<"tool-params-start", ToolParamsStartPartMetadata> {
1100
+ /**
1101
+ * Unique identifier for this tool parameter chunk.
1102
+ */
1103
+ readonly id: string
1104
+ /**
1105
+ * Name of the tool being called, which corresponds to the name of the tool
1106
+ * in the `Toolkit` included with the request.
1107
+ */
1108
+ readonly name: string
1109
+ /**
1110
+ * Whether the tool was executed by the provider (true) or framework (false).
1111
+ */
1112
+ readonly providerExecuted?: boolean
1113
+ }
1114
+
1115
+ /**
1116
+ * Represents provider-specific metadata that can be associated with a
1117
+ * `ToolParamsStartPart` through module augmentation.
1118
+ *
1119
+ * @category configuration
1120
+ * @since 4.0.0
1121
+ */
1122
+ export interface ToolParamsStartPartMetadata extends ProviderMetadata {}
1123
+
1124
+ /**
1125
+ * Schema for validation and encoding of tool params start parts.
1126
+ *
1127
+ * @category schemas
1128
+ * @since 4.0.0
1129
+ */
1130
+ export const ToolParamsStartPart: Schema.Struct<{
1131
+ readonly type: Schema.tag<"tool-params-start">
1132
+ readonly id: Schema.String
1133
+ readonly name: Schema.String
1134
+ readonly providerExecuted: Schema.withDecodingDefaultKey<Schema.Boolean>
1135
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
1136
+ readonly metadata: Schema.withDecodingDefault<
1137
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
1138
+ >
1139
+ }> = Schema.Struct({
1140
+ ...BasePart.fields,
1141
+ type: Schema.tag("tool-params-start"),
1142
+ id: Schema.String,
1143
+ name: Schema.String,
1144
+ providerExecuted: Schema.Boolean.pipe(Schema.withDecodingDefaultKey(Effect.succeed(false)))
1145
+ }).annotate({ identifier: "ToolParamsStartPart" }) satisfies Schema.Codec<
1146
+ ToolParamsStartPart,
1147
+ ToolParamsStartPartEncoded
1148
+ >
1149
+
1150
+ // =============================================================================
1151
+ // Tool Params Delta Part
1152
+ // =============================================================================
1153
+
1154
+ /**
1155
+ * Response part containing incremental tool parameter content.
1156
+ *
1157
+ * **Details**
1158
+ *
1159
+ * Represents a chunk of tool parameters being streamed, containing the
1160
+ * incremental JSON content that forms the tool parameters.
1161
+ *
1162
+ * @category models
1163
+ * @since 4.0.0
1164
+ */
1165
+ export interface ToolParamsDeltaPart extends BasePart<"tool-params-delta", ToolParamsDeltaPartMetadata> {
1166
+ /**
1167
+ * Unique identifier matching the corresponding tool parameter chunk.
1168
+ */
1169
+ readonly id: string
1170
+ /**
1171
+ * The incremental parameter content (typically JSON fragment) to add.
1172
+ */
1173
+ readonly delta: string
1174
+ }
1175
+
1176
+ /**
1177
+ * Encoded representation of tool params delta parts for serialization.
1178
+ *
1179
+ * @category models
1180
+ * @since 4.0.0
1181
+ */
1182
+ export interface ToolParamsDeltaPartEncoded extends BasePartEncoded<"tool-params-delta", ToolParamsDeltaPartMetadata> {
1183
+ /**
1184
+ * Unique identifier matching the corresponding tool parameter chunk.
1185
+ */
1186
+ readonly id: string
1187
+ /**
1188
+ * The incremental parameter content (typically JSON fragment) to add.
1189
+ */
1190
+ readonly delta: string
1191
+ }
1192
+
1193
+ /**
1194
+ * Represents provider-specific metadata that can be associated with a
1195
+ * `ToolParamsDeltaPart` through module augmentation.
1196
+ *
1197
+ * @category configuration
1198
+ * @since 4.0.0
1199
+ */
1200
+ export interface ToolParamsDeltaPartMetadata extends ProviderMetadata {}
1201
+
1202
+ /**
1203
+ * Schema for validation and encoding of tool params delta parts.
1204
+ *
1205
+ * @category schemas
1206
+ * @since 4.0.0
1207
+ */
1208
+ export const ToolParamsDeltaPart: Schema.Struct<{
1209
+ readonly type: Schema.tag<"tool-params-delta">
1210
+ readonly id: Schema.String
1211
+ readonly delta: Schema.String
1212
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
1213
+ readonly metadata: Schema.withDecodingDefault<
1214
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
1215
+ >
1216
+ }> = Schema.Struct({
1217
+ ...BasePart.fields,
1218
+ type: Schema.tag("tool-params-delta"),
1219
+ id: Schema.String,
1220
+ delta: Schema.String
1221
+ }).annotate({ identifier: "ToolParamsDeltaPart" }) satisfies Schema.Codec<
1222
+ ToolParamsDeltaPart,
1223
+ ToolParamsDeltaPartEncoded
1224
+ >
1225
+
1226
+ // =============================================================================
1227
+ // Tool Params End Part
1228
+ // =============================================================================
1229
+
1230
+ /**
1231
+ * Response part indicating the end of streaming tool parameters.
1232
+ *
1233
+ * **Details**
1234
+ *
1235
+ * Marks the completion of a tool parameter stream, indicating that all
1236
+ * parameter data has been sent and the tool call is ready to be executed.
1237
+ *
1238
+ * @category models
1239
+ * @since 4.0.0
1240
+ */
1241
+ export interface ToolParamsEndPart extends BasePart<"tool-params-end", ToolParamsEndPartMetadata> {
1242
+ /**
1243
+ * Unique identifier matching the corresponding tool parameter chunk.
1244
+ */
1245
+ readonly id: string
1246
+ }
1247
+
1248
+ /**
1249
+ * Encoded representation of tool params end parts for serialization.
1250
+ *
1251
+ * @category models
1252
+ * @since 4.0.0
1253
+ */
1254
+ export interface ToolParamsEndPartEncoded extends BasePartEncoded<"tool-params-end", ToolParamsEndPartMetadata> {
1255
+ /**
1256
+ * Unique identifier matching the corresponding tool parameter stream.
1257
+ */
1258
+ readonly id: string
1259
+ }
1260
+
1261
+ /**
1262
+ * Represents provider-specific metadata that can be associated with a
1263
+ * `ToolParamsEndPart` through module augmentation.
1264
+ *
1265
+ * @category configuration
1266
+ * @since 4.0.0
1267
+ */
1268
+ export interface ToolParamsEndPartMetadata extends ProviderMetadata {}
1269
+
1270
+ /**
1271
+ * Schema for validation and encoding of tool params end parts.
1272
+ *
1273
+ * @category schemas
1274
+ * @since 4.0.0
1275
+ */
1276
+ export const ToolParamsEndPart: Schema.Struct<{
1277
+ readonly type: Schema.tag<"tool-params-end">
1278
+ readonly id: Schema.String
1279
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
1280
+ readonly metadata: Schema.withDecodingDefault<
1281
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
1282
+ >
1283
+ }> = Schema.Struct({
1284
+ ...BasePart.fields,
1285
+ type: Schema.tag("tool-params-end"),
1286
+ id: Schema.String
1287
+ }).annotate({ identifier: "ToolParamsEndPart" }) satisfies Schema.Codec<ToolParamsEndPart, ToolParamsEndPartEncoded>
1288
+
1289
+ // =============================================================================
1290
+ // Tool Call Part
1291
+ // =============================================================================
1292
+
1293
+ /**
1294
+ * Response part representing a tool call request.
1295
+ *
1296
+ * **Example** (Creating a tool call part)
1297
+ *
1298
+ * ```ts
1299
+ * import { Schema } from "effect"
1300
+ * import { Response } from "effect/unstable/ai"
1301
+ *
1302
+ * const weatherParams = Schema.Struct({
1303
+ * city: Schema.String,
1304
+ * units: Schema.optional(Schema.Literals(["celsius", "fahrenheit"]))
1305
+ * })
1306
+ *
1307
+ * const toolCallPart: Response.ToolCallPart<
1308
+ * "get_weather",
1309
+ * {
1310
+ * readonly city: string
1311
+ * readonly units?: "celsius" | "fahrenheit"
1312
+ * }
1313
+ * > = Response.makePart("tool-call", {
1314
+ * id: "call_123",
1315
+ * name: "get_weather",
1316
+ * params: { city: "San Francisco", units: "celsius" },
1317
+ * providerExecuted: false
1318
+ * })
1319
+ * ```
1320
+ *
1321
+ * @category models
1322
+ * @since 4.0.0
1323
+ */
1324
+ export interface ToolCallPart<Name extends string, Params> extends BasePart<"tool-call", ToolCallPartMetadata> {
1325
+ /**
1326
+ * Unique identifier for this tool call.
1327
+ */
1328
+ readonly id: string
1329
+ /**
1330
+ * Name of the tool being called, which corresponds to the name of the tool
1331
+ * in the `Toolkit` included with the request.
1332
+ */
1333
+ readonly name: Name
1334
+ /**
1335
+ * Parameters to pass to the tool.
1336
+ */
1337
+ readonly params: Params
1338
+ /**
1339
+ * Whether the tool was executed by the provider (true) or framework (false).
1340
+ */
1341
+ readonly providerExecuted: boolean
1342
+ }
1343
+
1344
+ /**
1345
+ * Encoded representation of tool call parts for serialization.
1346
+ *
1347
+ * @category models
1348
+ * @since 4.0.0
1349
+ */
1350
+ export interface ToolCallPartEncoded extends BasePartEncoded<"tool-call", ToolCallPartMetadata> {
1351
+ /**
1352
+ * Unique identifier for this tool call.
1353
+ */
1354
+ readonly id: string
1355
+ /**
1356
+ * Name of the tool being called, which corresponds to the name of the tool
1357
+ * in the `Toolkit` included with the request.
1358
+ */
1359
+ readonly name: string
1360
+ /**
1361
+ * Parameters to pass to the tool.
1362
+ */
1363
+ readonly params: unknown
1364
+ /**
1365
+ * Whether the tool was executed by the provider (true) or framework (false).
1366
+ */
1367
+ readonly providerExecuted?: boolean | undefined
1368
+ }
1369
+
1370
+ /**
1371
+ * Represents provider-specific metadata that can be associated with a
1372
+ * `ToolCallPart` through module augmentation.
1373
+ *
1374
+ * @category configuration
1375
+ * @since 4.0.0
1376
+ */
1377
+ export interface ToolCallPartMetadata extends ProviderMetadata {}
1378
+
1379
+ /**
1380
+ * Creates a Schema for tool call parts with specific tool name and parameters.
1381
+ *
1382
+ * @category schemas
1383
+ * @since 4.0.0
1384
+ */
1385
+ export const ToolCallPart: <const Name extends string, Params extends Schema.Top>(
1386
+ name: Name,
1387
+ params: Params
1388
+ ) => Schema.Struct<
1389
+ {
1390
+ readonly type: Schema.Literal<"tool-call">
1391
+ readonly id: Schema.String
1392
+ readonly name: Schema.Literal<Name>
1393
+ readonly params: Params
1394
+ readonly providerExecuted: Schema.withDecodingDefaultKey<Schema.Boolean>
1395
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
1396
+ readonly metadata: Schema.withDecodingDefault<
1397
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
1398
+ >
1399
+ }
1400
+ > = <const Name extends string, Params extends Schema.Top>(
1401
+ name: Name,
1402
+ params: Params
1403
+ ) =>
1404
+ Schema.Struct({
1405
+ ...BasePart.fields,
1406
+ type: Schema.Literal("tool-call"),
1407
+ id: Schema.String,
1408
+ name: Schema.Literal(name),
1409
+ params,
1410
+ providerExecuted: Schema.Boolean.pipe(Schema.withDecodingDefaultKey(Effect.succeed(false)))
1411
+ }).annotate({ identifier: "ToolCallPart" }) as any
1412
+
1413
+ /**
1414
+ * Constructs a new tool call part.
1415
+ *
1416
+ * @category constructors
1417
+ * @since 4.0.0
1418
+ */
1419
+ export const toolCallPart = <const Name extends string, Params>(
1420
+ params: ConstructorParams<ToolCallPart<Name, Params>>
1421
+ ): ToolCallPart<Name, Params> => makePart("tool-call", params)
1422
+
1423
+ // =============================================================================
1424
+ // Tool Call Result Part
1425
+ // =============================================================================
1426
+
1427
+ /**
1428
+ * The base fields of a tool result part.
1429
+ *
1430
+ * @category models
1431
+ * @since 4.0.0
1432
+ */
1433
+ export interface BaseToolResult<Name extends string> extends BasePart<"tool-result", ToolResultPartMetadata> {
1434
+ /**
1435
+ * Unique identifier matching the original tool call.
1436
+ */
1437
+ readonly id: string
1438
+ /**
1439
+ * Name of the tool being called, which corresponds to the name of the tool
1440
+ * in the `Toolkit` included with the request.
1441
+ */
1442
+ readonly name: Name
1443
+ /**
1444
+ * The encoded result for serialization purposes.
1445
+ */
1446
+ readonly encodedResult: unknown
1447
+ /**
1448
+ * Whether the tool was executed by the provider (true) or framework (false).
1449
+ */
1450
+ readonly providerExecuted: boolean
1451
+ /**
1452
+ * Whether this is a preliminary (intermediate) result.
1453
+ *
1454
+ * **Details**
1455
+ *
1456
+ * Preliminary results represent progress updates during streaming tool
1457
+ * execution. Only the final result (where `preliminary` is `false` or
1458
+ * `undefined`) should be used as the authoritative output.
1459
+ *
1460
+ * **Gotchas**
1461
+ *
1462
+ * Only applicable for framework-executed tools during streaming.
1463
+ */
1464
+ readonly preliminary: boolean
1465
+ }
1466
+
1467
+ /**
1468
+ * Represents a successful tool call result.
1469
+ *
1470
+ * @category models
1471
+ * @since 4.0.0
1472
+ */
1473
+ export interface ToolResultSuccess<Name extends string, Success> extends BaseToolResult<Name> {
1474
+ /**
1475
+ * The decoded success returned by the tool execution.
1476
+ */
1477
+ readonly result: Success
1478
+ /**
1479
+ * Whether or not the result of executing the tool call handler was an error.
1480
+ */
1481
+ readonly isFailure: false
1482
+ }
1483
+
1484
+ /**
1485
+ * Represents a failed tool call result.
1486
+ *
1487
+ * @category models
1488
+ * @since 4.0.0
1489
+ */
1490
+ export interface ToolResultFailure<Name extends string, Failure> extends BaseToolResult<Name> {
1491
+ /**
1492
+ * The decoded failure returned by the tool execution.
1493
+ */
1494
+ readonly result: Failure
1495
+ /**
1496
+ * Whether or not the result of executing the tool call handler was an error.
1497
+ */
1498
+ readonly isFailure: true
1499
+ }
1500
+
1501
+ /**
1502
+ * Response part representing the result of a tool call.
1503
+ *
1504
+ * **Example** (Creating a tool result part)
1505
+ *
1506
+ * ```ts
1507
+ * import { Response } from "effect/unstable/ai"
1508
+ *
1509
+ * interface WeatherData {
1510
+ * temperature: number
1511
+ * condition: string
1512
+ * humidity: number
1513
+ * }
1514
+ *
1515
+ * const toolResultPart: Response.ToolResultPart<
1516
+ * "get_weather",
1517
+ * WeatherData,
1518
+ * never
1519
+ * > = Response.toolResultPart({
1520
+ * id: "call_123",
1521
+ * name: "get_weather",
1522
+ * isFailure: false,
1523
+ * result: {
1524
+ * temperature: 22,
1525
+ * condition: "sunny",
1526
+ * humidity: 65
1527
+ * },
1528
+ * encodedResult: {
1529
+ * temperature: 22,
1530
+ * condition: "sunny",
1531
+ * humidity: 65
1532
+ * },
1533
+ * providerExecuted: false,
1534
+ * preliminary: false
1535
+ * })
1536
+ * ```
1537
+ *
1538
+ * @category models
1539
+ * @since 4.0.0
1540
+ */
1541
+ export type ToolResultPart<Name extends string, Success, Failure> =
1542
+ | ToolResultSuccess<Name, Success>
1543
+ | ToolResultFailure<Name, Failure>
1544
+
1545
+ /**
1546
+ * Encoded representation of tool result parts for serialization.
1547
+ *
1548
+ * @category models
1549
+ * @since 4.0.0
1550
+ */
1551
+ export interface ToolResultPartEncoded extends BasePartEncoded<"tool-result", ToolResultPartMetadata> {
1552
+ /**
1553
+ * Unique identifier matching the original tool call.
1554
+ */
1555
+ readonly id: string
1556
+ /**
1557
+ * Name of the tool being called, which corresponds to the name of the tool
1558
+ * in the `Toolkit` included with the request.
1559
+ */
1560
+ readonly name: string
1561
+ /**
1562
+ * The result returned by the tool execution.
1563
+ */
1564
+ readonly result: unknown
1565
+ /**
1566
+ * Whether or not the result of executing the tool call handler was an error.
1567
+ */
1568
+ readonly isFailure: boolean
1569
+ /**
1570
+ * Whether the tool was executed by the provider (true) or framework (false).
1571
+ */
1572
+ readonly providerExecuted?: boolean | undefined
1573
+ /**
1574
+ * Whether this is a preliminary (intermediate) result.
1575
+ *
1576
+ * **Gotchas**
1577
+ *
1578
+ * Only applicable for framework-executed tools during streaming.
1579
+ */
1580
+ readonly preliminary?: boolean | undefined
1581
+ }
1582
+
1583
+ /**
1584
+ * Represents provider-specific metadata that can be associated with a
1585
+ * `ToolResultPart` through module augmentation.
1586
+ *
1587
+ * @category configuration
1588
+ * @since 4.0.0
1589
+ */
1590
+ export interface ToolResultPartMetadata extends ProviderMetadata {}
1591
+
1592
+ /**
1593
+ * Creates a Schema for tool result parts with specific tool name and result type.
1594
+ *
1595
+ * @category schemas
1596
+ * @since 4.0.0
1597
+ */
1598
+ export const ToolResultPart: <const Name extends string, Success extends Schema.Top, Failure extends Schema.Top>(
1599
+ name: Name,
1600
+ success: Success,
1601
+ failure: Failure
1602
+ ) => Schema.decodeTo<
1603
+ Schema.Struct<
1604
+ {
1605
+ readonly "~effect/ai/Content/Part": Schema.Literal<"~effect/ai/Content/Part">
1606
+ readonly result: Schema.Union<readonly [Success, Failure]>
1607
+ readonly providerExecuted: Schema.Boolean
1608
+ readonly metadata: Schema.$Record<
1609
+ Schema.String,
1610
+ Schema.NullOr<Schema.Codec<Schema.Json>>
1611
+ >
1612
+ readonly encodedResult: Schema.toEncoded<Schema.Union<readonly [Success, Failure]>>
1613
+ readonly preliminary: Schema.Boolean
1614
+ readonly id: Schema.String
1615
+ readonly type: Schema.Literal<"tool-result">
1616
+ readonly isFailure: Schema.Boolean
1617
+ readonly name: Schema.Literal<Name>
1618
+ }
1619
+ >,
1620
+ Schema.Struct<
1621
+ {
1622
+ readonly result: Schema.toEncoded<Schema.Union<readonly [Success, Failure]>>
1623
+ readonly providerExecuted: Schema.optional<Schema.Boolean>
1624
+ readonly metadata: Schema.optional<
1625
+ Schema.$Record<Schema.String, Schema.NullOr<Schema.Codec<Schema.Json>>>
1626
+ >
1627
+ readonly preliminary: Schema.optional<Schema.Boolean>
1628
+ readonly id: Schema.String
1629
+ readonly type: Schema.Literal<"tool-result">
1630
+ readonly isFailure: Schema.Boolean
1631
+ readonly name: Schema.Literal<Name>
1632
+ }
1633
+ >
1634
+ > = <
1635
+ const Name extends string,
1636
+ Success extends Schema.Top,
1637
+ Failure extends Schema.Top
1638
+ >(
1639
+ name: Name,
1640
+ success: Success,
1641
+ failure: Failure
1642
+ ) => {
1643
+ const ResultSchema = Schema.Union([success, failure])
1644
+ const Common = {
1645
+ id: Schema.String,
1646
+ type: Schema.Literal("tool-result"),
1647
+ isFailure: Schema.Boolean,
1648
+ name: Schema.Literal(name)
1649
+ }
1650
+ const Decoded = Schema.Struct({
1651
+ ...Common,
1652
+ [PartTypeId]: Schema.Literal(PartTypeId),
1653
+ result: ResultSchema,
1654
+ providerExecuted: Schema.Boolean,
1655
+ metadata: ProviderMetadata,
1656
+ encodedResult: Schema.toEncoded(ResultSchema),
1657
+ preliminary: Schema.Boolean
1658
+ })
1659
+ const Encoded = Schema.Struct({
1660
+ ...Common,
1661
+ result: Schema.toEncoded(ResultSchema),
1662
+ providerExecuted: Schema.optional(Schema.Boolean),
1663
+ metadata: Schema.optional(ProviderMetadata),
1664
+ preliminary: Schema.optional(Schema.Boolean)
1665
+ })
1666
+ return Decoded.pipe(Schema.encodeTo(
1667
+ Encoded,
1668
+ SchemaTransformation.transform({
1669
+ decode: (encoded) => ({
1670
+ ...encoded,
1671
+ [PartTypeId]: PartTypeId,
1672
+ providerExecuted: encoded.providerExecuted ?? false,
1673
+ metadata: encoded.metadata ?? {},
1674
+ encodedResult: encoded.result,
1675
+ preliminary: encoded.preliminary ?? false
1676
+ }),
1677
+ encode: identity
1678
+ })
1679
+ )).annotate({ identifier: `ToolResultPart(${name})` }) satisfies Schema.Codec<
1680
+ ToolResultPart<Name, Success["Type"], Failure["Type"]>,
1681
+ ToolResultPartEncoded,
1682
+ Success["EncodingServices"] | Failure["EncodingServices"],
1683
+ Success["DecodingServices"] | Failure["DecodingServices"]
1684
+ >
1685
+ }
1686
+
1687
+ /**
1688
+ * Constructs a new tool result part.
1689
+ *
1690
+ * @category constructors
1691
+ * @since 4.0.0
1692
+ */
1693
+ export const toolResultPart = <const Params extends ConstructorParams<ToolResultPart<string, unknown, unknown>>>(
1694
+ params: Params
1695
+ ): Params extends {
1696
+ readonly name: infer Name extends string
1697
+ readonly isFailure: false
1698
+ readonly result: infer Success
1699
+ } ? ToolResultPart<Name, Success, never>
1700
+ : Params extends {
1701
+ readonly name: infer Name extends string
1702
+ readonly isFailure: true
1703
+ readonly result: infer Failure
1704
+ } ? ToolResultPart<Name, never, Failure>
1705
+ : never => makePart("tool-result", params) as any
1706
+
1707
+ // =============================================================================
1708
+ // Tool Approval Request Part
1709
+ // =============================================================================
1710
+
1711
+ /**
1712
+ * Response part representing a tool approval request.
1713
+ *
1714
+ * **Details**
1715
+ *
1716
+ * Emitted when a tool requires user approval before execution. The framework
1717
+ * checks the tool's `needsApproval` property and emits this part instead of
1718
+ * executing the tool when approval is required.
1719
+ *
1720
+ * **Example** (Creating an approval request part)
1721
+ *
1722
+ * ```ts
1723
+ * import { Response } from "effect/unstable/ai"
1724
+ *
1725
+ * const approvalRequest: Response.ToolApprovalRequestPart = Response.makePart(
1726
+ * "tool-approval-request",
1727
+ * {
1728
+ * approvalId: "approval_123",
1729
+ * toolCallId: "call_456"
1730
+ * }
1731
+ * )
1732
+ * ```
1733
+ *
1734
+ * @category models
1735
+ * @since 4.0.0
1736
+ */
1737
+ export interface ToolApprovalRequestPart extends BasePart<"tool-approval-request", ToolApprovalRequestPartMetadata> {
1738
+ /**
1739
+ * Unique identifier for this approval flow.
1740
+ */
1741
+ readonly approvalId: string
1742
+ /**
1743
+ * The tool call ID requiring approval.
1744
+ */
1745
+ readonly toolCallId: string
1746
+ }
1747
+
1748
+ /**
1749
+ * Encoded representation of tool approval request parts for serialization.
1750
+ *
1751
+ * @category models
1752
+ * @since 4.0.0
1753
+ */
1754
+ export interface ToolApprovalRequestPartEncoded
1755
+ extends BasePartEncoded<"tool-approval-request", ToolApprovalRequestPartMetadata>
1756
+ {
1757
+ /**
1758
+ * Unique identifier for this approval flow.
1759
+ */
1760
+ readonly approvalId: string
1761
+ /**
1762
+ * The tool call ID requiring approval.
1763
+ */
1764
+ readonly toolCallId: string
1765
+ }
1766
+
1767
+ /**
1768
+ * Represents provider-specific metadata that can be associated with a
1769
+ * `ToolApprovalRequestPart` through module augmentation.
1770
+ *
1771
+ * @category configuration
1772
+ * @since 4.0.0
1773
+ */
1774
+ export interface ToolApprovalRequestPartMetadata extends ProviderMetadata {}
1775
+
1776
+ /**
1777
+ * Schema for validation and encoding of tool approval request parts.
1778
+ *
1779
+ * @category schemas
1780
+ * @since 4.0.0
1781
+ */
1782
+ export const ToolApprovalRequestPart: Schema.Struct<{
1783
+ readonly type: Schema.tag<"tool-approval-request">
1784
+ readonly approvalId: Schema.String
1785
+ readonly toolCallId: Schema.String
1786
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
1787
+ readonly metadata: Schema.withDecodingDefault<
1788
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
1789
+ >
1790
+ }> = Schema.Struct({
1791
+ ...BasePart.fields,
1792
+ type: Schema.tag("tool-approval-request"),
1793
+ approvalId: Schema.String,
1794
+ toolCallId: Schema.String
1795
+ }).annotate({ identifier: "ToolApprovalRequestPart" }) satisfies Schema.Codec<
1796
+ ToolApprovalRequestPart,
1797
+ ToolApprovalRequestPartEncoded
1798
+ >
1799
+
1800
+ /**
1801
+ * Constructs a new tool approval request part.
1802
+ *
1803
+ * @category constructors
1804
+ * @since 4.0.0
1805
+ */
1806
+ export const toolApprovalRequestPart = (
1807
+ params: ConstructorParams<ToolApprovalRequestPart>
1808
+ ): ToolApprovalRequestPart => makePart("tool-approval-request", params as any)
1809
+
1810
+ // =============================================================================
1811
+ // File Part
1812
+ // =============================================================================
1813
+
1814
+ /**
1815
+ * Response part representing a file attachment.
1816
+ *
1817
+ * **Details**
1818
+ *
1819
+ * Supports various file types including images, documents, and binary data.
1820
+ *
1821
+ * **Example** (Creating a file part)
1822
+ *
1823
+ * ```ts
1824
+ * import { Response } from "effect/unstable/ai"
1825
+ *
1826
+ * const imagePart: Response.FilePart = Response.makePart("file", {
1827
+ * mediaType: "image/jpeg",
1828
+ * data: new Uint8Array([1, 2, 3])
1829
+ * })
1830
+ * ```
1831
+ *
1832
+ * @category models
1833
+ * @since 4.0.0
1834
+ */
1835
+ export interface FilePart extends BasePart<"file", FilePartMetadata> {
1836
+ /**
1837
+ * MIME type of the file (e.g., "image/jpeg", "application/pdf").
1838
+ */
1839
+ readonly mediaType: string
1840
+ /**
1841
+ * File data as a byte array.
1842
+ */
1843
+ readonly data: Uint8Array
1844
+ }
1845
+
1846
+ /**
1847
+ * Encoded representation of file parts for serialization.
1848
+ *
1849
+ * @category models
1850
+ * @since 4.0.0
1851
+ */
1852
+ export interface FilePartEncoded extends BasePartEncoded<"file", FilePartMetadata> {
1853
+ /**
1854
+ * MIME type of the file (e.g., "image/jpeg", "application/pdf").
1855
+ */
1856
+ readonly mediaType: string
1857
+ /**
1858
+ * File data as a base64 string.
1859
+ */
1860
+ readonly data: string
1861
+ }
1862
+
1863
+ /**
1864
+ * Represents provider-specific metadata that can be associated with a
1865
+ * `FilePart` through module augmentation.
1866
+ *
1867
+ * @category configuration
1868
+ * @since 4.0.0
1869
+ */
1870
+ export interface FilePartMetadata extends ProviderMetadata {}
1871
+
1872
+ /**
1873
+ * Schema for validation and encoding of file parts.
1874
+ *
1875
+ * **Details**
1876
+ *
1877
+ * Decoded `data` is a `Uint8Array`; encoded `data` is a base64 string through
1878
+ * `Schema.Uint8ArrayFromBase64`.
1879
+ *
1880
+ * @category schemas
1881
+ * @since 4.0.0
1882
+ */
1883
+ export const FilePart: Schema.Struct<{
1884
+ readonly type: Schema.tag<"file">
1885
+ readonly mediaType: Schema.String
1886
+ readonly data: Schema.Uint8ArrayFromBase64
1887
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
1888
+ readonly metadata: Schema.withDecodingDefault<
1889
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
1890
+ >
1891
+ }> = Schema.Struct({
1892
+ ...BasePart.fields,
1893
+ type: Schema.tag("file"),
1894
+ mediaType: Schema.String,
1895
+ data: Schema.Uint8ArrayFromBase64
1896
+ }).annotate({ identifier: "FilePart" }) satisfies Schema.Codec<FilePart, FilePartEncoded>
1897
+
1898
+ // =============================================================================
1899
+ // Document Source Part
1900
+ // =============================================================================
1901
+
1902
+ /**
1903
+ * Response part representing a document source reference used in generating the
1904
+ * response.
1905
+ *
1906
+ * @category models
1907
+ * @since 4.0.0
1908
+ */
1909
+ export interface DocumentSourcePart extends BasePart<"source", DocumentSourcePartMetadata> {
1910
+ /**
1911
+ * Type discriminator for document sources.
1912
+ */
1913
+ readonly sourceType: "document"
1914
+ /**
1915
+ * Unique identifier for the document.
1916
+ */
1917
+ readonly id: string
1918
+ /**
1919
+ * MIME type of the document.
1920
+ */
1921
+ readonly mediaType: string
1922
+ /**
1923
+ * Display title of the document.
1924
+ */
1925
+ readonly title: string
1926
+ /**
1927
+ * Optional filename of the document.
1928
+ */
1929
+ readonly fileName?: string
1930
+ }
1931
+
1932
+ /**
1933
+ * Encoded representation of document source parts for serialization.
1934
+ *
1935
+ * @category models
1936
+ * @since 4.0.0
1937
+ */
1938
+ export interface DocumentSourcePartEncoded extends BasePartEncoded<"source", DocumentSourcePartMetadata> {
1939
+ /**
1940
+ * Type discriminator for document sources.
1941
+ */
1942
+ readonly sourceType: "document"
1943
+ /**
1944
+ * Unique identifier for the document.
1945
+ */
1946
+ readonly id: string
1947
+ /**
1948
+ * MIME type of the document.
1949
+ */
1950
+ readonly mediaType: string
1951
+ /**
1952
+ * Display title of the document.
1953
+ */
1954
+ readonly title: string
1955
+ /**
1956
+ * Optional filename of the document.
1957
+ */
1958
+ readonly fileName?: string
1959
+ }
1960
+
1961
+ /**
1962
+ * Represents provider-specific metadata that can be associated with a
1963
+ * `DocumentSourcePart` through module augmentation.
1964
+ *
1965
+ * @category configuration
1966
+ * @since 4.0.0
1967
+ */
1968
+ export interface DocumentSourcePartMetadata extends ProviderMetadata {}
1969
+
1970
+ /**
1971
+ * Schema for validation and encoding of document source parts.
1972
+ *
1973
+ * **When to use**
1974
+ *
1975
+ * Use to validate or encode document source references returned as response
1976
+ * content parts.
1977
+ *
1978
+ * **Details**
1979
+ *
1980
+ * Validates `type: "source"`, `sourceType: "document"`, required `id`,
1981
+ * `mediaType`, and `title`, optional `fileName`, and the metadata fields
1982
+ * inherited from response parts.
1983
+ *
1984
+ * @see {@link UrlSourcePart} for URL source references
1985
+ * @see {@link DocumentSourcePartEncoded} for the encoded document source representation
1986
+ *
1987
+ * @category schemas
1988
+ * @since 4.0.0
1989
+ */
1990
+ export const DocumentSourcePart: Schema.Struct<{
1991
+ readonly type: Schema.tag<"source">
1992
+ readonly sourceType: Schema.tag<"document">
1993
+ readonly id: Schema.String
1994
+ readonly mediaType: Schema.String
1995
+ readonly title: Schema.String
1996
+ readonly fileName: Schema.optionalKey<Schema.String>
1997
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
1998
+ readonly metadata: Schema.withDecodingDefault<
1999
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
2000
+ >
2001
+ }> = Schema.Struct({
2002
+ ...BasePart.fields,
2003
+ type: Schema.tag("source"),
2004
+ sourceType: Schema.tag("document"),
2005
+ id: Schema.String,
2006
+ mediaType: Schema.String,
2007
+ title: Schema.String,
2008
+ fileName: Schema.optionalKey(Schema.String)
2009
+ }).annotate({ identifier: "DocumentSourcePart" }) satisfies Schema.Codec<DocumentSourcePart, DocumentSourcePartEncoded>
2010
+
2011
+ // =============================================================================
2012
+ // Url Source Part
2013
+ // =============================================================================
2014
+
2015
+ /**
2016
+ * Response part representing a URL source reference used in generating the
2017
+ * response.
2018
+ *
2019
+ * @category models
2020
+ * @since 4.0.0
2021
+ */
2022
+ export interface UrlSourcePart extends BasePart<"source", UrlSourcePartMetadata> {
2023
+ /**
2024
+ * Type discriminator for URL sources.
2025
+ */
2026
+ readonly sourceType: "url"
2027
+ /**
2028
+ * Unique identifier for the URL.
2029
+ */
2030
+ readonly id: string
2031
+ /**
2032
+ * The URL that was referenced.
2033
+ */
2034
+ readonly url: URL
2035
+ /**
2036
+ * Display title of the URL content.
2037
+ */
2038
+ readonly title: string
2039
+ }
2040
+
2041
+ /**
2042
+ * Encoded representation of URL source parts for serialization.
2043
+ *
2044
+ * @category models
2045
+ * @since 4.0.0
2046
+ */
2047
+ export interface UrlSourcePartEncoded extends BasePartEncoded<"source", UrlSourcePartMetadata> {
2048
+ /**
2049
+ * Type discriminator for URL sources.
2050
+ */
2051
+ readonly sourceType: "url"
2052
+ /**
2053
+ * Unique identifier for the URL.
2054
+ */
2055
+ readonly id: string
2056
+ /**
2057
+ * The URL that was referenced as a string.
2058
+ */
2059
+ readonly url: string
2060
+ /**
2061
+ * Display title of the URL content.
2062
+ */
2063
+ readonly title: string
2064
+ }
2065
+
2066
+ /**
2067
+ * Represents provider-specific metadata that can be associated with a
2068
+ * `UrlSourcePart` through module augmentation.
2069
+ *
2070
+ * @category configuration
2071
+ * @since 4.0.0
2072
+ */
2073
+ export interface UrlSourcePartMetadata extends ProviderMetadata {}
2074
+
2075
+ /**
2076
+ * Schema for validation and encoding of url source parts.
2077
+ *
2078
+ * @category schemas
2079
+ * @since 4.0.0
2080
+ */
2081
+ export const UrlSourcePart: Schema.Struct<{
2082
+ readonly type: Schema.tag<"source">
2083
+ readonly sourceType: Schema.tag<"url">
2084
+ readonly id: Schema.String
2085
+ readonly url: Schema.URLFromString
2086
+ readonly title: Schema.String
2087
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
2088
+ readonly metadata: Schema.withDecodingDefault<
2089
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
2090
+ >
2091
+ }> = Schema.Struct({
2092
+ ...BasePart.fields,
2093
+ type: Schema.tag("source"),
2094
+ sourceType: Schema.tag("url"),
2095
+ id: Schema.String,
2096
+ url: Schema.URLFromString,
2097
+ title: Schema.String
2098
+ }).annotate({ identifier: "UrlSourcePart" }) satisfies Schema.Codec<UrlSourcePart, UrlSourcePartEncoded>
2099
+
2100
+ // =============================================================================
2101
+ // HTTP Details
2102
+ // =============================================================================
2103
+
2104
+ /**
2105
+ * Schema for HTTP request details associated with an AI response.
2106
+ *
2107
+ * **Details**
2108
+ *
2109
+ * Captures comprehensive information about the HTTP request made to the
2110
+ * AI provider, enabling inspection of request metadata for debugging and
2111
+ * observability purposes.
2112
+ *
2113
+ * **Example** (Describing an HTTP request)
2114
+ *
2115
+ * ```ts
2116
+ * import type { Response } from "effect/unstable/ai"
2117
+ *
2118
+ * const requestDetails: typeof Response.HttpRequestDetails.Type = {
2119
+ * method: "POST",
2120
+ * url: "https://api.openai.com/v1/responses",
2121
+ * urlParams: [],
2122
+ * hash: undefined,
2123
+ * headers: { "Content-Type": "application/json" }
2124
+ * }
2125
+ * ```
2126
+ *
2127
+ * @category schemas
2128
+ * @since 4.0.0
2129
+ */
2130
+ export const HttpRequestDetails = Schema.Struct({
2131
+ method: Schema.Literals(["GET", "POST", "PATCH", "PUT", "DELETE", "HEAD", "OPTIONS", "TRACE"]),
2132
+ url: Schema.String,
2133
+ urlParams: Schema.Array(Schema.Tuple([Schema.String, Schema.String])),
2134
+ hash: Schema.UndefinedOr(Schema.String),
2135
+ headers: Schema.Record(
2136
+ Schema.String,
2137
+ Schema.Union([
2138
+ Schema.String,
2139
+ Schema.Redacted(Schema.String)
2140
+ ])
2141
+ )
2142
+ }).annotate({ identifier: "HttpRequestDetails" })
2143
+
2144
+ /**
2145
+ * Schema for HTTP response details associated with an AI response.
2146
+ *
2147
+ * **Details**
2148
+ *
2149
+ * Captures essential information about the HTTP response received from
2150
+ * the AI provider, including status codes and headers for debugging and
2151
+ * observability purposes.
2152
+ *
2153
+ * **Example** (Describing an HTTP response)
2154
+ *
2155
+ * ```ts
2156
+ * import type { Response } from "effect/unstable/ai"
2157
+ *
2158
+ * const responseDetails: typeof Response.HttpResponseDetails.Type = {
2159
+ * status: 200,
2160
+ * headers: {
2161
+ * "Content-Type": "application/json",
2162
+ * "X-Request-Id": "req_abc123"
2163
+ * }
2164
+ * }
2165
+ * ```
2166
+ *
2167
+ * @category schemas
2168
+ * @since 4.0.0
2169
+ */
2170
+ export const HttpResponseDetails = Schema.Struct({
2171
+ status: Schema.Number,
2172
+ headers: Schema.Record(
2173
+ Schema.String,
2174
+ Schema.Union([
2175
+ Schema.String,
2176
+ Schema.Redacted(Schema.String)
2177
+ ])
2178
+ )
2179
+ }).annotate({ identifier: "HttpResponseDetails" })
2180
+
2181
+ // =============================================================================
2182
+ // Response Metadata Part
2183
+ // =============================================================================
2184
+
2185
+ /**
2186
+ * Response part containing metadata about the large language model response.
2187
+ *
2188
+ * **Example** (Creating a metadata part)
2189
+ *
2190
+ * ```ts
2191
+ * import { DateTime } from "effect"
2192
+ * import { Response } from "effect/unstable/ai"
2193
+ *
2194
+ * const metadataPart: Response.ResponseMetadataPart = Response.makePart(
2195
+ * "response-metadata",
2196
+ * {
2197
+ * id: "resp_123",
2198
+ * modelId: "gpt-4",
2199
+ * timestamp: DateTime.nowUnsafe(),
2200
+ * request: undefined
2201
+ * }
2202
+ * )
2203
+ * ```
2204
+ *
2205
+ * @category models
2206
+ * @since 4.0.0
2207
+ */
2208
+ export interface ResponseMetadataPart extends BasePart<"response-metadata", ResponseMetadataPartMetadata> {
2209
+ /**
2210
+ * Optional unique identifier for this specific response.
2211
+ */
2212
+ readonly id: string | undefined
2213
+ /**
2214
+ * Optional identifier of the AI model that generated the response.
2215
+ */
2216
+ readonly modelId: string | undefined
2217
+ /**
2218
+ * Optional timestamp when the response was generated.
2219
+ */
2220
+ readonly timestamp: DateTime.Utc | undefined
2221
+ /**
2222
+ * Optional HTTP request details for the request made to the AI provider.
2223
+ */
2224
+ readonly request: typeof HttpRequestDetails.Type | undefined
2225
+ }
2226
+
2227
+ /**
2228
+ * Encoded representation of response metadata parts for serialization.
2229
+ *
2230
+ * @category models
2231
+ * @since 4.0.0
2232
+ */
2233
+ export interface ResponseMetadataPartEncoded
2234
+ extends BasePartEncoded<"response-metadata", ResponseMetadataPartMetadata>
2235
+ {
2236
+ /**
2237
+ * Optional unique identifier for this specific response.
2238
+ */
2239
+ readonly id?: string | undefined
2240
+ /**
2241
+ * Optional identifier of the AI model that generated the response.
2242
+ */
2243
+ readonly modelId?: string | undefined
2244
+ /**
2245
+ * Optional timestamp when the response was generated.
2246
+ */
2247
+ readonly timestamp?: string | undefined
2248
+ /**
2249
+ * Optional HTTP request details for the request made to the AI provider.
2250
+ */
2251
+ readonly request?: typeof HttpRequestDetails.Encoded | undefined
2252
+ }
2253
+
2254
+ /**
2255
+ * Represents provider-specific metadata that can be associated with a
2256
+ * `ResponseMetadataPart` through module augmentation.
2257
+ *
2258
+ * @category configuration
2259
+ * @since 4.0.0
2260
+ */
2261
+ export interface ResponseMetadataPartMetadata extends ProviderMetadata {}
2262
+
2263
+ /**
2264
+ * Schema for validation and encoding of response metadata parts.
2265
+ *
2266
+ * @category schemas
2267
+ * @since 4.0.0
2268
+ */
2269
+ export const ResponseMetadataPart: Schema.Struct<{
2270
+ readonly type: Schema.tag<"response-metadata">
2271
+ readonly id: Schema.UndefinedOr<Schema.String>
2272
+ readonly modelId: Schema.UndefinedOr<Schema.String>
2273
+ readonly timestamp: Schema.UndefinedOr<Schema.DateTimeUtcFromString>
2274
+ readonly request: Schema.UndefinedOr<typeof HttpRequestDetails>
2275
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
2276
+ readonly metadata: Schema.withDecodingDefault<
2277
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
2278
+ >
2279
+ }> = Schema.Struct({
2280
+ ...BasePart.fields,
2281
+ type: Schema.tag("response-metadata"),
2282
+ id: Schema.UndefinedOr(Schema.String),
2283
+ modelId: Schema.UndefinedOr(Schema.String),
2284
+ timestamp: Schema.UndefinedOr(Schema.DateTimeUtcFromString),
2285
+ request: Schema.UndefinedOr(HttpRequestDetails)
2286
+ }).annotate({ identifier: "ResponseMetadataPart" }) satisfies Schema.Codec<
2287
+ ResponseMetadataPart,
2288
+ ResponseMetadataPartEncoded
2289
+ >
2290
+
2291
+ // =============================================================================
2292
+ // Finish Part
2293
+ // =============================================================================
2294
+
2295
+ /**
2296
+ * Represents the reason why a model finished generation of a response.
2297
+ *
2298
+ * **Details**
2299
+ *
2300
+ * Possible finish reasons:
2301
+ * - `"stop"`: The model generated a stop sequence.
2302
+ * - `"length"`: The model exceeded its token budget.
2303
+ * - `"content-filter"`: The model generated content which violated a content filter.
2304
+ * - `"tool-calls"`: The model triggered a tool call.
2305
+ * - `"error"`: The model encountered an error.
2306
+ * - `"pause"`: The model requested to pause execution.
2307
+ * - `"other"`: The model stopped for a reason not supported by this protocol.
2308
+ * - `"unknown"`: The model did not specify a finish reason.
2309
+ *
2310
+ * @category models
2311
+ * @since 4.0.0
2312
+ */
2313
+ export const FinishReason: Schema.Literals<[
2314
+ "stop",
2315
+ "length",
2316
+ "content-filter",
2317
+ "tool-calls",
2318
+ "error",
2319
+ "pause",
2320
+ "other",
2321
+ "unknown"
2322
+ ]> = Schema.Literals([
2323
+ "stop",
2324
+ "length",
2325
+ "content-filter",
2326
+ "tool-calls",
2327
+ "error",
2328
+ "pause",
2329
+ "other",
2330
+ "unknown"
2331
+ ])
2332
+
2333
+ /**
2334
+ * Type of the reason why a model stopped generating a response.
2335
+ *
2336
+ * **Details**
2337
+ *
2338
+ * Values include normal stops, token-limit stops, content filtering,
2339
+ * tool-call pauses, provider errors, and unknown provider-specific finish
2340
+ * reasons.
2341
+ *
2342
+ * @category models
2343
+ * @since 4.0.0
2344
+ */
2345
+ export type FinishReason = typeof FinishReason.Type
2346
+
2347
+ /**
2348
+ * Represents usage information for a request to a large language model provider.
2349
+ *
2350
+ * **Details**
2351
+ *
2352
+ * If the model provider returns additional usage information than what is
2353
+ * specified here, you can generally find that information under the provider
2354
+ * metadata of the finish part of the response.
2355
+ *
2356
+ * @category models
2357
+ * @since 4.0.0
2358
+ */
2359
+ export class Usage extends Schema.Class<Usage>("effect/ai/AiResponse/Usage")({
2360
+ /**
2361
+ * Information about input (i.e. prompt) token utilization.
2362
+ */
2363
+ inputTokens: Schema.Struct({
2364
+ /**
2365
+ * The number of non-cached input (i.e. prompt) tokens used.
2366
+ */
2367
+ uncached: Schema.UndefinedOr(Schema.Number),
2368
+ /**
2369
+ * The total of number of input (i.e. prompt) tokens used.
2370
+ */
2371
+ total: Schema.UndefinedOr(Schema.Number),
2372
+ /**
2373
+ * The number of cached input (i.e. prompt) tokens read.
2374
+ */
2375
+ cacheRead: Schema.UndefinedOr(Schema.Number),
2376
+ /**
2377
+ * The number of cached input (i.e. prompt) tokens written.
2378
+ */
2379
+ cacheWrite: Schema.UndefinedOr(Schema.Number)
2380
+ }),
2381
+ /**
2382
+ * Information about the output (i.e. response) tokens used.
2383
+ */
2384
+ outputTokens: Schema.Struct({
2385
+ /**
2386
+ * The total of number of output (i.e. response) tokens used.
2387
+ */
2388
+ total: Schema.UndefinedOr(Schema.Number),
2389
+ /**
2390
+ * The number of text tokens used.
2391
+ */
2392
+ text: Schema.UndefinedOr(Schema.Number),
2393
+ /**
2394
+ * The number of reasoning tokens used.
2395
+ */
2396
+ reasoning: Schema.UndefinedOr(Schema.Number)
2397
+ })
2398
+ }) {}
2399
+
2400
+ /**
2401
+ * Response part indicating the completion of a response generation.
2402
+ *
2403
+ * **Example** (Creating a finish part)
2404
+ *
2405
+ * ```ts
2406
+ * import { Response } from "effect/unstable/ai"
2407
+ *
2408
+ * const finishPart: Response.FinishPart = Response.makePart("finish", {
2409
+ * reason: "stop",
2410
+ * usage: new Response.Usage({
2411
+ * inputTokens: {
2412
+ * uncached: undefined,
2413
+ * total: 50,
2414
+ * cacheRead: undefined,
2415
+ * cacheWrite: undefined
2416
+ * },
2417
+ * outputTokens: {
2418
+ * total: 25,
2419
+ * text: undefined,
2420
+ * reasoning: undefined
2421
+ * }
2422
+ * }),
2423
+ * response: undefined
2424
+ * })
2425
+ * ```
2426
+ *
2427
+ * @category models
2428
+ * @since 4.0.0
2429
+ */
2430
+ export interface FinishPart extends BasePart<"finish", FinishPartMetadata> {
2431
+ /**
2432
+ * The reason why the model finished generating the response.
2433
+ */
2434
+ readonly reason: FinishReason
2435
+ /**
2436
+ * Token usage statistics for the request.
2437
+ */
2438
+ readonly usage: Usage
2439
+ /**
2440
+ * Optional HTTP response details from the AI provider.
2441
+ */
2442
+ readonly response: typeof HttpResponseDetails.Type | undefined
2443
+ }
2444
+
2445
+ /**
2446
+ * Encoded representation of finish parts for serialization.
2447
+ *
2448
+ * @category models
2449
+ * @since 4.0.0
2450
+ */
2451
+ export interface FinishPartEncoded extends BasePartEncoded<"finish", FinishPartMetadata> {
2452
+ /**
2453
+ * The reason why the model finished generating the response.
2454
+ */
2455
+ readonly reason: typeof FinishReason.Encoded
2456
+ /**
2457
+ * Token usage statistics for the request.
2458
+ */
2459
+ readonly usage: typeof Usage.Encoded
2460
+ /**
2461
+ * Optional HTTP response details from the AI provider.
2462
+ */
2463
+ readonly response?: typeof HttpResponseDetails.Encoded | undefined
2464
+ }
2465
+
2466
+ /**
2467
+ * Represents provider-specific metadata that can be associated with a
2468
+ * `FinishPart` through module augmentation.
2469
+ *
2470
+ * @category configuration
2471
+ * @since 4.0.0
2472
+ */
2473
+ export interface FinishPartMetadata extends ProviderMetadata {}
2474
+
2475
+ /**
2476
+ * Schema for finish response parts.
2477
+ *
2478
+ * **Details**
2479
+ *
2480
+ * Validates `type: "finish"`, `reason` through `FinishReason`, `usage`
2481
+ * through `Usage`, and optional provider HTTP response details.
2482
+ *
2483
+ * @category schemas
2484
+ * @since 4.0.0
2485
+ */
2486
+ export const FinishPart: Schema.Struct<{
2487
+ readonly type: Schema.tag<"finish">
2488
+ readonly reason: Schema.Literals<[
2489
+ "stop",
2490
+ "length",
2491
+ "content-filter",
2492
+ "tool-calls",
2493
+ "error",
2494
+ "pause",
2495
+ "other",
2496
+ "unknown"
2497
+ ]>
2498
+ readonly usage: typeof Usage
2499
+ readonly response: Schema.UndefinedOr<typeof HttpResponseDetails>
2500
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
2501
+ readonly metadata: Schema.withDecodingDefault<
2502
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
2503
+ >
2504
+ }> = Schema.Struct({
2505
+ ...BasePart.fields,
2506
+ type: Schema.tag("finish"),
2507
+ reason: FinishReason,
2508
+ usage: Usage,
2509
+ response: Schema.UndefinedOr(HttpResponseDetails)
2510
+ }).annotate({ identifier: "FinishPart" }) satisfies Schema.Codec<FinishPart, FinishPartEncoded>
2511
+
2512
+ // =============================================================================
2513
+ // Error Part
2514
+ // =============================================================================
2515
+
2516
+ /**
2517
+ * Response part indicating that an error occurred generating the response.
2518
+ *
2519
+ * **Example** (Creating an error part)
2520
+ *
2521
+ * ```ts
2522
+ * import { Response } from "effect/unstable/ai"
2523
+ *
2524
+ * const errorPart: Response.ErrorPart = Response.makePart("error", {
2525
+ * error: new Error("boom")
2526
+ * })
2527
+ * ```
2528
+ *
2529
+ * @category models
2530
+ * @since 4.0.0
2531
+ */
2532
+ export interface ErrorPart extends BasePart<"error", ErrorPartMetadata> {
2533
+ readonly error: unknown
2534
+ }
2535
+
2536
+ /**
2537
+ * Encoded representation of error parts for serialization.
2538
+ *
2539
+ * @category models
2540
+ * @since 4.0.0
2541
+ */
2542
+ export interface ErrorPartEncoded extends BasePartEncoded<"error", ErrorPartMetadata> {
2543
+ readonly error: unknown
2544
+ }
2545
+
2546
+ /**
2547
+ * Represents provider-specific metadata that can be associated with a
2548
+ * `ErrorPart` through module augmentation.
2549
+ *
2550
+ * @category configuration
2551
+ * @since 4.0.0
2552
+ */
2553
+ export interface ErrorPartMetadata extends ProviderMetadata {}
2554
+
2555
+ /**
2556
+ * Schema for validation and encoding of error parts.
2557
+ *
2558
+ * **Details**
2559
+ *
2560
+ * Validates and encodes error parts with `type: "error"` and an `error` payload
2561
+ * kept as `unknown`.
2562
+ *
2563
+ * **Gotchas**
2564
+ *
2565
+ * The decoded `error` value is not guaranteed to be an `Error`; narrow it before
2566
+ * reading `Error`-specific fields.
2567
+ *
2568
+ * @category schemas
2569
+ * @since 4.0.0
2570
+ */
2571
+ export const ErrorPart: Schema.Struct<{
2572
+ readonly type: Schema.tag<"error">
2573
+ readonly error: Schema.Unknown
2574
+ readonly "~effect/ai/Content/Part": Schema.withDecodingDefaultKey<Schema.tag<"~effect/ai/Content/Part">>
2575
+ readonly metadata: Schema.withDecodingDefault<
2576
+ Schema.$Record<Schema.String, Schema.Codec<Schema.Json>>
2577
+ >
2578
+ }> = Schema.Struct({
2579
+ ...BasePart.fields,
2580
+ type: Schema.tag("error"),
2581
+ error: Schema.Unknown
2582
+ }).annotate({ identifier: "ErrorPart" }) satisfies Schema.Codec<ErrorPart, ErrorPartEncoded>