vidspotai-shared 1.0.70-dev.0 → 1.0.70

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 (505) hide show
  1. package/lib/globals/aiModels/enums.d.ts +6 -63
  2. package/lib/globals/aiModels/enums.d.ts.map +1 -1
  3. package/lib/globals/aiModels/enums.js +9 -78
  4. package/lib/globals/aiModels/index.d.ts +30 -2
  5. package/lib/globals/aiModels/index.d.ts.map +1 -1
  6. package/lib/globals/aiModels/index.js +35 -7
  7. package/lib/globals/aiModels/providers/bytedance.d.ts.map +1 -1
  8. package/lib/globals/aiModels/providers/bytedance.js +7 -19
  9. package/lib/globals/aiModels/providers/google.d.ts.map +1 -1
  10. package/lib/globals/aiModels/providers/google.js +2 -150
  11. package/lib/globals/aiModels/providers/kling.d.ts.map +1 -1
  12. package/lib/globals/aiModels/providers/kling.js +37 -280
  13. package/lib/globals/aiModels/providers/minimax.d.ts.map +1 -1
  14. package/lib/globals/aiModels/providers/minimax.js +11 -76
  15. package/lib/globals/aiModels/providers/openai.d.ts.map +1 -1
  16. package/lib/globals/aiModels/providers/openai.js +6 -90
  17. package/lib/globals/aiModels/providers/pixverse.d.ts.map +1 -1
  18. package/lib/globals/aiModels/providers/pixverse.js +29 -111
  19. package/lib/globals/aiModels/providers/runway.d.ts.map +1 -1
  20. package/lib/globals/aiModels/providers/runway.js +2 -64
  21. package/lib/globals/aiModels/types.d.ts +13 -20
  22. package/lib/globals/aiModels/types.d.ts.map +1 -1
  23. package/lib/globals/ttsModels/index.d.ts +0 -2
  24. package/lib/globals/ttsModels/index.d.ts.map +1 -1
  25. package/lib/globals/ttsModels/index.js +1 -9
  26. package/lib/globals/ttsModels/types.d.ts +1 -1
  27. package/lib/globals/ttsModels/types.d.ts.map +1 -1
  28. package/lib/globals/ttsModels/voices.d.ts +4 -39
  29. package/lib/globals/ttsModels/voices.d.ts.map +1 -1
  30. package/lib/globals/ttsModels/voices.js +26 -273
  31. package/lib/globals/types.d.ts +1 -59
  32. package/lib/globals/types.d.ts.map +1 -1
  33. package/lib/globals/types.js +2 -81
  34. package/lib/index.d.ts +0 -1
  35. package/lib/index.d.ts.map +1 -1
  36. package/lib/index.js +0 -1
  37. package/lib/models/index.d.ts +0 -7
  38. package/lib/models/index.d.ts.map +1 -1
  39. package/lib/models/index.js +0 -7
  40. package/lib/models/user.model.d.ts +1 -12
  41. package/lib/models/user.model.d.ts.map +1 -1
  42. package/lib/models/video.model.d.ts +19 -120
  43. package/lib/models/video.model.d.ts.map +1 -1
  44. package/lib/models/video.model.js +0 -10
  45. package/lib/services/aiGen/aiGenFactory.service.d.ts +1 -21
  46. package/lib/services/aiGen/aiGenFactory.service.d.ts.map +1 -1
  47. package/lib/services/aiGen/aiGenFactory.service.js +21 -84
  48. package/lib/services/aiGen/helpers.d.ts.map +1 -1
  49. package/lib/services/aiGen/helpers.js +0 -10
  50. package/lib/services/aiGen/providers/alibaba/alibaba.d.ts +3 -14
  51. package/lib/services/aiGen/providers/alibaba/alibaba.d.ts.map +1 -1
  52. package/lib/services/aiGen/providers/alibaba/alibaba.js +22 -155
  53. package/lib/services/aiGen/providers/azure/azure.service.d.ts +14 -0
  54. package/lib/services/aiGen/providers/azure/azure.service.d.ts.map +1 -0
  55. package/lib/services/aiGen/providers/azure/azure.service.js +108 -0
  56. package/lib/services/aiGen/providers/azure/index.d.ts +2 -0
  57. package/lib/services/aiGen/providers/azure/index.d.ts.map +1 -0
  58. package/lib/services/aiGen/providers/{pexels → azure}/index.js +1 -1
  59. package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts +4 -22
  60. package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts.map +1 -1
  61. package/lib/services/aiGen/providers/baseAiGenProvider.service.js +0 -32
  62. package/lib/services/aiGen/providers/bytedance/bytedance.service.d.ts.map +1 -1
  63. package/lib/services/aiGen/providers/bytedance/bytedance.service.js +25 -13
  64. package/lib/services/aiGen/providers/google/google.service.d.ts +2 -11
  65. package/lib/services/aiGen/providers/google/google.service.d.ts.map +1 -1
  66. package/lib/services/aiGen/providers/google/google.service.js +28 -245
  67. package/lib/services/aiGen/providers/index.d.ts +0 -3
  68. package/lib/services/aiGen/providers/index.d.ts.map +1 -1
  69. package/lib/services/aiGen/providers/index.js +0 -3
  70. package/lib/services/aiGen/providers/kling/index.d.ts +0 -1
  71. package/lib/services/aiGen/providers/kling/index.d.ts.map +1 -1
  72. package/lib/services/aiGen/providers/kling/index.js +0 -1
  73. package/lib/services/aiGen/providers/kling/kling.service.d.ts +1 -12
  74. package/lib/services/aiGen/providers/kling/kling.service.d.ts.map +1 -1
  75. package/lib/services/aiGen/providers/kling/kling.service.js +26 -357
  76. package/lib/services/aiGen/providers/kling/types.d.ts +0 -105
  77. package/lib/services/aiGen/providers/kling/types.d.ts.map +1 -1
  78. package/lib/services/aiGen/providers/minimax/minimax.service.d.ts +2 -15
  79. package/lib/services/aiGen/providers/minimax/minimax.service.d.ts.map +1 -1
  80. package/lib/services/aiGen/providers/minimax/minimax.service.js +5 -128
  81. package/lib/services/aiGen/providers/minimax/types.d.ts +1 -10
  82. package/lib/services/aiGen/providers/minimax/types.d.ts.map +1 -1
  83. package/lib/services/aiGen/providers/openai/openai.service.d.ts +2 -8
  84. package/lib/services/aiGen/providers/openai/openai.service.d.ts.map +1 -1
  85. package/lib/services/aiGen/providers/openai/openai.service.js +7 -184
  86. package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts.map +1 -1
  87. package/lib/services/aiGen/providers/pixverse/pixverse.service.js +2 -125
  88. package/lib/services/aiGen/providers/runway/runway.service.d.ts +2 -12
  89. package/lib/services/aiGen/providers/runway/runway.service.d.ts.map +1 -1
  90. package/lib/services/aiGen/providers/runway/runway.service.js +21 -224
  91. package/lib/services/aiGen/providers/types.d.ts +6 -263
  92. package/lib/services/aiGen/providers/types.d.ts.map +1 -1
  93. package/lib/services/analytics.service.js +4 -2
  94. package/lib/services/bullmq.service.d.ts +1 -6
  95. package/lib/services/bullmq.service.d.ts.map +1 -1
  96. package/lib/services/bullmq.service.js +14 -62
  97. package/lib/services/credit.service.d.ts.map +1 -1
  98. package/lib/services/credit.service.js +7 -45
  99. package/lib/services/firestore.service.d.ts +0 -19
  100. package/lib/services/firestore.service.d.ts.map +1 -1
  101. package/lib/services/firestore.service.js +0 -33
  102. package/lib/services/gcp/index.d.ts +0 -1
  103. package/lib/services/gcp/index.d.ts.map +1 -1
  104. package/lib/services/gcp/index.js +0 -1
  105. package/lib/services/index.d.ts +0 -13
  106. package/lib/services/index.d.ts.map +1 -1
  107. package/lib/services/index.js +0 -13
  108. package/lib/services/redis.service.d.ts +0 -9
  109. package/lib/services/redis.service.d.ts.map +1 -1
  110. package/lib/services/redis.service.js +11 -20
  111. package/lib/services/tts/index.d.ts +0 -2
  112. package/lib/services/tts/index.d.ts.map +1 -1
  113. package/lib/services/tts/index.js +0 -2
  114. package/lib/services/tts/providers/elevenlabs.service.d.ts.map +1 -1
  115. package/lib/services/tts/providers/elevenlabs.service.js +24 -91
  116. package/lib/services/tts/ttsFactory.service.d.ts.map +1 -1
  117. package/lib/services/tts/ttsFactory.service.js +0 -6
  118. package/lib/services/tts/types.d.ts +0 -33
  119. package/lib/services/tts/types.d.ts.map +1 -1
  120. package/lib/utils/errors.d.ts +0 -8
  121. package/lib/utils/errors.d.ts.map +1 -1
  122. package/lib/utils/errors.js +0 -8
  123. package/lib/utils/helpers.d.ts +0 -13
  124. package/lib/utils/helpers.d.ts.map +1 -1
  125. package/lib/utils/helpers.js +11 -48
  126. package/lib/utils/logger.d.ts.map +1 -1
  127. package/lib/utils/logger.js +1 -37
  128. package/package.json +1 -5
  129. package/lib/globals/aiModels/providers/alibaba.d.ts +0 -4
  130. package/lib/globals/aiModels/providers/alibaba.d.ts.map +0 -1
  131. package/lib/globals/aiModels/providers/alibaba.js +0 -194
  132. package/lib/globals/aiModels/providers/elevenlabs.d.ts +0 -14
  133. package/lib/globals/aiModels/providers/elevenlabs.d.ts.map +0 -1
  134. package/lib/globals/aiModels/providers/elevenlabs.js +0 -29
  135. package/lib/globals/aiModels/providers/pixverseTemplates.d.ts +0 -36
  136. package/lib/globals/aiModels/providers/pixverseTemplates.d.ts.map +0 -1
  137. package/lib/globals/aiModels/providers/pixverseTemplates.js +0 -42
  138. package/lib/globals/aiModels/tierHelpers.d.ts +0 -33
  139. package/lib/globals/aiModels/tierHelpers.d.ts.map +0 -1
  140. package/lib/globals/aiModels/tierHelpers.js +0 -109
  141. package/lib/globals/ttsModels/providers/minimax.d.ts +0 -8
  142. package/lib/globals/ttsModels/providers/minimax.d.ts.map +0 -1
  143. package/lib/globals/ttsModels/providers/minimax.js +0 -18
  144. package/lib/globals/ttsModels/providers/openai.d.ts +0 -12
  145. package/lib/globals/ttsModels/providers/openai.d.ts.map +0 -1
  146. package/lib/globals/ttsModels/providers/openai.js +0 -22
  147. package/lib/models/agent.model.d.ts +0 -363
  148. package/lib/models/agent.model.d.ts.map +0 -1
  149. package/lib/models/agent.model.js +0 -21
  150. package/lib/models/cachedAsset.model.d.ts +0 -18
  151. package/lib/models/cachedAsset.model.d.ts.map +0 -1
  152. package/lib/models/cachedAsset.model.js +0 -2
  153. package/lib/models/cachedRawAsset.model.d.ts +0 -20
  154. package/lib/models/cachedRawAsset.model.d.ts.map +0 -1
  155. package/lib/models/cachedRawAsset.model.js +0 -2
  156. package/lib/models/image.model.d.ts +0 -47
  157. package/lib/models/image.model.d.ts.map +0 -1
  158. package/lib/models/image.model.js +0 -2
  159. package/lib/models/mediaUpload.model.d.ts +0 -19
  160. package/lib/models/mediaUpload.model.d.ts.map +0 -1
  161. package/lib/models/mediaUpload.model.js +0 -2
  162. package/lib/models/notification.model.d.ts +0 -25
  163. package/lib/models/notification.model.d.ts.map +0 -1
  164. package/lib/models/notification.model.js +0 -2
  165. package/lib/models/ref.model.d.ts +0 -80
  166. package/lib/models/ref.model.d.ts.map +0 -1
  167. package/lib/models/ref.model.js +0 -13
  168. package/lib/models/share.model.d.ts +0 -29
  169. package/lib/models/share.model.d.ts.map +0 -1
  170. package/lib/models/share.model.js +0 -2
  171. package/lib/schemas/agentPersona.schema.d.ts +0 -10
  172. package/lib/schemas/agentPersona.schema.d.ts.map +0 -1
  173. package/lib/schemas/agentPersona.schema.js +0 -11
  174. package/lib/schemas/agentRunJob.schema.d.ts +0 -105
  175. package/lib/schemas/agentRunJob.schema.d.ts.map +0 -1
  176. package/lib/schemas/agentRunJob.schema.js +0 -88
  177. package/lib/schemas/brandKit.schema.d.ts +0 -113
  178. package/lib/schemas/brandKit.schema.d.ts.map +0 -1
  179. package/lib/schemas/brandKit.schema.js +0 -46
  180. package/lib/schemas/brief.schema.d.ts +0 -263
  181. package/lib/schemas/brief.schema.d.ts.map +0 -1
  182. package/lib/schemas/brief.schema.js +0 -157
  183. package/lib/schemas/index.d.ts +0 -7
  184. package/lib/schemas/index.d.ts.map +0 -1
  185. package/lib/schemas/index.js +0 -22
  186. package/lib/schemas/project.schema.d.ts +0 -1025
  187. package/lib/schemas/project.schema.d.ts.map +0 -1
  188. package/lib/schemas/project.schema.js +0 -256
  189. package/lib/schemas/videoPlan.schema.d.ts +0 -590
  190. package/lib/schemas/videoPlan.schema.d.ts.map +0 -1
  191. package/lib/schemas/videoPlan.schema.js +0 -412
  192. package/lib/services/agent/beatSnap.d.ts +0 -10
  193. package/lib/services/agent/beatSnap.d.ts.map +0 -1
  194. package/lib/services/agent/beatSnap.js +0 -128
  195. package/lib/services/agent/bibleBuilder.d.ts +0 -43
  196. package/lib/services/agent/bibleBuilder.d.ts.map +0 -1
  197. package/lib/services/agent/bibleBuilder.js +0 -102
  198. package/lib/services/agent/bibleImageVision.d.ts +0 -45
  199. package/lib/services/agent/bibleImageVision.d.ts.map +0 -1
  200. package/lib/services/agent/bibleImageVision.js +0 -169
  201. package/lib/services/agent/chatAgent.d.ts +0 -79
  202. package/lib/services/agent/chatAgent.d.ts.map +0 -1
  203. package/lib/services/agent/chatAgent.js +0 -136
  204. package/lib/services/agent/costPreflight.d.ts +0 -61
  205. package/lib/services/agent/costPreflight.d.ts.map +0 -1
  206. package/lib/services/agent/costPreflight.js +0 -143
  207. package/lib/services/agent/critic.d.ts +0 -103
  208. package/lib/services/agent/critic.d.ts.map +0 -1
  209. package/lib/services/agent/critic.js +0 -139
  210. package/lib/services/agent/editClassifier.d.ts +0 -262
  211. package/lib/services/agent/editClassifier.d.ts.map +0 -1
  212. package/lib/services/agent/editClassifier.js +0 -186
  213. package/lib/services/agent/eval/index.d.ts +0 -5
  214. package/lib/services/agent/eval/index.d.ts.map +0 -1
  215. package/lib/services/agent/eval/index.js +0 -20
  216. package/lib/services/agent/eval/judge.d.ts +0 -14
  217. package/lib/services/agent/eval/judge.d.ts.map +0 -1
  218. package/lib/services/agent/eval/judge.js +0 -96
  219. package/lib/services/agent/eval/recorder.d.ts +0 -28
  220. package/lib/services/agent/eval/recorder.d.ts.map +0 -1
  221. package/lib/services/agent/eval/recorder.js +0 -100
  222. package/lib/services/agent/eval/seedBriefs.d.ts +0 -16
  223. package/lib/services/agent/eval/seedBriefs.d.ts.map +0 -1
  224. package/lib/services/agent/eval/seedBriefs.js +0 -1188
  225. package/lib/services/agent/eval/types.d.ts +0 -230
  226. package/lib/services/agent/eval/types.d.ts.map +0 -1
  227. package/lib/services/agent/eval/types.js +0 -73
  228. package/lib/services/agent/executor.d.ts +0 -141
  229. package/lib/services/agent/executor.d.ts.map +0 -1
  230. package/lib/services/agent/executor.js +0 -561
  231. package/lib/services/agent/globalActions.d.ts +0 -49
  232. package/lib/services/agent/globalActions.d.ts.map +0 -1
  233. package/lib/services/agent/globalActions.js +0 -328
  234. package/lib/services/agent/index.d.ts +0 -38
  235. package/lib/services/agent/index.d.ts.map +0 -1
  236. package/lib/services/agent/index.js +0 -53
  237. package/lib/services/agent/llmCaller.d.ts +0 -144
  238. package/lib/services/agent/llmCaller.d.ts.map +0 -1
  239. package/lib/services/agent/llmCaller.js +0 -16
  240. package/lib/services/agent/llmCallerAnthropic.d.ts +0 -90
  241. package/lib/services/agent/llmCallerAnthropic.d.ts.map +0 -1
  242. package/lib/services/agent/llmCallerAnthropic.js +0 -255
  243. package/lib/services/agent/llmCallerGateway.d.ts +0 -61
  244. package/lib/services/agent/llmCallerGateway.d.ts.map +0 -1
  245. package/lib/services/agent/llmCallerGateway.js +0 -360
  246. package/lib/services/agent/llmCallerRegistry.d.ts +0 -6
  247. package/lib/services/agent/llmCallerRegistry.d.ts.map +0 -1
  248. package/lib/services/agent/llmCallerRegistry.js +0 -39
  249. package/lib/services/agent/modelQualityNotes.d.ts +0 -100
  250. package/lib/services/agent/modelQualityNotes.d.ts.map +0 -1
  251. package/lib/services/agent/modelQualityNotes.js +0 -248
  252. package/lib/services/agent/modelRouter.d.ts +0 -41
  253. package/lib/services/agent/modelRouter.d.ts.map +0 -1
  254. package/lib/services/agent/modelRouter.js +0 -65
  255. package/lib/services/agent/musicSelect.d.ts +0 -23
  256. package/lib/services/agent/musicSelect.d.ts.map +0 -1
  257. package/lib/services/agent/musicSelect.js +0 -109
  258. package/lib/services/agent/overlayRenderer.d.ts +0 -67
  259. package/lib/services/agent/overlayRenderer.d.ts.map +0 -1
  260. package/lib/services/agent/overlayRenderer.js +0 -253
  261. package/lib/services/agent/perSceneCritic.d.ts +0 -90
  262. package/lib/services/agent/perSceneCritic.d.ts.map +0 -1
  263. package/lib/services/agent/perSceneCritic.js +0 -125
  264. package/lib/services/agent/personas.d.ts +0 -78
  265. package/lib/services/agent/personas.d.ts.map +0 -1
  266. package/lib/services/agent/personas.js +0 -177
  267. package/lib/services/agent/planDiff.d.ts +0 -76
  268. package/lib/services/agent/planDiff.d.ts.map +0 -1
  269. package/lib/services/agent/planDiff.js +0 -182
  270. package/lib/services/agent/planMutations.d.ts +0 -46
  271. package/lib/services/agent/planMutations.d.ts.map +0 -1
  272. package/lib/services/agent/planMutations.js +0 -120
  273. package/lib/services/agent/planner/Planner.d.ts +0 -107
  274. package/lib/services/agent/planner/Planner.d.ts.map +0 -1
  275. package/lib/services/agent/planner/Planner.js +0 -591
  276. package/lib/services/agent/planner/overlaySanity.d.ts +0 -7
  277. package/lib/services/agent/planner/overlaySanity.d.ts.map +0 -1
  278. package/lib/services/agent/planner/overlaySanity.js +0 -86
  279. package/lib/services/agent/planner/promptSections.d.ts +0 -25
  280. package/lib/services/agent/planner/promptSections.d.ts.map +0 -1
  281. package/lib/services/agent/planner/promptSections.js +0 -174
  282. package/lib/services/agent/planner/repair.d.ts +0 -16
  283. package/lib/services/agent/planner/repair.d.ts.map +0 -1
  284. package/lib/services/agent/planner/repair.js +0 -51
  285. package/lib/services/agent/planner/structuralRules.d.ts +0 -10
  286. package/lib/services/agent/planner/structuralRules.d.ts.map +0 -1
  287. package/lib/services/agent/planner/structuralRules.js +0 -111
  288. package/lib/services/agent/planner/validators.d.ts +0 -65
  289. package/lib/services/agent/planner/validators.d.ts.map +0 -1
  290. package/lib/services/agent/planner/validators.js +0 -284
  291. package/lib/services/agent/planner.d.ts +0 -3
  292. package/lib/services/agent/planner.d.ts.map +0 -1
  293. package/lib/services/agent/planner.js +0 -14
  294. package/lib/services/agent/providerFallback/chains.d.ts +0 -100
  295. package/lib/services/agent/providerFallback/chains.d.ts.map +0 -1
  296. package/lib/services/agent/providerFallback/chains.js +0 -198
  297. package/lib/services/agent/providerFallback/classifier.d.ts +0 -36
  298. package/lib/services/agent/providerFallback/classifier.d.ts.map +0 -1
  299. package/lib/services/agent/providerFallback/classifier.js +0 -103
  300. package/lib/services/agent/providerFallback/index.d.ts +0 -4
  301. package/lib/services/agent/providerFallback/index.d.ts.map +0 -1
  302. package/lib/services/agent/providerFallback/index.js +0 -19
  303. package/lib/services/agent/providerFallback/withFallback.d.ts +0 -60
  304. package/lib/services/agent/providerFallback/withFallback.d.ts.map +0 -1
  305. package/lib/services/agent/providerFallback/withFallback.js +0 -93
  306. package/lib/services/agent/providerTaskCache.d.ts +0 -50
  307. package/lib/services/agent/providerTaskCache.d.ts.map +0 -1
  308. package/lib/services/agent/providerTaskCache.js +0 -98
  309. package/lib/services/agent/qualityGate.d.ts +0 -82
  310. package/lib/services/agent/qualityGate.d.ts.map +0 -1
  311. package/lib/services/agent/qualityGate.js +0 -232
  312. package/lib/services/agent/referenceImageRenderer.d.ts +0 -37
  313. package/lib/services/agent/referenceImageRenderer.d.ts.map +0 -1
  314. package/lib/services/agent/referenceImageRenderer.js +0 -92
  315. package/lib/services/agent/regenCore.d.ts +0 -60
  316. package/lib/services/agent/regenCore.d.ts.map +0 -1
  317. package/lib/services/agent/regenCore.js +0 -487
  318. package/lib/services/agent/runHelpers.d.ts +0 -44
  319. package/lib/services/agent/runHelpers.d.ts.map +0 -1
  320. package/lib/services/agent/runHelpers.js +0 -196
  321. package/lib/services/agent/sceneLayoutVision.d.ts +0 -90
  322. package/lib/services/agent/sceneLayoutVision.d.ts.map +0 -1
  323. package/lib/services/agent/sceneLayoutVision.js +0 -212
  324. package/lib/services/agent/stitchedVideoCritic.d.ts +0 -136
  325. package/lib/services/agent/stitchedVideoCritic.d.ts.map +0 -1
  326. package/lib/services/agent/stitchedVideoCritic.gemini.d.ts +0 -26
  327. package/lib/services/agent/stitchedVideoCritic.gemini.d.ts.map +0 -1
  328. package/lib/services/agent/stitchedVideoCritic.gemini.js +0 -198
  329. package/lib/services/agent/stitchedVideoCritic.js +0 -162
  330. package/lib/services/agent/taskPoller.d.ts +0 -65
  331. package/lib/services/agent/taskPoller.d.ts.map +0 -1
  332. package/lib/services/agent/taskPoller.js +0 -176
  333. package/lib/services/agent/textOverlayStyles.d.ts +0 -60
  334. package/lib/services/agent/textOverlayStyles.d.ts.map +0 -1
  335. package/lib/services/agent/textOverlayStyles.js +0 -174
  336. package/lib/services/agent/toolRegistry.d.ts +0 -73
  337. package/lib/services/agent/toolRegistry.d.ts.map +0 -1
  338. package/lib/services/agent/toolRegistry.js +0 -95
  339. package/lib/services/agent/tools/analyzeReference.tool.d.ts +0 -36
  340. package/lib/services/agent/tools/analyzeReference.tool.d.ts.map +0 -1
  341. package/lib/services/agent/tools/analyzeReference.tool.js +0 -44
  342. package/lib/services/agent/tools/animateImage.tool.d.ts +0 -24
  343. package/lib/services/agent/tools/animateImage.tool.d.ts.map +0 -1
  344. package/lib/services/agent/tools/animateImage.tool.js +0 -115
  345. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts +0 -32
  346. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts.map +0 -1
  347. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.js +0 -135
  348. package/lib/services/agent/tools/composeScene.tool.d.ts +0 -978
  349. package/lib/services/agent/tools/composeScene.tool.d.ts.map +0 -1
  350. package/lib/services/agent/tools/composeScene.tool.js +0 -90
  351. package/lib/services/agent/tools/estimateCost.tool.d.ts +0 -352
  352. package/lib/services/agent/tools/estimateCost.tool.d.ts.map +0 -1
  353. package/lib/services/agent/tools/estimateCost.tool.js +0 -62
  354. package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts +0 -32
  355. package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts.map +0 -1
  356. package/lib/services/agent/tools/generateAvatarVideo.tool.js +0 -143
  357. package/lib/services/agent/tools/generateCaptions.tool.d.ts +0 -42
  358. package/lib/services/agent/tools/generateCaptions.tool.d.ts.map +0 -1
  359. package/lib/services/agent/tools/generateCaptions.tool.js +0 -196
  360. package/lib/services/agent/tools/generateImage.tool.d.ts +0 -74
  361. package/lib/services/agent/tools/generateImage.tool.d.ts.map +0 -1
  362. package/lib/services/agent/tools/generateImage.tool.js +0 -206
  363. package/lib/services/agent/tools/generateVideo.tool.d.ts +0 -31
  364. package/lib/services/agent/tools/generateVideo.tool.d.ts.map +0 -1
  365. package/lib/services/agent/tools/generateVideo.tool.js +0 -153
  366. package/lib/services/agent/tools/generateVoiceover.tool.d.ts +0 -44
  367. package/lib/services/agent/tools/generateVoiceover.tool.d.ts.map +0 -1
  368. package/lib/services/agent/tools/generateVoiceover.tool.js +0 -206
  369. package/lib/services/agent/tools/index.d.ts +0 -20
  370. package/lib/services/agent/tools/index.d.ts.map +0 -1
  371. package/lib/services/agent/tools/index.js +0 -35
  372. package/lib/services/agent/tools/planVideo.tool.d.ts +0 -343
  373. package/lib/services/agent/tools/planVideo.tool.d.ts.map +0 -1
  374. package/lib/services/agent/tools/planVideo.tool.js +0 -46
  375. package/lib/services/agent/tools/render.tool.d.ts +0 -367
  376. package/lib/services/agent/tools/render.tool.d.ts.map +0 -1
  377. package/lib/services/agent/tools/render.tool.js +0 -48
  378. package/lib/services/agent/tools/searchMusic.tool.d.ts +0 -49
  379. package/lib/services/agent/tools/searchMusic.tool.d.ts.map +0 -1
  380. package/lib/services/agent/tools/searchMusic.tool.js +0 -74
  381. package/lib/services/agent/tools/searchStock.tool.d.ts +0 -41
  382. package/lib/services/agent/tools/searchStock.tool.d.ts.map +0 -1
  383. package/lib/services/agent/tools/searchStock.tool.js +0 -314
  384. package/lib/services/agent/tools/searchUserLibrary.tool.d.ts +0 -59
  385. package/lib/services/agent/tools/searchUserLibrary.tool.d.ts.map +0 -1
  386. package/lib/services/agent/tools/searchUserLibrary.tool.js +0 -58
  387. package/lib/services/agent/ttsDuration.d.ts +0 -29
  388. package/lib/services/agent/ttsDuration.d.ts.map +0 -1
  389. package/lib/services/agent/ttsDuration.js +0 -60
  390. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts +0 -31
  391. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts.map +0 -1
  392. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.js +0 -2
  393. package/lib/services/aiGen/canonicalAdapters/index.d.ts +0 -3
  394. package/lib/services/aiGen/canonicalAdapters/index.d.ts.map +0 -1
  395. package/lib/services/aiGen/canonicalAdapters/index.js +0 -18
  396. package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts +0 -23
  397. package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts.map +0 -1
  398. package/lib/services/aiGen/canonicalAdapters/multiShot.types.js +0 -12
  399. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts +0 -18
  400. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts.map +0 -1
  401. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.js +0 -102
  402. package/lib/services/aiGen/providers/fal/falImage.service.d.ts +0 -15
  403. package/lib/services/aiGen/providers/fal/falImage.service.d.ts.map +0 -1
  404. package/lib/services/aiGen/providers/fal/falImage.service.js +0 -141
  405. package/lib/services/aiGen/providers/fal/index.d.ts +0 -2
  406. package/lib/services/aiGen/providers/fal/index.d.ts.map +0 -1
  407. package/lib/services/aiGen/providers/fal/index.js +0 -17
  408. package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts +0 -4
  409. package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts.map +0 -1
  410. package/lib/services/aiGen/providers/kling/cameraAdapter.js +0 -53
  411. package/lib/services/aiGen/providers/kling/klingImage.service.d.ts +0 -21
  412. package/lib/services/aiGen/providers/kling/klingImage.service.d.ts.map +0 -1
  413. package/lib/services/aiGen/providers/kling/klingImage.service.js +0 -208
  414. package/lib/services/aiGen/providers/pexels/index.d.ts +0 -2
  415. package/lib/services/aiGen/providers/pexels/index.d.ts.map +0 -1
  416. package/lib/services/aiGen/providers/pexels/pexels.service.d.ts +0 -11
  417. package/lib/services/aiGen/providers/pexels/pexels.service.d.ts.map +0 -1
  418. package/lib/services/aiGen/providers/pexels/pexels.service.js +0 -150
  419. package/lib/services/aiGen/providers/pixabay/index.d.ts +0 -2
  420. package/lib/services/aiGen/providers/pixabay/index.d.ts.map +0 -1
  421. package/lib/services/aiGen/providers/pixabay/index.js +0 -17
  422. package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts +0 -12
  423. package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts.map +0 -1
  424. package/lib/services/aiGen/providers/pixabay/pixabay.service.js +0 -156
  425. package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts +0 -3
  426. package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts.map +0 -1
  427. package/lib/services/aiGen/providers/runway/cameraAdapter.js +0 -46
  428. package/lib/services/aiGen/providers/unsplash/index.d.ts +0 -2
  429. package/lib/services/aiGen/providers/unsplash/index.d.ts.map +0 -1
  430. package/lib/services/aiGen/providers/unsplash/index.js +0 -17
  431. package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts +0 -16
  432. package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts.map +0 -1
  433. package/lib/services/aiGen/providers/unsplash/unsplash.service.js +0 -131
  434. package/lib/services/apiUsageCounter.service.d.ts +0 -20
  435. package/lib/services/apiUsageCounter.service.d.ts.map +0 -1
  436. package/lib/services/apiUsageCounter.service.js +0 -84
  437. package/lib/services/asr/assemblyai.service.d.ts +0 -72
  438. package/lib/services/asr/assemblyai.service.d.ts.map +0 -1
  439. package/lib/services/asr/assemblyai.service.js +0 -89
  440. package/lib/services/asr/index.d.ts +0 -3
  441. package/lib/services/asr/index.d.ts.map +0 -1
  442. package/lib/services/asr/index.js +0 -18
  443. package/lib/services/asr/whisper.service.d.ts +0 -18
  444. package/lib/services/asr/whisper.service.d.ts.map +0 -1
  445. package/lib/services/asr/whisper.service.js +0 -151
  446. package/lib/services/assetCache.service.d.ts +0 -54
  447. package/lib/services/assetCache.service.d.ts.map +0 -1
  448. package/lib/services/assetCache.service.js +0 -109
  449. package/lib/services/audioAnalysis/index.d.ts +0 -2
  450. package/lib/services/audioAnalysis/index.d.ts.map +0 -1
  451. package/lib/services/audioAnalysis/index.js +0 -17
  452. package/lib/services/audioAnalysis/onsetDetection.service.d.ts +0 -50
  453. package/lib/services/audioAnalysis/onsetDetection.service.d.ts.map +0 -1
  454. package/lib/services/audioAnalysis/onsetDetection.service.js +0 -140
  455. package/lib/services/credits/pricing.d.ts +0 -58
  456. package/lib/services/credits/pricing.d.ts.map +0 -1
  457. package/lib/services/credits/pricing.js +0 -111
  458. package/lib/services/editor/designToProject.d.ts +0 -75
  459. package/lib/services/editor/designToProject.d.ts.map +0 -1
  460. package/lib/services/editor/designToProject.js +0 -295
  461. package/lib/services/editor/planToProject.d.ts +0 -84
  462. package/lib/services/editor/planToProject.d.ts.map +0 -1
  463. package/lib/services/editor/planToProject.js +0 -395
  464. package/lib/services/editor/projectToDesign.d.ts +0 -4
  465. package/lib/services/editor/projectToDesign.d.ts.map +0 -1
  466. package/lib/services/editor/projectToDesign.js +0 -186
  467. package/lib/services/gcp/uploadAudioBuffer.d.ts +0 -13
  468. package/lib/services/gcp/uploadAudioBuffer.d.ts.map +0 -1
  469. package/lib/services/gcp/uploadAudioBuffer.js +0 -28
  470. package/lib/services/musicGen/index.d.ts +0 -6
  471. package/lib/services/musicGen/index.d.ts.map +0 -1
  472. package/lib/services/musicGen/index.js +0 -26
  473. package/lib/services/musicGen/musicSearchFactory.service.d.ts +0 -14
  474. package/lib/services/musicGen/musicSearchFactory.service.d.ts.map +0 -1
  475. package/lib/services/musicGen/musicSearchFactory.service.js +0 -59
  476. package/lib/services/musicGen/providers/curated.service.d.ts +0 -24
  477. package/lib/services/musicGen/providers/curated.service.d.ts.map +0 -1
  478. package/lib/services/musicGen/providers/curated.service.js +0 -173
  479. package/lib/services/musicGen/providers/jamendo.service.d.ts +0 -8
  480. package/lib/services/musicGen/providers/jamendo.service.d.ts.map +0 -1
  481. package/lib/services/musicGen/providers/jamendo.service.js +0 -113
  482. package/lib/services/musicGen/providers/mubert.service.d.ts +0 -10
  483. package/lib/services/musicGen/providers/mubert.service.d.ts.map +0 -1
  484. package/lib/services/musicGen/providers/mubert.service.js +0 -128
  485. package/lib/services/musicGen/types.d.ts +0 -46
  486. package/lib/services/musicGen/types.d.ts.map +0 -1
  487. package/lib/services/musicGen/types.js +0 -10
  488. package/lib/services/notification.service.d.ts +0 -22
  489. package/lib/services/notification.service.d.ts.map +0 -1
  490. package/lib/services/notification.service.js +0 -76
  491. package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts +0 -78
  492. package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts.map +0 -1
  493. package/lib/services/rateLimiter/distributedRateLimiter.service.js +0 -269
  494. package/lib/services/rateLimiter/index.d.ts +0 -2
  495. package/lib/services/rateLimiter/index.d.ts.map +0 -1
  496. package/lib/services/rateLimiter/index.js +0 -17
  497. package/lib/services/redisOptions.d.ts +0 -22
  498. package/lib/services/redisOptions.d.ts.map +0 -1
  499. package/lib/services/redisOptions.js +0 -51
  500. package/lib/services/tts/providers/minimax.service.d.ts +0 -14
  501. package/lib/services/tts/providers/minimax.service.d.ts.map +0 -1
  502. package/lib/services/tts/providers/minimax.service.js +0 -78
  503. package/lib/services/tts/providers/openai.service.d.ts +0 -14
  504. package/lib/services/tts/providers/openai.service.d.ts.map +0 -1
  505. package/lib/services/tts/providers/openai.service.js +0 -73
