@clipwright/core 0.39.0 → 0.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (267) hide show
  1. package/dist/account-actors.d.ts +94 -2
  2. package/dist/account-actors.js +151 -34
  3. package/dist/account-actors.js.map +1 -1
  4. package/dist/actor-bounds.d.ts +3 -3
  5. package/dist/actor-bounds.js +3 -3
  6. package/dist/actor-bounds.js.map +1 -1
  7. package/dist/actors.d.ts +24 -2
  8. package/dist/actors.js +30 -9
  9. package/dist/actors.js.map +1 -1
  10. package/dist/ad-pause-trim.d.ts +21 -0
  11. package/dist/ad-pause-trim.js +16 -0
  12. package/dist/ad-pause-trim.js.map +1 -0
  13. package/dist/aspect.d.ts +5 -0
  14. package/dist/aspect.js +7 -0
  15. package/dist/aspect.js.map +1 -1
  16. package/dist/assets.d.ts +2 -1
  17. package/dist/assets.js +10 -11
  18. package/dist/assets.js.map +1 -1
  19. package/dist/billing-terms.d.ts +8 -0
  20. package/dist/broll-policy.js +2 -3
  21. package/dist/broll-policy.js.map +1 -1
  22. package/dist/caption-geometry.js +10 -8
  23. package/dist/caption-geometry.js.map +1 -1
  24. package/dist/contract-dispositions.d.ts +1575 -100
  25. package/dist/contract-dispositions.js +100 -14
  26. package/dist/contract-dispositions.js.map +1 -1
  27. package/dist/contracts/v1/workflow-brief.d.ts +10764 -2790
  28. package/dist/contracts/v1/workflow-brief.js +19 -1
  29. package/dist/contracts/v1/workflow-brief.js.map +1 -1
  30. package/dist/contracts/v1/workflow-catalog.d.ts +11612 -3536
  31. package/dist/contracts/v1/workflow-client.d.ts +5429 -1187
  32. package/dist/contracts/v1/workflow-client.js +9 -5
  33. package/dist/contracts/v1/workflow-client.js.map +1 -1
  34. package/dist/contracts/v1/workflow-execution.d.ts +242 -0
  35. package/dist/contracts/v1/workflow-execution.js +2 -2
  36. package/dist/contracts/v1/workflow-execution.js.map +1 -1
  37. package/dist/contracts/v1/workflow-next.d.ts +225 -0
  38. package/dist/contracts/v1/workflow-next.js +21 -0
  39. package/dist/contracts/v1/workflow-next.js.map +1 -0
  40. package/dist/contracts/v1/workflow-plan.d.ts +18556 -6429
  41. package/dist/contracts/v1/workflow-plan.js +2 -1
  42. package/dist/contracts/v1/workflow-plan.js.map +1 -1
  43. package/dist/contracts/v1/workflow-primitives.d.ts +20 -1
  44. package/dist/contracts/v1/workflow-primitives.js +8 -2
  45. package/dist/contracts/v1/workflow-primitives.js.map +1 -1
  46. package/dist/contracts/v1/workflow-run-read.d.ts +50 -0
  47. package/dist/creator-profile.d.ts +1 -0
  48. package/dist/creator-profile.js +13 -7
  49. package/dist/creator-profile.js.map +1 -1
  50. package/dist/design.d.ts +921 -0
  51. package/dist/design.js +183 -0
  52. package/dist/design.js.map +1 -0
  53. package/dist/edit-candidate.d.ts +2 -0
  54. package/dist/edit-candidate.js +3 -0
  55. package/dist/edit-candidate.js.map +1 -1
  56. package/dist/edit-faceless.js +2 -1
  57. package/dist/edit-faceless.js.map +1 -1
  58. package/dist/endpoint-notes.js +19 -0
  59. package/dist/endpoint-notes.js.map +1 -1
  60. package/dist/endpoints.js +21 -4
  61. package/dist/endpoints.js.map +1 -1
  62. package/dist/errors.d.ts +1 -1
  63. package/dist/errors.js +7 -0
  64. package/dist/errors.js.map +1 -1
  65. package/dist/face-billing.d.ts +39 -0
  66. package/dist/face-billing.js +11 -1
  67. package/dist/face-billing.js.map +1 -1
  68. package/dist/faceless-action-shots.d.ts +31 -0
  69. package/dist/faceless-action-shots.js +51 -0
  70. package/dist/faceless-action-shots.js.map +1 -0
  71. package/dist/faceless-media-record.d.ts +56 -0
  72. package/dist/faceless-media-record.js +6 -2
  73. package/dist/faceless-media-record.js.map +1 -1
  74. package/dist/faceless-price.d.ts +22 -0
  75. package/dist/faceless-price.js +27 -3
  76. package/dist/faceless-price.js.map +1 -1
  77. package/dist/faceless-public-plan.d.ts +10 -1
  78. package/dist/faceless-public-plan.js +4 -0
  79. package/dist/faceless-public-plan.js.map +1 -1
  80. package/dist/faceless-public.d.ts +5583 -184
  81. package/dist/faceless-public.js +114 -16
  82. package/dist/faceless-public.js.map +1 -1
  83. package/dist/feedback.js +1 -1
  84. package/dist/feedback.js.map +1 -1
  85. package/dist/generations-output.js +1 -1
  86. package/dist/generations-output.js.map +1 -1
  87. package/dist/generations.d.ts +1 -1
  88. package/dist/generations.js +2 -2
  89. package/dist/index.d.ts +10 -0
  90. package/dist/index.js +11 -0
  91. package/dist/index.js.map +1 -1
  92. package/dist/live-shot-kinds.d.ts +22 -0
  93. package/dist/live-shot-kinds.js +17 -0
  94. package/dist/live-shot-kinds.js.map +1 -0
  95. package/dist/long-form-profile.d.ts +1 -1
  96. package/dist/long-form-profile.js +1 -1
  97. package/dist/mcp-ugc-descriptions.d.ts +32 -0
  98. package/dist/mcp-ugc-descriptions.js +112 -0
  99. package/dist/mcp-ugc-descriptions.js.map +1 -0
  100. package/dist/motion-styles.d.ts +54 -0
  101. package/dist/motion-styles.js +67 -0
  102. package/dist/motion-styles.js.map +1 -0
  103. package/dist/moves.d.ts +222 -0
  104. package/dist/moves.js +81 -0
  105. package/dist/moves.js.map +1 -0
  106. package/dist/music.d.ts +18 -0
  107. package/dist/music.js +29 -0
  108. package/dist/music.js.map +1 -0
  109. package/dist/openapi.d.ts +3 -1
  110. package/dist/openapi.js +32 -5
  111. package/dist/openapi.js.map +1 -1
  112. package/dist/parts-pricing.d.ts +14 -3
  113. package/dist/parts-pricing.js +23 -5
  114. package/dist/parts-pricing.js.map +1 -1
  115. package/dist/prices.d.ts +6 -1
  116. package/dist/prices.js +56 -17
  117. package/dist/prices.js.map +1 -1
  118. package/dist/reference-analysis.d.ts +134 -0
  119. package/dist/reference-analysis.js +45 -33
  120. package/dist/reference-analysis.js.map +1 -1
  121. package/dist/reference-display.js +3 -0
  122. package/dist/reference-display.js.map +1 -1
  123. package/dist/reference-kinds.d.ts +3 -2
  124. package/dist/reference-kinds.js +2 -1
  125. package/dist/reference-kinds.js.map +1 -1
  126. package/dist/reference-profile.d.ts +437 -0
  127. package/dist/reference-profile.js +46 -5
  128. package/dist/reference-profile.js.map +1 -1
  129. package/dist/reference-staging.d.ts +54 -2
  130. package/dist/reference-staging.js +28 -5
  131. package/dist/reference-staging.js.map +1 -1
  132. package/dist/reference-text-spans.d.ts +26 -0
  133. package/dist/reference-text-spans.js +76 -0
  134. package/dist/reference-text-spans.js.map +1 -0
  135. package/dist/resolved-timeline.d.ts +173 -0
  136. package/dist/resolved-timeline.js +16 -5
  137. package/dist/resolved-timeline.js.map +1 -1
  138. package/dist/run-media.d.ts +5 -0
  139. package/dist/run-media.js +17 -0
  140. package/dist/run-media.js.map +1 -0
  141. package/dist/run-static-warnings.js +12 -3
  142. package/dist/run-static-warnings.js.map +1 -1
  143. package/dist/runs.d.ts +49 -0
  144. package/dist/runs.js +5 -0
  145. package/dist/runs.js.map +1 -1
  146. package/dist/scene-graph.d.ts +547 -0
  147. package/dist/scene-graph.js +296 -0
  148. package/dist/scene-graph.js.map +1 -0
  149. package/dist/scene-place.d.ts +2 -0
  150. package/dist/scene-place.js +6 -0
  151. package/dist/scene-place.js.map +1 -1
  152. package/dist/semantic-inserts.d.ts +2 -1
  153. package/dist/semantic-inserts.js +4 -4
  154. package/dist/semantic-inserts.js.map +1 -1
  155. package/dist/skills.d.ts +11743 -5428
  156. package/dist/skills.js +248 -59
  157. package/dist/skills.js.map +1 -1
  158. package/dist/templates/chart.d.ts +35 -0
  159. package/dist/templates/chart.js +38 -0
  160. package/dist/templates/chart.js.map +1 -0
  161. package/dist/templates/chat-window.d.ts +58 -0
  162. package/dist/templates/chat-window.js +57 -0
  163. package/dist/templates/chat-window.js.map +1 -0
  164. package/dist/templates/compare.d.ts +10 -2
  165. package/dist/templates/compare.js +13 -9
  166. package/dist/templates/compare.js.map +1 -1
  167. package/dist/templates/hand-title.d.ts +32 -0
  168. package/dist/templates/hand-title.js +47 -0
  169. package/dist/templates/hand-title.js.map +1 -0
  170. package/dist/templates/index.d.ts +33 -7
  171. package/dist/templates/index.js +95 -51
  172. package/dist/templates/index.js.map +1 -1
  173. package/dist/templates/lower-third.d.ts +11 -0
  174. package/dist/templates/lower-third.js +8 -3
  175. package/dist/templates/lower-third.js.map +1 -1
  176. package/dist/templates/notification.d.ts +24 -2
  177. package/dist/templates/notification.js +21 -12
  178. package/dist/templates/notification.js.map +1 -1
  179. package/dist/templates/phone-screen.d.ts +37 -0
  180. package/dist/templates/phone-screen.js +41 -0
  181. package/dist/templates/phone-screen.js.map +1 -0
  182. package/dist/templates/pointer-chips.d.ts +40 -0
  183. package/dist/templates/pointer-chips.js +53 -0
  184. package/dist/templates/pointer-chips.js.map +1 -0
  185. package/dist/templates/quote.d.ts +2 -2
  186. package/dist/templates/quote.js +5 -5
  187. package/dist/templates/quote.js.map +1 -1
  188. package/dist/templates/race.d.ts +32 -0
  189. package/dist/templates/race.js +43 -0
  190. package/dist/templates/race.js.map +1 -0
  191. package/dist/templates/size.d.ts +20 -0
  192. package/dist/templates/size.js +14 -0
  193. package/dist/templates/size.js.map +1 -1
  194. package/dist/templates/slot.js +1 -1
  195. package/dist/templates/slot.js.map +1 -1
  196. package/dist/templates/sounds.d.ts +221 -4
  197. package/dist/templates/sounds.js +40 -10
  198. package/dist/templates/sounds.js.map +1 -1
  199. package/dist/templates/terminal.d.ts +46 -0
  200. package/dist/templates/terminal.js +46 -0
  201. package/dist/templates/terminal.js.map +1 -0
  202. package/dist/templates/video-grid.d.ts +52 -0
  203. package/dist/templates/video-grid.js +50 -0
  204. package/dist/templates/video-grid.js.map +1 -0
  205. package/dist/templates/word-fill.d.ts +22 -0
  206. package/dist/templates/word-fill.js +29 -0
  207. package/dist/templates/word-fill.js.map +1 -0
  208. package/dist/templates/word-title.d.ts +24 -0
  209. package/dist/templates/word-title.js +33 -0
  210. package/dist/templates/word-title.js.map +1 -0
  211. package/dist/trend-search.d.ts +336 -0
  212. package/dist/trend-search.js +307 -0
  213. package/dist/trend-search.js.map +1 -0
  214. package/dist/ugc-call.d.ts +4 -4
  215. package/dist/ugc-call.js +4 -4
  216. package/dist/ugc-call.js.map +1 -1
  217. package/dist/ugc-framing.d.ts +3 -2
  218. package/dist/ugc-framing.js +4 -3
  219. package/dist/ugc-framing.js.map +1 -1
  220. package/dist/ugc-interview.d.ts +3 -3
  221. package/dist/ugc-interview.js +3 -3
  222. package/dist/ugc-interview.js.map +1 -1
  223. package/dist/ugc-layers.d.ts +43 -7
  224. package/dist/ugc-layers.js +43 -11
  225. package/dist/ugc-layers.js.map +1 -1
  226. package/dist/ugc-scenes.d.ts +40 -0
  227. package/dist/ugc-scenes.js +35 -0
  228. package/dist/ugc-scenes.js.map +1 -0
  229. package/dist/uploads.d.ts +1 -1
  230. package/dist/uploads.js +9 -9
  231. package/dist/uploads.js.map +1 -1
  232. package/dist/voice-admission.d.ts +4767 -836
  233. package/dist/voice-catalog-data.d.ts +1 -0
  234. package/dist/voice-catalog.d.ts +2 -0
  235. package/dist/voice-catalog.generated.json +286 -0
  236. package/dist/voice-catalog.js +1 -0
  237. package/dist/voice-catalog.js.map +1 -1
  238. package/dist/voice-pace.generated.json +65 -0
  239. package/dist/voices.d.ts +1 -0
  240. package/dist/voices.js +2 -1
  241. package/dist/voices.js.map +1 -1
  242. package/dist/workflows/index.d.ts +2 -0
  243. package/dist/workflows/index.js +1 -0
  244. package/dist/workflows/index.js.map +1 -1
  245. package/dist/workflows/methods/faceless-explainer.d.ts +2275 -188
  246. package/dist/workflows/methods/kinetic-launch.d.ts +2275 -188
  247. package/dist/workflows/methods/product-image-story.d.ts +2275 -188
  248. package/dist/workflows/methods/reference-remake.d.ts +2275 -188
  249. package/dist/workflows/methods/shared.d.ts +2275 -188
  250. package/dist/workflows/methods/ugc-faq-answer.d.ts +2275 -188
  251. package/dist/workflows/methods/ugc-product-intro.d.ts +2275 -188
  252. package/dist/workflows/methods/website-proof-demo.d.ts +2275 -188
  253. package/dist/workflows/motion-director.d.ts +59 -0
  254. package/dist/workflows/motion-director.js +118 -0
  255. package/dist/workflows/motion-director.js.map +1 -0
  256. package/dist/workflows/reference-remake.d.ts +1172 -2
  257. package/dist/workflows/reference-remake.js +940 -115
  258. package/dist/workflows/reference-remake.js.map +1 -1
  259. package/dist/workflows/remake-chooser.d.ts +16 -0
  260. package/dist/workflows/remake-chooser.js +10 -0
  261. package/dist/workflows/remake-chooser.js.map +1 -0
  262. package/dist/workflows/remake-motion.d.ts +100 -0
  263. package/dist/workflows/remake-motion.js +237 -0
  264. package/dist/workflows/remake-motion.js.map +1 -0
  265. package/dist/workflows/validate.js +1 -1
  266. package/dist/workflows/validate.js.map +1 -1
  267. package/package.json +5 -1
