@effect-uai/core 0.11.0 → 0.12.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 (288) hide show
  1. package/dist/{AiError-Bf1pq4BB.d.mts → AiError-eLV9t1lU.d.mts} +12 -16
  2. package/dist/AiError-eLV9t1lU.d.mts.map +1 -0
  3. package/dist/{Audio-CR7CSljJ.d.mts → Audio-60lKKHxS.d.mts} +4 -5
  4. package/dist/Audio-60lKKHxS.d.mts.map +1 -0
  5. package/dist/{Image-C4vuBmu0.d.mts → Image-BK8-4H6s.d.mts} +12 -14
  6. package/dist/Image-BK8-4H6s.d.mts.map +1 -0
  7. package/dist/{Items-BWNu6VGp.d.mts → Items-SfUabNuB.d.mts} +92 -81
  8. package/dist/Items-SfUabNuB.d.mts.map +1 -0
  9. package/dist/{Loop-D8nWpowc.d.mts → Loop-B54AB1ME.d.mts} +19 -21
  10. package/dist/Loop-B54AB1ME.d.mts.map +1 -0
  11. package/dist/{Media-D_CpcM1Z.d.mts → Media-DwgpifPD.d.mts} +1 -1
  12. package/dist/Media-DwgpifPD.d.mts.map +1 -0
  13. package/dist/{SandboxError-CIrVDOMV.d.mts → SandboxError-BN8b28Bh.d.mts} +11 -15
  14. package/dist/SandboxError-BN8b28Bh.d.mts.map +1 -0
  15. package/dist/{StructuredFormat-DHaUJBdd.d.mts → StructuredFormat-BlZhyOsi.d.mts} +3 -7
  16. package/dist/StructuredFormat-BlZhyOsi.d.mts.map +1 -0
  17. package/dist/{Tool-CXFHCQrT.d.mts → Tool-DE-rnvkw.d.mts} +5 -8
  18. package/dist/Tool-DE-rnvkw.d.mts.map +1 -0
  19. package/dist/{ToolEvent-nVijCrvm.d.mts → ToolEvent-D99MGQYH.d.mts} +56 -63
  20. package/dist/ToolEvent-D99MGQYH.d.mts.map +1 -0
  21. package/dist/{ToolResult-CQqKkcDa.d.mts → ToolResult-Cj8ChodL.d.mts} +49 -54
  22. package/dist/ToolResult-Cj8ChodL.d.mts.map +1 -0
  23. package/dist/{Toolkit-BYPwwu-j.d.mts → Toolkit-BEZrNPTI.d.mts} +13 -16
  24. package/dist/Toolkit-BEZrNPTI.d.mts.map +1 -0
  25. package/dist/browser/Browser.d.mts +11 -7
  26. package/dist/browser/Browser.d.mts.map +1 -1
  27. package/dist/browser/Browser.mjs +1 -1
  28. package/dist/browser/Browser.mjs.map +1 -1
  29. package/dist/browser/BrowserError.d.mts +9 -13
  30. package/dist/browser/BrowserError.d.mts.map +1 -1
  31. package/dist/browser/BrowserError.mjs +1 -1
  32. package/dist/browser/BrowserError.mjs.map +1 -1
  33. package/dist/browser/BrowserTool.d.mts +33 -36
  34. package/dist/browser/BrowserTool.d.mts.map +1 -1
  35. package/dist/browser/BrowserTool.mjs +1 -1
  36. package/dist/browser/BrowserTool.mjs.map +1 -1
  37. package/dist/capabilities/Capabilities.d.mts +8 -6
  38. package/dist/capabilities/Capabilities.d.mts.map +1 -1
  39. package/dist/capabilities/Capabilities.mjs +1 -1
  40. package/dist/capabilities/Capabilities.mjs.map +1 -1
  41. package/dist/dist-BaenoU1A.mjs +145 -0
  42. package/dist/dist-BaenoU1A.mjs.map +1 -0
  43. package/dist/{dist-C0m0QnUP.mjs → dist-nohcnkD6.mjs} +16 -15
  44. package/dist/dist-nohcnkD6.mjs.map +1 -0
  45. package/dist/domain/AiError.d.mts +1 -1
  46. package/dist/domain/AiError.mjs +1 -1
  47. package/dist/domain/AiError.mjs.map +1 -1
  48. package/dist/domain/Audio.d.mts +1 -1
  49. package/dist/domain/Audio.mjs +1 -1
  50. package/dist/domain/Citation.d.mts +0 -2
  51. package/dist/domain/Citation.d.mts.map +1 -1
  52. package/dist/domain/Citation.mjs +1 -1
  53. package/dist/domain/Image.d.mts +1 -1
  54. package/dist/domain/Image.mjs +1 -1
  55. package/dist/domain/Image.mjs.map +1 -1
  56. package/dist/domain/Items.d.mts +1 -1
  57. package/dist/domain/Items.mjs +16 -2
  58. package/dist/domain/Items.mjs.map +1 -1
  59. package/dist/domain/Media.d.mts +1 -1
  60. package/dist/domain/Media.mjs +1 -1
  61. package/dist/domain/Music.d.mts +18 -11
  62. package/dist/domain/Music.d.mts.map +1 -1
  63. package/dist/domain/Music.mjs +1 -1
  64. package/dist/domain/Music.mjs.map +1 -1
  65. package/dist/domain/Research.d.mts +3 -4
  66. package/dist/domain/Research.d.mts.map +1 -1
  67. package/dist/domain/Research.mjs +1 -1
  68. package/dist/domain/Transcript.d.mts +2 -3
  69. package/dist/domain/Transcript.d.mts.map +1 -1
  70. package/dist/domain/Transcript.mjs +1 -1
  71. package/dist/domain/Turn.d.mts +144 -164
  72. package/dist/domain/Turn.d.mts.map +1 -1
  73. package/dist/domain/Turn.mjs +1 -1
  74. package/dist/domain/Turn.mjs.map +1 -1
  75. package/dist/domain/Turn.test.d.mts +1 -1
  76. package/dist/domain/Turn.test.mjs +28 -18
  77. package/dist/domain/Turn.test.mjs.map +1 -1
  78. package/dist/embedding-model/Embedding.d.mts +1 -3
  79. package/dist/embedding-model/Embedding.d.mts.map +1 -1
  80. package/dist/embedding-model/Embedding.mjs +1 -1
  81. package/dist/embedding-model/EmbeddingModel.d.mts +1 -3
  82. package/dist/embedding-model/EmbeddingModel.d.mts.map +1 -1
  83. package/dist/embedding-model/EmbeddingModel.mjs +1 -1
  84. package/dist/embedding-model/EmbeddingModel.mjs.map +1 -1
  85. package/dist/embedding-model/EmbeddingModel.test.d.mts +1 -1
  86. package/dist/embedding-model/EmbeddingModel.test.mjs +14 -9
  87. package/dist/embedding-model/EmbeddingModel.test.mjs.map +1 -1
  88. package/dist/index.d.mts +12 -12
  89. package/dist/job/Job.d.mts +4 -4
  90. package/dist/job/Job.d.mts.map +1 -1
  91. package/dist/job/Job.mjs +1 -1
  92. package/dist/job/Job.mjs.map +1 -1
  93. package/dist/language-model/LanguageModel.d.mts +4 -6
  94. package/dist/language-model/LanguageModel.d.mts.map +1 -1
  95. package/dist/language-model/LanguageModel.mjs +1 -1
  96. package/dist/language-model/LanguageModel.mjs.map +1 -1
  97. package/dist/language-model/LanguageModel.test.d.mts +1 -1
  98. package/dist/language-model/LanguageModel.test.mjs +6 -3
  99. package/dist/language-model/LanguageModel.test.mjs.map +1 -1
  100. package/dist/loop/Loop.d.mts +1 -1
  101. package/dist/loop/Loop.mjs +1 -1
  102. package/dist/loop/Loop.mjs.map +1 -1
  103. package/dist/loop/Loop.test.d.mts +1 -1
  104. package/dist/loop/Loop.test.mjs +60 -34
  105. package/dist/loop/Loop.test.mjs.map +1 -1
  106. package/dist/{magic-string.es-Dk-MMA0F.mjs → magic-string.es-CB2hOw9v.mjs} +14 -13
  107. package/dist/{magic-string.es-Dk-MMA0F.mjs.map → magic-string.es-CB2hOw9v.mjs.map} +1 -1
  108. package/dist/math/Vector.d.mts +0 -2
  109. package/dist/math/Vector.d.mts.map +1 -1
  110. package/dist/math/Vector.mjs +1 -1
  111. package/dist/math/Vector.mjs.map +1 -1
  112. package/dist/music-generator/MusicGenerator.d.mts +2 -4
  113. package/dist/music-generator/MusicGenerator.d.mts.map +1 -1
  114. package/dist/music-generator/MusicGenerator.mjs +1 -1
  115. package/dist/music-generator/MusicGenerator.mjs.map +1 -1
  116. package/dist/music-generator/MusicGenerator.test.d.mts +1 -1
  117. package/dist/music-generator/MusicGenerator.test.mjs +19 -10
  118. package/dist/music-generator/MusicGenerator.test.mjs.map +1 -1
  119. package/dist/observability/Metrics.d.mts +21 -10
  120. package/dist/observability/Metrics.d.mts.map +1 -1
  121. package/dist/observability/Metrics.mjs +31 -8
  122. package/dist/observability/Metrics.mjs.map +1 -1
  123. package/dist/observability/Metrics.test.d.mts +1 -1
  124. package/dist/observability/Metrics.test.mjs +87 -23
  125. package/dist/observability/Metrics.test.mjs.map +1 -1
  126. package/dist/observability/Telemetry.d.mts +2 -3
  127. package/dist/observability/Telemetry.d.mts.map +1 -1
  128. package/dist/observability/Telemetry.mjs +1 -1
  129. package/dist/observability/Telemetry.mjs.map +1 -1
  130. package/dist/observability/Telemetry.test.d.mts +1 -1
  131. package/dist/observability/Telemetry.test.mjs +15 -7
  132. package/dist/observability/Telemetry.test.mjs.map +1 -1
  133. package/dist/research/DeepResearch.d.mts +1 -3
  134. package/dist/research/DeepResearch.d.mts.map +1 -1
  135. package/dist/research/DeepResearch.mjs +1 -1
  136. package/dist/research/DeepResearch.mjs.map +1 -1
  137. package/dist/retry/Retry.d.mts +4 -8
  138. package/dist/retry/Retry.d.mts.map +1 -1
  139. package/dist/retry/Retry.mjs +31 -2
  140. package/dist/retry/Retry.mjs.map +1 -1
  141. package/dist/retry/Retry.test.d.mts +1 -1
  142. package/dist/retry/Retry.test.mjs +6 -3
  143. package/dist/retry/Retry.test.mjs.map +1 -1
  144. package/dist/sandbox/Memory.d.mts +0 -2
  145. package/dist/sandbox/Memory.d.mts.map +1 -1
  146. package/dist/sandbox/Memory.mjs +4 -4
  147. package/dist/sandbox/Memory.mjs.map +1 -1
  148. package/dist/sandbox/Sandbox.d.mts +144 -156
  149. package/dist/sandbox/Sandbox.d.mts.map +1 -1
  150. package/dist/sandbox/Sandbox.mjs +1 -1
  151. package/dist/sandbox/Sandbox.mjs.map +1 -1
  152. package/dist/sandbox/SandboxError.d.mts +1 -1
  153. package/dist/sandbox/SandboxError.mjs +1 -1
  154. package/dist/sandbox/SandboxError.mjs.map +1 -1
  155. package/dist/sandbox/SandboxImage.d.mts +0 -2
  156. package/dist/sandbox/SandboxImage.d.mts.map +1 -1
  157. package/dist/sandbox/SandboxImage.mjs +1 -1
  158. package/dist/sandbox/SandboxImage.mjs.map +1 -1
  159. package/dist/sandbox/SandboxNetwork.d.mts +0 -2
  160. package/dist/sandbox/SandboxNetwork.d.mts.map +1 -1
  161. package/dist/sandbox/SandboxNetwork.mjs +1 -1
  162. package/dist/sandbox/SandboxNetwork.mjs.map +1 -1
  163. package/dist/speech-synthesizer/SpeechSynthesizer.d.mts +8 -7
  164. package/dist/speech-synthesizer/SpeechSynthesizer.d.mts.map +1 -1
  165. package/dist/speech-synthesizer/SpeechSynthesizer.mjs +1 -1
  166. package/dist/speech-synthesizer/SpeechSynthesizer.mjs.map +1 -1
  167. package/dist/speech-synthesizer/SpeechSynthesizer.test.d.mts +1 -1
  168. package/dist/speech-synthesizer/SpeechSynthesizer.test.mjs +31 -16
  169. package/dist/speech-synthesizer/SpeechSynthesizer.test.mjs.map +1 -1
  170. package/dist/streaming/JSONL.d.mts +1 -5
  171. package/dist/streaming/JSONL.d.mts.map +1 -1
  172. package/dist/streaming/JSONL.mjs +1 -1
  173. package/dist/streaming/JSONL.mjs.map +1 -1
  174. package/dist/streaming/JSONL.test.d.mts +1 -1
  175. package/dist/streaming/JSONL.test.mjs +16 -8
  176. package/dist/streaming/JSONL.test.mjs.map +1 -1
  177. package/dist/streaming/Lines.d.mts +0 -2
  178. package/dist/streaming/Lines.d.mts.map +1 -1
  179. package/dist/streaming/Lines.mjs +1 -1
  180. package/dist/streaming/Lines.mjs.map +1 -1
  181. package/dist/streaming/SSE.d.mts +0 -2
  182. package/dist/streaming/SSE.d.mts.map +1 -1
  183. package/dist/streaming/SSE.mjs +1 -1
  184. package/dist/streaming/SSE.mjs.map +1 -1
  185. package/dist/streaming/SSE.test.d.mts +1 -1
  186. package/dist/streaming/SSE.test.mjs +34 -17
  187. package/dist/streaming/SSE.test.mjs.map +1 -1
  188. package/dist/structured-format/StructuredFormat.d.mts +1 -1
  189. package/dist/structured-format/StructuredFormat.mjs +1 -1
  190. package/dist/structured-format/StructuredFormat.mjs.map +1 -1
  191. package/dist/structured-format/StructuredFormat.test.d.mts +1 -1
  192. package/dist/structured-format/StructuredFormat.test.mjs +7 -4
  193. package/dist/structured-format/StructuredFormat.test.mjs.map +1 -1
  194. package/dist/{dist-CcRV3-A5.mjs → test.DNmyFkvJ-YPzDR0Co.mjs} +1644 -5172
  195. package/dist/test.DNmyFkvJ-YPzDR0Co.mjs.map +1 -0
  196. package/dist/testing/MockMusicGenerator.d.mts +4 -3
  197. package/dist/testing/MockMusicGenerator.d.mts.map +1 -1
  198. package/dist/testing/MockMusicGenerator.mjs.map +1 -1
  199. package/dist/testing/MockProvider.d.mts +1 -2
  200. package/dist/testing/MockProvider.d.mts.map +1 -1
  201. package/dist/testing/MockProvider.mjs.map +1 -1
  202. package/dist/testing/MockSandbox.d.mts +256 -290
  203. package/dist/testing/MockSandbox.d.mts.map +1 -1
  204. package/dist/testing/MockSandbox.mjs.map +1 -1
  205. package/dist/testing/MockSpeechSynthesizer.d.mts +10 -6
  206. package/dist/testing/MockSpeechSynthesizer.d.mts.map +1 -1
  207. package/dist/testing/MockSpeechSynthesizer.mjs.map +1 -1
  208. package/dist/testing/MockTranscriber.d.mts +3 -2
  209. package/dist/testing/MockTranscriber.d.mts.map +1 -1
  210. package/dist/testing/MockTranscriber.mjs.map +1 -1
  211. package/dist/tool/Approval.d.mts +31 -36
  212. package/dist/tool/Approval.d.mts.map +1 -1
  213. package/dist/tool/Approval.mjs +1 -1
  214. package/dist/tool/Approval.mjs.map +1 -1
  215. package/dist/tool/Approval.test.d.mts +1 -1
  216. package/dist/tool/Approval.test.mjs +37 -24
  217. package/dist/tool/Approval.test.mjs.map +1 -1
  218. package/dist/tool/HistoryCheck.d.mts +2 -4
  219. package/dist/tool/HistoryCheck.d.mts.map +1 -1
  220. package/dist/tool/HistoryCheck.mjs +1 -1
  221. package/dist/tool/HistoryCheck.mjs.map +1 -1
  222. package/dist/tool/Tool.d.mts +1 -1
  223. package/dist/tool/Tool.mjs +4 -4
  224. package/dist/tool/Tool.mjs.map +1 -1
  225. package/dist/tool/Tool.test.d.mts +1 -1
  226. package/dist/tool/Tool.test.mjs +23 -11
  227. package/dist/tool/Tool.test.mjs.map +1 -1
  228. package/dist/tool/ToolEvent.d.mts +1 -1
  229. package/dist/tool/ToolEvent.mjs +1 -1
  230. package/dist/tool/ToolEvent.mjs.map +1 -1
  231. package/dist/tool/ToolResult.d.mts +1 -1
  232. package/dist/tool/ToolResult.mjs +1 -1
  233. package/dist/tool/ToolResult.mjs.map +1 -1
  234. package/dist/tool/Toolkit.d.mts +1 -1
  235. package/dist/tool/Toolkit.mjs +4 -3
  236. package/dist/tool/Toolkit.mjs.map +1 -1
  237. package/dist/tool/Toolkit.test.d.mts +1 -1
  238. package/dist/tool/Toolkit.test.mjs +40 -21
  239. package/dist/tool/Toolkit.test.mjs.map +1 -1
  240. package/dist/transcriber/Transcriber.d.mts +6 -6
  241. package/dist/transcriber/Transcriber.d.mts.map +1 -1
  242. package/dist/transcriber/Transcriber.mjs +1 -1
  243. package/dist/transcriber/Transcriber.mjs.map +1 -1
  244. package/dist/transcriber/Transcriber.test.d.mts +1 -1
  245. package/dist/transcriber/Transcriber.test.mjs +20 -10
  246. package/dist/transcriber/Transcriber.test.mjs.map +1 -1
  247. package/dist/utils-CiH_DjFW.mjs +3918 -0
  248. package/dist/utils-CiH_DjFW.mjs.map +1 -0
  249. package/dist/web-read/WebRead.d.mts +15 -9
  250. package/dist/web-read/WebRead.d.mts.map +1 -1
  251. package/dist/web-read/WebRead.mjs +1 -1
  252. package/dist/web-read/WebRead.mjs.map +1 -1
  253. package/dist/web-read/WebReadTool.d.mts +4 -5
  254. package/dist/web-read/WebReadTool.d.mts.map +1 -1
  255. package/dist/web-read/WebReadTool.mjs +1 -1
  256. package/dist/web-read/WebReadTool.mjs.map +1 -1
  257. package/dist/web-search/WebSearch.d.mts +22 -13
  258. package/dist/web-search/WebSearch.d.mts.map +1 -1
  259. package/dist/web-search/WebSearch.mjs +1 -1
  260. package/dist/web-search/WebSearch.mjs.map +1 -1
  261. package/dist/web-search/WebSearchTool.d.mts +6 -6
  262. package/dist/web-search/WebSearchTool.d.mts.map +1 -1
  263. package/dist/web-search/WebSearchTool.mjs +1 -1
  264. package/dist/web-search/WebSearchTool.mjs.map +1 -1
  265. package/package.json +4 -4
  266. package/src/domain/Items.ts +18 -0
  267. package/src/loop/Loop.test.ts +13 -14
  268. package/src/loop/Loop.ts +74 -76
  269. package/src/observability/Metrics.test.ts +65 -0
  270. package/src/observability/Metrics.ts +53 -11
  271. package/src/retry/Retry.ts +44 -3
  272. package/src/testing/MockProvider.ts +8 -9
  273. package/src/tool/Tool.ts +13 -13
  274. package/dist/AiError-Bf1pq4BB.d.mts.map +0 -1
  275. package/dist/Audio-CR7CSljJ.d.mts.map +0 -1
  276. package/dist/Image-C4vuBmu0.d.mts.map +0 -1
  277. package/dist/Items-BWNu6VGp.d.mts.map +0 -1
  278. package/dist/Loop-D8nWpowc.d.mts.map +0 -1
  279. package/dist/Media-D_CpcM1Z.d.mts.map +0 -1
  280. package/dist/SandboxError-CIrVDOMV.d.mts.map +0 -1
  281. package/dist/StructuredFormat-DHaUJBdd.d.mts.map +0 -1
  282. package/dist/Tool-CXFHCQrT.d.mts.map +0 -1
  283. package/dist/ToolEvent-nVijCrvm.d.mts.map +0 -1
  284. package/dist/ToolResult-CQqKkcDa.d.mts.map +0 -1
  285. package/dist/Toolkit-BYPwwu-j.d.mts.map +0 -1
  286. package/dist/dist-C0m0QnUP.mjs.map +0 -1
  287. package/dist/dist-CcRV3-A5.mjs.map +0 -1
  288. /package/dist/{chunk-uyGKjUfl.mjs → rolldown-runtime-EAsCxrDo.mjs} +0 -0