@@ -1,561 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Executor = void 0;
4
- exports.classifySceneFailure = classifySceneFailure;
5
- const voices_1 = require("../../globals/ttsModels/voices");
6
- const logger_1 = require("../../utils/logger");
7
- const referenceImageRenderer_1 = require("./referenceImageRenderer");
8
- const toolRegistry_1 = require("./toolRegistry");
9
- const ttsDuration_1 = require("./ttsDuration");
10
- const chains_1 = require("./providerFallback/chains");
11
- const providerTaskCache_1 = require("./providerTaskCache");
12
- /**
13
- * AG-37: planners (LLMs) keep inventing voice IDs like "female-young-adult-en"
14
- * or "narrator-1" that look reasonable but don't exist in any catalog. When
15
- * those flow into ElevenLabs the API returns a 400 and the silent-fail VO
16
- * outcome path drops the VO entirely — final video ships muted. Strip
17
- * unknown IDs here so the provider falls back to its default voice instead.
18
- */
19
- const ELEVENLABS_VOICE_IDS = new Set(voices_1.ELEVENLABS_VOICES.map((v) => v.id));
20
- function sanitizeVoiceId(voiceId) {
21
- if (!voiceId)
22
- return undefined;
23
- if (ELEVENLABS_VOICE_IDS.has(voiceId))
24
- return voiceId;
25
- // Heuristic for non-ElevenLabs providers (openai = "alloy"/"echo"/..., minimax = "male-qn-qingse").
26
- // Only strip strings that look like LLM-invented descriptive labels (contain a hyphen + recognisable word).
27
- if (/^(female|male|narrator|presenter|voice)[-_]/i.test(voiceId)) {
28
- logger_1.logger.warn("executor: stripping invalid voiceId (LLM hallucination)", { voiceId });
29
- return undefined;
30
- }
31
- return voiceId;
32
- }
33
- /**
34
- * AG-31: map a brief-level voice style adjective to ElevenLabs voice_settings.
35
- * `style` is the exaggeration param (use sparingly above 0.5 — artifacts);
36
- * `stability` is the consistency knob (low = more emotive, high = monotone);
37
- * `speed` is rate (0.7-1.2). Defaults match ElevenLabs' own (style=0,
38
- * stability=0.5, speed=1.0). Tuning per persona is conservative — we'd rather
39
- * be slightly flat than artifact-laden.
40
- */
41
- function resolveVoiceSettings(style) {
42
- switch (style) {
43
- case "calm":
44
- return { style: 0.15, stability: 0.7, speed: 0.95 };
45
- case "warm":
46
- return { style: 0.25, stability: 0.6, speed: 1.0 };
47
- case "casual":
48
- return { style: 0.3, stability: 0.5, speed: 1.0 };
49
- case "excited":
50
- return { style: 0.55, stability: 0.35, speed: 1.05 };
51
- case "energetic":
52
- return { style: 0.6, stability: 0.35, speed: 1.08 };
53
- case "happy":
54
- return { style: 0.5, stability: 0.4, speed: 1.05 };
55
- case "serious":
56
- return { style: 0.2, stability: 0.75, speed: 0.95 };
57
- case "dramatic":
58
- return { style: 0.65, stability: 0.4, speed: 0.95 };
59
- case "whisper":
60
- return { style: 0.2, stability: 0.85, speed: 0.9 };
61
- case "neutral":
62
- case undefined:
63
- default:
64
- return {};
65
- }
66
- }
67
- /**
68
- * Inspect a failed scene to decide the next orchestration step.
69
- *
70
- * - "replan" : agent should re-plan the scene (safety / bad input)
71
- * - "degrade" : try a cheaper strategy (e.g. T2/T3 chain exhausted on quota)
72
- * - "fail" : terminal — surface to user (auth / chain-exhausted-unknown)
73
- * - "retry" : transient — caller may re-run the scene as-is later
74
- */
75
- function classifySceneFailure(outcome) {
76
- if (outcome.ok)
77
- return null;
78
- const c = outcome.error?.classification;
79
- if (!c)
80
- return "fail";
81
- if (outcome.error?.needsReplan)
82
- return "replan"; // safety / input
83
- if (c === "auth")
84
- return "fail";
85
- if (c === "quota")
86
- return "degrade";
87
- if (c === "rate_limit" || c === "transient")
88
- return "retry";
89
- if (c === "capability")
90
- return "degrade";
91
- return "fail";
92
- }
93
- /**
94
- * OD-T7 / AG-42 — give the planner's `preferredModel` a chance to actually run
95
- * when the scene duration is just slightly off from what the model accepts.
96
- *
97
- * Decision tree:
98
- * 1. Model has no duration constraint → use planned duration
99
- * 2. Planned duration already legal → use planned duration
100
- * 3. Nearest legal is within snap tolerance → snap, log info
101
- * 4. Outside tolerance + explicit preferredModel → log warn ("dropping
102
- * planner pick — too far from any allowed value"); use planned duration
103
- * anyway so the capability filter drops it and the chain fallback runs
104
- * (the withFallback warn AG-42 also logs there now)
105
- *
106
- * We intentionally do NOT throw — throwing would crash a scene mid-run and
107
- * lose all the other planner output. The graceful fallback chain already
108
- * exists; this helper just keeps the planner's pick alive when the drift is
109
- * small, and makes the drop visible when it isn't.
110
- */
111
- function resolveDurationForPreferredModel(modelKey, plannedDurationSec, explicit, sceneIndex) {
112
- const snap = (0, chains_1.snapDurationForModel)(modelKey, plannedDurationSec);
113
- if (!snap) {
114
- if (explicit) {
115
- logger_1.logger.warn("executor: preferredModel duration outside snap tolerance — chain fallback will pick", {
116
- sceneIndex,
117
- modelKey,
118
- plannedDurationSec,
119
- });
120
- }
121
- return plannedDurationSec;
122
- }
123
- if (snap.driftSec > 0.01) {
124
- logger_1.logger.info("executor: snapped duration to fit preferredModel", {
125
- sceneIndex,
126
- modelKey,
127
- from: snap.requestedSec,
128
- to: snap.snappedSec,
129
- driftSec: Number(snap.driftSec.toFixed(2)),
130
- });
131
- }
132
- return snap.snappedSec;
133
- }
134
- class Executor {
135
- constructor(opts = {}) {
136
- this.concurrency = opts.concurrency ?? 4;
137
- this.runTool = opts.runTool ?? toolRegistry_1.runTool;
138
- this.onSceneComplete = opts.onSceneComplete;
139
- this.taskCache = opts.taskCache;
140
- this.onTaskMint = opts.onTaskMint;
141
- }
142
- /**
143
- * Stage 7 slice 1 helper. Returns cached pending-task output if the
144
- * upstream input hash matches and entry is within TTL; null otherwise.
145
- * Logs the hit so trace shows where $$ was saved.
146
- */
147
- checkTaskCache(clipId, tool, input) {
148
- const inputsHash = (0, providerTaskCache_1.hashTaskInputs)(input);
149
- const hit = (0, providerTaskCache_1.getCachedTask)(this.taskCache, clipId, inputsHash);
150
- if (hit) {
151
- logger_1.logger.info("executor: task-cache hit", {
152
- clipId,
153
- tool,
154
- modelKey: hit.modelKey,
155
- taskId: hit.taskId,
156
- ageMs: Date.now() - hit.createdAt,
157
- });
158
- }
159
- return { hit, inputsHash };
160
- }
161
- /**
162
- * Best-effort mint. Swallows callback errors — a Firestore blip must not
163
- * fail the scene (the tool already succeeded and produced a real taskId).
164
- */
165
- async mintTaskCache(clipId, entry) {
166
- if (!this.onTaskMint)
167
- return;
168
- try {
169
- await this.onTaskMint(clipId, entry);
170
- }
171
- catch (err) {
172
- logger_1.logger.warn("executor: onTaskMint callback threw — swallowed", {
173
- clipId,
174
- err: err.message,
175
- });
176
- }
177
- }
178
- async run(plan, ctx) {
179
- const queue = [...plan.scenes];
180
- const results = new Array(plan.scenes.length);
181
- const workers = [];
182
- let cursor = 0;
183
- const worker = async () => {
184
- while (true) {
185
- const i = cursor++;
186
- if (i >= queue.length)
187
- return;
188
- const scene = queue[i];
189
- const outcome = await this.runScene(scene, ctx, plan.aspect, plan);
190
- results[i] = outcome;
191
- if (this.onSceneComplete) {
192
- try {
193
- await this.onSceneComplete(scene.sceneIndex, outcome);
194
- }
195
- catch (err) {
196
- logger_1.logger.warn("executor: onSceneComplete callback threw — swallowed", {
197
- sceneIndex: scene.sceneIndex,
198
- err: err.message,
199
- });
200
- }
201
- }
202
- }
203
- };
204
- for (let i = 0; i < Math.min(this.concurrency, queue.length); i++) {
205
- workers.push(worker());
206
- }
207
- await Promise.all(workers);
208
- return results;
209
- }
210
- async runScene(scene, ctx, aspect, plan) {
211
- const start = Date.now();
212
- const idempotencyKey = `${ctx.agentRunId}:scene-${scene.sceneIndex}`;
213
- const sceneCtx = { ...ctx, idempotencyKey };
214
- const visualOutcome = await this.runVisual(scene, sceneCtx, aspect, plan);
215
- if (!visualOutcome.ok) {
216
- return {
217
- scene,
218
- ok: false,
219
- error: visualOutcome.error,
220
- durationMs: Date.now() - start,
221
- };
222
- }
223
- let voiceoverAudioBase64;
224
- let voiceoverEstimateMs;
225
- let voiceoverOverBudget = false;
226
- // talking-head-avatar bakes the VO into the rendered MP4; running TTS again
227
- // here would just waste credits and create a duplicate audio track.
228
- if (scene.voiceoverLine && scene.strategy !== "talking-head-avatar") {
229
- // AG-31: brief.voice.style → ElevenLabs voice_settings.
230
- // AG-28: if estimated VO > scene.durationMs, speed up TTS within natural
231
- // limits (≤1.15× extra over style.speed) before falling back to a
232
- // freeze-frame-pad signal for the stitcher.
233
- // AG-44: per-scene voiceStyle wins over plan-level when present, so the
234
- // emotional arc can shift across the timeline (frustrated → curious → excited).
235
- const effectiveVoiceStyle = (scene.voiceStyle ?? plan.voiceStyle);
236
- const baseSettings = resolveVoiceSettings(effectiveVoiceStyle);
237
- const baseSpeed = baseSettings.speed ?? 1.0;
238
- const rawEstMs = (0, ttsDuration_1.estimateTtsMs)(scene.voiceoverLine);
239
- const budgetMs = scene.durationMs * 1.05;
240
- // Adjusted speed: only kick in if natural speech would overrun. Cap the
241
- // speedup multiplier at 1.15× style-base; faster than that sounds rushed.
242
- let speed = baseSpeed;
243
- if (rawEstMs > budgetMs) {
244
- const needed = rawEstMs / budgetMs;
245
- const cappedMultiplier = Math.min(1.15, needed);
246
- speed = +(baseSpeed * cappedMultiplier).toFixed(2);
247
- }
248
- const adjustedEstMs = rawEstMs * (baseSpeed / speed);
249
- voiceoverEstimateMs = Math.round(adjustedEstMs);
250
- voiceoverOverBudget = adjustedEstMs > budgetMs;
251
- const voInput = {
252
- text: scene.voiceoverLine,
253
- ...baseSettings,
254
- // Override speed when AG-28 budget forced an adjustment.
255
- speed: +Math.max(0.7, Math.min(1.2, speed)).toFixed(2),
256
- };
257
- const sanitized = sanitizeVoiceId(plan.voiceId);
258
- if (sanitized)
259
- voInput.voiceId = sanitized;
260
- const voOutcome = await this.runTool("generate_voiceover", voInput, { ...sceneCtx, idempotencyKey: `${idempotencyKey}:vo` });
261
- if (voOutcome.ok) {
262
- voiceoverAudioBase64 = voOutcome.output.audioBase64;
263
- }
264
- else {
265
- // AG-37: don't swallow silently — final video shipping muted with no
266
- // log was the original bug. Surface the error in the result so the
267
- // trace shows WHY VO is missing.
268
- logger_1.logger.warn("executor: voiceover tool failed", {
269
- sceneIndex: scene.sceneIndex,
270
- error: voOutcome.error,
271
- voiceIdRequested: plan.voiceId,
272
- voiceIdSent: sanitized,
273
- });
274
- }
275
- // Don't fail the whole scene on VO miss — host can re-run just the VO.
276
- }
277
- return {
278
- scene,
279
- ok: true,
280
- result: {
281
- ...visualOutcome.output,
282
- voiceoverAudioBase64,
283
- voiceoverEstimateMs,
284
- voiceoverOverBudget,
285
- idempotencyKey,
286
- },
287
- durationMs: Date.now() - start,
288
- };
289
- }
290
- async runVisual(scene, ctx, aspect, plan) {
291
- const durationSec = Math.max(2, Math.round(scene.durationMs / 1000));
292
- // AG-13: collect reference images for this scene's bible entities. Empty
293
- // array when bible is C0/C1 or no entities are tagged — image-gen falls
294
- // back to pure text prompt.
295
- const referenceImageUrls = (0, referenceImageRenderer_1.collectReferenceImageUrls)(plan.bible, scene.bibleEntityIds ?? []);
296
- const wrap = (tool, outcome) => outcome.ok
297
- ? { ok: true, output: { tool, ...outcome.output } }
298
- : { ok: false, error: outcome.error };
299
- switch (scene.strategy) {
300
- case "stock-video":
301
- case "stock-image-ken-burns": {
302
- const out = await this.runTool("search_stock", {
303
- query: scene.prompt,
304
- kind: scene.strategy === "stock-video" ? "video" : "image",
305
- aspectRatio: aspect,
306
- minDurationSec: scene.strategy === "stock-video" ? durationSec : undefined,
307
- }, ctx);
308
- if (!out.ok)
309
- return wrap("search_stock", out);
310
- const url = out.output.assets[0]?.url;
311
- if (!url)
312
- return {
313
- ok: false,
314
- error: {
315
- code: "NO_STOCK_RESULTS",
316
- message: `No stock results for: ${scene.prompt}`,
317
- attemptedProviders: out.output.attemptedProviders,
318
- },
319
- };
320
- return {
321
- ok: true,
322
- output: {
323
- tool: "search_stock",
324
- visualUrl: url,
325
- attemptedProviders: out.output.attemptedProviders,
326
- },
327
- };
328
- }
329
- case "ai-image-static":
330
- case "ai-image-motion": {
331
- const out = await this.runTool("generate_image", {
332
- prompt: scene.prompt,
333
- modelKey: scene.preferredModel ?? "google-nano-banana",
334
- aspectRatio: aspect,
335
- ...(referenceImageUrls.length
336
- ? { inputImageUrls: referenceImageUrls }
337
- : {}),
338
- }, ctx);
339
- if (!out.ok)
340
- return wrap("generate_image", out);
341
- return { ok: true, output: { tool: "generate_image", visualUrl: out.output.imageUrl } };
342
- }
343
- case "ai-image-to-video": {
344
- const animateModelKey = scene.preferredModel ?? "kling-v2.6";
345
- const animateDurationSec = resolveDurationForPreferredModel(animateModelKey, durationSec, !!scene.preferredModel, scene.sceneIndex);
346
- // Stage 7 slice 1: cache key spans the WHOLE strategy (both image-gen
347
- // + animate). Hashing only upstream-stable inputs — prompt, model,
348
- // duration, aspect, reference images — lets a re-execute skip BOTH
349
- // tool calls, replaying the cached animate taskId through the poller.
350
- const clipId = `scene-${scene.sceneIndex}-visual`;
351
- const cacheInput = {
352
- strategy: "ai-image-to-video",
353
- prompt: scene.prompt,
354
- modelKey: animateModelKey,
355
- durationSec: animateDurationSec,
356
- aspect,
357
- referenceImageUrls,
358
- };
359
- const { hit, inputsHash } = this.checkTaskCache(clipId, "animate_image", cacheInput);
360
- if (hit) {
361
- return {
362
- ok: true,
363
- output: {
364
- tool: "animate_image",
365
- pendingTaskId: hit.taskId,
366
- pendingModelKey: hit.modelKey,
367
- },
368
- };
369
- }
370
- const img = await this.runTool("generate_image", {
371
- prompt: scene.prompt,
372
- modelKey: "google-nano-banana",
373
- aspectRatio: aspect,
374
- ...(referenceImageUrls.length
375
- ? { inputImageUrls: referenceImageUrls }
376
- : {}),
377
- }, { ...ctx, idempotencyKey: `${ctx.idempotencyKey}:img` });
378
- if (!img.ok)
379
- return wrap("generate_image", img);
380
- const animate = await this.runTool("animate_image", {
381
- imageUrl: img.output.imageUrl,
382
- motionHint: scene.prompt,
383
- durationSec: animateDurationSec,
384
- modelKey: animateModelKey,
385
- }, ctx);
386
- if (!animate.ok)
387
- return wrap("animate_image", animate);
388
- const mintedModelKey = animate.output.modelKeyUsed ?? animateModelKey;
389
- await this.mintTaskCache(clipId, {
390
- tool: "animate_image",
391
- taskId: animate.output.taskId,
392
- modelKey: mintedModelKey,
393
- inputsHash,
394
- createdAt: Date.now(),
395
- });
396
- return {
397
- ok: true,
398
- output: {
399
- tool: "animate_image",
400
- pendingTaskId: animate.output.taskId,
401
- pendingModelKey: mintedModelKey,
402
- attemptedProviders: animate.output.attemptedProviders,
403
- },
404
- };
405
- }
406
- case "ai-text-to-video": {
407
- const t2vModelKey = scene.preferredModel ?? "kling-v2.6";
408
- const t2vDurationSec = resolveDurationForPreferredModel(t2vModelKey, durationSec, !!scene.preferredModel, scene.sceneIndex);
409
- const clipId = `scene-${scene.sceneIndex}-visual`;
410
- const cacheInput = {
411
- strategy: "ai-text-to-video",
412
- prompt: scene.prompt,
413
- modelKey: t2vModelKey,
414
- durationSec: t2vDurationSec,
415
- };
416
- const { hit, inputsHash } = this.checkTaskCache(clipId, "generate_video", cacheInput);
417
- if (hit) {
418
- return {
419
- ok: true,
420
- output: {
421
- tool: "generate_video",
422
- pendingTaskId: hit.taskId,
423
- pendingModelKey: hit.modelKey,
424
- },
425
- };
426
- }
427
- const out = await this.runTool("generate_video", {
428
- prompt: scene.prompt,
429
- modelKey: t2vModelKey,
430
- durationSec: t2vDurationSec,
431
- }, ctx);
432
- if (!out.ok)
433
- return wrap("generate_video", out);
434
- const mintedModelKey = out.output.modelKeyUsed ?? t2vModelKey;
435
- await this.mintTaskCache(clipId, {
436
- tool: "generate_video",
437
- taskId: out.output.taskId,
438
- modelKey: mintedModelKey,
439
- inputsHash,
440
- createdAt: Date.now(),
441
- });
442
- return {
443
- ok: true,
444
- output: {
445
- tool: "generate_video",
446
- pendingTaskId: out.output.taskId,
447
- pendingModelKey: mintedModelKey,
448
- attemptedProviders: out.output.attemptedProviders,
449
- },
450
- };
451
- }
452
- case "user-asset": {
453
- // Per-user library search. The host injects the searcher at boot
454
- // (see userLibrarySearcher bootstrap); if no match, fall back to
455
- // stock so the scene still renders rather than failing hard.
456
- const out = await this.runTool("search_user_library", { query: scene.prompt, limit: 5 }, ctx);
457
- if (out.ok) {
458
- const first = out.output.assets[0];
459
- if (first) {
460
- return { ok: true, output: { tool: "search_user_library", visualUrl: first.url } };
461
- }
462
- }
463
- // No hits or searcher missing — fall back to stock-video as the
464
- // closest cheap substitute so the executor still produces an asset.
465
- const stock = await this.runTool("search_stock", {
466
- query: scene.prompt,
467
- kind: "video",
468
- aspectRatio: aspect,
469
- minDurationSec: durationSec,
470
- }, ctx);
471
- if (!stock.ok)
472
- return wrap("search_stock", stock);
473
- const fallbackUrl = stock.output.assets[0]?.url;
474
- if (!fallbackUrl) {
475
- return {
476
- ok: false,
477
- error: {
478
- code: "USER_ASSET_NO_MATCH",
479
- message: `No user-library match for "${scene.prompt}" and no stock fallback.`,
480
- attemptedProviders: stock.output.attemptedProviders,
481
- },
482
- };
483
- }
484
- return {
485
- ok: true,
486
- output: {
487
- tool: "search_user_library",
488
- visualUrl: fallbackUrl,
489
- attemptedProviders: stock.output.attemptedProviders,
490
- },
491
- };
492
- }
493
- case "talking-head-avatar": {
494
- if (!scene.avatarFaceUrl) {
495
- return {
496
- ok: false,
497
- error: {
498
- code: "AVATAR_FACE_REQUIRED",
499
- message: "talking-head-avatar requires scene.avatarFaceUrl (set on the user's brand kit).",
500
- },
501
- };
502
- }
503
- if (!scene.voiceoverLine) {
504
- return {
505
- ok: false,
506
- error: {
507
- code: "AVATAR_VO_REQUIRED",
508
- message: "talking-head-avatar requires scene.voiceoverLine for the lipsync audio.",
509
- },
510
- };
511
- }
512
- const avatarMode = scene.tier === "T3" ? "pro" : "std";
513
- const clipId = `scene-${scene.sceneIndex}-visual`;
514
- const cacheInput = {
515
- strategy: "talking-head-avatar",
516
- inputImageUrl: scene.avatarFaceUrl,
517
- ttsText: scene.voiceoverLine,
518
- mode: avatarMode,
519
- };
520
- const { hit, inputsHash } = this.checkTaskCache(clipId, "generate_avatar_video", cacheInput);
521
- if (hit) {
522
- return {
523
- ok: true,
524
- output: {
525
- tool: "generate_avatar_video",
526
- pendingTaskId: hit.taskId,
527
- pendingModelKey: hit.modelKey,
528
- },
529
- };
530
- }
531
- const out = await this.runTool("generate_avatar_video", {
532
- inputImageUrl: scene.avatarFaceUrl,
533
- ttsText: scene.voiceoverLine,
534
- mode: avatarMode,
535
- }, ctx);
536
- if (!out.ok)
537
- return wrap("generate_avatar_video", out);
538
- await this.mintTaskCache(clipId, {
539
- tool: "generate_avatar_video",
540
- taskId: out.output.taskId,
541
- // Avatar tool hardcodes Kling Avatar internally; poller needs the
542
- // actual model key to route via getAiGenProviderService (no special
543
- // resolver exists). AG-20: was "generate_avatar_video" which would
544
- // throw at factory lookup the moment the avatar path was polled.
545
- modelKey: "kling-avatar",
546
- inputsHash,
547
- createdAt: Date.now(),
548
- });
549
- return {
550
- ok: true,
551
- output: {
552
- tool: "generate_avatar_video",
553
- pendingTaskId: out.output.taskId,
554
- pendingModelKey: "kling-avatar",
555
- },
556
- };
557
- }
558
- }
559
- }
560
- }
561
- exports.Executor = Executor;
@@ -1,49 +0,0 @@
1
- /**
2
- * Session K (Stage 7) — global project-level regen actions.
3
- *
4
- * Pairs with `AgentRegenTargetSchema.kind === "global"`. The worker dispatches
5
- * here instead of through `executeRegenTarget` (which is per-scene / per-
6
- * component) because these actions mutate project-wide state:
7
- *
8
- * - "soften-music" — drop volume + mood + bpm, refetch a mellower track
9
- * via selectMusicForPlan, swap the "music" clip src.
10
- * - "add-cta" — bias the closing scene's overlays toward a strong
11
- * CTA via planner.regenerateOverlaysForScene; splice
12
- * new overlay clips on top of the existing visual.
13
- * - "switch-persona" — re-run Planner.plan() with the new persona. Project
14
- * status reverts to "planned" — visuals are stale
15
- * relative to the new plan, the user must /execute
16
- * again. projectJson is left intact for inspection.
17
- *
18
- * Pure logic; never touches Firestore. Caller persists the returned
19
- * `projectPatch` as one merge update.
20
- */
21
- import { IAgentProjectModel } from "../../models/agent.model";
22
- import { RegenCostEstimate } from "../credits/pricing";
23
- export type GlobalAction = "soften-music" | "add-cta" | "switch-persona";
24
- export interface GlobalActionContext {
25
- projectId: string;
26
- userId: string;
27
- }
28
- export interface GlobalActionSuccess {
29
- ok: true;
30
- /** Patch applied directly to agentProjects/{id} doc; caller writes one merge update. */
31
- projectPatch: Partial<IAgentProjectModel>;
32
- cost: RegenCostEstimate;
33
- details: Record<string, unknown>;
34
- }
35
- export interface GlobalActionError {
36
- ok: false;
37
- status?: number;
38
- error: string;
39
- code?: string;
40
- }
41
- export type GlobalActionResult = GlobalActionSuccess | GlobalActionError;
42
- /**
43
- * Per-action cost estimate. Mirrors what `estimateRegenCost` does for the
44
- * per-component path so the controller's pre-flight preview and the
45
- * worker's refund-on-failure path agree on a number.
46
- */
47
- export declare function estimateGlobalActionCost(action: GlobalAction, _params?: Record<string, unknown>): RegenCostEstimate;
48
- export declare function executeGlobalAction(action: GlobalAction, params: Record<string, unknown> | undefined, project: IAgentProjectModel, _ctx: GlobalActionContext): Promise<GlobalActionResult>;
49
- //# sourceMappingURL=globalActions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"globalActions.d.ts","sourceRoot":"","sources":["../../../src/services/agent/globalActions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AASH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAKL,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAQ5B,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG,SAAS,GAAG,gBAAgB,CAAC;AAEzE,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,IAAI,CAAC;IACT,wFAAwF;IACxF,YAAY,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC1C,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;AAWzE;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,iBAAiB,CA0BnB;AAED,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC3C,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,kBAAkB,CAAC,CA4Q7B"}