@@ -3,13 +3,20 @@ import { editSummaryWire, revisionBilling } from "./edit-billing.js";
3
3
  import { editDocument } from "./edit-document.js";
4
4
  import { runId } from "./runs.js";
5
5
  import { uploadResponse } from "./uploads.js";
6
- import { MAX_URL_LENGTH } from "./skills.js";
6
+ import { MAX_URL_LENGTH, motionStyle, ugcScene, ugcTemplate } from "./skills.js";
7
+ import { MOTION_STYLE_UNUSED_WARNING, motionStyleAsked, motionStyleHasCanvas, motionStyleRefusals } from "./motion-styles.js";
8
+ import { MAX_SCENES, sceneRefusals } from "./ugc-scenes.js";
9
+ import { MAX_MOVES, moveRefusals, MOVES_DESCRIPTION, ugcMove } from "./moves.js";
10
+ import { MAX_TEMPLATES, templateMediaOf, templateRefusals } from "./templates/index.js";
7
11
  import { FACELESS_REJECTED_FIELDS } from "./contract-dispositions.js";
8
- import { FACELESS_MAX_OUTPUT_FRAMES, FACELESS_MAX_SELECTED_SECONDS, FACELESS_MIN_OUTPUT_FRAMES, FACELESS_MIN_SELECTED_SECONDS, facelessQuote } from "./faceless-price.js";
12
+ import { FACELESS_MAX_OUTPUT_FRAMES, FACELESS_MAX_SELECTED_SECONDS, FACELESS_MAX_SHOTS, FACELESS_MIN_OUTPUT_FRAMES, FACELESS_MIN_SELECTED_SECONDS, facelessQuote } from "./faceless-price.js";
9
13
  import { DEFAULT_FACELESS_VOICE } from "./faceless-voices.js";