@@ -1,7 +1,5 @@
1
- import { n as AudioChunk, r as AudioFormat, t as AudioBlob } from "../Audio-CR7CSljJ.mjs";
1
+ import { n as AudioChunk, r as AudioFormat, t as AudioBlob } from "../Audio-60lKKHxS.mjs";
2
2
  import { Duration } from "effect";
3
-
4
- //#region src/domain/Music.d.ts
5
3
  declare namespace Music_d_exports {
6
4
  export { CommonGenerateMusicRequest, CommonStreamGenerateMusicRequest, GenerateResult, MusicResult, MusicSection, MusicSessionControl, MusicSessionInput, MusicStreamEvent, Watermark, WeightedPrompt, audioEvent, controlInput, filteredPromptEvent, isAudioEvent, isControlInput, isFilteredPromptEvent, isPromptsInput, isWarningEvent, promptsInput, singleVariant, warningEvent };
7
5
  }
@@ -12,7 +10,8 @@ declare namespace Music_d_exports {
12
10
  * `weight: 1` as a plain prompt.
13
11
  */
14
12
  type WeightedPrompt = {
15
- readonly text: string; /** Default `1.0`. Range typically `[0, 1]`; provider-dependent. */
13
+ readonly text: string;
14
+ /** Default `1.0`. Range typically `[0, 1]`; provider-dependent. */
16
15
  readonly weight?: number;
17
16
  };
18
17
  /**
@@ -27,7 +26,9 @@ type WeightedPrompt = {
27
26
  * `messages[]` shape applies.
28
27
  */
29
28
  type CommonGenerateMusicRequest = {
30
- /** Model identifier. Each provider narrows. */readonly model: string; /** Single prompt string. Weighted blends are provider-typed extras. */
29
+ /** Model identifier. Each provider narrows. */
30
+ readonly model: string;
31
+ /** Single prompt string. Weighted blends are provider-typed extras. */
31
32
  readonly prompt: string;
32
33
  /**
33
34
  * Lyrics text, optionally with section tags like `[Verse]` /
@@ -37,7 +38,8 @@ type CommonGenerateMusicRequest = {
37
38
  * the prompt with a warning on providers without one (Lyria 3,
38
39
  * Riffusion).
39
40
  */
40
- readonly lyrics?: string; /** Target duration. Provider may treat as a hint or hard limit. */
41
+ readonly lyrics?: string;
42
+ /** Target duration. Provider may treat as a hint or hard limit. */
41
43
  readonly duration?: Duration.Duration;
42
44
  /**
43
45
  * Reproducibility seed. Tuning hint (bucket 3): honored where the
@@ -45,7 +47,8 @@ type CommonGenerateMusicRequest = {
45
47
  * with `compositionPlan`, Stable Audio, MusicGen); silently ignored
46
48
  * elsewhere.
47
49
  */
48
- readonly seed?: number; /** Preferred output format. Provider may override. */
50
+ readonly seed?: number;
51
+ /** Preferred output format. Provider may override. */
49
52
  readonly outputFormat?: AudioFormat;
50
53
  };
51
54
  /**
@@ -111,10 +114,14 @@ type MusicResult = {
111
114
  * providers in a single pipeline (`"lyria"`, `"elevenlabs-music"`,
112
115
  * etc.).
113
116
  */
114
- readonly provider?: string; /** Provider-side ID for back-reference (re-download, extension, stems). */
115
- readonly songId?: string; /** Generated or transcribed lyrics when the provider returned them. */
116
- readonly lyrics?: string; /** Structured section markers when the provider returned them. */
117
- readonly sections?: ReadonlyArray<MusicSection>; /** Watermark presence indicator when the provider applied one. */
117
+ readonly provider?: string;
118
+ /** Provider-side ID for back-reference (re-download, extension, stems). */
119
+ readonly songId?: string;
120
+ /** Generated or transcribed lyrics when the provider returned them. */
121
+ readonly lyrics?: string;
122
+ /** Structured section markers when the provider returned them. */
123
+ readonly sections?: ReadonlyArray<MusicSection>;
124
+ /** Watermark presence indicator when the provider applied one. */
118
125
  readonly watermark?: Watermark;
119
126
  };
