vidspotai-shared 1.0.99 → 1.0.101-dev.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.
- package/lib/globals/aiModels/enums.d.ts +1 -0
- package/lib/globals/aiModels/enums.d.ts.map +1 -1
- package/lib/globals/aiModels/enums.js +3 -0
- package/lib/globals/aiModels/extendCapability.d.ts +26 -0
- package/lib/globals/aiModels/extendCapability.d.ts.map +1 -0
- package/lib/globals/aiModels/extendCapability.js +42 -0
- package/lib/globals/aiModels/index.d.ts +1 -0
- package/lib/globals/aiModels/index.d.ts.map +1 -1
- package/lib/globals/aiModels/index.js +1 -0
- package/lib/globals/aiModels/providers/hostedAvatars.js +10 -10
- package/lib/globals/creditUnit.d.ts +20 -33
- package/lib/globals/creditUnit.d.ts.map +1 -1
- package/lib/globals/creditUnit.js +20 -33
- package/lib/globals/types.d.ts +34 -2
- package/lib/globals/types.d.ts.map +1 -1
- package/lib/globals/types.js +37 -0
- package/lib/models/demoVideoProject.model.d.ts +213 -0
- package/lib/models/demoVideoProject.model.d.ts.map +1 -1
- package/lib/models/index.d.ts +2 -0
- package/lib/models/index.d.ts.map +1 -1
- package/lib/models/index.js +2 -0
- package/lib/models/mediaUpload.model.d.ts +25 -0
- package/lib/models/mediaUpload.model.d.ts.map +1 -1
- package/lib/models/productConnection.model.d.ts +57 -0
- package/lib/models/productConnection.model.d.ts.map +1 -0
- package/lib/models/productConnection.model.js +7 -0
- package/lib/models/video.model.d.ts +11 -0
- package/lib/models/video.model.d.ts.map +1 -1
- package/lib/models/videoQaJob.model.d.ts +61 -0
- package/lib/models/videoQaJob.model.d.ts.map +1 -0
- package/lib/models/videoQaJob.model.js +16 -0
- package/lib/schemas/brandKit.schema.d.ts +3 -1
- package/lib/schemas/brandKit.schema.d.ts.map +1 -1
- package/lib/schemas/brandKit.schema.js +9 -0
- package/lib/schemas/brief.schema.d.ts +5 -4
- package/lib/schemas/brief.schema.d.ts.map +1 -1
- package/lib/schemas/brief.schema.js +23 -1
- package/lib/schemas/demoQuestion.schema.d.ts +24 -4
- package/lib/schemas/demoQuestion.schema.d.ts.map +1 -1
- package/lib/schemas/demoQuestion.schema.js +8 -2
- package/lib/schemas/demoSpec.schema.d.ts +40 -6
- package/lib/schemas/demoSpec.schema.d.ts.map +1 -1
- package/lib/schemas/demoSpec.schema.js +46 -1
- package/lib/schemas/project.schema.d.ts +33 -3
- package/lib/schemas/project.schema.d.ts.map +1 -1
- package/lib/schemas/project.schema.js +22 -0
- package/lib/schemas/social.schema.d.ts +1 -1
- package/lib/schemas/videoPlan.schema.d.ts +22 -20
- package/lib/schemas/videoPlan.schema.d.ts.map +1 -1
- package/lib/schemas/videoPlan.schema.js +19 -0
- package/lib/services/agent/editClassifier.d.ts +10 -10
- package/lib/services/agent/eval/types.d.ts +3 -2
- package/lib/services/agent/eval/types.d.ts.map +1 -1
- package/lib/services/agent/executor/core.d.ts.map +1 -1
- package/lib/services/agent/executor/core.js +11 -0
- package/lib/services/agent/planner/Planner.d.ts.map +1 -1
- package/lib/services/agent/planner/Planner.js +5 -0
- package/lib/services/agent/planner/overlayRegen.d.ts.map +1 -1
- package/lib/services/agent/planner/overlayRegen.js +5 -0
- package/lib/services/agent/planner/plannerMessages.d.ts.map +1 -1
- package/lib/services/agent/planner/plannerMessages.js +10 -1
- package/lib/services/agent/planner/scriptFirstPlanner.d.ts.map +1 -1
- package/lib/services/agent/planner/scriptFirstPlanner.js +2 -0
- package/lib/services/agent/regenCore.d.ts.map +1 -1
- package/lib/services/agent/regenCore.js +11 -1
- package/lib/services/agent/runHelpers.d.ts +8 -0
- package/lib/services/agent/runHelpers.d.ts.map +1 -1
- package/lib/services/agent/runHelpers.js +5 -1
- package/lib/services/agent/tools/chapterOutline.tool.d.ts +8 -0
- package/lib/services/agent/tools/chapterOutline.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/chapterOutline.tool.js +21 -8
- package/lib/services/agent/tools/composeScene.tool.d.ts +32 -2
- package/lib/services/agent/tools/composeScene.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/estimateCost.tool.d.ts +11 -1
- package/lib/services/agent/tools/estimateCost.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/extendVideo.tool.d.ts +9 -3
- package/lib/services/agent/tools/extendVideo.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/extendVideo.tool.js +12 -27
- package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts +1 -1
- package/lib/services/agent/tools/generateScript.tool.d.ts +3 -2
- package/lib/services/agent/tools/generateScript.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/generateScript.tool.js +16 -7
- package/lib/services/agent/tools/generateVoiceover.tool.d.ts +1 -1
- package/lib/services/agent/tools/planVideo.tool.d.ts +11 -8
- package/lib/services/agent/tools/planVideo.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/render.tool.d.ts +11 -1
- package/lib/services/agent/tools/render.tool.d.ts.map +1 -1
- package/lib/services/agent/tools/searchStock.tool.d.ts +1 -1
- package/lib/services/agent/tools/searchUserLibrary.tool.d.ts +4 -4
- package/lib/services/aiGen/providers/kling/kling.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/kling/kling.service.js +22 -3
- package/lib/services/aiGen/providers/kling/klingStatus.d.ts +7 -0
- package/lib/services/aiGen/providers/kling/klingStatus.d.ts.map +1 -1
- package/lib/services/aiGen/providers/kling/klingStatus.js +41 -4
- package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts.map +1 -1
- package/lib/services/aiGen/providers/pixverse/pixverse.service.js +25 -0
- package/lib/services/aiGen/providers/types.d.ts +20 -0
- package/lib/services/aiGen/providers/types.d.ts.map +1 -1
- package/lib/services/avatarGen/avatarProviderFactory.d.ts.map +1 -1
- package/lib/services/avatarGen/avatarProviderFactory.js +3 -0
- package/lib/services/avatarGen/index.d.ts +1 -0
- package/lib/services/avatarGen/index.d.ts.map +1 -1
- package/lib/services/avatarGen/index.js +1 -0
- package/lib/services/avatarGen/providers/synthesiaAvatarProvider.d.ts +53 -0
- package/lib/services/avatarGen/providers/synthesiaAvatarProvider.d.ts.map +1 -0
- package/lib/services/avatarGen/providers/synthesiaAvatarProvider.js +176 -0
- package/lib/services/demo/demoAuthor.d.ts +7 -0
- package/lib/services/demo/demoAuthor.d.ts.map +1 -1
- package/lib/services/demo/demoAuthor.js +2 -0
- package/lib/services/demo/demoAuthorPrompt.d.ts +6 -0
- package/lib/services/demo/demoAuthorPrompt.d.ts.map +1 -1
- package/lib/services/demo/demoAuthorPrompt.js +24 -2
- package/lib/services/demo/demoCaptions.d.ts +69 -0
- package/lib/services/demo/demoCaptions.d.ts.map +1 -0
- package/lib/services/demo/demoCaptions.js +152 -0
- package/lib/services/demo/demoMusic.d.ts +8 -1
- package/lib/services/demo/demoMusic.d.ts.map +1 -1
- package/lib/services/demo/demoMusic.js +32 -16
- package/lib/services/demo/demoScriptPrompt.d.ts +2 -1
- package/lib/services/demo/demoScriptPrompt.d.ts.map +1 -1
- package/lib/services/demo/demoScriptPrompt.js +29 -2
- package/lib/services/demo/demoStockAssets.d.ts +29 -0
- package/lib/services/demo/demoStockAssets.d.ts.map +1 -0
- package/lib/services/demo/demoStockAssets.js +107 -0
- package/lib/services/demo/index.d.ts +3 -0
- package/lib/services/demo/index.d.ts.map +1 -1
- package/lib/services/demo/index.js +3 -0
- package/lib/services/demo/productConnection.service.d.ts +78 -0
- package/lib/services/demo/productConnection.service.d.ts.map +1 -0
- package/lib/services/demo/productConnection.service.js +125 -0
- package/lib/services/editor/planToProject.d.ts.map +1 -1
- package/lib/services/editor/planToProject.helpers.d.ts +1 -0
- package/lib/services/editor/planToProject.helpers.d.ts.map +1 -1
- package/lib/services/editor/planToProject.helpers.js +3 -0
- package/lib/services/editor/planToProject.js +39 -0
- package/lib/services/editor/projectToDesign.js +13 -1
- package/lib/services/firestore.service.d.ts +14 -0
- package/lib/services/firestore.service.d.ts.map +1 -1
- package/lib/services/firestore.service.js +16 -0
- package/lib/services/translation/index.d.ts +1 -0
- package/lib/services/translation/index.d.ts.map +1 -1
- package/lib/services/translation/index.js +8 -1
- package/lib/services/translation/outputLanguage.d.ts +75 -0
- package/lib/services/translation/outputLanguage.d.ts.map +1 -0
- package/lib/services/translation/outputLanguage.js +190 -0
- package/lib/services/translation/translation.service.d.ts +13 -2
- package/lib/services/translation/translation.service.d.ts.map +1 -1
- package/lib/services/translation/translation.service.js +66 -5
- package/lib/services/tts/index.d.ts +1 -0
- package/lib/services/tts/index.d.ts.map +1 -1
- package/lib/services/tts/index.js +1 -0
- package/lib/services/tts/providers/elevenlabs.service.d.ts +7 -0
- package/lib/services/tts/providers/elevenlabs.service.d.ts.map +1 -1
- package/lib/services/tts/providers/elevenlabs.service.js +69 -13
- package/lib/services/tts/types.d.ts +29 -0
- package/lib/services/tts/types.d.ts.map +1 -1
- package/lib/services/tts/wordTimings.d.ts +27 -0
- package/lib/services/tts/wordTimings.d.ts.map +1 -0
- package/lib/services/tts/wordTimings.js +57 -0
- package/lib/utils/billableDuration.d.ts +11 -0
- package/lib/utils/billableDuration.d.ts.map +1 -0
- package/lib/utils/billableDuration.js +91 -0
- package/lib/utils/index.d.ts +3 -0
- package/lib/utils/index.d.ts.map +1 -1
- package/lib/utils/index.js +3 -0
- package/lib/utils/mp4Duration.d.ts +38 -0
- package/lib/utils/mp4Duration.d.ts.map +1 -0
- package/lib/utils/mp4Duration.js +164 -0
- package/lib/utils/socialEntitlements.d.ts +51 -0
- package/lib/utils/socialEntitlements.d.ts.map +1 -0
- package/lib/utils/socialEntitlements.js +65 -0
- package/package.json +1 -1
|
@@ -31,6 +31,7 @@ export declare enum EVideoGenModels {
|
|
|
31
31
|
KLING_LIP_SYNC = "kling-lip-sync",
|
|
32
32
|
HEYGEN_AVATAR = "heygen-avatar",
|
|
33
33
|
TAVUS_AVATAR = "tavus-avatar",
|
|
34
|
+
SYNTHESIA_AVATAR = "synthesia-avatar",
|
|
34
35
|
MINIMAX_HAILUO_2_3_FAST = "minimax-hailuo-2.3-fast",
|
|
35
36
|
MINIMAX_HAILUO_2_3 = "minimax-hailuo-2.3",
|
|
36
37
|
MINIMAX_HAILUO_02 = "minimax-hailuo-02",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/globals/aiModels/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe;IACzB,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,WAAW,gBAAgB;IAC3B,0BAA0B,+BAA+B;IACzD,+BAA+B,oCAAoC;IACnE,0BAA0B,+BAA+B;IACzD,sBAAsB,2BAA2B;IACjD,2BAA2B,gCAAgC;IAC3D,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAC3C,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;IACnC,UAAU,eAAe;IACzB,iBAAiB,sBAAsB;IACvC,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;IACzB,UAAU,eAAe;IAIzB,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;IAE7B,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAE3C,oBAAoB,yBAAyB;IAE7C,cAAc,mBAAmB;IAIjC,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;
|
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/globals/aiModels/enums.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe;IACzB,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,WAAW,gBAAgB;IAC3B,0BAA0B,+BAA+B;IACzD,+BAA+B,oCAAoC;IACnE,0BAA0B,+BAA+B;IACzD,sBAAsB,2BAA2B;IACjD,2BAA2B,gCAAgC;IAC3D,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAC3C,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;IACnC,UAAU,eAAe;IACzB,iBAAiB,sBAAsB;IACvC,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;IACzB,UAAU,eAAe;IAIzB,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;IAE7B,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAE3C,oBAAoB,yBAAyB;IAE7C,cAAc,mBAAmB;IAIjC,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAG7B,gBAAgB,qBAAqB;IACrC,uBAAuB,4BAA4B;IACnD,kBAAkB,uBAAuB;IACzC,iBAAiB,sBAAsB;IACvC,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAC3C,yBAAyB,8BAA8B;IACvD,mBAAmB,wBAAwB;IAC3C,mBAAmB,wBAAwB;IAG3C,mBAAmB,wBAAwB;IAC3C,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;CACxC;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;CAgDlB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEvF;;;;GAIG;AACH,oBAAY,eAAe;IACzB,iBAAiB,sBAAsB;IACvC,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,kBAAkB,uBAAuB;CAC1C;AAED,oBAAY,cAAc;IAIxB,cAAc,mBAAmB;IACjC,mBAAmB,wBAAwB;IAC3C,iBAAiB,sBAAsB;IACvC,kBAAkB,uBAAuB;IAQzC,wBAAwB,6BAA6B;IACrD,yBAAyB,8BAA8B;IACvD,2BAA2B,gCAAgC;IAC3D,0BAA0B,+BAA+B;IAIzD,uBAAuB,4BAA4B;IACnD,qBAAqB,0BAA0B;IAC/C,uBAAuB,4BAA4B;IACnD,qBAAqB,0BAA0B;CAChD;AAED;;;;GAIG;AACH,oBAAY,aAAa;IACvB,wBAAwB,6BAA6B;CACtD;AAED,MAAM,MAAM,WAAW,GACnB,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,eAAe,GACf,aAAa,CAAC"}
|
|
@@ -44,6 +44,9 @@ var EVideoGenModels;
|
|
|
44
44
|
// avatar + voice + script; the engine does its own TTS + lipsync. ──────────
|
|
45
45
|
EVideoGenModels["HEYGEN_AVATAR"] = "heygen-avatar";
|
|
46
46
|
EVideoGenModels["TAVUS_AVATAR"] = "tavus-avatar";
|
|
47
|
+
// Synthesia — enterprise/compliance hosted avatars (140+ languages). Wired via
|
|
48
|
+
// SynthesiaAvatarProvider; runtime-gated on SYNTHESIA_API_KEY (enterprise plan).
|
|
49
|
+
EVideoGenModels["SYNTHESIA_AVATAR"] = "synthesia-avatar";
|
|
47
50
|
EVideoGenModels["MINIMAX_HAILUO_2_3_FAST"] = "minimax-hailuo-2.3-fast";
|
|
48
51
|
EVideoGenModels["MINIMAX_HAILUO_2_3"] = "minimax-hailuo-2.3";
|
|
49
52
|
EVideoGenModels["MINIMAX_HAILUO_02"] = "minimax-hailuo-02";
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { EVideoGenModels } from "./enums";
|
|
2
|
+
/**
|
|
3
|
+
* Models whose provider exposes a native video-extension endpoint
|
|
4
|
+
* (`endpoint: "extend"` + `sourceTaskId`). Extension continues a SPECIFIC prior
|
|
5
|
+
* provider task, so — unlike plain generation — there is NO cross-provider
|
|
6
|
+
* fallback: the source clip physically lives on the originating provider's
|
|
7
|
+
* account. Kling video-extend (`/v1/videos/video-extend`) and Pixverse
|
|
8
|
+
* (`/video/extend/generate`) are the two implemented today.
|
|
9
|
+
*
|
|
10
|
+
* Special-endpoint Kling variants (avatar, omni-video, motion-control,
|
|
11
|
+
* lip-sync) are excluded — the generic video-extend endpoint does not accept
|
|
12
|
+
* their tasks. `kling-v3.0-turbo` is also excluded: it lives on the API 2.0
|
|
13
|
+
* `/tasks` surface, which has no video-extend equivalent.
|
|
14
|
+
*
|
|
15
|
+
* This list previously lived inside `services/agent/tools/extendVideo.tool.ts`,
|
|
16
|
+
* so ONLY the agent consulted it. The HTTP surface (`POST /v1/video/generate`)
|
|
17
|
+
* accepts `endpoint` for any `modelKey`, and every provider except Kling and
|
|
18
|
+
* Pixverse silently ignores it — meaning an extend request against e.g. Veo or
|
|
19
|
+
* Runway quietly produced a brand-new, unrelated clip at full price. It is
|
|
20
|
+
* defined here, in a dependency-free module, so the request schema can reject
|
|
21
|
+
* that up front without importing the agent tool graph.
|
|
22
|
+
*/
|
|
23
|
+
export declare const EXTEND_CAPABLE_MODELS: ReadonlySet<EVideoGenModels>;
|
|
24
|
+
/** Whether a model key can be extended via its provider's extend endpoint. */
|
|
25
|
+
export declare function modelSupportsExtend(modelKey: string): boolean;
|
|
26
|
+
//# sourceMappingURL=extendCapability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extendCapability.d.ts","sourceRoot":"","sources":["../../../src/globals/aiModels/extendCapability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,qBAAqB,EAAE,WAAW,CAAC,eAAe,CAW7D,CAAC;AAEH,8EAA8E;AAC9E,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE7D"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EXTEND_CAPABLE_MODELS = void 0;
|
|
4
|
+
exports.modelSupportsExtend = modelSupportsExtend;
|
|
5
|
+
const enums_1 = require("./enums");
|
|
6
|
+
/**
|
|
7
|
+
* Models whose provider exposes a native video-extension endpoint
|
|
8
|
+
* (`endpoint: "extend"` + `sourceTaskId`). Extension continues a SPECIFIC prior
|
|
9
|
+
* provider task, so — unlike plain generation — there is NO cross-provider
|
|
10
|
+
* fallback: the source clip physically lives on the originating provider's
|
|
11
|
+
* account. Kling video-extend (`/v1/videos/video-extend`) and Pixverse
|
|
12
|
+
* (`/video/extend/generate`) are the two implemented today.
|
|
13
|
+
*
|
|
14
|
+
* Special-endpoint Kling variants (avatar, omni-video, motion-control,
|
|
15
|
+
* lip-sync) are excluded — the generic video-extend endpoint does not accept
|
|
16
|
+
* their tasks. `kling-v3.0-turbo` is also excluded: it lives on the API 2.0
|
|
17
|
+
* `/tasks` surface, which has no video-extend equivalent.
|
|
18
|
+
*
|
|
19
|
+
* This list previously lived inside `services/agent/tools/extendVideo.tool.ts`,
|
|
20
|
+
* so ONLY the agent consulted it. The HTTP surface (`POST /v1/video/generate`)
|
|
21
|
+
* accepts `endpoint` for any `modelKey`, and every provider except Kling and
|
|
22
|
+
* Pixverse silently ignores it — meaning an extend request against e.g. Veo or
|
|
23
|
+
* Runway quietly produced a brand-new, unrelated clip at full price. It is
|
|
24
|
+
* defined here, in a dependency-free module, so the request schema can reject
|
|
25
|
+
* that up front without importing the agent tool graph.
|
|
26
|
+
*/
|
|
27
|
+
exports.EXTEND_CAPABLE_MODELS = new Set([
|
|
28
|
+
enums_1.EVideoGenModels.KLING_V2_MASTER,
|
|
29
|
+
enums_1.EVideoGenModels.KLING_V2_1,
|
|
30
|
+
enums_1.EVideoGenModels.KLING_V2_1_MASTER,
|
|
31
|
+
enums_1.EVideoGenModels.KLING_V2_5_TURBO,
|
|
32
|
+
enums_1.EVideoGenModels.KLING_V2_6,
|
|
33
|
+
enums_1.EVideoGenModels.KLING_V3_0,
|
|
34
|
+
enums_1.EVideoGenModels.PIXVERSE_V5,
|
|
35
|
+
enums_1.EVideoGenModels.PIXVERSE_V5_5,
|
|
36
|
+
enums_1.EVideoGenModels.PIXVERSE_V5_6,
|
|
37
|
+
enums_1.EVideoGenModels.PIXVERSE_V6,
|
|
38
|
+
]);
|
|
39
|
+
/** Whether a model key can be extended via its provider's extend endpoint. */
|
|
40
|
+
function modelSupportsExtend(modelKey) {
|
|
41
|
+
return exports.EXTEND_CAPABLE_MODELS.has(modelKey);
|
|
42
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/globals/aiModels/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/globals/aiModels/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAcvC,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,WAAW,EAAE,YAAY,CAYvB,CAAC;AAEvC,cAAc,eAAe,CAAC;AAC9B,cAAc,+BAA+B,CAAC;AAE9C,MAAM,WAAW,kBAAkB;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAMnE,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|
|
@@ -18,6 +18,7 @@ exports.aiProviderRateLimits = exports.aiModelConfigs = void 0;
|
|
|
18
18
|
exports.getProviderKey = getProviderKey;
|
|
19
19
|
__exportStar(require("./enums"), exports);
|
|
20
20
|
__exportStar(require("./types"), exports);
|
|
21
|
+
__exportStar(require("./extendCapability"), exports);
|
|
21
22
|
const pixverse_1 = require("./providers/pixverse");
|
|
22
23
|
const bytedance_1 = require("./providers/bytedance");
|
|
23
24
|
const google_1 = require("./providers/google");
|
|
@@ -86,15 +86,15 @@ exports.hostedAvatarConfigs = {
|
|
|
86
86
|
maxAutoRequeueAttempts: 5,
|
|
87
87
|
},
|
|
88
88
|
},
|
|
89
|
-
// ── Synthesia (
|
|
90
|
-
// Endpoint
|
|
91
|
-
//
|
|
92
|
-
//
|
|
93
|
-
//
|
|
94
|
-
//
|
|
95
|
-
//
|
|
96
|
-
//
|
|
97
|
-
//
|
|
89
|
+
// ── Synthesia (enterprise tier — provider WIRED, runtime-gated on key) ────
|
|
90
|
+
// Endpoint: POST /v2/videos (avatar + scriptText + avatarSettings.voice).
|
|
91
|
+
// The SynthesiaAvatarProvider is now registered in avatarProviderFactory, so
|
|
92
|
+
// isAvatarModel("synthesia-avatar") is TRUE and generation flows through the
|
|
93
|
+
// provider-agnostic AvatarJobProcessor like HeyGen/Tavus. Runtime is gated on
|
|
94
|
+
// SYNTHESIA_API_KEY (enterprise plan) — the provider constructor throws until
|
|
95
|
+
// that key is added to the env stores, the intended "wired but not enabled"
|
|
96
|
+
// enterprise state. Catalog (list avatars/voices) stays deferred: Synthesia
|
|
97
|
+
// exposes stock IDs as static reference tables, not a stable list endpoint.
|
|
98
98
|
"synthesia-avatar": {
|
|
99
99
|
modelId: "synthesia-avatar",
|
|
100
100
|
type: ["avatar-video"],
|
|
@@ -115,7 +115,7 @@ exports.hostedAvatarConfigs = {
|
|
|
115
115
|
quality: 5,
|
|
116
116
|
speed: 2,
|
|
117
117
|
bestFor: "Enterprise/compliance-grade avatars across 140+ languages; pick for regulated buyers who need studio presenters and localization at scale.",
|
|
118
|
-
notes: "
|
|
118
|
+
notes: "Hosted engine — provider wired; runtime-gated on SYNTHESIA_API_KEY (enterprise plan). Renders the whole script in one shot (no scene split). Cost UNVERIFIED.",
|
|
119
119
|
},
|
|
120
120
|
avatar: {
|
|
121
121
|
audioDurationMin: 1,
|
|
@@ -42,45 +42,32 @@ export declare const MIN_CREDITS_PER_PAID_OP = 10;
|
|
|
42
42
|
*/
|
|
43
43
|
export declare const MIN_CREDITS_PER_IMAGE_OP = 2;
|
|
44
44
|
/**
|
|
45
|
-
* Credits granted on SIGNUP
|
|
46
|
-
*
|
|
47
|
-
* the product once before being asked for anything.
|
|
45
|
+
* Credits granted on SIGNUP. Zero since 2026-07-22 — signing up no longer buys
|
|
46
|
+
* anything.
|
|
48
47
|
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
48
|
+
* It used to be 10 (= one full floored generation = $1.00 of provider cost),
|
|
49
|
+
* handed to every new account with no card, no email verification, and no
|
|
50
|
+
* device/IP dedup. Measured against production: 23,962 users, 15,021 of whom
|
|
51
|
+
* consumed credits, and only 88 who ever spent past the free grant — a 0.59%
|
|
52
|
+
* conversion on roughly $15k of given-away provider cost. Combined with the
|
|
53
|
+
* refund-on-failure path, single accounts reached 274 jobs and 100 delivered
|
|
54
|
+
* videos on a 10-credit balance.
|
|
52
55
|
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
* device/IP dedup, so it is farmable by making another Google account. The
|
|
58
|
-
* mitigations that make 10 tolerable are:
|
|
59
|
-
* - the refund-on-failure loop is closed (see failureBilling.ts) — that loop,
|
|
60
|
-
* not the grant itself, is how single accounts reached 274 jobs and 100
|
|
61
|
-
* delivered videos on a 10-credit balance;
|
|
62
|
-
* - the floor is exactly one generation, so a farmed account gets one video.
|
|
56
|
+
* The free generation now lives behind the free trial, which requires a card
|
|
57
|
+
* (Stripe Checkout, `trialDays: 1` — payment.controller.ts). Same product
|
|
58
|
+
* experience, but the grant is tied to a payment instrument that Stripe can
|
|
59
|
+
* fingerprint, so it cannot be farmed by making another Google account.
|
|
63
60
|
*
|
|
64
|
-
*
|
|
65
|
-
* at minimum).
|
|
61
|
+
* Set this back above zero ONLY together with an anti-abuse gate (verified
|
|
62
|
+
* email + App Check at minimum) — otherwise the farming loop reopens.
|
|
66
63
|
*/
|
|
67
|
-
export declare const SIGNUP_GRANT_CREDITS =
|
|
64
|
+
export declare const SIGNUP_GRANT_CREDITS = 0;
|
|
68
65
|
/**
|
|
69
66
|
* Credits granted when a card-backed free trial actually starts (the
|
|
70
|
-
* `isTrialInvoice` branch in payment.service.handleInvoiceSucceeded).
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
* moves available credits by exactly +10 on top of whatever is left of the
|
|
75
|
-
* signup grant. Signup + trial with nothing spent = 20 available.
|
|
76
|
-
*
|
|
77
|
-
* It used to overwrite (`total: 10, consumed: 0`), which was invisible while
|
|
78
|
-
* SIGNUP_GRANT_CREDITS was 0 but became a silent no-op for users who added a
|
|
79
|
-
* card without having spent their signup grant. Paid (non-trial) invoices still
|
|
80
|
-
* SET the balance to the plan's allowance — those are a purchase, not a bonus.
|
|
81
|
-
*
|
|
82
|
-
* Deliberately equal to MIN_CREDITS_PER_PAID_OP so the trial is exactly one
|
|
83
|
-
* full generation of any kind.
|
|
67
|
+
* `isTrialInvoice` branch in payment.service.handleInvoiceSucceeded). This is
|
|
68
|
+
* the value the signup grant used to hand out for free, now earned by adding a
|
|
69
|
+
* payment method. Deliberately equal to MIN_CREDITS_PER_PAID_OP so the trial is
|
|
70
|
+
* exactly one full generation of any kind.
|
|
84
71
|
*/
|
|
85
72
|
export declare const TRIAL_GRANT_CREDITS = 10;
|
|
86
73
|
//# sourceMappingURL=creditUnit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"creditUnit.d.ts","sourceRoot":"","sources":["../../src/globals/creditUnit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,iDAAiD;AACjD,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC,0EAA0E;AAC1E,eAAO,MAAM,eAAe,QAAqB,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C
|
|
1
|
+
{"version":3,"file":"creditUnit.d.ts","sourceRoot":"","sources":["../../src/globals/creditUnit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,iDAAiD;AACjD,eAAO,MAAM,cAAc,MAAM,CAAC;AAElC,0EAA0E;AAC1E,eAAO,MAAM,eAAe,QAAqB,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAEtC;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,KAA0B,CAAC"}
|
|
@@ -45,44 +45,31 @@ exports.MIN_CREDITS_PER_PAID_OP = 10;
|
|
|
45
45
|
*/
|
|
46
46
|
exports.MIN_CREDITS_PER_IMAGE_OP = 2;
|
|
47
47
|
/**
|
|
48
|
-
* Credits granted on SIGNUP
|
|
49
|
-
*
|
|
50
|
-
* the product once before being asked for anything.
|
|
48
|
+
* Credits granted on SIGNUP. Zero since 2026-07-22 — signing up no longer buys
|
|
49
|
+
* anything.
|
|
51
50
|
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
51
|
+
* It used to be 10 (= one full floored generation = $1.00 of provider cost),
|
|
52
|
+
* handed to every new account with no card, no email verification, and no
|
|
53
|
+
* device/IP dedup. Measured against production: 23,962 users, 15,021 of whom
|
|
54
|
+
* consumed credits, and only 88 who ever spent past the free grant — a 0.59%
|
|
55
|
+
* conversion on roughly $15k of given-away provider cost. Combined with the
|
|
56
|
+
* refund-on-failure path, single accounts reached 274 jobs and 100 delivered
|
|
57
|
+
* videos on a 10-credit balance.
|
|
55
58
|
*
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
* device/IP dedup, so it is farmable by making another Google account. The
|
|
61
|
-
* mitigations that make 10 tolerable are:
|
|
62
|
-
* - the refund-on-failure loop is closed (see failureBilling.ts) — that loop,
|
|
63
|
-
* not the grant itself, is how single accounts reached 274 jobs and 100
|
|
64
|
-
* delivered videos on a 10-credit balance;
|
|
65
|
-
* - the floor is exactly one generation, so a farmed account gets one video.
|
|
59
|
+
* The free generation now lives behind the free trial, which requires a card
|
|
60
|
+
* (Stripe Checkout, `trialDays: 1` — payment.controller.ts). Same product
|
|
61
|
+
* experience, but the grant is tied to a payment instrument that Stripe can
|
|
62
|
+
* fingerprint, so it cannot be farmed by making another Google account.
|
|
66
63
|
*
|
|
67
|
-
*
|
|
68
|
-
* at minimum).
|
|
64
|
+
* Set this back above zero ONLY together with an anti-abuse gate (verified
|
|
65
|
+
* email + App Check at minimum) — otherwise the farming loop reopens.
|
|
69
66
|
*/
|
|
70
|
-
exports.SIGNUP_GRANT_CREDITS =
|
|
67
|
+
exports.SIGNUP_GRANT_CREDITS = 0;
|
|
71
68
|
/**
|
|
72
69
|
* Credits granted when a card-backed free trial actually starts (the
|
|
73
|
-
* `isTrialInvoice` branch in payment.service.handleInvoiceSucceeded).
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
* moves available credits by exactly +10 on top of whatever is left of the
|
|
78
|
-
* signup grant. Signup + trial with nothing spent = 20 available.
|
|
79
|
-
*
|
|
80
|
-
* It used to overwrite (`total: 10, consumed: 0`), which was invisible while
|
|
81
|
-
* SIGNUP_GRANT_CREDITS was 0 but became a silent no-op for users who added a
|
|
82
|
-
* card without having spent their signup grant. Paid (non-trial) invoices still
|
|
83
|
-
* SET the balance to the plan's allowance — those are a purchase, not a bonus.
|
|
84
|
-
*
|
|
85
|
-
* Deliberately equal to MIN_CREDITS_PER_PAID_OP so the trial is exactly one
|
|
86
|
-
* full generation of any kind.
|
|
70
|
+
* `isTrialInvoice` branch in payment.service.handleInvoiceSucceeded). This is
|
|
71
|
+
* the value the signup grant used to hand out for free, now earned by adding a
|
|
72
|
+
* payment method. Deliberately equal to MIN_CREDITS_PER_PAID_OP so the trial is
|
|
73
|
+
* exactly one full generation of any kind.
|
|
87
74
|
*/
|
|
88
75
|
exports.TRIAL_GRANT_CREDITS = exports.MIN_CREDITS_PER_PAID_OP;
|
package/lib/globals/types.d.ts
CHANGED
|
@@ -141,7 +141,17 @@ export declare enum ERedisQueues {
|
|
|
141
141
|
* generates a landing-page slug per recipient. The per-recipient renders are
|
|
142
142
|
* ordinary avatar jobs handled by the existing AvatarJobProcessor.
|
|
143
143
|
*/
|
|
144
|
-
OUTREACH_PERSONALIZE_JOBS = "outreach-personalize-job-queue"
|
|
144
|
+
OUTREACH_PERSONALIZE_JOBS = "outreach-personalize-job-queue",
|
|
145
|
+
/**
|
|
146
|
+
* Output QA — one job per MCP `check_video_quality` / `repair_video` call.
|
|
147
|
+
* The MCP server owns no ffmpeg (and shouldn't stream video bytes through a
|
|
148
|
+
* small stateless container), so it validates + writes a `videoQaJobs` doc +
|
|
149
|
+
* enqueues here; the Express worker downloads the deliverable, runs the
|
|
150
|
+
* deterministic ffprobe/ffmpeg supervisor (`services/qa/outputQa.ts` — the
|
|
151
|
+
* same engine the demo pipeline uses), applies any permitted allow-listed
|
|
152
|
+
* repairs, and writes the report back. See notes/SAAS_DEMO_GENERATOR_PLAN.md §12.
|
|
153
|
+
*/
|
|
154
|
+
VIDEO_QA_JOBS = "video-qa-job-queue"
|
|
145
155
|
}
|
|
146
156
|
export declare const REDIS_QUEUES: ERedisQueues[];
|
|
147
157
|
/** X8 Social Suite — connected social platforms. Value = stable storage key. */
|
|
@@ -242,6 +252,16 @@ export declare enum EDemoVideoStatus {
|
|
|
242
252
|
* "awaiting_approval". No demo reaper touches this doc, so it can't be reaped.
|
|
243
253
|
*/
|
|
244
254
|
AWAITING_INPUT = "awaitingInput",
|
|
255
|
+
/**
|
|
256
|
+
* Recording real product footage in a headless browser (Tier 1 of the
|
|
257
|
+
* product-footage-capture feature — notes/PRODUCT_FOOTAGE_CAPTURE_PLAN.md).
|
|
258
|
+
* Runs between GATHERING and PLANNING when the user opted into
|
|
259
|
+
* `inputs.recordProductUrl` AND the worker's `DEMO_RECORD_ENABLED` kill-switch
|
|
260
|
+
* is on. Off by default, so most demos skip this stage entirely. Redelivery-
|
|
261
|
+
* resumable: a captured clip persisted to `capturedFootageUrls` is reused, never
|
|
262
|
+
* re-recorded.
|
|
263
|
+
*/
|
|
264
|
+
RECORDING = "recording",
|
|
245
265
|
PLANNING = "planning",
|
|
246
266
|
/**
|
|
247
267
|
* Materializing the spec's `generatedAssets` (AI images/clips the planner
|
|
@@ -253,6 +273,16 @@ export declare enum EDemoVideoStatus {
|
|
|
253
273
|
SCRIPTING = "scripting",
|
|
254
274
|
VOICING = "voicing",
|
|
255
275
|
MUXING = "muxing",
|
|
276
|
+
/**
|
|
277
|
+
* Output QA supervisor — deterministic ffprobe/ffmpeg validation of the muxed
|
|
278
|
+
* deliverable (duration parity, faststart/moov order, audio presence + non-
|
|
279
|
+
* silence, stream/dimension integrity) with a bounded ffmpeg auto-fix pass
|
|
280
|
+
* (re-mux faststart, loudness-normalize) then re-validate. Runs between MUXING
|
|
281
|
+
* and FINALIZING, demo-path only. NON-blocking: QA never fails the job — it
|
|
282
|
+
* records `qaReport` and best-effort repairs, then ships. Gated by the
|
|
283
|
+
* `DEMO_QA_DISABLED` kill-switch (on by default). See notes/SAAS_DEMO_GENERATOR_PLAN.md.
|
|
284
|
+
*/
|
|
285
|
+
QA_REVIEW = "qaReview",
|
|
256
286
|
FINALIZING = "finalizing",
|
|
257
287
|
READY = "ready",
|
|
258
288
|
FAILED = "failed",
|
|
@@ -365,7 +395,9 @@ export declare enum ERROR_CODE {
|
|
|
365
395
|
PROMPT_TOO_SHORT = "PROMPT_TOO_SHORT",
|
|
366
396
|
PROMPT_MISSING = "PROMPT_MISSING",
|
|
367
397
|
SERVICE_UNAVAILABLE = "SERVICE_UNAVAILABLE",
|
|
368
|
-
UNSUPPORTED_PARAMS = "UNSUPPORTED_PARAMS"
|
|
398
|
+
UNSUPPORTED_PARAMS = "UNSUPPORTED_PARAMS",
|
|
399
|
+
SOCIAL_NOT_ENTITLED = "SOCIAL_NOT_ENTITLED",
|
|
400
|
+
SOCIAL_ACCOUNT_LIMIT = "SOCIAL_ACCOUNT_LIMIT"
|
|
369
401
|
}
|
|
370
402
|
export declare enum ELANGUAGE_CODE {
|
|
371
403
|
af = "af",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/globals/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,cAAc,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IACJ,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AAED,oBAAY,eAAe;IACzB,MAAM,WAAW,CAAE,wCAAwC;IAC3D,WAAW,eAAe,CAAE,2DAA2D;IAGvF,SAAS,cAAc,CAAE,8CAA8C;IACvE,MAAM,WAAW,CAAE,+BAA+B;IAClD,mBAAmB,uBAAuB,CAAE,oEAAoE;IAChH,SAAS,cAAc;CACxB;AAED,oBAAY,iBAAiB;IAC3B,WAAW,eAAe,CAAE,qFAAqF;IACjH,SAAS,cAAc,CAAE,2FAA2F;IACpH,OAAO,YAAY,CAAE,kKAAkK;IACvL,MAAM,WAAW,CAAE,kEAAkE;IACrF,SAAS,cAAc,CAAE,sCAAsC;IAC/D;;;;;OAKG;IACH,SAAS,aAAa;IACtB;;;;;;OAMG;IACH,SAAS,cAAc;CACxB;AAMD,oBAAY,YAAY;IACtB,UAAU,oBAAoB;IAC9B,iJAAiJ;IACjJ,eAAe,yBAAyB;IACxC,6FAA6F;IAC7F,WAAW,qBAAqB;IAChC,iFAAiF;IACjF,WAAW,qBAAqB;IAChC,mJAAmJ;IACnJ,UAAU,oBAAoB;IAC9B;;;;;OAKG;IACH,cAAc,wBAAwB;IACtC;;;;OAIG;IACH,gBAAgB,0BAA0B;IAC1C;;;;;;;;OAQG;IACH,eAAe,yBAAyB;IACxC;;;;;;;OAOG;IACH,eAAe,yBAAyB;IACxC;;;;;;;;OAQG;IACH,oBAAoB,8BAA8B;IAClD;;;;;;;;OAQG;IACH,iBAAiB,2BAA2B;IAC5C;;;;;OAKG;IACH,cAAc,wBAAwB;IACtC;;;;;;OAMG;IACH,mBAAmB,6BAA6B;IAChD;;;;OAIG;IACH,mBAAmB,6BAA6B;IAChD;;;;;;;;OAQG;IACH,eAAe,yBAAyB;IACxC;;;;;;OAMG;IACH,yBAAyB,mCAAmC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/globals/types.ts"],"names":[],"mappings":"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"}
|
package/lib/globals/types.js
CHANGED
|
@@ -143,6 +143,16 @@ var ERedisQueues;
|
|
|
143
143
|
* ordinary avatar jobs handled by the existing AvatarJobProcessor.
|
|
144
144
|
*/
|
|
145
145
|
ERedisQueues["OUTREACH_PERSONALIZE_JOBS"] = "outreach-personalize-job-queue";
|
|
146
|
+
/**
|
|
147
|
+
* Output QA — one job per MCP `check_video_quality` / `repair_video` call.
|
|
148
|
+
* The MCP server owns no ffmpeg (and shouldn't stream video bytes through a
|
|
149
|
+
* small stateless container), so it validates + writes a `videoQaJobs` doc +
|
|
150
|
+
* enqueues here; the Express worker downloads the deliverable, runs the
|
|
151
|
+
* deterministic ffprobe/ffmpeg supervisor (`services/qa/outputQa.ts` — the
|
|
152
|
+
* same engine the demo pipeline uses), applies any permitted allow-listed
|
|
153
|
+
* repairs, and writes the report back. See notes/SAAS_DEMO_GENERATOR_PLAN.md §12.
|
|
154
|
+
*/
|
|
155
|
+
ERedisQueues["VIDEO_QA_JOBS"] = "video-qa-job-queue";
|
|
146
156
|
})(ERedisQueues || (exports.ERedisQueues = ERedisQueues = {}));
|
|
147
157
|
exports.REDIS_QUEUES = [
|
|
148
158
|
ERedisQueues.VIDEO_JOBS,
|
|
@@ -161,6 +171,7 @@ exports.REDIS_QUEUES = [
|
|
|
161
171
|
ERedisQueues.SOCIAL_METRICS_JOBS,
|
|
162
172
|
ERedisQueues.DEMO_VIDEO_JOBS,
|
|
163
173
|
ERedisQueues.OUTREACH_PERSONALIZE_JOBS,
|
|
174
|
+
ERedisQueues.VIDEO_QA_JOBS,
|
|
164
175
|
];
|
|
165
176
|
/** X8 Social Suite — connected social platforms. Value = stable storage key. */
|
|
166
177
|
var ESocialProvider;
|
|
@@ -271,6 +282,16 @@ var EDemoVideoStatus;
|
|
|
271
282
|
* "awaiting_approval". No demo reaper touches this doc, so it can't be reaped.
|
|
272
283
|
*/
|
|
273
284
|
EDemoVideoStatus["AWAITING_INPUT"] = "awaitingInput";
|
|
285
|
+
/**
|
|
286
|
+
* Recording real product footage in a headless browser (Tier 1 of the
|
|
287
|
+
* product-footage-capture feature — notes/PRODUCT_FOOTAGE_CAPTURE_PLAN.md).
|
|
288
|
+
* Runs between GATHERING and PLANNING when the user opted into
|
|
289
|
+
* `inputs.recordProductUrl` AND the worker's `DEMO_RECORD_ENABLED` kill-switch
|
|
290
|
+
* is on. Off by default, so most demos skip this stage entirely. Redelivery-
|
|
291
|
+
* resumable: a captured clip persisted to `capturedFootageUrls` is reused, never
|
|
292
|
+
* re-recorded.
|
|
293
|
+
*/
|
|
294
|
+
EDemoVideoStatus["RECORDING"] = "recording";
|
|
274
295
|
EDemoVideoStatus["PLANNING"] = "planning";
|
|
275
296
|
/**
|
|
276
297
|
* Materializing the spec's `generatedAssets` (AI images/clips the planner
|
|
@@ -282,6 +303,16 @@ var EDemoVideoStatus;
|
|
|
282
303
|
EDemoVideoStatus["SCRIPTING"] = "scripting";
|
|
283
304
|
EDemoVideoStatus["VOICING"] = "voicing";
|
|
284
305
|
EDemoVideoStatus["MUXING"] = "muxing";
|
|
306
|
+
/**
|
|
307
|
+
* Output QA supervisor — deterministic ffprobe/ffmpeg validation of the muxed
|
|
308
|
+
* deliverable (duration parity, faststart/moov order, audio presence + non-
|
|
309
|
+
* silence, stream/dimension integrity) with a bounded ffmpeg auto-fix pass
|
|
310
|
+
* (re-mux faststart, loudness-normalize) then re-validate. Runs between MUXING
|
|
311
|
+
* and FINALIZING, demo-path only. NON-blocking: QA never fails the job — it
|
|
312
|
+
* records `qaReport` and best-effort repairs, then ships. Gated by the
|
|
313
|
+
* `DEMO_QA_DISABLED` kill-switch (on by default). See notes/SAAS_DEMO_GENERATOR_PLAN.md.
|
|
314
|
+
*/
|
|
315
|
+
EDemoVideoStatus["QA_REVIEW"] = "qaReview";
|
|
285
316
|
EDemoVideoStatus["FINALIZING"] = "finalizing";
|
|
286
317
|
EDemoVideoStatus["READY"] = "ready";
|
|
287
318
|
EDemoVideoStatus["FAILED"] = "failed";
|
|
@@ -408,6 +439,12 @@ var ERROR_CODE;
|
|
|
408
439
|
// Request asked for a feature the selected model can't do (e.g. last-frame
|
|
409
440
|
// interpolation on a non-FLF model). Rejected at the API before billing.
|
|
410
441
|
ERROR_CODE["UNSUPPORTED_PARAMS"] = "UNSUPPORTED_PARAMS";
|
|
442
|
+
// X8 Social Suite — the user's plan doesn't include the requested Social
|
|
443
|
+
// capability (scheduling / AI growth / inbox / advanced analytics). The
|
|
444
|
+
// frontend maps this to an upgrade CTA (→ /dashboard/pricing).
|
|
445
|
+
ERROR_CODE["SOCIAL_NOT_ENTITLED"] = "SOCIAL_NOT_ENTITLED";
|
|
446
|
+
// X8 Social Suite — the user is at their plan's connected-account limit.
|
|
447
|
+
ERROR_CODE["SOCIAL_ACCOUNT_LIMIT"] = "SOCIAL_ACCOUNT_LIMIT";
|
|
411
448
|
})(ERROR_CODE || (exports.ERROR_CODE = ERROR_CODE = {}));
|
|
412
449
|
var ELANGUAGE_CODE;
|
|
413
450
|
(function (ELANGUAGE_CODE) {
|