10
14
  import { resolveFacelessCustomerAnchors } from "./faceless-customer-anchors.js";
11
15
  import { FACELESS_TRANSITION_LOOKS } from "./faceless-media-record.js";
12
16
  import { VOICE_NAME_PATTERN } from "./voices.js";
17
+ import { FACELESS_MUSIC_REFUSAL, musicRequest } from "./music.js";
18
+ import { facelessSoundRefusals, facelessTemplateSounds, mcpTemplateSounds } from "./templates/sounds.js";
19
+ import { FACELESS_SHOT_TRANSITIONS, facelessActionShotRefusals } from "./faceless-action-shots.js";
13
20
  const qualifiedImageUrl = uploadResponse.shape.url.max(MAX_URL_LENGTH).refine((value) => {
14
21
  const host = new URL(value).hostname.toLowerCase();
15
22
  return host !== "localhost" && !host.endsWith(".localhost") &&
@@ -30,7 +37,7 @@ const customIssue = "custom";
30
37
  const transitionLook = z.enum(FACELESS_TRANSITION_LOOKS);
31
38
  const scriptTransitions = z.strictObject({
32
39
  look: transitionLook,
33
- at: z.union([z.literal("scene_changes"), z.array(z.strictObject({ anchor: facelessSceneAnchor })).min(1).max(30)]).default("scene_changes"),
40
+ at: z.union([z.literal("scene_changes"), z.array(z.strictObject({ anchor: facelessSceneAnchor })).min(1).max(100)]).default("scene_changes"),
34
41
  });
35
42
  // A brief's narration is written by the run, so no word of it can be named in advance.
36
43
  const briefTransitions = z.strictObject({
@@ -38,25 +45,92 @@ const briefTransitions = z.strictObject({
38
45
  at: z.literal("scene_changes", { error: "transitions.at word anchors need input_mode script; a brief takes \"scene_changes\"" })
39
46
  .default("scene_changes"),
40
47
  });
48
+ /** A brief that names no transitions gets a flash on every scene change at admission (#1067); `false` keeps plain cuts. */
49
+ export const FACELESS_BRIEF_DEFAULT_TRANSITIONS = Object.freeze({ look: "flash", at: "scene_changes" });
50
+ /** `false` or the object; a union names no branch on its own, so the refusal carries the object's first issue with its path. */
51
+ const orPlainCuts = (schema) => z.union([z.literal(false), schema], { error: issue => {
52
+ if (issue.input === null || typeof issue.input !== "object" || Array.isArray(issue.input))
53
+ return "transitions is false (plain cuts) or { look, at }";
54
+ const inner = schema.safeParse(issue.input).error?.issues[0];
55
+ return inner && `${["transitions", ...inner.path.map(String)].join(".")}: ${inner.message}`;
56
+ } });
57
+ /** Sound refusals against the look the run draws: a brief without the field draws the default flash. */
58
+ function refuseSounds(input, context) {
59
+ const look = input.transitions === undefined && input.input_mode === "brief" ? FACELESS_BRIEF_DEFAULT_TRANSITIONS.look
60
+ : input.transitions ? input.transitions.look : undefined;
61
+ for (const { path, message } of facelessSoundRefusals({ ...input, look }))
62
+ context.addIssue({ code: customIssue, path, message });
63
+ }
41
64
  const common = {
42
65
  duration_seconds: z.number().min(FACELESS_MIN_SELECTED_SECONDS).max(FACELESS_MAX_SELECTED_SECONDS).refine((seconds) => Number.isInteger(seconds * 25), "duration_seconds must align to a 25 fps frame boundary"),
43
66
  style_reference: qualifiedImageUrl.optional(),
44
67
  character_reference: qualifiedImageUrl.optional(),
45
- character_details: z.string().trim().min(1).max(400).optional(),
46
- scene_images: z.array(facelessCustomerSceneImage).max(30).optional(),
68
+ character_details: z.string().trim().min(1).max(2000).optional(),
69
+ scene_images: z.array(facelessCustomerSceneImage).max(60).optional(),
47
70
  captions: z.boolean().default(true),
48
71
  // A name form only: the server checks the name, so the list grows without a client release.
49
72
  voice: z.string({ error: "voice must be a voice name from list_voices, as a string" })
50
73
  .regex(VOICE_NAME_PATTERN, "voice is not a voice name: take one from list_voices with skill=make_faceless")
51
74
  .optional(),
52
75
  voice_id: z.never({ error: FACELESS_REJECTED_FIELDS.voice_id.message }).optional(),
76
+ // Opt-in, so a run that never asked keeps its silent scene changes (rule 3).
77
+ edit_sounds: z.boolean().optional(),
78
+ template_sounds: facelessTemplateSounds.optional(),
79
+ music: musicRequest.optional(),
80
+ // A style dresses the captions, templates and scenes over the pictures (#1123); its spans sit on a script's words.
81
+ motion_style: motionStyle.optional(),
53
82
  };
83
+ /** The line a faceless quote and run name when a style has nothing to dress: captions off and no templates or scenes (#1123). */
84
+ export function facelessMotionStyleWarnings(input) {
85
+ return motionStyleAsked(input) && !motionStyleHasCanvas({ ...input, captions: input.captions !== false }) ? [MOTION_STYLE_UNUSED_WARNING] : [];
86
+ }
87
+ /** Templates over the pictures (#1113): kinds on the script's words; a slot that shows a picture or clip of the customer's is refused. */
88
+ export const FACELESS_TEMPLATE_MEDIA_REFUSAL = "a template that shows your picture or clip (asset_id) is not available on make_faceless; " +
89
+ "drop that slot or the template";
90
+ function refuseTemplates(input, context) {
91
+ if (!input.templates)
92
+ return;
93
+ for (const media of templateMediaOf(input.templates)) {
94
+ context.addIssue({ code: customIssue, path: ["templates", media.index, "data", media.slot], message: FACELESS_TEMPLATE_MEDIA_REFUSAL });
95
+ }
96
+ for (const { path, message } of templateRefusals({ script: input.script, templates: input.templates, aspect_ratio: "9:16" })) {
97
+ context.addIssue({ code: customIssue, path, message });
98
+ }
99
+ }
100
+ /** Action shots (#1113): a moving clip from the picture under the named words, on those words, instead of the still. */
101
+ export const facelessActionShot = z.strictObject({
102
+ id: z.string().trim().min(1).max(64),
103
+ anchor: facelessSceneAnchor,
104
+ action: z.string().trim().min(1).max(1500),
105
+ transition: z.enum(FACELESS_SHOT_TRANSITIONS).optional(),
106
+ });
107
+ export const FACELESS_SHOTS_BRIEF_REFUSAL = "shots need input_mode script: they sit on the narration's words";
108
+ export const FACELESS_SHOTS_DISABLED_MESSAGE = "shots are not available on make_faceless right now; omit shots";
109
+ export const FACELESS_SCENES_DISABLED_MESSAGE = "scenes are not available on make_faceless right now; omit scenes";
54
110
  const scriptInput = z.object({ ...common,
55
111
  input_mode: z.literal("script"),
56
112
  script: z.string().trim().min(1).max(10_000),
57
- transitions: scriptTransitions.optional(),
113
+ transitions: orPlainCuts(scriptTransitions).optional(),
114
+ templates: z.array(ugcTemplate).min(1).max(MAX_TEMPLATES).optional(),
115
+ shots: z.array(facelessActionShot).min(1).max(FACELESS_MAX_SHOTS, `at most ${FACELESS_MAX_SHOTS} shots a video`).optional(),
116
+ scenes: z.array(ugcScene).min(1).max(MAX_SCENES).optional(),
117
+ moves: z.array(ugcMove).min(1).max(MAX_MOVES).optional(),
58
118
  }).strict().superRefine((input, context) => {
59
- if (!Array.isArray(input.transitions?.at))
119
+ refuseSounds(input, context);
120
+ refuseTemplates(input, context);
121
+ for (const { path, message } of moveRefusals({ script: input.script, moves: input.moves }))
122
+ context.addIssue({ code: customIssue, path, message });
123
+ // Scenes sit on the script's words as on make_ugc and share the templates' ids (#1113).
124
+ for (const { path, message } of sceneRefusals({ script: input.script, scenes: input.scenes, templates: input.templates })) {
125
+ context.addIssue({ code: customIssue, path, message });
126
+ }
127
+ for (const { path, message } of motionStyleRefusals(input))
128
+ context.addIssue({ code: customIssue, path, message });
129
+ if (input.shots)
130
+ for (const { path, message } of facelessActionShotRefusals({ script: input.script, shots: input.shots,
131
+ scene_images: input.scene_images }))
132
+ context.addIssue({ code: customIssue, path, message });
133
+ if (!input.transitions || !Array.isArray(input.transitions.at))
60
134
  return;
61
135
  for (const [index, { anchor }] of input.transitions.at.entries()) {
62
136
  try {
@@ -72,9 +146,19 @@ const scriptInput = z.object({ ...common,
72
146
  });
73
147
  const briefInput = z.object({ ...common,
74
148
  input_mode: z.literal("brief"),
75
- brief: z.string().trim().min(1).max(5_000),
76
- transitions: briefTransitions.optional(),
77
- }).strict();
149
+ brief: z.string().trim().min(1).max(10_000),
150
+ transitions: orPlainCuts(briefTransitions).optional(),
151
+ // A brief's narration is written by the run, so no template can name its words.
152
+ templates: z.never({ error: "templates need input_mode script: they sit on the narration's words" }).optional(),
153
+ shots: z.never({ error: FACELESS_SHOTS_BRIEF_REFUSAL }).optional(),
154
+ scenes: z.never({ error: "scenes need input_mode script: they sit on the narration's words" }).optional(),
155
+ moves: z.never({ error: "moves need input_mode script: they sit on the narration's words" }).optional(),
156
+ }).strict().superRefine((input, context) => {
157
+ refuseSounds(input, context);
158
+ if (input.motion_style?.spans)
159
+ context.addIssue({ code: customIssue, path: ["motion_style", "spans"],
160
+ message: "motion_style spans need input_mode script: they sit on the narration's words; a brief takes style only" });
161
+ });
78
162
  export const makeFacelessInput = z.discriminatedUnion("input_mode", [scriptInput, briefInput]);
79
163
  /** The stored input of a revision: the request as resolved, and what admission froze about it. */
80
164
  export const facelessRevisionInput = z.strictObject({
@@ -85,9 +169,12 @@ export const facelessRevisionInput = z.strictObject({
85
169
  /** What a `make_faceless` run stores as its input: a generate request or a revision. */
86
170
  export const facelessStoredInput = z.discriminatedUnion("input_mode", [scriptInput, briefInput, facelessRevisionInput]);
87
171
  /** Admission and the run validate accepted input without canonicalizing its narration again. */
172
+ /** A brief's default flash is frozen here, so the stored input names what the video draws; a stored input is read as stored. */
88
173
  export function parseFacelessInputPreservingScript(input) {
89
174
  const parsed = makeFacelessInput.parse(input);
90
- return parsed.input_mode === "script" ? { ...parsed, script: input.script } : parsed;
175
+ if (parsed.input_mode === "script")
176
+ return { ...parsed, script: input.script };
177
+ return parsed.transitions === undefined ? { ...parsed, transitions: { ...FACELESS_BRIEF_DEFAULT_TRANSITIONS } } : parsed;
91
178
  }
92
179
  export function parseFacelessStoredInputPreservingScript(input) {
93
180
  const parsed = facelessStoredInput.parse(input);
@@ -108,16 +195,27 @@ export const offeredFacelessInputShape = {
108
195
  duration_seconds: common.duration_seconds
109
196
  .describe("Selected length, 30 to 90 seconds, on a 1/25 s frame boundary. The video ends with its narration and runs at least 25 seconds, usually at most a quarter past the selection and 90 seconds; when the narration takes longer, the video runs to its end. A video more than 5 seconds longer than the selection says so in warnings[]. The charge never exceeds the quote. A script is accepted when its estimated length is 21 seconds to the selection plus 5, at most 90."),
110
197
  style_reference: common.style_reference
111
- .describe("Optional public https image whose visual style the scenes follow."),
198
+ .describe("Public https image whose visual style the scenes follow."),
112
199
  character_reference: common.character_reference
113
- .describe("Optional public https image of a person or figure to keep consistent across scenes."),
200
+ .describe("Public https image of a person or figure to keep consistent across scenes."),
114
201
  character_details: common.character_details
115
- .describe("Optional fixed visual details for the referenced person or figure, such as hairstyle, clothing and absent accessories; applied to every generated scene."),
202
+ .describe("Fixed visual details of that person or figure, such as hair, clothing and absent accessories; kept in every generated scene."),
116
203
  scene_images: common.scene_images
117
- .describe("Optional images of your own, each placed at a word range or quote of the narration."),
204
+ .describe("Your images, each placed at a word range or quote of the narration."),
118
205
  captions: common.captions.describe("Burned-in captions; on by default."),
119
206
  transitions: scriptInput.shape.transitions
120
- .describe("Optional flash or light leak on the cuts: every scene change, or the one nearest each anchor (script only). No extra charge."),
207
+ .describe("Flash or light leak on the cuts, with its sound: every scene change, or the one nearest each anchor (script only). " +
208
+ "Omitted on a brief: a flash on every scene change; false for plain cuts. No extra charge."),
209
+ edit_sounds: common.edit_sounds.describe("A low sound on every scene change, its peak on the cut; template_sounds.edit picks it. Price unchanged."),
210
+ // The slim form keeps tools/list small; the client parses with makeFacelessInput, which checks beats and names.
211
+ template_sounds: mcpTemplateSounds.optional().describe("false for no sounds, or { flash, whoosh (light leak), edit: name } from list_template_sounds."),
212
+ music: common.music.describe(`REJECTED for now: ${FACELESS_MUSIC_REFUSAL}. Before any charge.`),
213
+ // No shape here keeps tools/list small: the items are make_ugc's, which the client and the server check strictly.
214
+ templates: z.unknown().optional().describe("Script only: as make_ugc, no asset_id. Free."),
215
+ shots: z.unknown().optional().describe("Script only: 1-3 {id, anchor, action}, 5 s max each."),
216
+ scenes: z.unknown().optional().describe("Script only: as make_ugc scenes."),
217
+ motion_style: z.unknown().optional().describe("As make_ugc motion_style; spans script only. Free."),
218
+ moves: z.unknown().optional().describe(`Script only: ${MOVES_DESCRIPTION}`),
121
219
  voice: common.voice
122
220
  .describe("Narration voice: a name from list_voices with skill=make_faceless (kind faceless_voice). " +
123
221
  `Omitted means ${DEFAULT_FACELESS_VOICE}. Choose a voice in the language of the narration: a voice reads any ` +
@@ -1 +1 @@
1
- {"version":3,"file":"faceless-public.js","sourceRoot":"","sources":["../src/faceless-public.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"faceless-public.js","sourceRoot":"","sources":["../src/faceless-public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,2BAA2B,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9H,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,6BAA6B,EAC/I,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACzG,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAEnG,MAAM,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;IACtF,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IACnD,OAAO,IAAI,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;QACzD,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,OAAO;QACxC,CAAC,0DAA0D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3E,CAAC,EAAE,gDAAgD,CAAC,CAAC;AAErD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC;IACzC,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;SAC1F,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC;IAC9D,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;CACvH,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,SAAS,EAAE,iBAAiB;IAC5B,MAAM,EAAE,mBAAmB;CAC5B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,WAAW,GAAG,QAAiB,CAAC;AACtC,qGAAqG;AACrG,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;AACzD,MAAM,iBAAiB,GAAG,CAAC,CAAC,YAAY,CAAC;IACvC,IAAI,EAAE,cAAc;IACpB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;CAC7I,CAAC,CAAC;AAEH,uFAAuF;AACvF,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,CAAC;IACtC,IAAI,EAAE,cAAc;IACpB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,qFAAqF,EAAE,CAAC;SAC7H,OAAO,CAAC,eAAe,CAAC;CAC5B,CAAC,CAAC;AACH,2HAA2H;AAC3H,MAAM,CAAC,MAAM,kCAAkC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,eAAe,EAAW,CAAC,CAAC;AACjH,gIAAgI;AAChI,MAAM,WAAW,GAAG,CAAsB,MAAS,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE;QAC3G,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,OAAO,mDAAmD,CAAC;QACtJ,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7D,OAAO,KAAK,IAAI,GAAG,CAAC,aAAa,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9F,CAAC,EAAE,CAAC,CAAC;AACL,wGAAwG;AACxG,SAAS,YAAY,CAAC,KACO,EAAE,OAAwB;IACrD,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,kCAAkC,CAAC,IAAI;QACpH,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,qBAAqB,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;QAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AACpI,CAAC;AAED,MAAM,MAAM,GAAG;IACb,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,EAAE,CAAC,EACnJ,wDAAwD,CAAC;IAC3D,eAAe,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IAC7C,mBAAmB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IACjD,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;IAChE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACnC,4FAA4F;IAC5F,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,0DAA0D,EAAE,CAAC;SACnF,KAAK,CAAC,kBAAkB,EAAE,+EAA+E,CAAC;SAC1G,QAAQ,EAAE;IACb,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,wBAAwB,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IAClF,6EAA6E;IAC7E,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,eAAe,EAAE,sBAAsB,CAAC,QAAQ,EAAE;IAClD,KAAK,EAAE,YAAY,CAAC,QAAQ,EAAE;IAC9B,mHAAmH;IACnH,YAAY,EAAE,WAAW,CAAC,QAAQ,EAAE;CACrC,CAAC;AAEF,iIAAiI;AACjI,MAAM,UAAU,2BAA2B,CAAC,KAC2C;IACrF,OAAO,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACjJ,CAAC;AAED,0IAA0I;AAC1I,MAAM,CAAC,MAAM,+BAA+B,GAAG,2FAA2F;IACxI,gCAAgC,CAAC;AACnC,SAAS,eAAe,CAAC,KAAgF,EAAE,OAAwB;IACjI,IAAI,CAAC,KAAK,CAAC,SAAS;QAAE,OAAO;IAC7B,KAAK,MAAM,KAAK,IAAI,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC,CAAC;IAC1I,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAC7H,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAED,wHAAwH;AACxH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC/C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IACpC,MAAM,EAAE,mBAAmB;IAC3B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IAC1C,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE;CACzD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,iEAAiE,CAAC;AAC9G,MAAM,CAAC,MAAM,+BAA+B,GAAG,gEAAgE,CAAC;AAChH,MAAM,CAAC,MAAM,gCAAgC,GAAG,kEAAkE,CAAC;AAEnH,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM;IACtC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC/B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;IAC5C,WAAW,EAAE,WAAW,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;IACtD,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;IACpE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,kBAAkB,EAAE,WAAW,kBAAkB,gBAAgB,CAAC,CAAC,QAAQ,EAAE;IAC3H,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE;IAC3D,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE;CACzD,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACzC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7B,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;QAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACnJ,wFAAwF;IACxF,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC;QAC1H,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,mBAAmB,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACnH,IAAI,KAAK,CAAC,KAAK;QAAE,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,0BAA0B,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK;YACpH,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;YAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9F,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;QAAE,OAAO;IACvE,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;QACjE,IAAI,CAAC;YAAC,8BAA8B,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAAC,CAAC;QAClF,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC;gBAChF,OAAO,EAAE,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,2BAA2B;oBAC9E,CAAC,CAAC,iFAAiF;oBACnF,CAAC,CAAC,yCAAyC,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AACH,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM;IACrC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAC9B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;IAC3C,WAAW,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;IACrD,gFAAgF;IAChF,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,qEAAqE,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC/G,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC,CAAC,QAAQ,EAAE;IAClE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,kEAAkE,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzG,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,iEAAiE,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxG,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACzC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7B,IAAI,KAAK,CAAC,YAAY,EAAE,KAAK;QAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,cAAc,EAAE,OAAO,CAAC;YAClG,OAAO,EAAE,wGAAwG,EAAE,CAAC,CAAC;AACzH,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC;AAI/F,kGAAkG;AAClG,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,YAAY,CAAC;IAClD,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IACjC,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;IAC1E,iBAAiB,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;CACvI,CAAC,CAAC;AAGH,wFAAwF;AACxF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,qBAAqB,CAAC,CAAC,CAAC;AAGxH,gGAAgG;AAChG,gIAAgI;AAChI,MAAM,UAAU,kCAAkC,CAAC,KAAc;IAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAG,KAA4B,CAAC,MAAM,EAAE,CAAC;IACvG,OAAO,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,EAAE,GAAG,kCAAkC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AAC3H,CAAC;AACD,MAAM,UAAU,wCAAwC,CAAC,KAAc;IACrE,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAChD,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAG,KAA4B,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/G,CAAC;AAED,kFAAkF;AAClF,MAAM,CAAC,MAAM,mBAAmB,GAAG,gCAAgC,CAAC;AACpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,8BAA8B,CAAC;AAEhE,0FAA0F;AAC1F,oGAAoG;AACpG,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;SACpC,QAAQ,CAAC,oJAAoJ,CAAC;IACjK,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;SACxC,QAAQ,CAAC,0GAA0G,CAAC;IACvH,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;SACrC,QAAQ,CAAC,qIAAqI,CAAC;IAClJ,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;SACtC,QAAQ,CAAC,4cAA4c,CAAC;IACzd,eAAe,EAAE,MAAM,CAAC,eAAe;SACpC,QAAQ,CAAC,0DAA0D,CAAC;IACvE,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;SAC5C,QAAQ,CAAC,4EAA4E,CAAC;IACzF,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;SACxC,QAAQ,CAAC,8HAA8H,CAAC;IAC3I,YAAY,EAAE,MAAM,CAAC,YAAY;SAC9B,QAAQ,CAAC,qEAAqE,CAAC;IAClF,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IACxE,WAAW,EAAE,WAAW,CAAC,KAAK,CAAC,WAAW;SACvC,QAAQ,CAAC,qHAAqH;QAC7H,2FAA2F,CAAC;IAChG,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,yGAAyG,CAAC;IACnJ,gHAAgH;IAChH,eAAe,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+FAA+F,CAAC;IACvJ,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,qBAAqB,sBAAsB,sBAAsB,CAAC;IAC/F,kHAAkH;IAClH,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IAC1F,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC9F,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IAC3E,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IACnG,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,iBAAiB,EAAE,CAAC;IAC3E,KAAK,EAAE,MAAM,CAAC,KAAK;SAChB,QAAQ,CAAC,2FAA2F;QACnG,iBAAiB,sBAAsB,uEAAuE;QAC9G,gHAAgH;QAChH,sCAAsC,CAAC;CAC5C,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAsB,EAAE,CAChE,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,GAAG,CAAC;IAC1C,CAAC,CAAC,wBAAwB,CAAC,GAA4C,CAAC,CAAC,OAAO;IAChF,CAAC,CAAC,SAAS,CAAC;AAEhB,wFAAwF;AACxF,wDAAwD;AACxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,YAAY,CAAC,yBAAyB,EAAE;IAC5E,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,KAAK,CAAC,IAAI,KAAK,mBAAmB;QAChC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,+BAA+B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1G,CAAC,CAAC,SAAS;CAChB,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAChC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,0BAA0B,CAAC;IAC9F,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAClC,CAAC,CAAC,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC,MAAM,CAAC;IACxD,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;IACjC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACzC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACpC,CAAC,CAAC,MAAM,EAAE,CAAC"}
package/dist/feedback.js CHANGED
@@ -23,7 +23,7 @@ export const feedbackResponse = z.object({
23
23
  });
24
24
  export const SEND_FEEDBACK_DESCRIPTION = "Tell Clipwright what is missing or wrong. Call it when no tool does what the user asked (kind missing_capability), " +
25
25
  "or when an answer was confusing (confusing), wrong (wrong_result) or far too slow (slow), instead of rephrasing the " +
26
- "request and giving up. Say what the user wanted, what you tried and what came back; pass run_id when it is about a run. " +
26
+ "request and giving up. " +
27
27
  "We read every one; when we reply, get_account lists the reply under support_replies with this feedback_id. " +
28
28
  "Free, spends nothing. Sending the same kind, text and run again within 24 hours answers the same " +
29
29
  `feedback_id. ${FEEDBACK_PER_HOUR} per hour per account.`;
@@ -1 +1 @@
1
- {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../src/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAElC,4HAA4H;AAC5H,iGAAiG;AAEjG,MAAM,CAAC,MAAM,aAAa,GAAG,cAAc,CAAC;AAE5C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,oBAAoB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,CAAU,CAAC;AAGnG,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAC5C,iHAAiH;AACjH,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAC5C,yGAAyG;AACzG,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,GAAG,IAAI,CAAC;AAExD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,YAAY,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,CACnC,yGAAyG;QACzG,6FAA6F,CAAC;IAChG,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uBAAuB,CAAC;SACxD,QAAQ,CAAC,0EAA0E,CAAC;IACvF,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;CAClE,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC1B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,yBAAyB,GACpC,qHAAqH;IACrH,sHAAsH;IACtH,0HAA0H;IAC1H,6GAA6G;IAC7G,mGAAmG;IACnG,gBAAgB,iBAAiB,wBAAwB,CAAC"}
1
+ {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../src/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAElC,4HAA4H;AAC5H,iGAAiG;AAEjG,MAAM,CAAC,MAAM,aAAa,GAAG,cAAc,CAAC;AAE5C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,oBAAoB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,CAAU,CAAC;AAGnG,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAC5C,iHAAiH;AACjH,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAC5C,yGAAyG;AACzG,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,GAAG,IAAI,CAAC;AAExD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,YAAY,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,CACnC,yGAAyG;QACzG,6FAA6F,CAAC;IAChG,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,uBAAuB,CAAC;SACxD,QAAQ,CAAC,0EAA0E,CAAC;IACvF,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;CAClE,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC1B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,yBAAyB,GACpC,qHAAqH;IACrH,sHAAsH;IACtH,yBAAyB;IACzB,6GAA6G;IAC7G,mGAAmG;IACnG,gBAAgB,iBAAiB,wBAAwB,CAAC"}
@@ -11,6 +11,6 @@ export const runGeneration = z.strictObject({
11
11
  width: z.number().int().positive(),
12
12
  height: z.number().int().positive(),
13
13
  duration_s: z.number().positive().nullable(),
14
- reusable_until: z.string().datetime(),
14
+ reusable_until: z.string().datetime().describe("Until then, create_asset with source.run_id turns this file into an asset_id for templates and inserts."),
15
15
  });
16
16
  //# sourceMappingURL=generations-output.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generations-output.js","sourceRoot":"","sources":["../src/generations-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,+GAA+G;AAC/G,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,CAAU,CAAC;AAG5D,mHAAmH;AACnH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAC9B,+EAA+E;IAC/E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC5C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC"}
1
+ {"version":3,"file":"generations-output.js","sourceRoot":"","sources":["../src/generations-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,+GAA+G;AAC/G,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,CAAU,CAAC;AAG5D,mHAAmH;AACnH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAC9B,+EAA+E;IAC/E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC5C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yGAAyG,CAAC;CAC1J,CAAC,CAAC"}
@@ -22,7 +22,7 @@ export type GenerationResolution = (typeof GENERATION_RESOLUTIONS)[number];
22
22
  export type GenerationVideoMode = (typeof GENERATION_VIDEO_MODES)[number];
23
23
  export declare const GENERATION_MAX_REFERENCES = 4;
24
24
  export declare const GENERATION_VIDEO_FPS = 24;
25
- export declare const GENERATION_PROMPT_MAX_CHARS = 2000;
25
+ export declare const GENERATION_PROMPT_MAX_CHARS = 5000;
26
26
  /** One output shape. `measured: false` is refused by the API and never listed (D7). */
27
27
  export interface GenerationImageRow {
28
28
  aspect_ratio: GenerationImageAspect;
@@ -20,7 +20,7 @@ export const GENERATION_VIDEO_MODES = ["text", "first_frame", "reference"];
20
20
  export const GENERATION_CAMERAS = ["static", "push_in", "pull_back", "pan"];
21
21
  export const GENERATION_MAX_REFERENCES = 4;
22
22
  export const GENERATION_VIDEO_FPS = 24;
23
- export const GENERATION_PROMPT_MAX_CHARS = 2000;
23
+ export const GENERATION_PROMPT_MAX_CHARS = 5000;
24
24
  const image = (aspect_ratio, width, height, unit_credits, measured = false) => ({ aspect_ratio, width, height, unit_credits, measured });
25
25
  const H264 = { codec: "h264", pix_fmt: "yuv420p" };
26
26
  /** Rows in both aspects of one resolution; `measured` holds the aspects probed live on rendered clips. */
@@ -95,7 +95,7 @@ export const GENERATION_CAPABILITIES = deepFreeze({
95
95
  fps: GENERATION_VIDEO_FPS,
96
96
  modes: { text: true, first_frame: true, reference: false },
97
97
  duration_s: { min: 3, max: 15 },
98
- rows: video("720p", 720, 1280, 11, H264, { vertical: true, horizontal: true }),
98
+ rows: video("720p", 720, 1280, 12, H264, { vertical: true, horizontal: true }),
99
99
  },
100
100
  // 360p 9:16 is not yet seen live.
101
101
  "gemini-omni-flash-1.1": {
package/dist/index.d.ts CHANGED
@@ -1,5 +1,9 @@
1
1
  export * from "./skills.js";
2
+ export * from "./design.js";
2
3
  export * from "./ugc-layers.js";
4
+ export * from "./ugc-scenes.js";
5
+ export * from "./motion-styles.js";
6
+ export * from "./moves.js";
3
7
  export * from "./scene-place.js";
4
8
  export { CAPTION_EDGES, CAPTION_GEOMETRY, CAPTION_GEOMETRY_ALIASES, captionBandBox, captionEdgeAt, captionGeometryOf, type CaptionEdge } from "./caption-geometry.js";
5
9
  export * from "./ugc-framing.js";
@@ -8,8 +12,10 @@ export * from "./ugc-interview.js";
8
12
  export * from "./caption-language.js";
9
13
  export * from "./templates/index.js";
10
14
  export * from "./ugc-video-media.js";
15
+ export * from "./ad-pause-trim.js";
11
16
  export * from "./faceless-public.js";
12
17
  export * from "./faceless-customer-anchors.js";
18
+ export * from "./faceless-action-shots.js";
13
19
  export * from "./faceless-image-placement.js";
14
20
  export * from "./faceless-voices.js";
15
21
  export * from "./faceless-price.js";
@@ -28,6 +34,7 @@ export * from "./api-failure.js";
28
34
  export * from "./account.js";
29
35
  export * from "./uploads.js";
30
36
  export * from "./assets.js";
37
+ export * from "./run-media.js";
31
38
  export * from "./pacing.js";
32
39
  export * from "./render-backend.js";
33
40
  export * from "./tts-backend.js";
@@ -46,6 +53,7 @@ export * from "./speech-rhythm-contract.js";
46
53
  export * from "./face-billing.js";
47
54
  export * from "./long-form-pricing.js";
48
55
  export * from "./parts-pricing.js";
56
+ export * from "./music.js";
49
57
  export * from "./media-timebase.js";
50
58
  export * from "./billing-terms.js";
51
59
  export * from "./voice-preview-approval.js";
@@ -60,8 +68,10 @@ export * from "./generations.js";
60
68
  export * from "./generations-output.js";
61
69
  export * from "./reference-profile.js";
62
70
  export * from "./reference-staging.js";
71
+ export * from "./reference-text-spans.js";
63
72
  export * from "./reference-voice.js";
64
73
  export * from "./reference-analysis.js";
65
74
  export * from "./reference-display.js";
66
75
  export * from "./creator-profile.js";
76
+ export * from "./trend-search.js";
67
77
  export * from "./presenter-beats.js";
package/dist/index.js CHANGED
@@ -1,5 +1,9 @@
1
1
  export * from "./skills.js";
2
+ export * from "./design.js";
2
3
  export * from "./ugc-layers.js";
4
+ export * from "./ugc-scenes.js";
5
+ export * from "./motion-styles.js";
6
+ export * from "./moves.js";
3
7
  export * from "./scene-place.js";
4
8
  export { CAPTION_EDGES, CAPTION_GEOMETRY, CAPTION_GEOMETRY_ALIASES, captionBandBox, captionEdgeAt, captionGeometryOf } from "./caption-geometry.js";
5
9
  export * from "./ugc-framing.js";
@@ -8,8 +12,10 @@ export * from "./ugc-interview.js";
8
12
  export * from "./caption-language.js";
9
13
  export * from "./templates/index.js";
10
14
  export * from "./ugc-video-media.js";
15
+ export * from "./ad-pause-trim.js";
11
16
  export * from "./faceless-public.js";
12
17
  export * from "./faceless-customer-anchors.js";
18
+ export * from "./faceless-action-shots.js";
13
19
  export * from "./faceless-image-placement.js";
14
20
  export * from "./faceless-voices.js";
15
21
  export * from "./faceless-price.js";
@@ -41,6 +47,8 @@ export * from "./account.js";
41
47
  export * from "./uploads.js";
42
48
  // Account assets (clipwright#724 F2): kept until deleted, under a cap per account.
43
49
  export * from "./assets.js";
50
+ // A customer's delete of a finished run's files (#1093).
51
+ export * from "./run-media.js";
44
52
  export * from "./pacing.js";
45
53
  // Vendor-neutral contracts: everything vendor-specific lives in adapters, not here.
46
54
  export * from "./render-backend.js";
@@ -71,6 +79,7 @@ export * from "./speech-rhythm-contract.js";
71
79
  export * from "./face-billing.js";
72
80
  export * from "./long-form-pricing.js";
73
81
  export * from "./parts-pricing.js";
82
+ export * from "./music.js";
74
83
  export * from "./media-timebase.js";
75
84
  export * from "./billing-terms.js";
76
85
  export * from "./voice-preview-approval.js";
@@ -85,9 +94,11 @@ export * from "./generations.js";
85
94
  export * from "./generations-output.js";
86
95
  export * from "./reference-profile.js";
87
96
  export * from "./reference-staging.js";
97
+ export * from "./reference-text-spans.js";
88
98
  export * from "./reference-voice.js";
89
99
  export * from "./reference-analysis.js";
90
100
  export * from "./reference-display.js";
91
101
  export * from "./creator-profile.js";
102
+ export * from "./trend-search.js";
92
103
  export * from "./presenter-beats.js";
93
104
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAoB,MAAM,uBAAuB,CAAC;AACtK,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,+EAA+E;AAC/E,cAAc,qBAAqB,CAAC;AACpC,2FAA2F;AAC3F,sFAAsF;AACtF,cAAc,4BAA4B,CAAC;AAC3C,6FAA6F;AAC7F,cAAc,aAAa,CAAC;AAC5B,gFAAgF;AAChF,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,wFAAwF;AACxF,uCAAuC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,uFAAuF;AACvF,gBAAgB;AAChB,cAAc,iBAAiB,CAAC;AAChC,uFAAuF;AACvF,sBAAsB;AACtB,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,iEAAiE;AACjE,cAAc,cAAc,CAAC;AAC7B,mFAAmF;AACnF,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,oFAAoF;AACpF,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,wFAAwF;AACxF,mEAAmE;AACnE,cAAc,sBAAsB,CAAC;AACrC,sFAAsF;AACtF,2CAA2C;AAC3C,cAAc,uBAAuB,CAAC;AACtC,uFAAuF;AACvF,cAAc,gBAAgB,CAAC;AAC/B,iEAAiE;AACjE,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,+EAA+E;AAC/E,cAAc,aAAa,CAAC;AAC5B,+DAA+D;AAC/D,cAAc,eAAe,CAAC;AAC9B,oFAAoF;AACpF,sCAAsC;AACtC,cAAc,0BAA0B,CAAC;AACzC,qEAAqE;AACrE,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAE5C,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /** Live shots (#1103): what the actor does on some words of the script, drawn by the engine of the shot's kind. */
2
+ export declare const LIVE_SHOT_KINDS: readonly ["talking", "talking_action", "action"];
3
+ export type LiveShotKind = (typeof LIVE_SHOT_KINDS)[number];
4
+ /** The look of the cuts into and out of a live shot (#1129); whoosh is a cut with the whoosh sound. */
5
+ export declare const LIVE_SHOT_TRANSITIONS: readonly ["cut", "flash", "light_leak", "whoosh"];
6
+ export type LiveShotTransition = (typeof LIVE_SHOT_TRANSITIONS)[number];
7
+ /** Where a live shot's product sits (#1146): in the actor's hand or beside them. */
8
+ export declare const LIVE_SHOT_PRODUCT_PLACEMENTS: readonly ["hand", "beside"];
9
+ export type LiveShotProductPlacement = (typeof LIVE_SHOT_PRODUCT_PLACEMENTS)[number];
10
+ /** How much wider than the actor's view a shot's first frame is drawn (#1175 S7): waist-up with the hands, or head to feet. */
11
+ export declare const LIVE_SHOT_FRAMINGS: readonly ["wide", "full"];
12
+ export type LiveShotFraming = (typeof LIVE_SHOT_FRAMINGS)[number];
13
+ /** A shot's product placement: `true` is the hand, as before #1146; absent or `false` shows no product. */
14
+ export declare function liveShotProductPlacement(shot: {
15
+ product?: boolean | {
16
+ placement: LiveShotProductPlacement;
17
+ } | undefined;
18
+ }): LiveShotProductPlacement | undefined;
19
+ /** The place a shot is drawn in, one per distinct setup; shots without one share the actor's own photo setting (""). */
20
+ export declare function liveShotSetupKey(shot: {
21
+ setup?: string | undefined;
22
+ }): string;
@@ -0,0 +1,17 @@
1
+ /** Live shots (#1103): what the actor does on some words of the script, drawn by the engine of the shot's kind. */
2
+ export const LIVE_SHOT_KINDS = ["talking", "talking_action", "action"];
3
+ /** The look of the cuts into and out of a live shot (#1129); whoosh is a cut with the whoosh sound. */
4
+ export const LIVE_SHOT_TRANSITIONS = ["cut", "flash", "light_leak", "whoosh"];
5
+ /** Where a live shot's product sits (#1146): in the actor's hand or beside them. */
6
+ export const LIVE_SHOT_PRODUCT_PLACEMENTS = ["hand", "beside"];
7
+ /** How much wider than the actor's view a shot's first frame is drawn (#1175 S7): waist-up with the hands, or head to feet. */
8
+ export const LIVE_SHOT_FRAMINGS = ["wide", "full"];
9
+ /** A shot's product placement: `true` is the hand, as before #1146; absent or `false` shows no product. */
10
+ export function liveShotProductPlacement(shot) {
11
+ return shot.product === true ? "hand" : shot.product ? shot.product.placement : undefined;
12
+ }
13
+ /** The place a shot is drawn in, one per distinct setup; shots without one share the actor's own photo setting (""). */
14
+ export function liveShotSetupKey(shot) {
15
+ return shot.setup?.trim().replace(/\s+/g, " ") ?? "";
16
+ }
17
+ //# sourceMappingURL=live-shot-kinds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live-shot-kinds.js","sourceRoot":"","sources":["../src/live-shot-kinds.ts"],"names":[],"mappings":"AAAA,mHAAmH;AACnH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,CAAU,CAAC;AAEhF,uGAAuG;AACvG,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,CAAU,CAAC;AAEvF,oFAAoF;AACpF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAU,CAAC;AAExE,+HAA+H;AAC/H,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAC;AAE5D,2GAA2G;AAC3G,MAAM,UAAU,wBAAwB,CAAC,IAAiF;IAExH,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5F,CAAC;AACD,wHAAwH;AACxH,MAAM,UAAU,gBAAgB,CAAC,IAAoC;IACnE,OAAO,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;AACvD,CAAC"}
@@ -2,4 +2,4 @@
2
2
  export declare const LONG_FORM_QUALIFICATION_MAX_DURATION_SEC = 327;
3
3
  /** Slot cap of a frozen timeline; MAX_INSERTS is derived from it, so the numbers */
4
4
  /** cannot drift. */
5
- export declare const RESOLVED_TIMELINE_MAX_SLOTS = 100;
5
+ export declare const RESOLVED_TIMELINE_MAX_SLOTS = 200;
@@ -2,5 +2,5 @@
2
2
  export const LONG_FORM_QUALIFICATION_MAX_DURATION_SEC = 327;
3
3
  /** Slot cap of a frozen timeline; MAX_INSERTS is derived from it, so the numbers */
4
4
  /** cannot drift. */
5
- export const RESOLVED_TIMELINE_MAX_SLOTS = 100;
5
+ export const RESOLVED_TIMELINE_MAX_SLOTS = 200;
6
6
  //# sourceMappingURL=long-form-profile.js.map
@@ -0,0 +1,32 @@
1
+ import { type TemplateKind } from "./templates/index.js";
2
+ /** The templates catalog in fewer words: every kind's data fields as the full catalog names them. */
3
+ export declare function compactTemplateCatalogText(kinds?: readonly TemplateKind[]): string;
4
+ /** quote_ugc's shorter text per field; a field not named keeps the full text REST and OpenAPI carry. */
5
+ export declare const MCP_UGC_DESCRIPTIONS: {
6
+ readonly script: string;
7
+ readonly tts_model: string;
8
+ readonly caption_style: string;
9
+ readonly templates: string;
10
+ readonly caption_emphasis: string;
11
+ readonly voice: string;
12
+ readonly inserts: string;
13
+ readonly segments: string;
14
+ readonly captions: "Burn word-timed captions in, over the presenter and inserts; not with segments.";
15
+ readonly caption_position: "top, middle, lower or bottom (80% of the height); omitted, the caption_style's own place. Requires captions=true.";
16
+ readonly person: "NOT HONORED YET: the default actor is used; pick actor_id from list_actors or pass image.";
17
+ readonly name: "NOT HONORED YET: it does not reach the renderer.";
18
+ readonly look: "NOT HONORED YET: it does not reach the renderer.";
19
+ readonly actor_id: "Saved actor ID from list_actors; not with image, person or actor_gender. Without voice or voice_id the voice follows its gender.";
20
+ readonly voice_id: string;
21
+ readonly broll_policy: string;
22
+ readonly overlays: string;
23
+ readonly image: string;
24
+ readonly framing: string;
25
+ readonly actor_gender: string;
26
+ readonly aspect_ratio: string;
27
+ readonly caption_mode: string;
28
+ readonly visible_ai_label: "Visible AI label, default true. False hides only the visible label; invisible marking and signed provenance stay.";
29
+ readonly layout_windows: string;
30
+ readonly end_hold_s: string;
31
+ readonly edit_sounds: string;
32
+ };