@lingjingai/scriptctl 0.63.13 → 0.63.15

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 (778) hide show
  1. package/README.md +7 -1
  2. package/changes/0.63.14.md +7 -0
  3. package/changes/0.63.15.md +15 -0
  4. package/dist/bin.js +1 -20812
  5. package/dist/chunk-3LPIMYYI.js +823 -0
  6. package/dist/cli.d.ts +214 -5
  7. package/dist/cli.js +1 -187
  8. package/dist/review-agent.js +56 -3593
  9. package/package.json +12 -5
  10. package/dist/bin.d.ts +0 -2
  11. package/dist/bin.js.map +0 -7
  12. package/dist/cli/register-authoring.d.ts +0 -4
  13. package/dist/cli/register-authoring.js +0 -35
  14. package/dist/cli/register-authoring.js.map +0 -1
  15. package/dist/cli/register-review.d.ts +0 -3
  16. package/dist/cli/register-review.js +0 -20
  17. package/dist/cli/register-review.js.map +0 -1
  18. package/dist/cli/register-script.d.ts +0 -3
  19. package/dist/cli/register-script.js +0 -297
  20. package/dist/cli/register-script.js.map +0 -1
  21. package/dist/cli/register-tools.d.ts +0 -3
  22. package/dist/cli/register-tools.js +0 -23
  23. package/dist/cli/register-tools.js.map +0 -1
  24. package/dist/cli/register-workflows.d.ts +0 -4
  25. package/dist/cli/register-workflows.js +0 -108
  26. package/dist/cli/register-workflows.js.map +0 -1
  27. package/dist/cli/registry.d.ts +0 -14
  28. package/dist/cli/registry.js +0 -65
  29. package/dist/cli/registry.js.map +0 -1
  30. package/dist/cli.js.map +0 -1
  31. package/dist/common.d.ts +0 -93
  32. package/dist/common.js +0 -240
  33. package/dist/common.js.map +0 -1
  34. package/dist/domain/authoring/apply.d.ts +0 -1
  35. package/dist/domain/authoring/apply.js +0 -2
  36. package/dist/domain/authoring/apply.js.map +0 -1
  37. package/dist/domain/authoring/export.d.ts +0 -1
  38. package/dist/domain/authoring/export.js +0 -2
  39. package/dist/domain/authoring/export.js.map +0 -1
  40. package/dist/domain/authoring/parser.d.ts +0 -2
  41. package/dist/domain/authoring/parser.js +0 -3
  42. package/dist/domain/authoring/parser.js.map +0 -1
  43. package/dist/domain/authoring/serializer.d.ts +0 -1
  44. package/dist/domain/authoring/serializer.js +0 -2
  45. package/dist/domain/authoring/serializer.js.map +0 -1
  46. package/dist/domain/authoring/shared/bracket.d.ts +0 -4
  47. package/dist/domain/authoring/shared/bracket.js +0 -95
  48. package/dist/domain/authoring/shared/bracket.js.map +0 -1
  49. package/dist/domain/authoring/shared/types.d.ts +0 -12
  50. package/dist/domain/authoring/shared/types.js +0 -2
  51. package/dist/domain/authoring/shared/types.js.map +0 -1
  52. package/dist/domain/authoring/types.d.ts +0 -2
  53. package/dist/domain/authoring/types.js +0 -3
  54. package/dist/domain/authoring/types.js.map +0 -1
  55. package/dist/domain/authoring/v3/apply.d.ts +0 -33
  56. package/dist/domain/authoring/v3/apply.js +0 -784
  57. package/dist/domain/authoring/v3/apply.js.map +0 -1
  58. package/dist/domain/authoring/v3/export.d.ts +0 -7
  59. package/dist/domain/authoring/v3/export.js +0 -85
  60. package/dist/domain/authoring/v3/export.js.map +0 -1
  61. package/dist/domain/authoring/v3/parser.d.ts +0 -3
  62. package/dist/domain/authoring/v3/parser.js +0 -823
  63. package/dist/domain/authoring/v3/parser.js.map +0 -1
  64. package/dist/domain/authoring/v3/serializer.d.ts +0 -2
  65. package/dist/domain/authoring/v3/serializer.js +0 -244
  66. package/dist/domain/authoring/v3/serializer.js.map +0 -1
  67. package/dist/domain/authoring/v3/types.d.ts +0 -76
  68. package/dist/domain/authoring/v3/types.js +0 -2
  69. package/dist/domain/authoring/v3/types.js.map +0 -1
  70. package/dist/domain/authoring/v4/apply.d.ts +0 -40
  71. package/dist/domain/authoring/v4/apply.js +0 -451
  72. package/dist/domain/authoring/v4/apply.js.map +0 -1
  73. package/dist/domain/authoring/v4/parser.d.ts +0 -2
  74. package/dist/domain/authoring/v4/parser.js +0 -729
  75. package/dist/domain/authoring/v4/parser.js.map +0 -1
  76. package/dist/domain/authoring/v4/serializer.d.ts +0 -6
  77. package/dist/domain/authoring/v4/serializer.js +0 -280
  78. package/dist/domain/authoring/v4/serializer.js.map +0 -1
  79. package/dist/domain/authoring/v4/types.d.ts +0 -50
  80. package/dist/domain/authoring/v4/types.js +0 -2
  81. package/dist/domain/authoring/v4/types.js.map +0 -1
  82. package/dist/domain/creative-draft/compose.d.ts +0 -18
  83. package/dist/domain/creative-draft/compose.js +0 -448
  84. package/dist/domain/creative-draft/compose.js.map +0 -1
  85. package/dist/domain/ingest/apply-plan.d.ts +0 -23
  86. package/dist/domain/ingest/apply-plan.js +0 -210
  87. package/dist/domain/ingest/apply-plan.js.map +0 -1
  88. package/dist/domain/ingest/assembler.d.ts +0 -65
  89. package/dist/domain/ingest/assembler.js +0 -263
  90. package/dist/domain/ingest/assembler.js.map +0 -1
  91. package/dist/domain/ingest/asset-audit.d.ts +0 -50
  92. package/dist/domain/ingest/asset-audit.js +0 -196
  93. package/dist/domain/ingest/asset-audit.js.map +0 -1
  94. package/dist/domain/ingest/chunker.d.ts +0 -9
  95. package/dist/domain/ingest/chunker.js +0 -49
  96. package/dist/domain/ingest/chunker.js.map +0 -1
  97. package/dist/domain/ingest/environment.d.ts +0 -3
  98. package/dist/domain/ingest/environment.js +0 -32
  99. package/dist/domain/ingest/environment.js.map +0 -1
  100. package/dist/domain/ingest/evidence.d.ts +0 -5
  101. package/dist/domain/ingest/evidence.js +0 -66
  102. package/dist/domain/ingest/evidence.js.map +0 -1
  103. package/dist/domain/ingest/govern.d.ts +0 -3
  104. package/dist/domain/ingest/govern.js +0 -157
  105. package/dist/domain/ingest/govern.js.map +0 -1
  106. package/dist/domain/ingest/jsonl-parser.d.ts +0 -6
  107. package/dist/domain/ingest/jsonl-parser.js +0 -204
  108. package/dist/domain/ingest/jsonl-parser.js.map +0 -1
  109. package/dist/domain/ingest/markdown-parser.d.ts +0 -6
  110. package/dist/domain/ingest/markdown-parser.js +0 -187
  111. package/dist/domain/ingest/markdown-parser.js.map +0 -1
  112. package/dist/domain/ingest/production-validation.d.ts +0 -8
  113. package/dist/domain/ingest/production-validation.js +0 -37
  114. package/dist/domain/ingest/production-validation.js.map +0 -1
  115. package/dist/domain/ingest/records.d.ts +0 -72
  116. package/dist/domain/ingest/records.js +0 -10
  117. package/dist/domain/ingest/records.js.map +0 -1
  118. package/dist/domain/ingest/renumber.d.ts +0 -14
  119. package/dist/domain/ingest/renumber.js +0 -130
  120. package/dist/domain/ingest/renumber.js.map +0 -1
  121. package/dist/domain/ingest/serial-context.d.ts +0 -93
  122. package/dist/domain/ingest/serial-context.js +0 -355
  123. package/dist/domain/ingest/serial-context.js.map +0 -1
  124. package/dist/domain/ingest/state-identity.d.ts +0 -2
  125. package/dist/domain/ingest/state-identity.js +0 -3
  126. package/dist/domain/ingest/state-identity.js.map +0 -1
  127. package/dist/domain/ingest/state-reconcile.d.ts +0 -12
  128. package/dist/domain/ingest/state-reconcile.js +0 -92
  129. package/dist/domain/ingest/state-reconcile.js.map +0 -1
  130. package/dist/domain/ingest/validation.d.ts +0 -1
  131. package/dist/domain/ingest/validation.js +0 -2
  132. package/dist/domain/ingest/validation.js.map +0 -1
  133. package/dist/domain/ingest/video-apply.d.ts +0 -4
  134. package/dist/domain/ingest/video-apply.js +0 -128
  135. package/dist/domain/ingest/video-apply.js.map +0 -1
  136. package/dist/domain/ingest/video-context.d.ts +0 -64
  137. package/dist/domain/ingest/video-context.js +0 -480
  138. package/dist/domain/ingest/video-context.js.map +0 -1
  139. package/dist/domain/ingest/video-records.d.ts +0 -57
  140. package/dist/domain/ingest/video-records.js +0 -9
  141. package/dist/domain/ingest/video-records.js.map +0 -1
  142. package/dist/domain/ingest/video-serial-md.d.ts +0 -81
  143. package/dist/domain/ingest/video-serial-md.js +0 -297
  144. package/dist/domain/ingest/video-serial-md.js.map +0 -1
  145. package/dist/domain/ingest/video-source-evolution.d.ts +0 -25
  146. package/dist/domain/ingest/video-source-evolution.js +0 -40
  147. package/dist/domain/ingest/video-source-evolution.js.map +0 -1
  148. package/dist/domain/ingest/video-state-evidence.d.ts +0 -66
  149. package/dist/domain/ingest/video-state-evidence.js +0 -385
  150. package/dist/domain/ingest/video-state-evidence.js.map +0 -1
  151. package/dist/domain/ingest/video-timestamp.d.ts +0 -8
  152. package/dist/domain/ingest/video-timestamp.js +0 -26
  153. package/dist/domain/ingest/video-timestamp.js.map +0 -1
  154. package/dist/domain/loom/checkpointer.d.ts +0 -3
  155. package/dist/domain/loom/checkpointer.js +0 -30
  156. package/dist/domain/loom/checkpointer.js.map +0 -1
  157. package/dist/domain/loom/index.d.ts +0 -45
  158. package/dist/domain/loom/index.js +0 -277
  159. package/dist/domain/loom/index.js.map +0 -1
  160. package/dist/domain/loom/types.d.ts +0 -101
  161. package/dist/domain/loom/types.js +0 -2
  162. package/dist/domain/loom/types.js.map +0 -1
  163. package/dist/domain/script/address.d.ts +0 -1
  164. package/dist/domain/script/address.js +0 -2
  165. package/dist/domain/script/address.js.map +0 -1
  166. package/dist/domain/script/dispatch.d.ts +0 -18
  167. package/dist/domain/script/dispatch.js +0 -55
  168. package/dist/domain/script/dispatch.js.map +0 -1
  169. package/dist/domain/script/lookups.d.ts +0 -1
  170. package/dist/domain/script/lookups.js +0 -2
  171. package/dist/domain/script/lookups.js.map +0 -1
  172. package/dist/domain/script/migrations/registry.d.ts +0 -4
  173. package/dist/domain/script/migrations/registry.js +0 -76
  174. package/dist/domain/script/migrations/registry.js.map +0 -1
  175. package/dist/domain/script/migrations/types.d.ts +0 -17
  176. package/dist/domain/script/migrations/types.js +0 -2
  177. package/dist/domain/script/migrations/types.js.map +0 -1
  178. package/dist/domain/script/migrations/v3-to-v4.d.ts +0 -3
  179. package/dist/domain/script/migrations/v3-to-v4.js +0 -57
  180. package/dist/domain/script/migrations/v3-to-v4.js.map +0 -1
  181. package/dist/domain/script/names.d.ts +0 -1
  182. package/dist/domain/script/names.js +0 -2
  183. package/dist/domain/script/names.js.map +0 -1
  184. package/dist/domain/script/parse.d.ts +0 -1
  185. package/dist/domain/script/parse.js +0 -2
  186. package/dist/domain/script/parse.js.map +0 -1
  187. package/dist/domain/script/patch/apply.d.ts +0 -1
  188. package/dist/domain/script/patch/apply.js +0 -2
  189. package/dist/domain/script/patch/apply.js.map +0 -1
  190. package/dist/domain/script/patch/helpers.d.ts +0 -1
  191. package/dist/domain/script/patch/helpers.js +0 -2
  192. package/dist/domain/script/patch/helpers.js.map +0 -1
  193. package/dist/domain/script/patch/inline-speaker.d.ts +0 -1
  194. package/dist/domain/script/patch/inline-speaker.js +0 -2
  195. package/dist/domain/script/patch/inline-speaker.js.map +0 -1
  196. package/dist/domain/script/patch/ops-action.d.ts +0 -1
  197. package/dist/domain/script/patch/ops-action.js +0 -2
  198. package/dist/domain/script/patch/ops-action.js.map +0 -1
  199. package/dist/domain/script/patch/ops-asset.d.ts +0 -1
  200. package/dist/domain/script/patch/ops-asset.js +0 -2
  201. package/dist/domain/script/patch/ops-asset.js.map +0 -1
  202. package/dist/domain/script/patch/ops-dialogue.d.ts +0 -1
  203. package/dist/domain/script/patch/ops-dialogue.js +0 -2
  204. package/dist/domain/script/patch/ops-dialogue.js.map +0 -1
  205. package/dist/domain/script/patch/ops-extend.d.ts +0 -1
  206. package/dist/domain/script/patch/ops-extend.js +0 -2
  207. package/dist/domain/script/patch/ops-extend.js.map +0 -1
  208. package/dist/domain/script/patch/ops-meta.d.ts +0 -1
  209. package/dist/domain/script/patch/ops-meta.js +0 -2
  210. package/dist/domain/script/patch/ops-meta.js.map +0 -1
  211. package/dist/domain/script/patch/ops-scene.d.ts +0 -1
  212. package/dist/domain/script/patch/ops-scene.js +0 -2
  213. package/dist/domain/script/patch/ops-scene.js.map +0 -1
  214. package/dist/domain/script/patch/ops-state.d.ts +0 -1
  215. package/dist/domain/script/patch/ops-state.js +0 -2
  216. package/dist/domain/script/patch/ops-state.js.map +0 -1
  217. package/dist/domain/script/patch/registry.d.ts +0 -1
  218. package/dist/domain/script/patch/registry.js +0 -2
  219. package/dist/domain/script/patch/registry.js.map +0 -1
  220. package/dist/domain/script/patch/types.d.ts +0 -1
  221. package/dist/domain/script/patch/types.js +0 -2
  222. package/dist/domain/script/patch/types.js.map +0 -1
  223. package/dist/domain/script/refs.d.ts +0 -1
  224. package/dist/domain/script/refs.js +0 -2
  225. package/dist/domain/script/refs.js.map +0 -1
  226. package/dist/domain/script/scene-refs.d.ts +0 -1
  227. package/dist/domain/script/scene-refs.js +0 -2
  228. package/dist/domain/script/scene-refs.js.map +0 -1
  229. package/dist/domain/script/schema.d.ts +0 -1
  230. package/dist/domain/script/schema.js +0 -2
  231. package/dist/domain/script/schema.js.map +0 -1
  232. package/dist/domain/script/selector.d.ts +0 -1
  233. package/dist/domain/script/selector.js +0 -2
  234. package/dist/domain/script/selector.js.map +0 -1
  235. package/dist/domain/script/shared/regex.d.ts +0 -2
  236. package/dist/domain/script/shared/regex.js +0 -7
  237. package/dist/domain/script/shared/regex.js.map +0 -1
  238. package/dist/domain/script/shared/types.d.ts +0 -1
  239. package/dist/domain/script/shared/types.js +0 -5
  240. package/dist/domain/script/shared/types.js.map +0 -1
  241. package/dist/domain/script/shared/validation.d.ts +0 -1
  242. package/dist/domain/script/shared/validation.js +0 -3
  243. package/dist/domain/script/shared/validation.js.map +0 -1
  244. package/dist/domain/script/shared.d.ts +0 -15
  245. package/dist/domain/script/shared.js +0 -35
  246. package/dist/domain/script/shared.js.map +0 -1
  247. package/dist/domain/script/text-util.d.ts +0 -7
  248. package/dist/domain/script/text-util.js +0 -95
  249. package/dist/domain/script/text-util.js.map +0 -1
  250. package/dist/domain/script/timestamp.d.ts +0 -1
  251. package/dist/domain/script/timestamp.js +0 -3
  252. package/dist/domain/script/timestamp.js.map +0 -1
  253. package/dist/domain/script/types.d.ts +0 -1
  254. package/dist/domain/script/types.js +0 -2
  255. package/dist/domain/script/types.js.map +0 -1
  256. package/dist/domain/script/v3/address.d.ts +0 -32
  257. package/dist/domain/script/v3/address.js +0 -136
  258. package/dist/domain/script/v3/address.js.map +0 -1
  259. package/dist/domain/script/v3/lookups.d.ts +0 -33
  260. package/dist/domain/script/v3/lookups.js +0 -316
  261. package/dist/domain/script/v3/lookups.js.map +0 -1
  262. package/dist/domain/script/v3/ordinal.d.ts +0 -8
  263. package/dist/domain/script/v3/ordinal.js +0 -91
  264. package/dist/domain/script/v3/ordinal.js.map +0 -1
  265. package/dist/domain/script/v3/parse.d.ts +0 -3
  266. package/dist/domain/script/v3/parse.js +0 -164
  267. package/dist/domain/script/v3/parse.js.map +0 -1
  268. package/dist/domain/script/v3/patch/apply.d.ts +0 -2
  269. package/dist/domain/script/v3/patch/apply.js +0 -31
  270. package/dist/domain/script/v3/patch/apply.js.map +0 -1
  271. package/dist/domain/script/v3/patch/helpers.d.ts +0 -15
  272. package/dist/domain/script/v3/patch/helpers.js +0 -155
  273. package/dist/domain/script/v3/patch/helpers.js.map +0 -1
  274. package/dist/domain/script/v3/patch/inline-speaker.d.ts +0 -2
  275. package/dist/domain/script/v3/patch/inline-speaker.js +0 -50
  276. package/dist/domain/script/v3/patch/inline-speaker.js.map +0 -1
  277. package/dist/domain/script/v3/patch/ops-action.d.ts +0 -12
  278. package/dist/domain/script/v3/patch/ops-action.js +0 -355
  279. package/dist/domain/script/v3/patch/ops-action.js.map +0 -1
  280. package/dist/domain/script/v3/patch/ops-asset.d.ts +0 -14
  281. package/dist/domain/script/v3/patch/ops-asset.js +0 -347
  282. package/dist/domain/script/v3/patch/ops-asset.js.map +0 -1
  283. package/dist/domain/script/v3/patch/ops-dialogue.d.ts +0 -2
  284. package/dist/domain/script/v3/patch/ops-dialogue.js +0 -21
  285. package/dist/domain/script/v3/patch/ops-dialogue.js.map +0 -1
  286. package/dist/domain/script/v3/patch/ops-extend.d.ts +0 -8
  287. package/dist/domain/script/v3/patch/ops-extend.js +0 -122
  288. package/dist/domain/script/v3/patch/ops-extend.js.map +0 -1
  289. package/dist/domain/script/v3/patch/ops-meta.d.ts +0 -5
  290. package/dist/domain/script/v3/patch/ops-meta.js +0 -82
  291. package/dist/domain/script/v3/patch/ops-meta.js.map +0 -1
  292. package/dist/domain/script/v3/patch/ops-scene.d.ts +0 -6
  293. package/dist/domain/script/v3/patch/ops-scene.js +0 -351
  294. package/dist/domain/script/v3/patch/ops-scene.js.map +0 -1
  295. package/dist/domain/script/v3/patch/ops-state.d.ts +0 -8
  296. package/dist/domain/script/v3/patch/ops-state.js +0 -155
  297. package/dist/domain/script/v3/patch/ops-state.js.map +0 -1
  298. package/dist/domain/script/v3/patch/ops-timestamp.d.ts +0 -6
  299. package/dist/domain/script/v3/patch/ops-timestamp.js +0 -47
  300. package/dist/domain/script/v3/patch/ops-timestamp.js.map +0 -1
  301. package/dist/domain/script/v3/patch/registry.d.ts +0 -2
  302. package/dist/domain/script/v3/patch/registry.js +0 -56
  303. package/dist/domain/script/v3/patch/registry.js.map +0 -1
  304. package/dist/domain/script/v3/patch/types.d.ts +0 -10
  305. package/dist/domain/script/v3/patch/types.js +0 -2
  306. package/dist/domain/script/v3/patch/types.js.map +0 -1
  307. package/dist/domain/script/v3/refs.d.ts +0 -4
  308. package/dist/domain/script/v3/refs.js +0 -64
  309. package/dist/domain/script/v3/refs.js.map +0 -1
  310. package/dist/domain/script/v3/scene-refs.d.ts +0 -3
  311. package/dist/domain/script/v3/scene-refs.js +0 -35
  312. package/dist/domain/script/v3/scene-refs.js.map +0 -1
  313. package/dist/domain/script/v3/schema.d.ts +0 -6
  314. package/dist/domain/script/v3/schema.js +0 -58
  315. package/dist/domain/script/v3/schema.js.map +0 -1
  316. package/dist/domain/script/v3/selector.d.ts +0 -44
  317. package/dist/domain/script/v3/selector.js +0 -178
  318. package/dist/domain/script/v3/selector.js.map +0 -1
  319. package/dist/domain/script/v3/types.d.ts +0 -106
  320. package/dist/domain/script/v3/types.js +0 -2
  321. package/dist/domain/script/v3/types.js.map +0 -1
  322. package/dist/domain/script/v3/validation.d.ts +0 -2
  323. package/dist/domain/script/v3/validation.js +0 -2
  324. package/dist/domain/script/v3/validation.js.map +0 -1
  325. package/dist/domain/script/v4/address.d.ts +0 -61
  326. package/dist/domain/script/v4/address.js +0 -99
  327. package/dist/domain/script/v4/address.js.map +0 -1
  328. package/dist/domain/script/v4/factory.d.ts +0 -2
  329. package/dist/domain/script/v4/factory.js +0 -13
  330. package/dist/domain/script/v4/factory.js.map +0 -1
  331. package/dist/domain/script/v4/from-v3.d.ts +0 -29
  332. package/dist/domain/script/v4/from-v3.js +0 -307
  333. package/dist/domain/script/v4/from-v3.js.map +0 -1
  334. package/dist/domain/script/v4/ids.d.ts +0 -5
  335. package/dist/domain/script/v4/ids.js +0 -41
  336. package/dist/domain/script/v4/ids.js.map +0 -1
  337. package/dist/domain/script/v4/ordinal.d.ts +0 -3
  338. package/dist/domain/script/v4/ordinal.js +0 -66
  339. package/dist/domain/script/v4/ordinal.js.map +0 -1
  340. package/dist/domain/script/v4/parse.d.ts +0 -5
  341. package/dist/domain/script/v4/parse.js +0 -196
  342. package/dist/domain/script/v4/parse.js.map +0 -1
  343. package/dist/domain/script/v4/patch/apply.d.ts +0 -3
  344. package/dist/domain/script/v4/patch/apply.js +0 -24
  345. package/dist/domain/script/v4/patch/apply.js.map +0 -1
  346. package/dist/domain/script/v4/patch/helpers.d.ts +0 -32
  347. package/dist/domain/script/v4/patch/helpers.js +0 -138
  348. package/dist/domain/script/v4/patch/helpers.js.map +0 -1
  349. package/dist/domain/script/v4/patch/ops-action.d.ts +0 -13
  350. package/dist/domain/script/v4/patch/ops-action.js +0 -351
  351. package/dist/domain/script/v4/patch/ops-action.js.map +0 -1
  352. package/dist/domain/script/v4/patch/ops-asset.d.ts +0 -17
  353. package/dist/domain/script/v4/patch/ops-asset.js +0 -556
  354. package/dist/domain/script/v4/patch/ops-asset.js.map +0 -1
  355. package/dist/domain/script/v4/patch/ops-extend.d.ts +0 -11
  356. package/dist/domain/script/v4/patch/ops-extend.js +0 -103
  357. package/dist/domain/script/v4/patch/ops-extend.js.map +0 -1
  358. package/dist/domain/script/v4/patch/ops-meta.d.ts +0 -5
  359. package/dist/domain/script/v4/patch/ops-meta.js +0 -49
  360. package/dist/domain/script/v4/patch/ops-meta.js.map +0 -1
  361. package/dist/domain/script/v4/patch/ops-scene-ref.d.ts +0 -3
  362. package/dist/domain/script/v4/patch/ops-scene-ref.js +0 -74
  363. package/dist/domain/script/v4/patch/ops-scene-ref.js.map +0 -1
  364. package/dist/domain/script/v4/patch/ops-structure.d.ts +0 -6
  365. package/dist/domain/script/v4/patch/ops-structure.js +0 -236
  366. package/dist/domain/script/v4/patch/ops-structure.js.map +0 -1
  367. package/dist/domain/script/v4/patch/ops-timestamp.d.ts +0 -6
  368. package/dist/domain/script/v4/patch/ops-timestamp.js +0 -40
  369. package/dist/domain/script/v4/patch/ops-timestamp.js.map +0 -1
  370. package/dist/domain/script/v4/patch/registry.d.ts +0 -2
  371. package/dist/domain/script/v4/patch/registry.js +0 -53
  372. package/dist/domain/script/v4/patch/registry.js.map +0 -1
  373. package/dist/domain/script/v4/patch/schema.d.ts +0 -7
  374. package/dist/domain/script/v4/patch/schema.js +0 -77
  375. package/dist/domain/script/v4/patch/schema.js.map +0 -1
  376. package/dist/domain/script/v4/patch/types.d.ts +0 -10
  377. package/dist/domain/script/v4/patch/types.js +0 -2
  378. package/dist/domain/script/v4/patch/types.js.map +0 -1
  379. package/dist/domain/script/v4/selector.d.ts +0 -11
  380. package/dist/domain/script/v4/selector.js +0 -124
  381. package/dist/domain/script/v4/selector.js.map +0 -1
  382. package/dist/domain/script/v4/types.d.ts +0 -120
  383. package/dist/domain/script/v4/types.js +0 -2
  384. package/dist/domain/script/v4/types.js.map +0 -1
  385. package/dist/domain/script/v4/validation.d.ts +0 -2
  386. package/dist/domain/script/v4/validation.js +0 -2
  387. package/dist/domain/script/v4/validation.js.map +0 -1
  388. package/dist/failures.d.ts +0 -58
  389. package/dist/failures.js +0 -96
  390. package/dist/failures.js.map +0 -1
  391. package/dist/infra/converters.d.ts +0 -9
  392. package/dist/infra/converters.js +0 -689
  393. package/dist/infra/converters.js.map +0 -1
  394. package/dist/infra/env.d.ts +0 -2
  395. package/dist/infra/env.js +0 -81
  396. package/dist/infra/env.js.map +0 -1
  397. package/dist/infra/episode-title.d.ts +0 -4
  398. package/dist/infra/episode-title.js +0 -129
  399. package/dist/infra/episode-title.js.map +0 -1
  400. package/dist/infra/ingest/review-renderer.d.ts +0 -1
  401. package/dist/infra/ingest/review-renderer.js +0 -440
  402. package/dist/infra/ingest/review-renderer.js.map +0 -1
  403. package/dist/infra/ingest/source-resolver.d.ts +0 -21
  404. package/dist/infra/ingest/source-resolver.js +0 -51
  405. package/dist/infra/ingest/source-resolver.js.map +0 -1
  406. package/dist/infra/ingest/text-reader.d.ts +0 -3
  407. package/dist/infra/ingest/text-reader.js +0 -27
  408. package/dist/infra/ingest/text-reader.js.map +0 -1
  409. package/dist/infra/ingest/video-discovery.d.ts +0 -8
  410. package/dist/infra/ingest/video-discovery.js +0 -69
  411. package/dist/infra/ingest/video-discovery.js.map +0 -1
  412. package/dist/infra/ingest/video-source-snapshot.d.ts +0 -4
  413. package/dist/infra/ingest/video-source-snapshot.js +0 -47
  414. package/dist/infra/ingest/video-source-snapshot.js.map +0 -1
  415. package/dist/infra/ingest/video-state-evidence.d.ts +0 -14
  416. package/dist/infra/ingest/video-state-evidence.js +0 -140
  417. package/dist/infra/ingest/video-state-evidence.js.map +0 -1
  418. package/dist/infra/ingest/video-transcode.d.ts +0 -7
  419. package/dist/infra/ingest/video-transcode.js +0 -98
  420. package/dist/infra/ingest/video-transcode.js.map +0 -1
  421. package/dist/infra/ingest/workspace-lock.d.ts +0 -1
  422. package/dist/infra/ingest/workspace-lock.js +0 -32
  423. package/dist/infra/ingest/workspace-lock.js.map +0 -1
  424. package/dist/infra/ingest/workspace-store.d.ts +0 -18
  425. package/dist/infra/ingest/workspace-store.js +0 -70
  426. package/dist/infra/ingest/workspace-store.js.map +0 -1
  427. package/dist/infra/llm/anthropic-model.d.ts +0 -11
  428. package/dist/infra/llm/anthropic-model.js +0 -130
  429. package/dist/infra/llm/anthropic-model.js.map +0 -1
  430. package/dist/infra/llm/doubao-model.d.ts +0 -60
  431. package/dist/infra/llm/doubao-model.js +0 -249
  432. package/dist/infra/llm/doubao-model.js.map +0 -1
  433. package/dist/infra/llm/failure-mapping.d.ts +0 -6
  434. package/dist/infra/llm/failure-mapping.js +0 -146
  435. package/dist/infra/llm/failure-mapping.js.map +0 -1
  436. package/dist/infra/llm/gemini-upload.d.ts +0 -13
  437. package/dist/infra/llm/gemini-upload.js +0 -138
  438. package/dist/infra/llm/gemini-upload.js.map +0 -1
  439. package/dist/infra/llm/gemini-video-model.d.ts +0 -50
  440. package/dist/infra/llm/gemini-video-model.js +0 -371
  441. package/dist/infra/llm/gemini-video-model.js.map +0 -1
  442. package/dist/infra/llm/openai-compatible-model.d.ts +0 -14
  443. package/dist/infra/llm/openai-compatible-model.js +0 -207
  444. package/dist/infra/llm/openai-compatible-model.js.map +0 -1
  445. package/dist/infra/llm/retry.d.ts +0 -8
  446. package/dist/infra/llm/retry.js +0 -41
  447. package/dist/infra/llm/retry.js.map +0 -1
  448. package/dist/infra/local-script-output-store.d.ts +0 -43
  449. package/dist/infra/local-script-output-store.js +0 -168
  450. package/dist/infra/local-script-output-store.js.map +0 -1
  451. package/dist/infra/script-output-api.d.ts +0 -50
  452. package/dist/infra/script-output-api.js +0 -251
  453. package/dist/infra/script-output-api.js.map +0 -1
  454. package/dist/infra/script-output-store.d.ts +0 -152
  455. package/dist/infra/script-output-store.js +0 -114
  456. package/dist/infra/script-output-store.js.map +0 -1
  457. package/dist/infra/script-working-copy.d.ts +0 -23
  458. package/dist/infra/script-working-copy.js +0 -157
  459. package/dist/infra/script-working-copy.js.map +0 -1
  460. package/dist/infra/storage.d.ts +0 -35
  461. package/dist/infra/storage.js +0 -91
  462. package/dist/infra/storage.js.map +0 -1
  463. package/dist/llm/composition.d.ts +0 -5
  464. package/dist/llm/composition.js +0 -5
  465. package/dist/llm/composition.js.map +0 -1
  466. package/dist/llm/config.d.ts +0 -28
  467. package/dist/llm/config.js +0 -231
  468. package/dist/llm/config.js.map +0 -1
  469. package/dist/llm/registry.d.ts +0 -43
  470. package/dist/llm/registry.js +0 -69
  471. package/dist/llm/registry.js.map +0 -1
  472. package/dist/llm/router.d.ts +0 -46
  473. package/dist/llm/router.js +0 -512
  474. package/dist/llm/router.js.map +0 -1
  475. package/dist/llm/tasks/ingest/arc-summary.d.ts +0 -8
  476. package/dist/llm/tasks/ingest/arc-summary.js +0 -26
  477. package/dist/llm/tasks/ingest/arc-summary.js.map +0 -1
  478. package/dist/llm/tasks/ingest/asset-audit.d.ts +0 -6
  479. package/dist/llm/tasks/ingest/asset-audit.js +0 -158
  480. package/dist/llm/tasks/ingest/asset-audit.js.map +0 -1
  481. package/dist/llm/tasks/ingest/asset-curate.d.ts +0 -13
  482. package/dist/llm/tasks/ingest/asset-curate.js +0 -45
  483. package/dist/llm/tasks/ingest/asset-curate.js.map +0 -1
  484. package/dist/llm/tasks/ingest/asset-extract.d.ts +0 -12
  485. package/dist/llm/tasks/ingest/asset-extract.js +0 -51
  486. package/dist/llm/tasks/ingest/asset-extract.js.map +0 -1
  487. package/dist/llm/tasks/ingest/asset-govern.d.ts +0 -22
  488. package/dist/llm/tasks/ingest/asset-govern.js +0 -143
  489. package/dist/llm/tasks/ingest/asset-govern.js.map +0 -1
  490. package/dist/llm/tasks/ingest/body-start.d.ts +0 -10
  491. package/dist/llm/tasks/ingest/body-start.js +0 -41
  492. package/dist/llm/tasks/ingest/body-start.js.map +0 -1
  493. package/dist/llm/tasks/ingest/episode-assets.d.ts +0 -29
  494. package/dist/llm/tasks/ingest/episode-assets.js +0 -282
  495. package/dist/llm/tasks/ingest/episode-assets.js.map +0 -1
  496. package/dist/llm/tasks/ingest/mention-resolve.d.ts +0 -9
  497. package/dist/llm/tasks/ingest/mention-resolve.js +0 -39
  498. package/dist/llm/tasks/ingest/mention-resolve.js.map +0 -1
  499. package/dist/llm/tasks/ingest/name-fix.d.ts +0 -9
  500. package/dist/llm/tasks/ingest/name-fix.js +0 -56
  501. package/dist/llm/tasks/ingest/name-fix.js.map +0 -1
  502. package/dist/llm/tasks/ingest/state-reconcile.d.ts +0 -8
  503. package/dist/llm/tasks/ingest/state-reconcile.js +0 -44
  504. package/dist/llm/tasks/ingest/state-reconcile.js.map +0 -1
  505. package/dist/llm/tasks/ingest/text-normalize.d.ts +0 -10
  506. package/dist/llm/tasks/ingest/text-normalize.js +0 -122
  507. package/dist/llm/tasks/ingest/text-normalize.js.map +0 -1
  508. package/dist/llm/tasks/ingest/video-serial.d.ts +0 -14
  509. package/dist/llm/tasks/ingest/video-serial.js +0 -391
  510. package/dist/llm/tasks/ingest/video-serial.js.map +0 -1
  511. package/dist/llm/tasks/schemas.d.ts +0 -9
  512. package/dist/llm/tasks/schemas.js +0 -466
  513. package/dist/llm/tasks/schemas.js.map +0 -1
  514. package/dist/llm/types.d.ts +0 -178
  515. package/dist/llm/types.js +0 -44
  516. package/dist/llm/types.js.map +0 -1
  517. package/dist/output.d.ts +0 -3
  518. package/dist/output.js +0 -94
  519. package/dist/output.js.map +0 -1
  520. package/dist/package-root.d.ts +0 -2
  521. package/dist/package-root.js +0 -38
  522. package/dist/package-root.js.map +0 -1
  523. package/dist/review-agent.js.map +0 -7
  524. package/dist/usecases/changelog.d.ts +0 -9
  525. package/dist/usecases/changelog.js +0 -134
  526. package/dist/usecases/changelog.js.map +0 -1
  527. package/dist/usecases/doctor.d.ts +0 -2
  528. package/dist/usecases/doctor.js +0 -231
  529. package/dist/usecases/doctor.js.map +0 -1
  530. package/dist/usecases/ingest/body-start.d.ts +0 -8
  531. package/dist/usecases/ingest/body-start.js +0 -36
  532. package/dist/usecases/ingest/body-start.js.map +0 -1
  533. package/dist/usecases/ingest/command.d.ts +0 -5
  534. package/dist/usecases/ingest/command.js +0 -183
  535. package/dist/usecases/ingest/command.js.map +0 -1
  536. package/dist/usecases/ingest/failure.d.ts +0 -26
  537. package/dist/usecases/ingest/failure.js +0 -151
  538. package/dist/usecases/ingest/failure.js.map +0 -1
  539. package/dist/usecases/ingest/fanout.d.ts +0 -10
  540. package/dist/usecases/ingest/fanout.js +0 -23
  541. package/dist/usecases/ingest/fanout.js.map +0 -1
  542. package/dist/usecases/ingest/final-asset-audit.d.ts +0 -39
  543. package/dist/usecases/ingest/final-asset-audit.js +0 -88
  544. package/dist/usecases/ingest/final-asset-audit.js.map +0 -1
  545. package/dist/usecases/ingest/generate-video-state-evidence.d.ts +0 -23
  546. package/dist/usecases/ingest/generate-video-state-evidence.js +0 -124
  547. package/dist/usecases/ingest/generate-video-state-evidence.js.map +0 -1
  548. package/dist/usecases/ingest/pass4-mention-resolve.d.ts +0 -11
  549. package/dist/usecases/ingest/pass4-mention-resolve.js +0 -52
  550. package/dist/usecases/ingest/pass4-mention-resolve.js.map +0 -1
  551. package/dist/usecases/ingest/pass5-extract.d.ts +0 -7
  552. package/dist/usecases/ingest/pass5-extract.js +0 -51
  553. package/dist/usecases/ingest/pass5-extract.js.map +0 -1
  554. package/dist/usecases/ingest/pass5-govern.d.ts +0 -13
  555. package/dist/usecases/ingest/pass5-govern.js +0 -157
  556. package/dist/usecases/ingest/pass5-govern.js.map +0 -1
  557. package/dist/usecases/ingest/pipeline.d.ts +0 -28
  558. package/dist/usecases/ingest/pipeline.js +0 -335
  559. package/dist/usecases/ingest/pipeline.js.map +0 -1
  560. package/dist/usecases/ingest/publish-command.d.ts +0 -1
  561. package/dist/usecases/ingest/publish-command.js +0 -4
  562. package/dist/usecases/ingest/publish-command.js.map +0 -1
  563. package/dist/usecases/ingest/serial-govern.d.ts +0 -40
  564. package/dist/usecases/ingest/serial-govern.js +0 -488
  565. package/dist/usecases/ingest/serial-govern.js.map +0 -1
  566. package/dist/usecases/ingest/skip-video-episode.d.ts +0 -4
  567. package/dist/usecases/ingest/skip-video-episode.js +0 -120
  568. package/dist/usecases/ingest/skip-video-episode.js.map +0 -1
  569. package/dist/usecases/ingest/status.d.ts +0 -61
  570. package/dist/usecases/ingest/status.js +0 -347
  571. package/dist/usecases/ingest/status.js.map +0 -1
  572. package/dist/usecases/ingest/timings.d.ts +0 -51
  573. package/dist/usecases/ingest/timings.js +0 -68
  574. package/dist/usecases/ingest/timings.js.map +0 -1
  575. package/dist/usecases/ingest/usage-report.d.ts +0 -125
  576. package/dist/usecases/ingest/usage-report.js +0 -248
  577. package/dist/usecases/ingest/usage-report.js.map +0 -1
  578. package/dist/usecases/ingest/video-pipeline.d.ts +0 -81
  579. package/dist/usecases/ingest/video-pipeline.js +0 -547
  580. package/dist/usecases/ingest/video-pipeline.js.map +0 -1
  581. package/dist/usecases/ingest/video-skip-state.d.ts +0 -29
  582. package/dist/usecases/ingest/video-skip-state.js +0 -148
  583. package/dist/usecases/ingest/video-skip-state.js.map +0 -1
  584. package/dist/usecases/ingest/view-command.d.ts +0 -4
  585. package/dist/usecases/ingest/view-command.js +0 -67
  586. package/dist/usecases/ingest/view-command.js.map +0 -1
  587. package/dist/usecases/ingest/view-server.d.ts +0 -29
  588. package/dist/usecases/ingest/view-server.js +0 -364
  589. package/dist/usecases/ingest/view-server.js.map +0 -1
  590. package/dist/usecases/script/action-span.d.ts +0 -10
  591. package/dist/usecases/script/action-span.js +0 -42
  592. package/dist/usecases/script/action-span.js.map +0 -1
  593. package/dist/usecases/script/actions.d.ts +0 -3
  594. package/dist/usecases/script/actions.js +0 -184
  595. package/dist/usecases/script/actions.js.map +0 -1
  596. package/dist/usecases/script/actor.d.ts +0 -3
  597. package/dist/usecases/script/actor.js +0 -26
  598. package/dist/usecases/script/actor.js.map +0 -1
  599. package/dist/usecases/script/actors.d.ts +0 -3
  600. package/dist/usecases/script/actors.js +0 -25
  601. package/dist/usecases/script/actors.js.map +0 -1
  602. package/dist/usecases/script/add-actor.d.ts +0 -3
  603. package/dist/usecases/script/add-actor.js +0 -13
  604. package/dist/usecases/script/add-actor.js.map +0 -1
  605. package/dist/usecases/script/add-episode.d.ts +0 -3
  606. package/dist/usecases/script/add-episode.js +0 -9
  607. package/dist/usecases/script/add-episode.js.map +0 -1
  608. package/dist/usecases/script/add-location.d.ts +0 -3
  609. package/dist/usecases/script/add-location.js +0 -11
  610. package/dist/usecases/script/add-location.js.map +0 -1
  611. package/dist/usecases/script/add-prop.d.ts +0 -3
  612. package/dist/usecases/script/add-prop.js +0 -11
  613. package/dist/usecases/script/add-prop.js.map +0 -1
  614. package/dist/usecases/script/alias.d.ts +0 -3
  615. package/dist/usecases/script/alias.js +0 -39
  616. package/dist/usecases/script/alias.js.map +0 -1
  617. package/dist/usecases/script/assets.d.ts +0 -3
  618. package/dist/usecases/script/assets.js +0 -46
  619. package/dist/usecases/script/assets.js.map +0 -1
  620. package/dist/usecases/script/audit-assets.d.ts +0 -4
  621. package/dist/usecases/script/audit-assets.js +0 -37
  622. package/dist/usecases/script/audit-assets.js.map +0 -1
  623. package/dist/usecases/script/command-constraints.d.ts +0 -38
  624. package/dist/usecases/script/command-constraints.js +0 -143
  625. package/dist/usecases/script/command-constraints.js.map +0 -1
  626. package/dist/usecases/script/compose-creative-draft.d.ts +0 -3
  627. package/dist/usecases/script/compose-creative-draft.js +0 -106
  628. package/dist/usecases/script/compose-creative-draft.js.map +0 -1
  629. package/dist/usecases/script/context.d.ts +0 -3
  630. package/dist/usecases/script/context.js +0 -52
  631. package/dist/usecases/script/context.js.map +0 -1
  632. package/dist/usecases/script/create.d.ts +0 -3
  633. package/dist/usecases/script/create.js +0 -27
  634. package/dist/usecases/script/create.js.map +0 -1
  635. package/dist/usecases/script/delete.d.ts +0 -3
  636. package/dist/usecases/script/delete.js +0 -88
  637. package/dist/usecases/script/delete.js.map +0 -1
  638. package/dist/usecases/script/describe.d.ts +0 -3
  639. package/dist/usecases/script/describe.js +0 -32
  640. package/dist/usecases/script/describe.js.map +0 -1
  641. package/dist/usecases/script/dialogue.d.ts +0 -3
  642. package/dist/usecases/script/dialogue.js +0 -30
  643. package/dist/usecases/script/dialogue.js.map +0 -1
  644. package/dist/usecases/script/dispatch.d.ts +0 -3
  645. package/dist/usecases/script/dispatch.js +0 -10
  646. package/dist/usecases/script/dispatch.js.map +0 -1
  647. package/dist/usecases/script/do.d.ts +0 -3
  648. package/dist/usecases/script/do.js +0 -186
  649. package/dist/usecases/script/do.js.map +0 -1
  650. package/dist/usecases/script/emotion.d.ts +0 -3
  651. package/dist/usecases/script/emotion.js +0 -24
  652. package/dist/usecases/script/emotion.js.map +0 -1
  653. package/dist/usecases/script/episodes.d.ts +0 -3
  654. package/dist/usecases/script/episodes.js +0 -62
  655. package/dist/usecases/script/episodes.js.map +0 -1
  656. package/dist/usecases/script/export-authoring.d.ts +0 -4
  657. package/dist/usecases/script/export-authoring.js +0 -326
  658. package/dist/usecases/script/export-authoring.js.map +0 -1
  659. package/dist/usecases/script/extend.d.ts +0 -3
  660. package/dist/usecases/script/extend.js +0 -94
  661. package/dist/usecases/script/extend.js.map +0 -1
  662. package/dist/usecases/script/ids.d.ts +0 -3
  663. package/dist/usecases/script/ids.js +0 -148
  664. package/dist/usecases/script/ids.js.map +0 -1
  665. package/dist/usecases/script/importance.d.ts +0 -3
  666. package/dist/usecases/script/importance.js +0 -16
  667. package/dist/usecases/script/importance.js.map +0 -1
  668. package/dist/usecases/script/insert.d.ts +0 -3
  669. package/dist/usecases/script/insert.js +0 -127
  670. package/dist/usecases/script/insert.js.map +0 -1
  671. package/dist/usecases/script/issues.d.ts +0 -3
  672. package/dist/usecases/script/issues.js +0 -35
  673. package/dist/usecases/script/issues.js.map +0 -1
  674. package/dist/usecases/script/lib.d.ts +0 -152
  675. package/dist/usecases/script/lib.js +0 -1654
  676. package/dist/usecases/script/lib.js.map +0 -1
  677. package/dist/usecases/script/locations.d.ts +0 -3
  678. package/dist/usecases/script/locations.js +0 -25
  679. package/dist/usecases/script/locations.js.map +0 -1
  680. package/dist/usecases/script/merge.d.ts +0 -3
  681. package/dist/usecases/script/merge.js +0 -43
  682. package/dist/usecases/script/merge.js.map +0 -1
  683. package/dist/usecases/script/migrate.d.ts +0 -3
  684. package/dist/usecases/script/migrate.js +0 -210
  685. package/dist/usecases/script/migrate.js.map +0 -1
  686. package/dist/usecases/script/move.d.ts +0 -3
  687. package/dist/usecases/script/move.js +0 -50
  688. package/dist/usecases/script/move.js.map +0 -1
  689. package/dist/usecases/script/parenthetical.d.ts +0 -3
  690. package/dist/usecases/script/parenthetical.js +0 -52
  691. package/dist/usecases/script/parenthetical.js.map +0 -1
  692. package/dist/usecases/script/props.d.ts +0 -3
  693. package/dist/usecases/script/props.js +0 -25
  694. package/dist/usecases/script/props.js.map +0 -1
  695. package/dist/usecases/script/refs.d.ts +0 -3
  696. package/dist/usecases/script/refs.js +0 -111
  697. package/dist/usecases/script/refs.js.map +0 -1
  698. package/dist/usecases/script/rename.d.ts +0 -3
  699. package/dist/usecases/script/rename.js +0 -35
  700. package/dist/usecases/script/rename.js.map +0 -1
  701. package/dist/usecases/script/replace.d.ts +0 -3
  702. package/dist/usecases/script/replace.js +0 -33
  703. package/dist/usecases/script/replace.js.map +0 -1
  704. package/dist/usecases/script/review.d.ts +0 -3
  705. package/dist/usecases/script/review.js +0 -187
  706. package/dist/usecases/script/review.js.map +0 -1
  707. package/dist/usecases/script/role.d.ts +0 -3
  708. package/dist/usecases/script/role.js +0 -16
  709. package/dist/usecases/script/role.js.map +0 -1
  710. package/dist/usecases/script/scenes.d.ts +0 -3
  711. package/dist/usecases/script/scenes.js +0 -66
  712. package/dist/usecases/script/scenes.js.map +0 -1
  713. package/dist/usecases/script/script-patch.d.ts +0 -3
  714. package/dist/usecases/script/script-patch.js +0 -321
  715. package/dist/usecases/script/script-patch.js.map +0 -1
  716. package/dist/usecases/script/script-validate.d.ts +0 -3
  717. package/dist/usecases/script/script-validate.js +0 -27
  718. package/dist/usecases/script/script-validate.js.map +0 -1
  719. package/dist/usecases/script/session.d.ts +0 -62
  720. package/dist/usecases/script/session.js +0 -567
  721. package/dist/usecases/script/session.js.map +0 -1
  722. package/dist/usecases/script/split.d.ts +0 -3
  723. package/dist/usecases/script/split.js +0 -41
  724. package/dist/usecases/script/split.js.map +0 -1
  725. package/dist/usecases/script/state-add.d.ts +0 -3
  726. package/dist/usecases/script/state-add.js +0 -22
  727. package/dist/usecases/script/state-add.js.map +0 -1
  728. package/dist/usecases/script/state-delete.d.ts +0 -3
  729. package/dist/usecases/script/state-delete.js +0 -22
  730. package/dist/usecases/script/state-delete.js.map +0 -1
  731. package/dist/usecases/script/state-rename.d.ts +0 -3
  732. package/dist/usecases/script/state-rename.js +0 -16
  733. package/dist/usecases/script/state-rename.js.map +0 -1
  734. package/dist/usecases/script/states.d.ts +0 -3
  735. package/dist/usecases/script/states.js +0 -197
  736. package/dist/usecases/script/states.js.map +0 -1
  737. package/dist/usecases/script/summary.d.ts +0 -3
  738. package/dist/usecases/script/summary.js +0 -72
  739. package/dist/usecases/script/summary.js.map +0 -1
  740. package/dist/usecases/script/synopsis-generate.d.ts +0 -115
  741. package/dist/usecases/script/synopsis-generate.js +0 -776
  742. package/dist/usecases/script/synopsis-generate.js.map +0 -1
  743. package/dist/usecases/script/synopsis.d.ts +0 -3
  744. package/dist/usecases/script/synopsis.js +0 -45
  745. package/dist/usecases/script/synopsis.js.map +0 -1
  746. package/dist/usecases/script/timestamp-filter.d.ts +0 -4
  747. package/dist/usecases/script/timestamp-filter.js +0 -55
  748. package/dist/usecases/script/timestamp-filter.js.map +0 -1
  749. package/dist/usecases/script/timestamp.d.ts +0 -3
  750. package/dist/usecases/script/timestamp.js +0 -11
  751. package/dist/usecases/script/timestamp.js.map +0 -1
  752. package/dist/usecases/script/transition.d.ts +0 -3
  753. package/dist/usecases/script/transition.js +0 -23
  754. package/dist/usecases/script/transition.js.map +0 -1
  755. package/dist/usecases/script/type.d.ts +0 -3
  756. package/dist/usecases/script/type.js +0 -23
  757. package/dist/usecases/script/type.js.map +0 -1
  758. package/dist/usecases/script/v3/mutations.d.ts +0 -2
  759. package/dist/usecases/script/v3/mutations.js +0 -5
  760. package/dist/usecases/script/v3/mutations.js.map +0 -1
  761. package/dist/usecases/script/v4/mutations.d.ts +0 -2
  762. package/dist/usecases/script/v4/mutations.js +0 -6
  763. package/dist/usecases/script/v4/mutations.js.map +0 -1
  764. package/dist/usecases/script/v4/queries.d.ts +0 -15
  765. package/dist/usecases/script/v4/queries.js +0 -196
  766. package/dist/usecases/script/v4/queries.js.map +0 -1
  767. package/dist/usecases/script/working-copy.d.ts +0 -5
  768. package/dist/usecases/script/working-copy.js +0 -399
  769. package/dist/usecases/script/working-copy.js.map +0 -1
  770. package/dist/usecases/script/worldview.d.ts +0 -3
  771. package/dist/usecases/script/worldview.js +0 -17
  772. package/dist/usecases/script/worldview.js.map +0 -1
  773. package/dist/usecases/script/write-authoring.d.ts +0 -3
  774. package/dist/usecases/script/write-authoring.js +0 -263
  775. package/dist/usecases/script/write-authoring.js.map +0 -1
  776. package/dist/usecases/update.d.ts +0 -13
  777. package/dist/usecases/update.js +0 -128
  778. package/dist/usecases/update.js.map +0 -1