120
127
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Music.d.mts","names":[],"sources":["../../src/domain/Music.ts"],"mappings":";;;;;;;;;;;;;KASY,cAAA;EAAA,SACD,IAAA;WAEA,MAAA;AAAA;;;;;;;;;;;;KAcC,0BAAA;0DAED,KAAA;WAEA,MAAA;EArBe;;;;AAiB1B;;;;EAjB0B,SA8Bf,MAAA,WATA;EAAA,SAWA,QAAA,GAAW,QAAA,CAAS,QAAA;EAApB;;;;;;EAAA,SAOA,IAAA,WAE0B;EAAA,SAA1B,YAAA,GAAe,WAAA;AAAA;;;;AAgB1B;KATY,gCAAA,GAAmC,0BAAA;;;;AAwB/C;;;;KAfY,mBAAA;;;;;;;;;;;;;AAmBZ;KAJY,iBAAA;EAAA,SACG,IAAA;EAAA,SAA0B,OAAA,EAAS,aAAA,CAAc,cAAA;AAAA;EAAA,SACjD,IAAA;EAAA,SAA0B,MAAA,EAAQ,mBAAA;AAAA;AAAA,cAEpC,YAAA,GAAgB,OAAA,EAAS,aAAA,CAAc,cAAA,MAAkB,iBAAA;AAAA,cAKzD,YAAA,GAAgB,MAAA,EAAQ,mBAAA,KAAsB,iBAAA;;;;;AAA3D;KAUY,SAAA;;;;;;KAOA,YAAA;EAAA,SACD,KAAA;EAAA,SACA,YAAA;EAAA,SACA,UAAA;AAAA;;;AAHX;;;KAWY,WAAA;EAAA,SACD,KAAA,EAAO,SAAA;EAVP;;;;AASX;EATW,SAgBA,QAAA;WAEA,MAAA,WAIyB;EAAA,SAFzB,MAAA,WAIY;EAAA,SAFZ,QAAA,GAAW,aAAA,CAAc,YAAA,GAEJ;EAAA,SAArB,SAAA,GAAY,SAAA;AAAA;;;;;;;KASX,cAAA;EAAA,SACD,OAAA,EAAS,WAAA;EAAA,SACT,QAAA,EAAU,aAAA,CAAc,WAAA;AAAA;AAFnC;;;;;;AAAA,KAWY,gBAAA;EAAA,SACG,IAAA;EAAA,SAAwB,KAAA,EAAO,UAAA;AAAA;EAAA,SAC/B,IAAA;EAAA,SAA0B,OAAA;AAAA;EAAA,SAC1B,IAAA;EAAA,SAAiC,MAAA;EAAA,SAAyB,MAAA;AAAA;AAAA,cAE5D,cAAA,GACX,CAAA,EAAG,iBAAA,KACF,CAAA,IAAK,iBAAA;EAAsB,IAAA;AAAA;AAAA,cACjB,cAAA,GACX,CAAA,EAAG,iBAAA,KACF,CAAA,IAAK,iBAAA;EAAsB,IAAA;AAAA;AAAA,cAEjB,UAAA,GAAc,KAAA,EAAO,UAAA,KAAa,gBAAA;AAAA,cAClC,YAAA,GAAgB,OAAA,aAAkB,gBAAA;AAAA,cAIlC,mBAAA,GAAuB,MAAA,UAAgB,MAAA,aAAiB,gBAAA;AAAA,cAMxD,YAAA,GAAgB,CAAA,EAAG,gBAAA,KAAmB,CAAA,IAAK,gBAAA;EAAqB,IAAA;AAAA;AAAA,cAEhE,cAAA,GAAkB,CAAA,EAAG,gBAAA,KAAmB,CAAA,IAAK,gBAAA;EAAqB,IAAA;AAAA;AAAA,cAElE,qBAAA,GACX,CAAA,EAAG,gBAAA,KACF,CAAA,IAAK,gBAAA;EAAqB,IAAA;AAAA;;;;;;AArB7B;;cA8Ba,aAAA,GAAiB,MAAA,EAAQ,WAAA,KAAc,cAAA"}
1
+ {"version":3,"file":"Music.d.mts","names":[],"sources":["../../src/domain/Music.ts"],"mappings":";;;;;;;;;;;KASY;WACD;;WAEA;;;;;;;;;;;;;KAcC;;WAED;;WAEA;;;;;;;;;WASA;;WAEA,WAAW,SAAS;;;;;;;WAOpB;;WAEA,eAAe;;;;;;KAOd,mCAAmC;;;;;;;;KASnC;;;;;;;;;;;;;;KAeA;WACG;WAA0B,SAAS,cAAc;;WACjD;WAA0B,QAAQ;;cAEpC,eAAY,SAAa,cAAc,oBAAkB;cAKzD,eAAY,QAAY,wBAAsB;;;;;;KAU/C;;;;;;KAOA;WACD;WACA;WACA;;;;;;;KAQC;WACD,OAAO;;;;;;WAMP;;WAEA;;WAEA;;WAEA,WAAW,cAAc;;WAEzB,YAAY;;;;;;;;KASX;WACD,SAAS;WACT,UAAU,cAAc;;;;;;;;KASvB;WACG;WAAwB,OAAO;;WAC/B;WAA0B;;WAC1B;WAAiC;WAAyB;;cAE5D,iBAAc,GACtB,sBACF,KAAK;EAAsB;;cACjB,iBAAc,GACtB,sBACF,KAAK;EAAsB;;cAEjB,aAAU,OAAW,eAAa;cAClC,eAAY,oBAAsB;cAIlC,sBAAmB,gBAAkB,mBAAmB;cAMxD,eAAY,GAAO,qBAAmB,KAAK;EAAqB;;cAEhE,iBAAc,GAAO,qBAAmB,KAAK;EAAqB;;cAElE,wBAAqB,GAC7B,qBACF,KAAK;EAAqB;;;;;;;;;cAShB,gBAAa,QAAY,gBAAc"}
@@ -1,4 +1,4 @@
1
- import { n as __exportAll } from "../chunk-uyGKjUfl.mjs";
1
+ import { n as __exportAll } from "../rolldown-runtime-EAsCxrDo.mjs";
2
2
  //#region src/domain/Music.ts
3
3
  var Music_exports = /* @__PURE__ */ __exportAll({
4
4
  audioEvent: () => audioEvent,
@@ -1 +1 @@
1
- {"version":3,"file":"Music.mjs","names":[],"sources":["../../src/domain/Music.ts"],"sourcesContent":["import type { Duration } from \"effect\"\nimport type { AudioBlob, AudioChunk, AudioFormat } from \"./Audio.js\"\n\n/**\n * Prompt fragment with a relative weight. Native to Lyria RealTime\n * (`{ text, weight }` pairs blended in the model) and Riffusion compose.\n * Single-prompt providers (the majority) treat a 1-element array with\n * `weight: 1` as a plain prompt.\n */\nexport type WeightedPrompt = {\n readonly text: string\n /** Default `1.0`. Range typically `[0, 1]`; provider-dependent. */\n readonly weight?: number\n}\n\n/**\n * Cross-provider music-generation request. Trimmed to fields the\n * majority of music providers honor structurally; provider-specific\n * extras (Lyria `bpm` / `scale`, ElevenLabs `compositionPlan` /\n * `signWithC2pa`, Suno `style` / `personaId`, MiniMax `lyricsOptimizer`,\n * `instrumental` on providers that ship a wire toggle) live on each\n * provider's typed request which extends this and narrows `model`.\n *\n * Music providers are one-shot text-to-audio, not conversational. No\n * `messages[]` shape applies.\n */\nexport type CommonGenerateMusicRequest = {\n /** Model identifier. Each provider narrows. */\n readonly model: string\n /** Single prompt string. Weighted blends are provider-typed extras. */\n readonly prompt: string\n /**\n * Lyrics text, optionally with section tags like `[Verse]` /\n * `[Chorus]` / `[Bridge]` / `[Outro]`. Routed to a structured wire\n * field on providers that have one (ElevenLabs `lines`, MiniMax\n * `lyrics`, Mureka `lyrics`, Suno custom-mode `prompt`); embedded in\n * the prompt with a warning on providers without one (Lyria 3,\n * Riffusion).\n */\n readonly lyrics?: string\n /** Target duration. Provider may treat as a hint or hard limit. */\n readonly duration?: Duration.Duration\n /**\n * Reproducibility seed. Tuning hint (bucket 3): honored where the\n * provider takes one (Lyria 2 Vertex, Lyria RealTime, ElevenLabs\n * with `compositionPlan`, Stable Audio, MusicGen); silently ignored\n * elsewhere.\n */\n readonly seed?: number\n /** Preferred output format. Provider may override. */\n readonly outputFormat?: AudioFormat\n}\n\n/**\n * Streamed-output request. Same shape as the sync request: the\n * streaming variant only differs in how the response is delivered.\n */\nexport type CommonStreamGenerateMusicRequest = CommonGenerateMusicRequest\n\n/**\n * Playback-control vocabulary that converges across interactive-media\n * protocols (Web Audio, MIDI sequencer control, music SDK surfaces).\n * Provider-specific control actions (Lyria's `reset_context` and any\n * future provider's extras) live on the provider-typed session-input\n * union.\n */\nexport type MusicSessionControl = \"play\" | \"pause\" | \"stop\" | \"reset\"\n\n/**\n * Bidirectional-session input on the cross-provider surface. Two\n * load-bearing actions every interactive music session needs:\n *\n * - `prompts` — steer the active generation with a (single or\n * weighted) prompt blend.\n * - `control` — play / pause / stop / reset.\n *\n * Provider-typed services extend this union with their own `config`\n * variant for model-specific knobs (Lyria RealTime exposes density /\n * brightness / mute-stems / BPM / scale / etc. via its own\n * `LyriaRealtimeSessionInput`).\n */\nexport type MusicSessionInput =\n | { readonly _tag: \"prompts\"; readonly prompts: ReadonlyArray<WeightedPrompt> }\n | { readonly _tag: \"control\"; readonly action: MusicSessionControl }\n\nexport const promptsInput = (prompts: ReadonlyArray<WeightedPrompt>): MusicSessionInput => ({\n _tag: \"prompts\",\n prompts,\n})\n\nexport const controlInput = (action: MusicSessionControl): MusicSessionInput => ({\n _tag: \"control\",\n action,\n})\n\n/**\n * Watermark kind on the response. SynthID is mandatory on Lyria; C2PA\n * is opt-in on ElevenLabs. No provider exposes additional metadata\n * about the watermark itself, so a bare literal-union is enough.\n */\nexport type Watermark = \"synthid\" | \"c2pa\" | (string & {})\n\n/**\n * Labelled section with absolute timing. Populated when the provider\n * returns structured section metadata (Lyria text part, ElevenLabs\n * `/v1/music/detailed` with `with_timestamps`).\n */\nexport type MusicSection = {\n readonly label: string\n readonly startSeconds: number\n readonly endSeconds: number\n}\n\n/**\n * Single generated track. Composes `AudioBlob` rather than extending\n * it — `result.audio` is the raw blob, `result.songId` / `lyrics` /\n * `sections` / `watermark` are provider-side metadata when returned.\n */\nexport type MusicResult = {\n readonly audio: AudioBlob\n /**\n * Provider identifier, useful when routing through multiple\n * providers in a single pipeline (`\"lyria\"`, `\"elevenlabs-music\"`,\n * etc.).\n */\n readonly provider?: string\n /** Provider-side ID for back-reference (re-download, extension, stems). */\n readonly songId?: string\n /** Generated or transcribed lyrics when the provider returned them. */\n readonly lyrics?: string\n /** Structured section markers when the provider returned them. */\n readonly sections?: ReadonlyArray<MusicSection>\n /** Watermark presence indicator when the provider applied one. */\n readonly watermark?: Watermark\n}\n\n/**\n * Result of a `generate` call. Suno and Mureka always return 2 tracks\n * per request; every other provider returns 1. `primary` is the\n * caller-friendly convenience; `variants` carries every track the\n * provider produced (length ≥ 1; `primary === variants[0]`).\n */\nexport type GenerateResult = {\n readonly primary: MusicResult\n readonly variants: ReadonlyArray<MusicResult>\n}\n\n/**\n * In-band event on the bidirectional `streamGenerationFrom` output\n * stream. Audio chunks flow as `audio`; server-side warnings\n * (`warning`) and prompt-filter rejections (`filteredPrompt`) flow\n * alongside rather than going to a side-channel log.\n */\nexport type MusicStreamEvent =\n | { readonly _tag: \"audio\"; readonly chunk: AudioChunk }\n | { readonly _tag: \"warning\"; readonly message: string }\n | { readonly _tag: \"filteredPrompt\"; readonly prompt: string; readonly reason: string }\n\nexport const isPromptsInput = (\n i: MusicSessionInput,\n): i is MusicSessionInput & { _tag: \"prompts\" } => i._tag === \"prompts\"\nexport const isControlInput = (\n i: MusicSessionInput,\n): i is MusicSessionInput & { _tag: \"control\" } => i._tag === \"control\"\n\nexport const audioEvent = (chunk: AudioChunk): MusicStreamEvent => ({ _tag: \"audio\", chunk })\nexport const warningEvent = (message: string): MusicStreamEvent => ({\n _tag: \"warning\",\n message,\n})\nexport const filteredPromptEvent = (prompt: string, reason: string): MusicStreamEvent => ({\n _tag: \"filteredPrompt\",\n prompt,\n reason,\n})\n\nexport const isAudioEvent = (e: MusicStreamEvent): e is MusicStreamEvent & { _tag: \"audio\" } =>\n e._tag === \"audio\"\nexport const isWarningEvent = (e: MusicStreamEvent): e is MusicStreamEvent & { _tag: \"warning\" } =>\n e._tag === \"warning\"\nexport const isFilteredPromptEvent = (\n e: MusicStreamEvent,\n): e is MusicStreamEvent & { _tag: \"filteredPrompt\" } => e._tag === \"filteredPrompt\"\n\n/**\n * Build a single-variant `GenerateResult` from a `MusicResult`.\n * Convenience for providers that always return exactly one track\n * (Lyria, ElevenLabs, MiniMax, Stable Audio, MusicGen, Riffusion,\n * Tencent). Providers that return multiple tracks (Suno, Mureka)\n * construct the `GenerateResult` directly.\n */\nexport const singleVariant = (result: MusicResult): GenerateResult => ({\n primary: result,\n variants: [result],\n})\n"],"mappings":";;;;;;;;;;;;;;;AAqFA,MAAa,gBAAgB,aAA+D;CAC1F,MAAM;CACN;CACD;AAED,MAAa,gBAAgB,YAAoD;CAC/E,MAAM;CACN;CACD;AAiED,MAAa,kBACX,MACiD,EAAE,SAAS;AAC9D,MAAa,kBACX,MACiD,EAAE,SAAS;AAE9D,MAAa,cAAc,WAAyC;CAAE,MAAM;CAAS;CAAO;AAC5F,MAAa,gBAAgB,aAAuC;CAClE,MAAM;CACN;CACD;AACD,MAAa,uBAAuB,QAAgB,YAAsC;CACxF,MAAM;CACN;CACA;CACD;AAED,MAAa,gBAAgB,MAC3B,EAAE,SAAS;AACb,MAAa,kBAAkB,MAC7B,EAAE,SAAS;AACb,MAAa,yBACX,MACuD,EAAE,SAAS;;;;;;;;AASpE,MAAa,iBAAiB,YAAyC;CACrE,SAAS;CACT,UAAU,CAAC,OAAO;CACnB"}
1
+ {"version":3,"file":"Music.mjs","names":[],"sources":["../../src/domain/Music.ts"],"sourcesContent":["import type { Duration } from \"effect\"\nimport type { AudioBlob, AudioChunk, AudioFormat } from \"./Audio.js\"\n\n/**\n * Prompt fragment with a relative weight. Native to Lyria RealTime\n * (`{ text, weight }` pairs blended in the model) and Riffusion compose.\n * Single-prompt providers (the majority) treat a 1-element array with\n * `weight: 1` as a plain prompt.\n */\nexport type WeightedPrompt = {\n readonly text: string\n /** Default `1.0`. Range typically `[0, 1]`; provider-dependent. */\n readonly weight?: number\n}\n\n/**\n * Cross-provider music-generation request. Trimmed to fields the\n * majority of music providers honor structurally; provider-specific\n * extras (Lyria `bpm` / `scale`, ElevenLabs `compositionPlan` /\n * `signWithC2pa`, Suno `style` / `personaId`, MiniMax `lyricsOptimizer`,\n * `instrumental` on providers that ship a wire toggle) live on each\n * provider's typed request which extends this and narrows `model`.\n *\n * Music providers are one-shot text-to-audio, not conversational. No\n * `messages[]` shape applies.\n */\nexport type CommonGenerateMusicRequest = {\n /** Model identifier. Each provider narrows. */\n readonly model: string\n /** Single prompt string. Weighted blends are provider-typed extras. */\n readonly prompt: string\n /**\n * Lyrics text, optionally with section tags like `[Verse]` /\n * `[Chorus]` / `[Bridge]` / `[Outro]`. Routed to a structured wire\n * field on providers that have one (ElevenLabs `lines`, MiniMax\n * `lyrics`, Mureka `lyrics`, Suno custom-mode `prompt`); embedded in\n * the prompt with a warning on providers without one (Lyria 3,\n * Riffusion).\n */\n readonly lyrics?: string\n /** Target duration. Provider may treat as a hint or hard limit. */\n readonly duration?: Duration.Duration\n /**\n * Reproducibility seed. Tuning hint (bucket 3): honored where the\n * provider takes one (Lyria 2 Vertex, Lyria RealTime, ElevenLabs\n * with `compositionPlan`, Stable Audio, MusicGen); silently ignored\n * elsewhere.\n */\n readonly seed?: number\n /** Preferred output format. Provider may override. */\n readonly outputFormat?: AudioFormat\n}\n\n/**\n * Streamed-output request. Same shape as the sync request: the\n * streaming variant only differs in how the response is delivered.\n */\nexport type CommonStreamGenerateMusicRequest = CommonGenerateMusicRequest\n\n/**\n * Playback-control vocabulary that converges across interactive-media\n * protocols (Web Audio, MIDI sequencer control, music SDK surfaces).\n * Provider-specific control actions (Lyria's `reset_context` and any\n * future provider's extras) live on the provider-typed session-input\n * union.\n */\nexport type MusicSessionControl = \"play\" | \"pause\" | \"stop\" | \"reset\"\n\n/**\n * Bidirectional-session input on the cross-provider surface. Two\n * load-bearing actions every interactive music session needs:\n *\n * - `prompts` — steer the active generation with a (single or\n * weighted) prompt blend.\n * - `control` — play / pause / stop / reset.\n *\n * Provider-typed services extend this union with their own `config`\n * variant for model-specific knobs (Lyria RealTime exposes density /\n * brightness / mute-stems / BPM / scale / etc. via its own\n * `LyriaRealtimeSessionInput`).\n */\nexport type MusicSessionInput =\n | { readonly _tag: \"prompts\"; readonly prompts: ReadonlyArray<WeightedPrompt> }\n | { readonly _tag: \"control\"; readonly action: MusicSessionControl }\n\nexport const promptsInput = (prompts: ReadonlyArray<WeightedPrompt>): MusicSessionInput => ({\n _tag: \"prompts\",\n prompts,\n})\n\nexport const controlInput = (action: MusicSessionControl): MusicSessionInput => ({\n _tag: \"control\",\n action,\n})\n\n/**\n * Watermark kind on the response. SynthID is mandatory on Lyria; C2PA\n * is opt-in on ElevenLabs. No provider exposes additional metadata\n * about the watermark itself, so a bare literal-union is enough.\n */\nexport type Watermark = \"synthid\" | \"c2pa\" | (string & {})\n\n/**\n * Labelled section with absolute timing. Populated when the provider\n * returns structured section metadata (Lyria text part, ElevenLabs\n * `/v1/music/detailed` with `with_timestamps`).\n */\nexport type MusicSection = {\n readonly label: string\n readonly startSeconds: number\n readonly endSeconds: number\n}\n\n/**\n * Single generated track. Composes `AudioBlob` rather than extending\n * it — `result.audio` is the raw blob, `result.songId` / `lyrics` /\n * `sections` / `watermark` are provider-side metadata when returned.\n */\nexport type MusicResult = {\n readonly audio: AudioBlob\n /**\n * Provider identifier, useful when routing through multiple\n * providers in a single pipeline (`\"lyria\"`, `\"elevenlabs-music\"`,\n * etc.).\n */\n readonly provider?: string\n /** Provider-side ID for back-reference (re-download, extension, stems). */\n readonly songId?: string\n /** Generated or transcribed lyrics when the provider returned them. */\n readonly lyrics?: string\n /** Structured section markers when the provider returned them. */\n readonly sections?: ReadonlyArray<MusicSection>\n /** Watermark presence indicator when the provider applied one. */\n readonly watermark?: Watermark\n}\n\n/**\n * Result of a `generate` call. Suno and Mureka always return 2 tracks\n * per request; every other provider returns 1. `primary` is the\n * caller-friendly convenience; `variants` carries every track the\n * provider produced (length ≥ 1; `primary === variants[0]`).\n */\nexport type GenerateResult = {\n readonly primary: MusicResult\n readonly variants: ReadonlyArray<MusicResult>\n}\n\n/**\n * In-band event on the bidirectional `streamGenerationFrom` output\n * stream. Audio chunks flow as `audio`; server-side warnings\n * (`warning`) and prompt-filter rejections (`filteredPrompt`) flow\n * alongside rather than going to a side-channel log.\n */\nexport type MusicStreamEvent =\n | { readonly _tag: \"audio\"; readonly chunk: AudioChunk }\n | { readonly _tag: \"warning\"; readonly message: string }\n | { readonly _tag: \"filteredPrompt\"; readonly prompt: string; readonly reason: string }\n\nexport const isPromptsInput = (\n i: MusicSessionInput,\n): i is MusicSessionInput & { _tag: \"prompts\" } => i._tag === \"prompts\"\nexport const isControlInput = (\n i: MusicSessionInput,\n): i is MusicSessionInput & { _tag: \"control\" } => i._tag === \"control\"\n\nexport const audioEvent = (chunk: AudioChunk): MusicStreamEvent => ({ _tag: \"audio\", chunk })\nexport const warningEvent = (message: string): MusicStreamEvent => ({\n _tag: \"warning\",\n message,\n})\nexport const filteredPromptEvent = (prompt: string, reason: string): MusicStreamEvent => ({\n _tag: \"filteredPrompt\",\n prompt,\n reason,\n})\n\nexport const isAudioEvent = (e: MusicStreamEvent): e is MusicStreamEvent & { _tag: \"audio\" } =>\n e._tag === \"audio\"\nexport const isWarningEvent = (e: MusicStreamEvent): e is MusicStreamEvent & { _tag: \"warning\" } =>\n e._tag === \"warning\"\nexport const isFilteredPromptEvent = (\n e: MusicStreamEvent,\n): e is MusicStreamEvent & { _tag: \"filteredPrompt\" } => e._tag === \"filteredPrompt\"\n\n/**\n * Build a single-variant `GenerateResult` from a `MusicResult`.\n * Convenience for providers that always return exactly one track\n * (Lyria, ElevenLabs, MiniMax, Stable Audio, MusicGen, Riffusion,\n * Tencent). Providers that return multiple tracks (Suno, Mureka)\n * construct the `GenerateResult` directly.\n */\nexport const singleVariant = (result: MusicResult): GenerateResult => ({\n primary: result,\n variants: [result],\n})\n"],"mappings":";;;;;;;;;;;;;;;AAqFA,MAAa,gBAAgB,aAA+D;CAC1F,MAAM;CACN;AACF;AAEA,MAAa,gBAAgB,YAAoD;CAC/E,MAAM;CACN;AACF;AAiEA,MAAa,kBACX,MACiD,EAAE,SAAS;AAC9D,MAAa,kBACX,MACiD,EAAE,SAAS;AAE9D,MAAa,cAAc,WAAyC;CAAE,MAAM;CAAS;AAAM;AAC3F,MAAa,gBAAgB,aAAuC;CAClE,MAAM;CACN;AACF;AACA,MAAa,uBAAuB,QAAgB,YAAsC;CACxF,MAAM;CACN;CACA;AACF;AAEA,MAAa,gBAAgB,MAC3B,EAAE,SAAS;AACb,MAAa,kBAAkB,MAC7B,EAAE,SAAS;AACb,MAAa,yBACX,MACuD,EAAE,SAAS;;;;;;;;AASpE,MAAa,iBAAiB,YAAyC;CACrE,SAAS;CACT,UAAU,CAAC,MAAM;AACnB"}
@@ -1,8 +1,6 @@
1
- import { o as HistoryItem } from "../Items-BWNu6VGp.mjs";
1
+ import { o as HistoryItem } from "../Items-SfUabNuB.mjs";
2
2
  import { JobRef, JobState } from "../job/Job.mjs";
3
3
  import { Turn } from "./Turn.mjs";
4
-
5
- //#region src/domain/Research.d.ts
6
4
  declare namespace Research_d_exports {
7
5
  export { ResearchJobRef, ResearchRequest, ResearchState };
8
6
  }
@@ -18,7 +16,8 @@ declare namespace Research_d_exports {
18
16
  * encoding is shared.
19
17
  */
20
18
  type ResearchRequest = {
21
- readonly history: ReadonlyArray<HistoryItem>; /** Model / agent id. Provider default if omitted; each provider narrows. */
19
+ readonly history: ReadonlyArray<HistoryItem>;
20
+ /** Model / agent id. Provider default if omitted; each provider narrows. */
22
21
  readonly model?: string;
23
22
  };
24
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Research.d.mts","names":[],"sources":["../../src/domain/Research.ts"],"mappings":";;;;;;;;;;;;;;;;AAmBA;;;KAAY,eAAA;EAAA,SACD,OAAA,EAAS,aAAA,CAAc,WAAA,GAAd;EAAA,SAET,KAAA;AAAA;;;;AAgBX;;;;;KAAY,cAAA,GAAiB,MAAA,CAAW,IAAA;;KAG5B,aAAA,GAAgB,QAAA,CAAa,IAAA"}
1
+ {"version":3,"file":"Research.d.mts","names":[],"sources":["../../src/domain/Research.ts"],"mappings":";;;;;;;;;;;;;;;;;KAmBY;WACD,SAAS,cAAc;;WAEvB;;;;;;;;;;KAgBC,iBAAiB,OAAW;;KAG5B,gBAAgB,SAAa"}
@@ -1,4 +1,4 @@
1
- import { n as __exportAll } from "../chunk-uyGKjUfl.mjs";
1
+ import { n as __exportAll } from "../rolldown-runtime-EAsCxrDo.mjs";
2
2
  //#region src/domain/Research.ts
3
3
  var Research_exports = /* @__PURE__ */ __exportAll({});
4
4
  //#endregion
@@ -1,6 +1,4 @@
1
1
  import { Duration } from "effect";
2
-
3
- //#region src/domain/Transcript.d.ts
4
2
  declare namespace Transcript_d_exports {
5
3
  export { TranscriptEvent, TranscriptResult, WordTimestamp, isAudioEvent, isError, isFinal, isMetadata, isPartial, isSpeechStarted, isUtteranceEnded };
6
4
  }
@@ -27,7 +25,8 @@ type WordTimestamp = {
27
25
  */
28
26
  type TranscriptResult = {
29
27
  readonly text: string;
30
- readonly languageCode?: string; /** Total audio duration. (Word offsets stay raw seconds on `WordTimestamp`.) */
28
+ readonly languageCode?: string;
29
+ /** Total audio duration. (Word offsets stay raw seconds on `WordTimestamp`.) */
31
30
  readonly duration?: Duration.Duration;
32
31
  readonly words?: ReadonlyArray<WordTimestamp>;
33
32
  readonly raw?: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"Transcript.d.mts","names":[],"sources":["../../src/domain/Transcript.ts"],"mappings":";;;;;;;;;;;;;;KAUY,aAAA;EAAA,SACD,IAAA;EAAA,SACA,YAAA;EAAA,SACA,UAAA;EAAA,SACA,UAAA;EAAA,SACA,SAAA;EAAA,SACA,YAAA;AAAA;;;;;;KAQC,gBAAA;EAAA,SACD,IAAA;EAAA,SACA,YAAA,WAVA;EAAA,SAYA,QAAA,GAAW,QAAA,CAAS,QAAA;EAAA,SACpB,KAAA,GAAQ,aAAA,CAAc,aAAA;EAAA,SACtB,GAAA;AAAA;;;;;;;;;;;;;;;KAiBC,eAAA;EAAA,SAEG,IAAA;EAAA,SACA,IAAA;EAAA,SACA,KAAA,GAAQ,aAAA,CAAc,aAAA;EAAA,SACtB,SAAA;AAAA;EAAA,SAGA,IAAA;EAAA,SACA,IAAA;EAAA,SACA,KAAA,GAAQ,aAAA,CAAc,aAAA;EAAA,SACtB,YAAA;AAAA;EAAA,SAEA,IAAA;EAAA,SAAiC,SAAA;AAAA;EAAA,SACjC,IAAA;EAAA,SAAkC,SAAA;AAAA;EAAA,SAElC,IAAA;EAAA,SACA,KAAA;EAAA,SACA,YAAA;EAAA,SACA,UAAA;AAAA;EAAA,SAEA,IAAA;EAAA,SAA2B,GAAA;AAAA;EAAA,SAC3B,IAAA;EAAA,SAAwB,IAAA;EAAA,SAAwB,OAAA;AAAA;AAAA,cAElD,SAAA,GAAa,CAAA,EAAG,eAAA,KAAkB,CAAA,IAAK,OAAA,CAAQ,eAAA;EAAmB,IAAA;AAAA;AAAA,cAElE,OAAA,GAAW,CAAA,EAAG,eAAA,KAAkB,CAAA,IAAK,OAAA,CAAQ,eAAA;EAAmB,IAAA;AAAA;AAAA,cAEhE,eAAA,GACX,CAAA,EAAG,eAAA,KACF,CAAA,IAAK,OAAA,CAAQ,eAAA;EAAmB,IAAA;AAAA;AAAA,cACtB,gBAAA,GACX,CAAA,EAAG,eAAA,KACF,CAAA,IAAK,OAAA,CAAQ,eAAA;EAAmB,IAAA;AAAA;AAAA,cACtB,YAAA,GACX,CAAA,EAAG,eAAA,KACF,CAAA,IAAK,OAAA,CAAQ,eAAA;EAAmB,IAAA;AAAA;AAAA,cACtB,UAAA,GACX,CAAA,EAAG,eAAA,KACF,CAAA,IAAK,OAAA,CAAQ,eAAA;EAAmB,IAAA;AAAA;AAAA,cACtB,OAAA,GAAW,CAAA,EAAG,eAAA,KAAkB,CAAA,IAAK,OAAA,CAAQ,eAAA;EAAmB,IAAA;AAAA"}
1
+ {"version":3,"file":"Transcript.d.mts","names":[],"sources":["../../src/domain/Transcript.ts"],"mappings":";;;;;;;;;;;;KAUY;WACD;WACA;WACA;WACA;WACA;WACA;;;;;;;KAQC;WACD;WACA;;WAEA,WAAW,SAAS;WACpB,QAAQ,cAAc;WACtB;;;;;;;;;;;;;;;;KAiBC;WAEG;WACA;WACA,QAAQ,cAAc;WACtB;;WAGA;WACA;WACA,QAAQ,cAAc;WACtB;;WAEA;WAAiC;;WACjC;WAAkC;;WAElC;WACA;WACA;WACA;;WAEA;WAA2B;;WAC3B;WAAwB;WAAwB;;cAElD,YAAS,GAAO,oBAAkB,KAAK,QAAQ;EAAmB;;cAElE,UAAO,GAAO,oBAAkB,KAAK,QAAQ;EAAmB;;cAEhE,kBAAe,GACvB,oBACF,KAAK,QAAQ;EAAmB;;cACtB,mBAAgB,GACxB,oBACF,KAAK,QAAQ;EAAmB;;cACtB,eAAY,GACpB,oBACF,KAAK,QAAQ;EAAmB;;cACtB,aAAU,GAClB,oBACF,KAAK,QAAQ;EAAmB;;cACtB,UAAO,GAAO,oBAAkB,KAAK,QAAQ;EAAmB"}
@@ -1,4 +1,4 @@
1
- import { n as __exportAll } from "../chunk-uyGKjUfl.mjs";
1
+ import { n as __exportAll } from "../rolldown-runtime-EAsCxrDo.mjs";
2
2
  //#region src/domain/Transcript.ts
3
3
  var Transcript_exports = /* @__PURE__ */ __exportAll({
4
4
  isAudioEvent: () => isAudioEvent,
@@ -1,12 +1,7 @@
1
- import { i as ImageSource } from "../Image-C4vuBmu0.mjs";
2
- import { d as Message, m as Reasoning, o as HistoryItem, t as Annotation, v as ToolCall, x as Usage, y as ToolCallOutput } from "../Items-BWNu6VGp.mjs";
3
- import { i as StructuredFormat, n as JsonParseError, r as StructuredDecodeError } from "../StructuredFormat-DHaUJBdd.mjs";
1
+ import { i as ImageSource } from "../Image-BK8-4H6s.mjs";
2
+ import { d as Message, m as Reasoning, o as HistoryItem, t as Annotation, v as ToolCall, x as Usage, y as ToolCallOutput } from "../Items-SfUabNuB.mjs";
3
+ import { i as StructuredFormat, n as JsonParseError, r as StructuredDecodeError } from "../StructuredFormat-BlZhyOsi.mjs";
4
4
  import { Data, Effect, Schema, Stream } from "effect";
5
- import * as _$effect_Cause0 from "effect/Cause";
6
- import * as _$effect_Types0 from "effect/Types";
7
- import * as _$effect_Unify0 from "effect/Unify";
8
-
9
- //#region src/domain/Turn.d.ts
10
5
  declare namespace Turn_d_exports {
11
6
  export { InteractionEvent, RefusalRejected, Turn, TurnEvent, appendToHistory, assistantMessages, assistantText, assistantTexts, citations, decodeStructured, getToolCalls, isTurnComplete, reasonings, textDeltas };
12
7
  }
@@ -80,6 +75,7 @@ declare const Turn: Schema.Struct<{
80
75
  readonly total_tokens: Schema.optional<Schema.Number>;
81
76
  readonly input_tokens_details: Schema.optional<Schema.Struct<{
82
77
  readonly cached_tokens: Schema.optional<Schema.Number>;
78
+ readonly cache_write_tokens: Schema.optional<Schema.Number>;
83
79
  }>>;
84
80
  readonly output_tokens_details: Schema.optional<Schema.Struct<{
85
81
  readonly reasoning_tokens: Schema.optional<Schema.Number>;
@@ -150,50 +146,9 @@ type TurnEvent = Data.TaggedEnum<{
150
146
  };
151
147
  }>;
152
148
  declare const TurnEvent: {
153
- readonly TextDelta: Data.TaggedEnum.ConstructorFrom<{
154
- readonly _tag: "TextDelta";
155
- readonly text: string;
156
- }, "_tag">;
157
- readonly ReasoningDelta: Data.TaggedEnum.ConstructorFrom<{
158
- readonly _tag: "ReasoningDelta";
159
- readonly text: string;
160
- readonly kind: "trace" | "summary";
161
- }, "_tag">;
162
- readonly RefusalDelta: Data.TaggedEnum.ConstructorFrom<{
163
- readonly _tag: "RefusalDelta";
164
- readonly text: string;
165
- }, "_tag">;
166
- readonly ToolCallStart: Data.TaggedEnum.ConstructorFrom<{
167
- readonly _tag: "ToolCallStart";
168
- readonly call_id: string;
169
- readonly name: string;
170
- }, "_tag">;
171
- readonly ToolCallArgsDelta: Data.TaggedEnum.ConstructorFrom<{
172
- readonly _tag: "ToolCallArgsDelta";
173
- readonly call_id: string;
174
- readonly delta: string;
175
- }, "_tag">;
176
- readonly UsageUpdate: Data.TaggedEnum.ConstructorFrom<{
177
- readonly _tag: "UsageUpdate";
178
- readonly usage: Usage;
179
- }, "_tag">;
180
- readonly WebSearchCall: Data.TaggedEnum.ConstructorFrom<{
181
- readonly _tag: "WebSearchCall";
182
- readonly status: "started" | "searching" | "completed";
183
- readonly query?: string;
184
- readonly action?: "search" | "open_page" | "find_in_page";
185
- }, "_tag">;
186
- readonly CitationAdded: Data.TaggedEnum.ConstructorFrom<{
149
+ readonly $is: <Tag extends "CitationAdded" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall">(tag: Tag) => (u: unknown) => u is Extract<{
187
150
  readonly _tag: "CitationAdded";
188
151
  readonly annotation: Annotation;
189
- }, "_tag">;
190
- readonly TurnComplete: Data.TaggedEnum.ConstructorFrom<{
191
- readonly _tag: "TurnComplete";
192
- readonly turn: Turn;
193
- }, "_tag">;
194
- readonly $is: <Tag extends "TextDelta" | "ReasoningDelta" | "RefusalDelta" | "ToolCallStart" | "ToolCallArgsDelta" | "UsageUpdate" | "WebSearchCall" | "CitationAdded" | "TurnComplete">(tag: Tag) => (u: unknown) => u is Extract<{
195
- readonly _tag: "TextDelta";
196
- readonly text: string;
197
152
  }, {
198
153
  readonly _tag: Tag;
199
154
  }> | Extract<{
@@ -208,9 +163,8 @@ declare const TurnEvent: {
208
163
  }, {
209
164
  readonly _tag: Tag;
210
165
  }> | Extract<{
211
- readonly _tag: "ToolCallStart";
212
- readonly call_id: string;
213
- readonly name: string;
166
+ readonly _tag: "TextDelta";
167
+ readonly text: string;
214
168
  }, {
215
169
  readonly _tag: Tag;
216
170
  }> | Extract<{
@@ -220,74 +174,33 @@ declare const TurnEvent: {
220
174
  }, {
221
175
  readonly _tag: Tag;
222
176
  }> | Extract<{
223
- readonly _tag: "UsageUpdate";
224
- readonly usage: Usage;
177
+ readonly _tag: "ToolCallStart";
178
+ readonly call_id: string;
179
+ readonly name: string;
225
180
  }, {
226
181
  readonly _tag: Tag;
227
182
  }> | Extract<{
228
- readonly _tag: "WebSearchCall";
229
- readonly status: "started" | "searching" | "completed";
230
- readonly query?: string;
231
- readonly action?: "search" | "open_page" | "find_in_page";
183
+ readonly _tag: "TurnComplete";
184
+ readonly turn: Turn;
232
185
  }, {
233
186
  readonly _tag: Tag;
234
187
  }> | Extract<{
235
- readonly _tag: "CitationAdded";
236
- readonly annotation: Annotation;
188
+ readonly _tag: "UsageUpdate";
189
+ readonly usage: Usage;
237
190
  }, {
238
191
  readonly _tag: Tag;
239
192
  }> | Extract<{
240
- readonly _tag: "TurnComplete";
241
- readonly turn: Turn;
193
+ readonly _tag: "WebSearchCall";
194
+ readonly status: "started" | "searching" | "completed";
195
+ readonly query?: string;
196
+ readonly action?: "search" | "open_page" | "find_in_page";
242
197
  }, {
243
198
  readonly _tag: Tag;
244
199
  }>;
245
200
  readonly $match: {
246
- <Cases extends {
247
- readonly TextDelta: (args: {
248
- readonly _tag: "TextDelta";
249
- readonly text: string;
250
- }) => any;
251
- readonly ReasoningDelta: (args: {
252
- readonly _tag: "ReasoningDelta";
253
- readonly text: string;
254
- readonly kind: "trace" | "summary";
255
- }) => any;
256
- readonly RefusalDelta: (args: {
257
- readonly _tag: "RefusalDelta";
258
- readonly text: string;
259
- }) => any;
260
- readonly ToolCallStart: (args: {
261
- readonly _tag: "ToolCallStart";
262
- readonly call_id: string;
263
- readonly name: string;
264
- }) => any;
265
- readonly ToolCallArgsDelta: (args: {
266
- readonly _tag: "ToolCallArgsDelta";
267
- readonly call_id: string;
268
- readonly delta: string;
269
- }) => any;
270
- readonly UsageUpdate: (args: {
271
- readonly _tag: "UsageUpdate";
272
- readonly usage: Usage;
273
- }) => any;
274
- readonly WebSearchCall: (args: {
275
- readonly _tag: "WebSearchCall";
276
- readonly status: "started" | "searching" | "completed";
277
- readonly query?: string;
278
- readonly action?: "search" | "open_page" | "find_in_page";
279
- }) => any;
280
- readonly CitationAdded: (args: {
281
- readonly _tag: "CitationAdded";
282
- readonly annotation: Annotation;
283
- }) => any;
284
- readonly TurnComplete: (args: {
285
- readonly _tag: "TurnComplete";
286
- readonly turn: Turn;
287
- }) => any;
288
- }>(cases: Cases): (value: {
289
- readonly _tag: "TextDelta";
290
- readonly text: string;
201
+ <Cases extends { readonly [Tag in "CitationAdded" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall"]: (args: Extract<{
202
+ readonly _tag: "CitationAdded";
203
+ readonly annotation: Annotation;
291
204
  } | {
292
205
  readonly _tag: "ReasoningDelta";
293
206
  readonly text: string;
@@ -296,13 +209,19 @@ declare const TurnEvent: {
296
209
  readonly _tag: "RefusalDelta";
297
210
  readonly text: string;
298
211
  } | {
299
- readonly _tag: "ToolCallStart";
300
- readonly call_id: string;
301
- readonly name: string;
212
+ readonly _tag: "TextDelta";
213
+ readonly text: string;
302
214
  } | {
303
215
  readonly _tag: "ToolCallArgsDelta";
304
216
  readonly call_id: string;
305
217
  readonly delta: string;
218
+ } | {
219
+ readonly _tag: "ToolCallStart";
220
+ readonly call_id: string;
221
+ readonly name: string;
222
+ } | {
223
+ readonly _tag: "TurnComplete";
224
+ readonly turn: Turn;
306
225
  } | {
307
226
  readonly _tag: "UsageUpdate";
308
227
  readonly usage: Usage;
@@ -311,58 +230,11 @@ declare const TurnEvent: {
311
230
  readonly status: "started" | "searching" | "completed";
312
231
  readonly query?: string;
313
232
  readonly action?: "search" | "open_page" | "find_in_page";
314
- } | {
233
+ }, {
234
+ readonly _tag: Tag;
235
+ }>) => any; }>(cases: Cases): (value: {
315
236
  readonly _tag: "CitationAdded";
316
237
  readonly annotation: Annotation;
317
- } | {
318
- readonly _tag: "TurnComplete";
319
- readonly turn: Turn;
320
- }) => _$effect_Unify0.Unify<ReturnType<Cases["TextDelta" | "ReasoningDelta" | "RefusalDelta" | "ToolCallStart" | "ToolCallArgsDelta" | "UsageUpdate" | "WebSearchCall" | "CitationAdded" | "TurnComplete"]>>;
321
- <Cases extends {
322
- readonly TextDelta: (args: {
323
- readonly _tag: "TextDelta";
324
- readonly text: string;
325
- }) => any;
326
- readonly ReasoningDelta: (args: {
327
- readonly _tag: "ReasoningDelta";
328
- readonly text: string;
329
- readonly kind: "trace" | "summary";
330
- }) => any;
331
- readonly RefusalDelta: (args: {
332
- readonly _tag: "RefusalDelta";
333
- readonly text: string;
334
- }) => any;
335
- readonly ToolCallStart: (args: {
336
- readonly _tag: "ToolCallStart";
337
- readonly call_id: string;
338
- readonly name: string;
339
- }) => any;
340
- readonly ToolCallArgsDelta: (args: {
341
- readonly _tag: "ToolCallArgsDelta";
342
- readonly call_id: string;
343
- readonly delta: string;
344
- }) => any;
345
- readonly UsageUpdate: (args: {
346
- readonly _tag: "UsageUpdate";
347
- readonly usage: Usage;
348
- }) => any;
349
- readonly WebSearchCall: (args: {
350
- readonly _tag: "WebSearchCall";
351
- readonly status: "started" | "searching" | "completed";
352
- readonly query?: string;
353
- readonly action?: "search" | "open_page" | "find_in_page";
354
- }) => any;
355
- readonly CitationAdded: (args: {
356
- readonly _tag: "CitationAdded";
357
- readonly annotation: Annotation;
358
- }) => any;
359
- readonly TurnComplete: (args: {
360
- readonly _tag: "TurnComplete";
361
- readonly turn: Turn;
362
- }) => any;
363
- }>(value: {
364
- readonly _tag: "TextDelta";
365
- readonly text: string;
366
238
  } | {
367
239
  readonly _tag: "ReasoningDelta";
368
240
  readonly text: string;
@@ -370,14 +242,53 @@ declare const TurnEvent: {
370
242
  } | {
371
243
  readonly _tag: "RefusalDelta";
372
244
  readonly text: string;
245
+ } | {
246
+ readonly _tag: "TextDelta";
247
+ readonly text: string;
248
+ } | {
249
+ readonly _tag: "ToolCallArgsDelta";
250
+ readonly call_id: string;
251
+ readonly delta: string;
373
252
  } | {
374
253
  readonly _tag: "ToolCallStart";
375
254
  readonly call_id: string;
376
255
  readonly name: string;
256
+ } | {
257
+ readonly _tag: "TurnComplete";
258
+ readonly turn: Turn;
259
+ } | {
260
+ readonly _tag: "UsageUpdate";
261
+ readonly usage: Usage;
262
+ } | {
263
+ readonly _tag: "WebSearchCall";
264
+ readonly status: "started" | "searching" | "completed";
265
+ readonly query?: string;
266
+ readonly action?: "search" | "open_page" | "find_in_page";
267
+ }) => import("effect/Unify").Unify<ReturnType<Cases["CitationAdded" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall"]>>;
268
+ <Cases extends { readonly [Tag in "CitationAdded" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall"]: (args: Extract<{
269
+ readonly _tag: "CitationAdded";
270
+ readonly annotation: Annotation;
271
+ } | {
272
+ readonly _tag: "ReasoningDelta";
273
+ readonly text: string;
274
+ readonly kind: "trace" | "summary";
275
+ } | {
276
+ readonly _tag: "RefusalDelta";
277
+ readonly text: string;
278
+ } | {
279
+ readonly _tag: "TextDelta";
280
+ readonly text: string;
377
281
  } | {
378
282
  readonly _tag: "ToolCallArgsDelta";
379
283
  readonly call_id: string;
380
284
  readonly delta: string;
285
+ } | {
286
+ readonly _tag: "ToolCallStart";
287
+ readonly call_id: string;
288
+ readonly name: string;
289
+ } | {
290
+ readonly _tag: "TurnComplete";
291
+ readonly turn: Turn;
381
292
  } | {
382
293
  readonly _tag: "UsageUpdate";
383
294
  readonly usage: Usage;
@@ -386,14 +297,83 @@ declare const TurnEvent: {
386
297
  readonly status: "started" | "searching" | "completed";
387
298
  readonly query?: string;
388
299
  readonly action?: "search" | "open_page" | "find_in_page";
389
- } | {
300
+ }, {
301
+ readonly _tag: Tag;
302
+ }>) => any; }>(value: {
390
303
  readonly _tag: "CitationAdded";
391
304
  readonly annotation: Annotation;
305
+ } | {
306
+ readonly _tag: "ReasoningDelta";
307
+ readonly text: string;
308
+ readonly kind: "trace" | "summary";
309
+ } | {
310
+ readonly _tag: "RefusalDelta";
311
+ readonly text: string;
312
+ } | {
313
+ readonly _tag: "TextDelta";
314
+ readonly text: string;
315
+ } | {
316
+ readonly _tag: "ToolCallArgsDelta";
317
+ readonly call_id: string;
318
+ readonly delta: string;
319
+ } | {
320
+ readonly _tag: "ToolCallStart";
321
+ readonly call_id: string;
322
+ readonly name: string;
392
323
  } | {
393
324
  readonly _tag: "TurnComplete";
394
325
  readonly turn: Turn;
395
- }, cases: Cases): _$effect_Unify0.Unify<ReturnType<Cases["TextDelta" | "ReasoningDelta" | "RefusalDelta" | "ToolCallStart" | "ToolCallArgsDelta" | "UsageUpdate" | "WebSearchCall" | "CitationAdded" | "TurnComplete"]>>;
326
+ } | {
327
+ readonly _tag: "UsageUpdate";
328
+ readonly usage: Usage;
329
+ } | {
330
+ readonly _tag: "WebSearchCall";
331
+ readonly status: "started" | "searching" | "completed";
332
+ readonly query?: string;
333
+ readonly action?: "search" | "open_page" | "find_in_page";
334
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["CitationAdded" | "ReasoningDelta" | "RefusalDelta" | "TextDelta" | "ToolCallArgsDelta" | "ToolCallStart" | "TurnComplete" | "UsageUpdate" | "WebSearchCall"]>>;
396
335
  };
336
+ readonly CitationAdded: Data.TaggedEnum.ConstructorFrom<{
337
+ readonly _tag: "CitationAdded";
338
+ readonly annotation: Annotation;
339
+ }, "_tag">;
340
+ readonly ReasoningDelta: Data.TaggedEnum.ConstructorFrom<{
341
+ readonly _tag: "ReasoningDelta";
342
+ readonly text: string;
343
+ readonly kind: "trace" | "summary";
344
+ }, "_tag">;
345
+ readonly RefusalDelta: Data.TaggedEnum.ConstructorFrom<{
346
+ readonly _tag: "RefusalDelta";
347
+ readonly text: string;
348
+ }, "_tag">;
349
+ readonly TextDelta: Data.TaggedEnum.ConstructorFrom<{
350
+ readonly _tag: "TextDelta";
351
+ readonly text: string;
352
+ }, "_tag">;
353
+ readonly ToolCallArgsDelta: Data.TaggedEnum.ConstructorFrom<{
354
+ readonly _tag: "ToolCallArgsDelta";
355
+ readonly call_id: string;
356
+ readonly delta: string;
357
+ }, "_tag">;
358
+ readonly ToolCallStart: Data.TaggedEnum.ConstructorFrom<{
359
+ readonly _tag: "ToolCallStart";
360
+ readonly call_id: string;
361
+ readonly name: string;
362
+ }, "_tag">;
363
+ readonly TurnComplete: Data.TaggedEnum.ConstructorFrom<{
364
+ readonly _tag: "TurnComplete";
365
+ readonly turn: Turn;
366
+ }, "_tag">;
367
+ readonly UsageUpdate: Data.TaggedEnum.ConstructorFrom<{
368
+ readonly _tag: "UsageUpdate";
369
+ readonly usage: Usage;
370
+ }, "_tag">;
371
+ readonly WebSearchCall: Data.TaggedEnum.ConstructorFrom<{
372
+ readonly _tag: "WebSearchCall";
373
+ readonly status: "started" | "searching" | "completed";
374
+ readonly query?: string;
375
+ readonly action?: "search" | "open_page" | "find_in_page";
376
+ }, "_tag">;
397
377
  };
398
378
  /**
399
379
  * What flows out of an agent loop body to its consumer per turn: every
@@ -443,7 +423,7 @@ declare const appendToHistory: <S extends {
443
423
  * `decodeJsonLines` for prompted-JSONL streaming.
444
424
  */
445
425
  declare const textDeltas: <E, R>(self: Stream.Stream<TurnEvent, E, R>) => Stream.Stream<string, E, R>;
446
- declare const RefusalRejected_base: new <A extends Record<string, any> = {}>(args: _$effect_Types0.VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => _$effect_Cause0.YieldableError & {
426
+ declare const RefusalRejected_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
447
427
  readonly _tag: "RefusalRejected";
448
428
  } & Readonly<A>;
449
429
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Turn.d.mts","names":[],"sources":["../../src/domain/Turn.ts"],"mappings":";;;;;;;;;;;;;;;;;cAsBa,IAAA,EAAI,MAAA,CAAA,MAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAKL,IAAA,UAAc,IAAA,CAAK,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6BnB,SAAA,GAAY,IAAA,CAAK,UAAA;EAC3B,SAAA;IAAA,SAAsB,IAAA;EAAA;EACtB,cAAA;IAAA,SAA2B,IAAA;IAAA,SAAuB,IAAA;EAAA;EAClD,YAAA;IAAA,SAAyB,IAAA;EAAA;EACzB,aAAA;IAAA,SAA0B,OAAA;IAAA,SAA0B,IAAA;EAAA;EACpD,iBAAA;IAAA,SAA8B,OAAA;IAAA,SAA0B,KAAA;EAAA;EACxD,WAAA;IAAA,SAAwB,KAAA,EAAO,KAAA;EAAA;EAC/B,aAAA;IAAA,SACW,MAAA;IAAA,SACA,KAAA;IAAA,SACA,MAAA;EAAA;EAEX,aAAA;IAAA,SAA0B,UAAA,EAAY,UAAA;EAAA;EACtC,YAAA;IAAA,SAAyB,IAAA,EAAM,IAAA;EAAA;AAAA;AAAA,cAGpB,SAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;oBAVoB,KAAA;EAAA;EAAA;;;;;;;;yBAMO,UAAA;EAAA;EAAA;;mBACP,IAAA;EAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAPA,KAAA;EAAA;IAAA;;;;;;;;;;yBAMO,UAAA;EAAA;IAAA;;;mBACP,IAAA;EAAA;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAPA,KAAA;MAAA;MAAA;;;;;;;;6BAMO,UAAA;MAAA;MAAA;;uBACP,IAAA;MAAA;IAAA;;;;;;;;;;;;;;;;;;;;sBAPA,KAAA;IAAA;MAAA;;;;;;2BAMO,UAAA;IAAA;MAAA;qBACP,IAAA;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAPA,KAAA;MAAA;MAAA;;;;;;;;6BAMO,UAAA;MAAA;MAAA;;uBACP,IAAA;MAAA;IAAA;;;;;;;;;;;;;;;;;;;;sBAPA,KAAA;IAAA;MAAA;;;;;;2BAMO,UAAA;IAAA;MAAA;qBACP,IAAA;IAAA;;;;;;;;;KAWrB,gBAAA,GAAmB,SAAA,GAAY,cAAA;AAAA,cAE9B,cAAA,GAAc,CAAA,cAAA,CAAA;EAAA;iBAbM,IAAA;AAAA;AAAA,cAepB,YAAA,GAAgB,IAAA,EAAM,IAAA,KAAO,aAAA,CAAc,QAAA;AAAA,cAE3C,UAAA,GAAc,IAAA,EAAM,IAAA,KAAO,aAAA,CAAc,SAAA;AAAA,cAEzC,iBAAA,GAAqB,IAAA,EAAM,IAAA,KAAO,aAAA,CAAc,OAAA;;;AAhB7D;;;;;cA0Ba,cAAA,GAAkB,IAAA,EAAM,IAAA,KAAO,aAAA;;;;;;cAW/B,aAAA,GAAiB,IAAA,EAAM,IAAA;;;;;;cAOvB,SAAA,GAAa,IAAA,EAAM,IAAA,KAAO,aAAA,CAAc,UAAA;;;;;;cAWxC,eAAA;EAAA,SAAwC,OAAA,EAAS,aAAA,CAAc,WAAA;AAAA,GAC1E,KAAA,EAAO,CAAA,EACP,IAAA,EAAM,IAAA,EACN,KAAA,GAAO,aAAA,CAAc,WAAA,MACpB,CAAA;;;;;;cAcU,UAAA,SACX,IAAA,EAAM,MAAA,CAAO,MAAA,CAAO,SAAA,EAAW,CAAA,EAAG,CAAA,MACjC,MAAA,CAAO,MAAA,SAAe,CAAA,EAAG,CAAA;AAAA,cAGzB,oBAAA;;;;;;;;cAWU,eAAA,SAAwB,oBAAA;EAAA,SAC1B,IAAA,EAAM,IAAA;AAAA;;;;;;;;;;;cAyBJ,gBAAA,MACX,IAAA,EAAM,IAAA,EACN,MAAA,EAAQ,gBAAA,CAAkC,CAAA,MACzC,MAAA,CAAO,MAAA,CACR,CAAA,EACA,eAAA,GAAkB,cAAA,GAAkC,qBAAA"}
1
+ {"version":3,"file":"Turn.d.mts","names":[],"sources":["../../src/domain/Turn.ts"],"mappings":";;;;;;;;;;;;cAsBa,MAAI,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAKL,cAAc,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6BnB,YAAY,KAAK;EAC3B;aAAsB;;EACtB;aAA2B;aAAuB;;EAClD;aAAyB;;EACzB;aAA0B;aAA0B;;EACpD;aAA8B;aAA0B;;EACxD;aAAwB,OAAO;;EAC/B;aACW;aACA;aACA;;EAEX;aAA0B,YAAY;;EACtC;aAAyB,MAAM;;;cAGpB;;;aAJ2B,YAAA;;;;;aAVL;aAAuB;;;;;aACzB;;;;;aAFH;;;;;aAIW;aAAwB;;;;;aAD5B;aAAuB;;;;;aAS3B,MAAA;;;;;aAPA,OAAA;;;;;aAEZ;aACA;aACC;;;;;;;eAEkB,YAAA;;;eAVL;eAAuB;;;eACzB;;;eAFH;;;eAIW;eAAwB;;;eAD5B;eAAuB;;;eAS3B,MAAA;;;eAPA,OAAA;;;eAEZ;eACA;eACC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAEkB,YAAA;;;eAVL;eAAuB;;;eACzB;;;eAFH;;;eAIW;eAAwB;;;eAD5B;eAAuB;;;eAS3B,MAAA;;;eAPA,OAAA;;;eAEZ;eACA;eACC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAEkB,YAAA;;;;aAVL;aAAuB;;;;aACzB;;;;aAFH;;;;aAIW;aAAwB;;;;aAD5B;aAAuB;;;;aAS3B,MAAA;;;;aAPA,OAAA;;;;aAEZ;aACA;aACC;;;;;;;;;KAcV,mBAAmB,YAAY;cAE9B,iBAAc,eAAA;;WAbM,MAAA;;cAepB,eAAY,MAAU,SAAO,cAAc;cAE3C,aAAU,MAAU,SAAO,cAAc;cAEzC,oBAAiB,MAAU,SAAO,cAAc;;;;;;;;cAUhD,iBAAc,MAAU,SAAO;;;;;;cAW/B,gBAAa,MAAU;;;;;;cAOvB,YAAS,MAAU,SAAO,cAAc;;;;;;cAWxC,kBAAmB;WAAqB,SAAS,cAAc;GAAc,OACjF,GAAC,MACF,MAAI,QACH,cAAc,iBACpB;;;;;;cAcU,aAAc,GAAG,GAAC,MACvB,OAAO,OAAO,WAAW,GAAG,OACjC,OAAO,eAAe,GAAG;;;;;;;;;cAcf,wBAAwB;WAC1B,MAAM;;;;;;;;;;;;cAyBJ,mBAAoB,GAAC,MAC1B,MAAI,QACF,iBAAkC,OACzC,OAAO,OACR,GACA,kBAAkB,iBAAkC"}
@@ -1,4 +1,4 @@
1
- import { n as __exportAll } from "../chunk-uyGKjUfl.mjs";
1
+ import { n as __exportAll } from "../rolldown-runtime-EAsCxrDo.mjs";
2
2
  import { HistoryItem, StopReason, Usage, isOutputText, isReasoning, isRefusal, isToolCall } from "./Items.mjs";
3
3
  import { parseJson } from "../structured-format/StructuredFormat.mjs";
4
4
  import { Data, Effect, Result, Schema, Stream, pipe } from "effect";