@@ -1,138 +0,0 @@
1
- // Gemini Files API resumable upload over Node's built-in https (not undici).
2
- // undici's strict content-length parser rejects the resumable-upload response
3
- // when it traverses a local HTTP proxy (Clash) with "invalid content-length
4
- // header"; Node's https parser is lenient and works. Only the upload step needs
5
- // this — files.get/delete and generateContent are plain requests the SDK's fetch
6
- // handles fine. The file body is streamed (never fully buffered).
7
- import * as fs from "node:fs";
8
- import * as http from "node:http";
9
- import * as https from "node:https";
10
- import { HttpsProxyAgent } from "https-proxy-agent";
11
- import { LlmTransportError } from "../../llm/types.js";
12
- import { httpError, networkError } from "./failure-mapping.js";
13
- const DEFAULT_BASE_URL = "https://generativelanguage.googleapis.com";
14
- export function geminiUploadStartUrl(baseUrl, apiKey) {
15
- const root = new URL(baseUrl ?? DEFAULT_BASE_URL);
16
- root.pathname = `${root.pathname.replace(/\/+$/, "")}/upload/v1beta/files`;
17
- root.searchParams.set("key", apiKey);
18
- return root;
19
- }
20
- export function geminiUploadTransferUrl(uploadUrl, baseUrl) {
21
- const root = new URL(baseUrl ?? DEFAULT_BASE_URL);
22
- const transfer = new URL(uploadUrl, root);
23
- if (!baseUrl)
24
- return transfer;
25
- transfer.protocol = root.protocol;
26
- transfer.host = root.host;
27
- const rootPath = root.pathname.replace(/\/+$/, "");
28
- if (rootPath && transfer.pathname !== rootPath && !transfer.pathname.startsWith(`${rootPath}/`)) {
29
- transfer.pathname = `${rootPath}/${transfer.pathname.replace(/^\/+/, "")}`;
30
- }
31
- return transfer;
32
- }
33
- export function redactCredential(value, credential) {
34
- if (!credential)
35
- return value;
36
- let redacted = value.split(credential).join("[REDACTED]");
37
- const encoded = encodeURIComponent(credential);
38
- if (encoded !== credential)
39
- redacted = redacted.split(encoded).join("[REDACTED]");
40
- return redacted;
41
- }
42
- function proxyAgent(proxyUrl) {
43
- return proxyUrl ? new HttpsProxyAgent(proxyUrl) : undefined;
44
- }
45
- function request(target, opts, body, signal) {
46
- return new Promise((resolve, reject) => {
47
- const transport = target.protocol === "http:" ? http : https;
48
- const req = transport.request({
49
- ...opts,
50
- agent: target.protocol === "https:" ? opts.agent : undefined,
51
- protocol: target.protocol,
52
- hostname: target.hostname,
53
- port: target.port || undefined,
54
- path: `${target.pathname}${target.search}`,
55
- }, (res) => {
56
- let data = "";
57
- res.on("data", (c) => (data += c));
58
- res.on("end", () => resolve({ status: res.statusCode ?? 0, headers: res.headers, body: data }));
59
- });
60
- req.on("error", reject);
61
- if (signal) {
62
- if (signal.aborted) {
63
- req.destroy(new Error("aborted"));
64
- return;
65
- }
66
- signal.addEventListener("abort", () => req.destroy(new Error("aborted")), { once: true });
67
- }
68
- if (body && typeof body.pipe === "function")
69
- body.pipe(req);
70
- else {
71
- if (body)
72
- req.write(body);
73
- req.end();
74
- }
75
- });
76
- }
77
- function header(h, name) {
78
- const v = h[name];
79
- return Array.isArray(v) ? (v[0] ?? "") : (v ?? "");
80
- }
81
- export async function resumableUpload(params) {
82
- const size = fs.statSync(params.filePath).size;
83
- const agent = proxyAgent(params.proxyUrl ?? "");
84
- const common = { agent, timeout: params.timeoutMs };
85
- const root = geminiUploadStartUrl(params.baseUrl, params.apiKey);
86
- const safe = (value) => redactCredential(value, params.apiKey);
87
- let start;
88
- try {
89
- start = await request(root, {
90
- ...common, method: "POST",
91
- headers: {
92
- "X-Goog-Upload-Protocol": "resumable", "X-Goog-Upload-Command": "start",
93
- "X-Goog-Upload-Header-Content-Length": String(size), "X-Goog-Upload-Header-Content-Type": params.mimeType,
94
- "Content-Type": "application/json",
95
- },
96
- }, JSON.stringify({ file: {} }), params.signal);
97
- }
98
- catch (e) {
99
- const detail = safe(e instanceof Error ? e.message : String(e));
100
- throw networkError(e, params.signal, "Gemini upload start failed.", detail, { operation: "upload" });
101
- }
102
- const uploadUrl = header(start.headers, "x-goog-upload-url");
103
- if (start.status < 200 || start.status >= 300) {
104
- throw httpError(start.status, "Gemini upload start failed.", safe(start.body).slice(0, 300), { operation: "upload" });
105
- }
106
- if (!uploadUrl) {
107
- throw new LlmTransportError("invalid_response", "Gemini upload start returned no upload URL.", {
108
- details: [safe(start.body).slice(0, 300)],
109
- context: { operation: "upload", http_status: start.status },
110
- });
111
- }
112
- const u = geminiUploadTransferUrl(uploadUrl, params.baseUrl);
113
- let up;
114
- try {
115
- up = await request(u, {
116
- ...common, method: "POST",
117
- headers: { "Content-Length": String(size), "X-Goog-Upload-Offset": "0", "X-Goog-Upload-Command": "upload, finalize" },
118
- }, fs.createReadStream(params.filePath), params.signal);
119
- }
120
- catch (e) {
121
- const detail = safe(e instanceof Error ? e.message : String(e));
122
- throw networkError(e, params.signal, "Gemini upload transfer failed.", detail, { operation: "upload" });
123
- }
124
- if (up.status < 200 || up.status >= 300) {
125
- throw httpError(up.status, "Gemini upload transfer failed.", safe(up.body).slice(0, 300), { operation: "upload" });
126
- }
127
- let parsed;
128
- try {
129
- parsed = JSON.parse(up.body);
130
- }
131
- catch {
132
- throw new LlmTransportError("invalid_response", "Gemini upload returned invalid JSON.", { details: [safe(up.body).slice(0, 300)] });
133
- }
134
- if (!parsed.file)
135
- throw new LlmTransportError("invalid_response", "Gemini upload returned no file.", { details: [safe(up.body).slice(0, 300)] });
136
- return parsed.file;
137
- }
138
- //# sourceMappingURL=gemini-upload.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini-upload.js","sourceRoot":"","sources":["../../../src/infra/llm/gemini-upload.ts"],"names":[],"mappings":"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"}
@@ -1,50 +0,0 @@
1
- import type { Candidate, GenerateContentResponsePromptFeedback, GenerateContentResponseUsageMetadata } from "@google/genai";
2
- import type { LlmModelConfig, LlmProviderConfig } from "../../llm/config.js";
3
- import { type VideoMediaInput, type VideoGenerationRequest, type VideoGenerationResponse, type VideoUnderstandingPort } from "../../llm/types.js";
4
- export interface GeminiFile {
5
- name?: string;
6
- uri?: string;
7
- mimeType?: string;
8
- state?: string;
9
- error?: {
10
- message?: string;
11
- } | undefined;
12
- }
13
- export interface GeminiGenerateResponse {
14
- text?: string;
15
- candidates?: Candidate[];
16
- promptFeedback?: GenerateContentResponsePromptFeedback;
17
- usageMetadata?: GenerateContentResponseUsageMetadata;
18
- }
19
- export interface GeminiClient {
20
- files: {
21
- upload(params: {
22
- file: string;
23
- config?: {
24
- mimeType?: string;
25
- };
26
- }): Promise<GeminiFile>;
27
- get(params: {
28
- name: string;
29
- }): Promise<GeminiFile>;
30
- delete(params: {
31
- name: string;
32
- }): Promise<unknown>;
33
- };
34
- models: {
35
- generateContent(params: Record<string, unknown>): Promise<GeminiGenerateResponse>;
36
- generateContentStream?(params: Record<string, unknown>): Promise<AsyncIterable<GeminiGenerateResponse>>;
37
- };
38
- }
39
- export declare class GeminiVideoModel implements VideoUnderstandingPort {
40
- private readonly provider;
41
- private readonly model;
42
- private readonly apiKey;
43
- private readonly client;
44
- constructor(provider: LlmProviderConfig, model: LlmModelConfig, apiKey: string, client?: GeminiClient);
45
- prepare(localPath: string, mimeType: string, mode: "file-api" | "base64", signal?: AbortSignal): Promise<VideoMediaInput>;
46
- private uploadFile;
47
- private pollActive;
48
- generate(request: VideoGenerationRequest): Promise<VideoGenerationResponse>;
49
- release(media: VideoMediaInput, signal?: AbortSignal): Promise<void>;
50
- }
@@ -1,371 +0,0 @@
1
- // Gemini video-understanding adapter (§10.5). Implements VideoUnderstandingPort
2
- // over the Files API: upload a media file once, poll to ACTIVE, generate against
3
- // the file reference (fps at the media-part level), and delete when done. The
4
- // adapter owns transport only — it never builds business prompts or imports the
5
- // ingest domain. The Google SDK is reached through a narrow structural client so
6
- // tests inject a fake and never hit the network.
7
- import * as fs from "node:fs";
8
- import { createRequire } from "node:module";
9
- import { classificationOf, contextOf, } from "../../failures.js";
10
- import { LlmTransportError, } from "../../llm/types.js";
11
- import { redactCredential, resumableUpload } from "./gemini-upload.js";
12
- import { httpError, httpStatusOf, networkError } from "./failure-mapping.js";
13
- import { addTokenUsage, withTransientRetry } from "./retry.js";
14
- // finishReasons that yield empty text but are terminal: retry/resume never clears them.
15
- const FILTERED_FINISH = new Set([
16
- "SAFETY",
17
- "PROHIBITED_CONTENT",
18
- "RECITATION",
19
- "BLOCKLIST",
20
- "SPII",
21
- "IMAGE_SAFETY",
22
- "IMAGE_PROHIBITED_CONTENT",
23
- "IMAGE_RECITATION",
24
- "ESCALATION",
25
- ]);
26
- const TERMINAL_RESPONSE_FINISH = new Set([
27
- "LANGUAGE",
28
- "OTHER",
29
- "MALFORMED_FUNCTION_CALL",
30
- "IMAGE_OTHER",
31
- "NO_IMAGE",
32
- "UNEXPECTED_TOOL_CALL",
33
- "TOO_MANY_TOOL_CALLS",
34
- "MISSING_THOUGHT_SIGNATURE",
35
- "MALFORMED_RESPONSE",
36
- ]);
37
- function policyReason(raw) {
38
- switch (raw) {
39
- case "SAFETY":
40
- case "PROHIBITED_CONTENT":
41
- case "BLOCKLIST":
42
- case "SPII":
43
- case "RECITATION":
44
- case "IMAGE_SAFETY":
45
- case "IMAGE_PROHIBITED_CONTENT":
46
- case "IMAGE_RECITATION":
47
- case "ESCALATION":
48
- case "OTHER":
49
- return raw;
50
- case "":
51
- case "BLOCK_REASON_UNSPECIFIED":
52
- case "FINISH_REASON_UNSPECIFIED":
53
- return "UNSPECIFIED";
54
- default:
55
- return "UNKNOWN";
56
- }
57
- }
58
- function safetyRatings(values) {
59
- if (!values?.length)
60
- return undefined;
61
- return values.map((rating) => ({
62
- category: rating.category ?? "UNSPECIFIED",
63
- probability: rating.probability ?? "UNSPECIFIED",
64
- blocked: rating.blocked ?? false,
65
- }));
66
- }
67
- // Gemini reports usageMetadata.{promptTokenCount,candidatesTokenCount}. promptTokenCount
68
- // already includes the (large) video token count. Missing → undefined → counted as zero.
69
- function geminiUsage(meta) {
70
- if (typeof meta !== "object" || meta === null)
71
- return {};
72
- const m = meta;
73
- const num = (v) => (typeof v === "number" ? v : undefined);
74
- return { inputTokens: num(m["promptTokenCount"]), outputTokens: num(m["candidatesTokenCount"]) };
75
- }
76
- function isDiscountGeminiModel(model) {
77
- return /-c\d+$/.test(model);
78
- }
79
- function jsonObject(text) {
80
- const start = text.indexOf("{");
81
- const end = text.lastIndexOf("}");
82
- if (start < 0 || end < start)
83
- throw new SyntaxError("JSON object not found");
84
- return text.slice(start, end + 1);
85
- }
86
- // Poll cadence while an uploaded file is still PROCESSING. Overall budget is the
87
- // provider timeout; tests inject clients that return ACTIVE immediately.
88
- const POLL_INTERVAL_MS = 2000;
89
- function delay(ms) {
90
- return new Promise((resolve) => setTimeout(resolve, ms));
91
- }
92
- // Map an SDK/network error to a transport error with the same retry policy as
93
- // the other adapters: retry only transient network/timeout/408/429/5xx.
94
- function toTransportError(error, signal, what, credential, provider, model) {
95
- if (error instanceof LlmTransportError) {
96
- return new LlmTransportError(error.code, redactCredential(error.message, credential), {
97
- retryable: error.retryable,
98
- details: error.details.map((detail) => redactCredential(detail, credential)),
99
- attempts: error.attempts,
100
- usage: error.usage,
101
- classification: classificationOf(error.failure),
102
- context: { ...contextOf(error.failure), provider, model, operation: what },
103
- modelFailures: error.modelFailures,
104
- });
105
- }
106
- const message = redactCredential(error instanceof Error ? error.message : String(error), credential);
107
- const status = httpStatusOf(error);
108
- const context = { provider, model, operation: what };
109
- if (status !== null) {
110
- return httpError(status, `Gemini ${what} failed.`, message.slice(0, 500), context);
111
- }
112
- return networkError(error, signal, `Gemini ${what} failed.`, message.slice(0, 500), context);
113
- }
114
- export class GeminiVideoModel {
115
- provider;
116
- model;
117
- apiKey;
118
- client;
119
- constructor(provider, model, apiKey, client) {
120
- this.provider = provider;
121
- this.model = model;
122
- this.apiKey = apiKey;
123
- this.client = client ?? createGoogleClient(apiKey, provider.timeoutMs, provider.baseUrl);
124
- }
125
- async prepare(localPath, mimeType, mode, signal) {
126
- if (mode === "base64") {
127
- return { kind: "base64", data: fs.readFileSync(localPath, "base64"), mimeType };
128
- }
129
- const file = await this.uploadFile(localPath, mimeType, signal);
130
- return { kind: "file-api", file };
131
- }
132
- async uploadFile(localPath, mimeType, signal) {
133
- const { value: file } = await withTransientRetry(this.provider.maxAttempts, async () => {
134
- try {
135
- return await this.client.files.upload({ file: localPath, config: { mimeType } });
136
- }
137
- catch (error) {
138
- throw toTransportError(error, signal, "upload", this.apiKey, this.model.provider, this.model.model);
139
- }
140
- });
141
- const active = await this.pollActive(file, signal);
142
- if (!active.name || !active.uri) {
143
- throw new LlmTransportError("invalid_response", "Gemini upload returned no file reference.", {
144
- context: { provider: this.model.provider, model: this.model.model, operation: "upload" },
145
- });
146
- }
147
- return { name: active.name, uri: active.uri, mimeType: active.mimeType ?? mimeType };
148
- }
149
- async pollActive(initial, signal) {
150
- let file = initial;
151
- const deadline = Date.now() + this.provider.timeoutMs;
152
- // Media-processing failure is terminal — never retried (§12.3).
153
- while ((file.state ?? "").toUpperCase() === "PROCESSING") {
154
- if (signal?.aborted) {
155
- throw new LlmTransportError("cancelled", "Gemini upload aborted.", {
156
- context: { provider: this.model.provider, model: this.model.model, operation: "file_poll" },
157
- });
158
- }
159
- if (Date.now() >= deadline) {
160
- throw new LlmTransportError("timeout", "Gemini file processing timed out.", {
161
- retryable: true,
162
- classification: { failure_type: "timeout", failure_code: "media_processing_timeout" },
163
- context: { provider: this.model.provider, model: this.model.model, operation: "file_poll" },
164
- });
165
- }
166
- await delay(POLL_INTERVAL_MS);
167
- if (!file.name) {
168
- throw new LlmTransportError("invalid_response", "Gemini upload returned no file name to poll.", {
169
- context: { provider: this.model.provider, model: this.model.model, operation: "file_poll" },
170
- });
171
- }
172
- try {
173
- file = await this.client.files.get({ name: file.name });
174
- }
175
- catch (error) {
176
- throw toTransportError(error, signal, "file_poll", this.apiKey, this.model.provider, this.model.model);
177
- }
178
- }
179
- if ((file.state ?? "").toUpperCase() === "FAILED") {
180
- throw new LlmTransportError("invalid_response", "Gemini file processing failed.", {
181
- details: [redactCredential(file.error?.message ?? "unknown media error", this.apiKey)],
182
- classification: { failure_type: "media", failure_code: "media_processing_failed" },
183
- context: { provider: this.model.provider, model: this.model.model, operation: "file_poll" },
184
- });
185
- }
186
- return file;
187
- }
188
- async generate(request) {
189
- if (request.media.kind === "local-fallback" || request.media.kind === "local") {
190
- throw new LlmTransportError("invalid_response", "A local fallback video cannot be sent to Gemini.");
191
- }
192
- const promptJson = Boolean(request.responseJsonSchema) && isDiscountGeminiModel(this.model.model);
193
- const config = {
194
- // High media resolution reads small on-screen text (subtitles, name cards)
195
- // and fine visual anchors (§10.3).
196
- mediaResolution: "MEDIA_RESOLUTION_HIGH",
197
- maxOutputTokens: request.maxOutputTokens,
198
- };
199
- const systemInstruction = [request.system?.trim(), promptJson
200
- ? `输出必须是一个可解析的 JSON 对象。只返回 JSON,不要输出任何额外文字或 Markdown 代码块。\n以下是完整输出 JSON Schema。严格遵守所有层级的字段名、类型、required、枚举、格式约束和 description;不得自行改名或省略必填字段。返回符合该定义的数据对象,不要返回 schema 本身。\n<output_json_schema>\n${JSON.stringify(request.responseJsonSchema, null, 2)}\n</output_json_schema>`
201
- : ""]
202
- .filter(Boolean)
203
- .join("\n\n");
204
- if (systemInstruction)
205
- config["systemInstruction"] = systemInstruction;
206
- if (request.responseJsonSchema && !promptJson) {
207
- config["responseMimeType"] = "application/json";
208
- config["responseJsonSchema"] = request.responseJsonSchema;
209
- }
210
- const params = {
211
- model: this.model.model,
212
- contents: [{
213
- role: "user",
214
- parts: [
215
- request.media.kind === "file-api"
216
- ? { fileData: { fileUri: request.media.file.uri, mimeType: request.media.file.mimeType }, videoMetadata: { fps: request.fps } }
217
- : { inlineData: { data: request.media.data, mimeType: request.media.mimeType }, videoMetadata: { fps: request.fps } },
218
- { text: promptJson ? `${request.user}\n\n只返回 JSON 对象本身,不要输出任何解释、前言、Markdown 代码块或其他文字。` : request.user },
219
- ],
220
- }],
221
- config,
222
- };
223
- const { value, attempts, failedUsage } = await withTransientRetry(this.provider.maxAttempts, async () => {
224
- let response;
225
- try {
226
- if (this.client.models.generateContentStream) {
227
- let text = "";
228
- let latest = {};
229
- const stream = await this.client.models.generateContentStream(params);
230
- for await (const chunk of stream) {
231
- if (chunk.text)
232
- text += chunk.text;
233
- latest = {
234
- ...latest,
235
- ...chunk,
236
- usageMetadata: chunk.usageMetadata ?? latest.usageMetadata,
237
- promptFeedback: chunk.promptFeedback ?? latest.promptFeedback,
238
- candidates: chunk.candidates ?? latest.candidates,
239
- };
240
- }
241
- response = { ...latest, text };
242
- }
243
- else {
244
- response = await this.client.models.generateContent(params);
245
- }
246
- }
247
- catch (error) {
248
- throw toTransportError(error, request.signal, "generate", this.apiKey, this.model.provider, this.model.model);
249
- }
250
- const candidate = response.candidates?.[0];
251
- const finishReason = candidate?.finishReason ?? "";
252
- const blockReason = response.promptFeedback?.blockReason ?? "";
253
- const usage = geminiUsage(response.usageMetadata);
254
- const baseContext = { provider: this.model.provider, model: this.model.model, operation: "generate" };
255
- if (finishReason === "MAX_TOKENS") {
256
- throw new LlmTransportError("truncated", "Gemini output was truncated.", { usage, context: baseContext });
257
- }
258
- if (blockReason) {
259
- throw new LlmTransportError("content_filtered", `Gemini blocked the prompt (blockReason=${blockReason}).`, {
260
- usage,
261
- classification: { failure_type: "policy", failure_code: "content_blocked" },
262
- context: {
263
- ...baseContext,
264
- provider_source: "prompt",
265
- provider_reason: policyReason(blockReason),
266
- ...(policyReason(blockReason) === "UNKNOWN" ? { provider_reason_raw: blockReason } : {}),
267
- safety_ratings: safetyRatings(response.promptFeedback?.safetyRatings),
268
- },
269
- });
270
- }
271
- if (FILTERED_FINISH.has(finishReason)) {
272
- throw new LlmTransportError("content_filtered", `Gemini filtered the response (finishReason=${finishReason}).`, {
273
- usage,
274
- classification: { failure_type: "policy", failure_code: "content_blocked" },
275
- context: {
276
- ...baseContext,
277
- provider_source: "candidate",
278
- provider_reason: policyReason(finishReason),
279
- finish_message: candidate?.finishMessage,
280
- safety_ratings: safetyRatings(candidate?.safetyRatings),
281
- },
282
- });
283
- }
284
- const text = (response.text ?? "").trim();
285
- if (!text) {
286
- if (TERMINAL_RESPONSE_FINISH.has(finishReason)) {
287
- throw new LlmTransportError("invalid_response", `Gemini returned no usable response (finishReason=${finishReason}).`, {
288
- usage,
289
- context: { ...baseContext, provider_reason_raw: finishReason, finish_message: candidate?.finishMessage },
290
- });
291
- }
292
- // Empty body with a normal/blank finishReason is a transient generation hiccup
293
- // (observed ~1/15 episodes); retry it — a resume of the same episode succeeds.
294
- throw new LlmTransportError("empty_response", `Gemini returned an empty response (finishReason=${finishReason || "none"}).`, {
295
- retryable: true,
296
- usage,
297
- context: baseContext,
298
- });
299
- }
300
- if (request.responseJsonSchema) {
301
- try {
302
- const json = promptJson ? jsonObject(text) : text;
303
- JSON.parse(json);
304
- return { text: json, finishReason, usage, raw: response };
305
- }
306
- catch {
307
- throw new LlmTransportError("invalid_response", "Gemini returned malformed JSON for a structured video response.", {
308
- retryable: true,
309
- usage,
310
- context: baseContext,
311
- });
312
- }
313
- }
314
- return { text, finishReason, usage, raw: response };
315
- });
316
- return { text: value.text, finishReason: value.finishReason, attempts, usage: addTokenUsage(failedUsage, value.usage), raw: value.raw };
317
- }
318
- async release(media, signal) {
319
- if (media.kind === "base64" || media.kind === "local-fallback" || media.kind === "local")
320
- return;
321
- try {
322
- await this.client.files.delete({ name: media.file.name });
323
- }
324
- catch (error) {
325
- // Cleanup is best-effort (§10.5); a failed delete must not fail the run.
326
- void error;
327
- void signal;
328
- }
329
- }
330
- }
331
- // Lazily import the SDK so the dependency is only loaded when a video route is
332
- // actually exercised (keeps text-only runs free of @google/genai).
333
- const require = createRequire(import.meta.url);
334
- function createGoogleClient(apiKey, timeoutMs, baseUrl) {
335
- const { GoogleGenAI } = require("@google/genai");
336
- const sdk = new GoogleGenAI({
337
- apiKey,
338
- ...(baseUrl ? { httpOptions: { baseUrl, timeout: timeoutMs } } : {}),
339
- });
340
- const proxyUrl = (process.env.https_proxy ?? process.env.HTTPS_PROXY ?? process.env.http_proxy ?? process.env.HTTP_PROXY ?? "").trim();
341
- // A proxy is set but Node's built-in fetch (which the SDK's get/delete/generate
342
- // use) ignores https_proxy unless NODE_USE_ENV_PROXY=1 — so upload (our proxied
343
- // https) succeeds and the very next poll fails with "file poll failed". Warn
344
- // once with the exact fix rather than let it look like a network error.
345
- if (proxyUrl && !(process.env.NODE_USE_ENV_PROXY ?? "").trim()) {
346
- process.stderr.write(`⚠️ 检测到代理 ${proxyUrl},但未设 NODE_USE_ENV_PROXY=1。\n` +
347
- ` Gemini 上传会成功、随后的文件轮询/生成会挂(Node 内置 fetch 默认不走代理)。\n` +
348
- ` 请在命令前加 NODE_USE_ENV_PROXY=1 重跑。\n`);
349
- }
350
- // upload goes through Node https (undici rejects the resumable response's
351
- // content-length behind a proxy); get/delete/generateContent use the SDK.
352
- return {
353
- files: {
354
- upload: (p) => resumableUpload({
355
- apiKey,
356
- filePath: p.file,
357
- mimeType: p.config?.mimeType ?? "video/mp4",
358
- timeoutMs,
359
- proxyUrl,
360
- baseUrl,
361
- }),
362
- get: (p) => sdk.files.get(p),
363
- delete: (p) => sdk.files.delete(p),
364
- },
365
- models: {
366
- generateContent: (p) => sdk.models.generateContent(p),
367
- generateContentStream: (p) => sdk.models.generateContentStream(p),
368
- },
369
- };
370
- }
371
- //# sourceMappingURL=gemini-video-model.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini-video-model.js","sourceRoot":"","sources":["../../../src/infra/llm/gemini-video-model.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import type { LlmModelConfig, LlmProviderConfig } from "../../llm/config.js";
2
- import { type LlmAdapter, type TextGenerationRequest, type TextGenerationResponse, type ToolGenerationRequest, type ToolGenerationResponse } from "../../llm/types.js";
3
- export declare class OpenAiCompatibleModel implements LlmAdapter {
4
- private readonly provider;
5
- private readonly model;
6
- private readonly apiKey;
7
- private readonly url;
8
- private readonly host;
9
- constructor(provider: LlmProviderConfig, model: LlmModelConfig, apiKey: string);
10
- private post;
11
- private baseBody;
12
- generateText(request: TextGenerationRequest): Promise<TextGenerationResponse>;
13
- generateTool(request: ToolGenerationRequest): Promise<ToolGenerationResponse>;
14
- }