@pinepaper.studio/mcp-server 1.6.36 → 1.6.37
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/README.md +95 -1
- package/dist/agent/types.d.ts +12 -12
- package/dist/browser/puppeteer-controller.d.ts.map +1 -1
- package/dist/browser/puppeteer-controller.js +3 -1
- package/dist/browser/puppeteer-controller.js.map +1 -1
- package/dist/build-info.json +2 -2
- package/dist/ontology/upstream-vocabulary.d.ts +2 -2
- package/dist/ontology/upstream-vocabulary.js +2 -2
- package/dist/tools/definitions.d.ts.map +1 -1
- package/dist/tools/definitions.js +70 -61
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/engine-lists.d.ts +30 -3
- package/dist/tools/engine-lists.d.ts.map +1 -1
- package/dist/tools/engine-lists.js +346 -4
- package/dist/tools/engine-lists.js.map +1 -1
- package/dist/tools/engine-methods.d.ts.map +1 -1
- package/dist/tools/engine-methods.js +1 -0
- package/dist/tools/engine-methods.js.map +1 -1
- package/dist/tools/engine-surface.d.ts +1 -1
- package/dist/tools/engine-surface.d.ts.map +1 -1
- package/dist/tools/engine-surface.js +19 -6
- package/dist/tools/engine-surface.js.map +1 -1
- package/dist/tools/export-file-receipt.d.ts +33 -0
- package/dist/tools/export-file-receipt.d.ts.map +1 -1
- package/dist/tools/export-file-receipt.js +49 -0
- package/dist/tools/export-file-receipt.js.map +1 -1
- package/dist/tools/frozen-output.d.ts +33 -0
- package/dist/tools/frozen-output.d.ts.map +1 -0
- package/dist/tools/frozen-output.js +73 -0
- package/dist/tools/frozen-output.js.map +1 -0
- package/dist/tools/handlers.d.ts +8 -0
- package/dist/tools/handlers.d.ts.map +1 -1
- package/dist/tools/handlers.js +107 -14
- package/dist/tools/handlers.js.map +1 -1
- package/dist/tools/shape-params.d.ts +2 -2
- package/dist/tools/shape-params.js +2 -2
- package/dist/tools/stick-vocabulary.d.ts +1 -1
- package/dist/tools/stick-vocabulary.js +1 -1
- package/dist/types/code-generator.d.ts +11 -1
- package/dist/types/code-generator.d.ts.map +1 -1
- package/dist/types/code-generator.js +365 -188
- package/dist/types/code-generator.js.map +1 -1
- package/dist/types/schemas.d.ts +77 -267
- package/dist/types/schemas.d.ts.map +1 -1
- package/dist/types/schemas.js +15 -136
- package/dist/types/schemas.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export-file-receipt.js","sourceRoot":"","sources":["../../src/tools/export-file-receipt.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"export-file-receipt.js","sourceRoot":"","sources":["../../src/tools/export-file-receipt.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A FILM THAT STOPS WHILE ITS SCENE STILL MOVES (LONGKEY36 / GRIEF).
|
|
3
|
+
*
|
|
4
|
+
* A 120 s export reported success: 3,600 frames, a clean decode, no warnings. Its picture was frozen from t = 0.5 s
|
|
5
|
+
* because the studio had rescaled the keyframe tracks. The key-time read-back (keyTimeGuard) catches that cause at
|
|
6
|
+
* write time; this catches the symptom on the delivered file, whatever the cause.
|
|
7
|
+
*
|
|
8
|
+
* Before a video export the server reads when each visible keyframe track last changes a value (SCENE_MOTION_PROBE_JS).
|
|
9
|
+
* After it, the studio's own per-frame hashes (video.frameHashes.hashes) say when the picture last changed. A track
|
|
10
|
+
* that should still be changing well after the picture stopped is named in a warning on the result. It is a warning,
|
|
11
|
+
* not a failure: a keyed change can be invisible for good reasons (an item behind another, a move off the canvas).
|
|
12
|
+
*/
|
|
13
|
+
export interface SceneTrack {
|
|
14
|
+
id: string;
|
|
15
|
+
until: number;
|
|
16
|
+
}
|
|
17
|
+
export interface SceneMotion {
|
|
18
|
+
tracks: SceneTrack[];
|
|
19
|
+
}
|
|
20
|
+
export interface FrozenOutput {
|
|
21
|
+
frozenAt: number;
|
|
22
|
+
exportEnd: number;
|
|
23
|
+
track: SceneTrack;
|
|
24
|
+
warning: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Visible items with a keyframe track whose values change, and the scene time of the last change: timeOffset plus the
|
|
28
|
+
* last key that differs from the key before it, capped at the clip's out point. A looping track changes for ever.
|
|
29
|
+
*/
|
|
30
|
+
export declare const SCENE_MOTION_PROBE_JS: string;
|
|
31
|
+
/** Compare the delivered frames with the scene's motion. Null when the check cannot run or finds nothing. */
|
|
32
|
+
export declare function frozenOutputCheck(exportResult: unknown, motion: unknown): FrozenOutput | null;
|
|
33
|
+
//# sourceMappingURL=frozen-output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frozen-output.d.ts","sourceRoot":"","sources":["../../src/tools/frozen-output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,UAAU;IAAG,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;AACzD,MAAM,WAAW,WAAW;IAAG,MAAM,EAAE,UAAU,EAAE,CAAA;CAAE;AACrD,MAAM,WAAW,YAAY;IAAG,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE;AAEzG;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAqB/B,CAAC;AAEN,6GAA6G;AAC7G,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,YAAY,GAAG,IAAI,CA0B7F"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A FILM THAT STOPS WHILE ITS SCENE STILL MOVES (LONGKEY36 / GRIEF).
|
|
3
|
+
*
|
|
4
|
+
* A 120 s export reported success: 3,600 frames, a clean decode, no warnings. Its picture was frozen from t = 0.5 s
|
|
5
|
+
* because the studio had rescaled the keyframe tracks. The key-time read-back (keyTimeGuard) catches that cause at
|
|
6
|
+
* write time; this catches the symptom on the delivered file, whatever the cause.
|
|
7
|
+
*
|
|
8
|
+
* Before a video export the server reads when each visible keyframe track last changes a value (SCENE_MOTION_PROBE_JS).
|
|
9
|
+
* After it, the studio's own per-frame hashes (video.frameHashes.hashes) say when the picture last changed. A track
|
|
10
|
+
* that should still be changing well after the picture stopped is named in a warning on the result. It is a warning,
|
|
11
|
+
* not a failure: a keyed change can be invisible for good reasons (an item behind another, a move off the canvas).
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Visible items with a keyframe track whose values change, and the scene time of the last change: timeOffset plus the
|
|
15
|
+
* last key that differs from the key before it, capped at the clip's out point. A looping track changes for ever.
|
|
16
|
+
*/
|
|
17
|
+
export const SCENE_MOTION_PROBE_JS = ("(function () {\n const all = app.itemRegistry && app.itemRegistry.getAll ? app.itemRegistry.getAll() : [];\n const tracks = [];\n for (const e of all) {\n const it = e && (e.item || e);\n const kfs = it && it.data && it.data.keyframes;\n if (!Array.isArray(kfs) || kfs.length < 2 || it.visible === false) continue;\n // A transparent item that never keys its opacity cannot change the picture.\n if (it.opacity === 0 && !kfs.some(function (k) { return k && k.properties && 'opacity' in k.properties; })) continue;\n let last = null;\n for (let i = 1; i < kfs.length; i++) {\n if (JSON.stringify((kfs[i] && kfs[i].properties) || {}) !== JSON.stringify((kfs[i - 1] && kfs" +
|
|
18
|
+
"[i - 1].properties) || {})) last = Number(kfs[i].time);\n }\n if (last === null || !isFinite(last)) continue;\n let until = it.data.keyframeLoop === true ? 1e9 : (Number(it.data.timeOffset) || 0) + last;\n const out = Number(it.data.clipOutPoint);\n if (isFinite(out) && out > 0) until = Math.min(until, out);\n tracks.push({ id: String(e.id || (it.data && (it.data.registryId || it.data.id)) || '?'), until: until });\n }\n tracks.sort(function (a, b) { return b.until - a.until; });\n return { tracks: tracks.slice(0, 5) };\n})()"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
);
|
|
39
|
+
/** Compare the delivered frames with the scene's motion. Null when the check cannot run or finds nothing. */
|
|
40
|
+
export function frozenOutputCheck(exportResult, motion) {
|
|
41
|
+
const m = motion;
|
|
42
|
+
const tracks = m && Array.isArray(m.tracks) ? m.tracks.filter((t) => t && typeof t.until === 'number') : [];
|
|
43
|
+
if (!tracks.length)
|
|
44
|
+
return null;
|
|
45
|
+
const v = exportResult?.video;
|
|
46
|
+
const hashes = v && v.frameHashes && Array.isArray(v.frameHashes.hashes) ? v.frameHashes.hashes : null;
|
|
47
|
+
const fps = Number(v?.range?.fps ?? v?.encode?.fps);
|
|
48
|
+
// A frame that could not be read back says nothing about whether the picture moved: no verdict.
|
|
49
|
+
if (!hashes || hashes.length < 2 || !(fps > 0) || hashes.some((h) => h == null))
|
|
50
|
+
return null;
|
|
51
|
+
const start = Number(v?.range?.startTime) || 0;
|
|
52
|
+
let lastChange = 0;
|
|
53
|
+
for (let i = 1; i < hashes.length; i++)
|
|
54
|
+
if (hashes[i] !== hashes[i - 1])
|
|
55
|
+
lastChange = i;
|
|
56
|
+
const frozenAt = start + lastChange / fps;
|
|
57
|
+
const exportEnd = start + hashes.length / fps;
|
|
58
|
+
const slack = Math.max(0.5, 3 / fps);
|
|
59
|
+
// The still tail must be real, and a track must still be changing well inside it.
|
|
60
|
+
if (exportEnd - frozenAt < slack * 2)
|
|
61
|
+
return null;
|
|
62
|
+
const track = tracks.find((t) => Math.min(t.until, exportEnd) > frozenAt + slack);
|
|
63
|
+
if (!track)
|
|
64
|
+
return null;
|
|
65
|
+
const r1 = (x) => Math.round(x * 100) / 100;
|
|
66
|
+
const runs = track.until >= 1e8 ? 'loops' : `changes until ${r1(track.until)} s`;
|
|
67
|
+
return {
|
|
68
|
+
frozenAt: r1(frozenAt), exportEnd: r1(exportEnd), track,
|
|
69
|
+
warning: `frozen_output: the picture stops changing at ${r1(frozenAt)} s of this ${r1(exportEnd - start)} s export, but ${track.id}'s keyframe track ${runs}. `
|
|
70
|
+
+ 'Check the frames: the motion after that point may be missing (a track the studio stored with the wrong times, or an item hidden or off the canvas).',
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=frozen-output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frozen-output.js","sourceRoot":"","sources":["../../src/tools/frozen-output.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/handlers.d.ts
CHANGED
|
@@ -118,6 +118,14 @@ export declare function withEngineReport(result: CallToolResult, report: Record<
|
|
|
118
118
|
* The studio's scene-lint warnings on an export (FxTool lintScene), one line each, so a centred title that runs
|
|
119
119
|
* out of the frame ("IGNAL" for "SIGNAL") is read on the success path rather than left in the JSON. Empty when none.
|
|
120
120
|
*/
|
|
121
|
+
/** Put a frozen-output finding on the result: in `warnings`, in the `warning` line the reply prints, and as `frozenOutput`. */
|
|
122
|
+
export declare function noteFrozenOutput(exportResult: unknown, sceneMotion: unknown): void;
|
|
123
|
+
/**
|
|
124
|
+
* A CLAIM THE NUMBERS NEXT TO IT CONTRADICT (tester, 1.6.36). The studio sets video.bitrateCeilingHeld: true
|
|
125
|
+
* whenever the file is within 10% OVER the target, and warns only past that, so a file 7% over its ceiling was
|
|
126
|
+
* reported as having held it. The flag is set from the file's own achievedBitrate and the target beside it.
|
|
127
|
+
*/
|
|
128
|
+
export declare function correctBitrateClaim(exportResult: unknown): void;
|
|
121
129
|
export declare function lintLines(exportResult: unknown): string;
|
|
122
130
|
/**
|
|
123
131
|
* The file as ffprobe read it, when it disagrees with what the studio encoded: one line per field. A summary
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/tools/handlers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/tools/handlers.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/handlers.js
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Supports i18n for localized error and success messages.
|
|
6
6
|
* Supports browser execution via Puppeteer.
|
|
7
7
|
*/
|
|
8
|
+
import { SCENE_MOTION_PROBE_JS, frozenOutputCheck } from './frozen-output.js';
|
|
8
9
|
import { dropPrivateRelationParams, normalizeBatchOperationNames, renamedArgumentsNote, RENAMED_ARGUMENTS_META_KEY } from './batch-op-names.js';
|
|
9
10
|
import { nestedIgnoredPaths } from './nested-ignored.js';
|
|
10
11
|
import { CRAFT_FRAME_JS, generateDrawWeave, generateDrawKnots, generateDrawSashiko, generateDrawSubdivision, generateUiKit, uiKitCallProblems, } from './craft-tools.js';
|
|
@@ -38,7 +39,7 @@ import { ZodError, z } from 'zod';
|
|
|
38
39
|
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
39
40
|
import { effectClass } from './effect-class.js';
|
|
40
41
|
import { capabilityAllowed, capabilityRefusal, CAPABILITY_SWITCH } from '../utils/capabilities.js';
|
|
41
|
-
import { exportFileReceiptOrReason, receiptErrorLine } from './export-file-receipt.js';
|
|
42
|
+
import { exportFileReceiptOrReason, receiptErrorLine, deliverAacIfOpus } from './export-file-receipt.js';
|
|
42
43
|
import { ExportStepError, errorText, verifySavedFile, writeStep, bytesForSave } from './export-file-check.js';
|
|
43
44
|
import { EFFECT_BEFORE_JS, effectAfterJs, namedItemIds, idMayBeGone, NO_CHANGE_NOTE } from './effect-check.js';
|
|
44
45
|
import { writeFile, mkdir, appendFile, unlink, readFile, stat } from 'node:fs/promises';
|
|
@@ -746,6 +747,21 @@ export function withEngineReport(result, report) {
|
|
|
746
747
|
_meta: { ...(result._meta ?? {}), [RECEIPTS_META_KEY]: body },
|
|
747
748
|
};
|
|
748
749
|
}
|
|
750
|
+
/** B45 option D: the delivered file's audio, in the result and its words. */
|
|
751
|
+
function audioDeliveryFields(d) {
|
|
752
|
+
if (d.action === 'transcoded')
|
|
753
|
+
return { audioDelivered: { ...d.audio, preRemux: d.preRemux, note: 'file.sha256 is the delivered file. The studio file hash, bitExact and provenance describe the bytes before the audio was re-encoded; its frameHashes still describe the video, which was copied unchanged.' } };
|
|
754
|
+
if (d.action === 'kept-opus')
|
|
755
|
+
return { audioNote: d.note };
|
|
756
|
+
return {};
|
|
757
|
+
}
|
|
758
|
+
function audioDeliveryLine(d) {
|
|
759
|
+
if (d.action === 'transcoded')
|
|
760
|
+
return `Audio: re-encoded from Opus to AAC (${d.audio.bitrate}); the video is copied unchanged, and the file has a new sha256.\n`;
|
|
761
|
+
if (d.action === 'kept-opus')
|
|
762
|
+
return `Audio: ${d.note}\n`;
|
|
763
|
+
return '';
|
|
764
|
+
}
|
|
749
765
|
function executedResult(code, result, screenshot, description, report) {
|
|
750
766
|
const resultObj = { success: true, result };
|
|
751
767
|
if (description)
|
|
@@ -851,6 +867,43 @@ function redactGeneratedCode(details) {
|
|
|
851
867
|
* The studio's scene-lint warnings on an export (FxTool lintScene), one line each, so a centred title that runs
|
|
852
868
|
* out of the frame ("IGNAL" for "SIGNAL") is read on the success path rather than left in the JSON. Empty when none.
|
|
853
869
|
*/
|
|
870
|
+
/** Put a frozen-output finding on the result: in `warnings`, in the `warning` line the reply prints, and as `frozenOutput`. */
|
|
871
|
+
export function noteFrozenOutput(exportResult, sceneMotion) {
|
|
872
|
+
if (!exportResult || typeof exportResult !== 'object')
|
|
873
|
+
return;
|
|
874
|
+
const f = frozenOutputCheck(exportResult, sceneMotion);
|
|
875
|
+
if (!f)
|
|
876
|
+
return;
|
|
877
|
+
const r = exportResult;
|
|
878
|
+
r.frozenOutput = { frozenAt: f.frozenAt, exportEnd: f.exportEnd, itemId: f.track.id, trackUntil: f.track.until >= 1e8 ? 'loops' : f.track.until };
|
|
879
|
+
if (Array.isArray(r.warnings))
|
|
880
|
+
r.warnings.push(f.warning);
|
|
881
|
+
else
|
|
882
|
+
r.warnings = [f.warning];
|
|
883
|
+
r.warning = typeof r.warning === 'string' && r.warning ? r.warning + ' ' + f.warning : f.warning;
|
|
884
|
+
}
|
|
885
|
+
/**
|
|
886
|
+
* A CLAIM THE NUMBERS NEXT TO IT CONTRADICT (tester, 1.6.36). The studio sets video.bitrateCeilingHeld: true
|
|
887
|
+
* whenever the file is within 10% OVER the target, and warns only past that, so a file 7% over its ceiling was
|
|
888
|
+
* reported as having held it. The flag is set from the file's own achievedBitrate and the target beside it.
|
|
889
|
+
*/
|
|
890
|
+
export function correctBitrateClaim(exportResult) {
|
|
891
|
+
const r = exportResult;
|
|
892
|
+
const v = r && typeof r === 'object' ? r.video : null;
|
|
893
|
+
if (!v || typeof v !== 'object' || v.bitrateCeilingHeld !== true)
|
|
894
|
+
return;
|
|
895
|
+
const target = Number(v.bitrate), achieved = Number(v.achievedBitrate);
|
|
896
|
+
if (!(target > 0) || !(achieved > target))
|
|
897
|
+
return;
|
|
898
|
+
const over = Math.round((achieved / target - 1) * 1000) / 10;
|
|
899
|
+
v.bitrateCeilingHeld = false;
|
|
900
|
+
v.bitrateOverPercent = over;
|
|
901
|
+
const msg = `bitrate_exceeded: the ${(target / 1e6).toFixed(2)} Mbps target was not held: the file is ${(achieved / 1e6).toFixed(2)} Mbps (${over}% over). The browser encoder treats the target loosely on content it cannot compress; pass a lower bitrate, or bitrateMode 'constant', which held closer in measurement.`;
|
|
902
|
+
if (Array.isArray(r.warnings))
|
|
903
|
+
r.warnings.push(msg);
|
|
904
|
+
else
|
|
905
|
+
r.warnings = [msg];
|
|
906
|
+
}
|
|
854
907
|
export function lintLines(exportResult) {
|
|
855
908
|
const w = exportResult?.lintWarnings;
|
|
856
909
|
if (!Array.isArray(w) || !w.length)
|
|
@@ -4255,6 +4308,11 @@ You can now start creating new items on a clean canvas.${sizeNote}`,
|
|
|
4255
4308
|
if (!exportSessionManager.hasActiveJob()) {
|
|
4256
4309
|
exportSessionManager.startJob({ name: 'auto_session', screenshotPolicy: 'on_complete' });
|
|
4257
4310
|
}
|
|
4311
|
+
// The scene's motion, read before a video export so the delivered frames can be checked against it
|
|
4312
|
+
// (frozen-output.ts). A probe that cannot run gives no verdict, never a false one.
|
|
4313
|
+
const sceneMotion = /^(mp4|webm|auto|)$/.test(String(input.format ?? ''))
|
|
4314
|
+
? await controller.executeCode(SCENE_MOTION_PROBE_JS, false).then((r) => (r.success ? r.result : null)).catch(() => null)
|
|
4315
|
+
: null;
|
|
4258
4316
|
const exportBrowserResult = await controller.executeCode(code, false, {
|
|
4259
4317
|
governorTimeoutMs: exportGovernorTimeoutMs(),
|
|
4260
4318
|
});
|
|
@@ -4263,6 +4321,8 @@ You can now start creating new items on a clean canvas.${sizeNote}`,
|
|
|
4263
4321
|
return errorResult(ErrorCodes.EXECUTION_ERROR, exportBrowserResult.error || 'Export failed', { code }, { toolName: 'pinepaper_agent_export', canvasState: canvasState || undefined });
|
|
4264
4322
|
}
|
|
4265
4323
|
const exportResult = exportBrowserResult.result;
|
|
4324
|
+
correctBitrateClaim(exportResult);
|
|
4325
|
+
noteFrozenOutput(exportResult, sceneMotion);
|
|
4266
4326
|
// TWO VERDICTS, and only one of them was being read.
|
|
4267
4327
|
//
|
|
4268
4328
|
// `exportBrowserResult.success` says the CODE RAN. The export's own
|
|
@@ -4316,14 +4376,20 @@ You can now start creating new items on a clean canvas.${sizeNote}`,
|
|
|
4316
4376
|
format,
|
|
4317
4377
|
chunkBytes: Number(exportResult.chunkBytes) || undefined,
|
|
4318
4378
|
}, input.platform || 'auto');
|
|
4379
|
+
const delivery = await deliverAacIfOpus(filePath, format, exportResult, input.platform);
|
|
4380
|
+
if (delivery.action === 'refuse') {
|
|
4381
|
+
await (await import('node:fs/promises')).unlink(filePath).catch(() => undefined);
|
|
4382
|
+
return errorResult(ErrorCodes.EXECUTION_ERROR, delivery.message, { code: 'audio_codec_unavailable', format, platform: input.platform }, { toolName: 'pinepaper_agent_export' });
|
|
4383
|
+
}
|
|
4319
4384
|
const receipt = await exportFileReceiptOrReason(filePath, exportResult);
|
|
4320
|
-
const
|
|
4385
|
+
const deliveredSize = 'bytes' in receipt ? receipt.bytes : fileSize;
|
|
4386
|
+
const cleanResult = { ...exportResult, data: undefined, filePath, fileSize: deliveredSize, chunks, file: receipt, ...audioDeliveryFields(delivery) };
|
|
4321
4387
|
return withEngineReport({
|
|
4322
4388
|
structuredContent: boundedStructured(cleanResult),
|
|
4323
4389
|
content: [{
|
|
4324
4390
|
type: 'text',
|
|
4325
|
-
text: `Export saved to file:\n\nFile: ${filePath}\nFormat: ${format}\nSize: ${(
|
|
4326
|
-
}, exportFileLink(filePath,
|
|
4391
|
+
text: `Export saved to file:\n\nFile: ${filePath}\nFormat: ${format}\nSize: ${(deliveredSize / 1024).toFixed(1)} KB\nPlatform: ${input.platform}\nPaged out of the studio's export store in ${chunks} chunk${chunks === 1 ? '' : 's'}\n${typeof exportResult.warning === 'string' ? `WARNING: ${exportResult.warning}\n` : ''}${audioDeliveryLine(delivery)}${receiptErrorLine(receipt)}${'receiptError' in receipt ? '' : probeLines(receipt)}${lintLines(exportResult)}\nResult: ${JSON.stringify(cleanResult, null, 2)}`,
|
|
4392
|
+
}, exportFileLink(filePath, deliveredSize)],
|
|
4327
4393
|
}, exportBrowserResult.report);
|
|
4328
4394
|
}
|
|
4329
4395
|
catch (streamError) {
|
|
@@ -4378,9 +4444,15 @@ You can now start creating new items on a clean canvas.${sizeNote}`,
|
|
|
4378
4444
|
data.length > SAVE_THRESHOLD_BYTES);
|
|
4379
4445
|
if (shouldSaveToFile) {
|
|
4380
4446
|
try {
|
|
4381
|
-
const { filePath, fileSize } = await saveExportToFile(data, format, input.platform || 'auto');
|
|
4447
|
+
const { filePath, fileSize: savedSize } = await saveExportToFile(data, format, input.platform || 'auto');
|
|
4448
|
+
const delivery = await deliverAacIfOpus(filePath, format, exportResult, input.platform);
|
|
4449
|
+
if (delivery.action === 'refuse') {
|
|
4450
|
+
await (await import('node:fs/promises')).unlink(filePath).catch(() => undefined);
|
|
4451
|
+
return errorResult(ErrorCodes.EXECUTION_ERROR, delivery.message, { code: 'audio_codec_unavailable', format, platform: input.platform }, { toolName: 'pinepaper_agent_export' });
|
|
4452
|
+
}
|
|
4382
4453
|
const receipt = await exportFileReceiptOrReason(filePath, exportResult);
|
|
4383
|
-
const
|
|
4454
|
+
const fileSize = 'bytes' in receipt ? receipt.bytes : savedSize;
|
|
4455
|
+
const cleanResult = { ...exportResult, data: undefined, filePath, fileSize, file: receipt, ...audioDeliveryFields(delivery) };
|
|
4384
4456
|
// A mix that dropped sounds wrote a perfectly good file that is
|
|
4385
4457
|
// missing tracks. It rides the SUCCESS path, which is exactly why
|
|
4386
4458
|
// it has to be said out loud here rather than left in the JSON.
|
|
@@ -4390,7 +4462,7 @@ You can now start creating new items on a clean canvas.${sizeNote}`,
|
|
|
4390
4462
|
content: [{
|
|
4391
4463
|
type: 'text',
|
|
4392
4464
|
text: `Export saved to file:\n\nFile: ${filePath}\nFormat: ${format}\nSize: ${(fileSize / 1024).toFixed(1)} KB\nPlatform: ${input.platform}\n`
|
|
4393
|
-
+ (dropNote ? `DROPPED: ${dropNote}\n` : '')
|
|
4465
|
+
+ (dropNote ? `DROPPED: ${dropNote}\n` : '') + audioDeliveryLine(delivery)
|
|
4394
4466
|
// The studio's own warning on a saved file (a GIF over its maxBytes budget, GIFMAX34) was only
|
|
4395
4467
|
// inside the Result JSON below; a reader of the words missed it.
|
|
4396
4468
|
+ (typeof exportResult.warning === 'string' ? `WARNING: ${exportResult.warning}\n` : '')
|
|
@@ -4458,11 +4530,28 @@ You can now start creating new items on a clean canvas.${sizeNote}`,
|
|
|
4458
4530
|
case 'list_styles':
|
|
4459
4531
|
return dataResult({ styles: designSystems.listStyles() });
|
|
4460
4532
|
case 'compose': {
|
|
4533
|
+
// NO SIZE GIVEN MEANS YOUR CANVAS, not the style's own (RISO-RESIZE, owner 2026-11-14). A style laid out
|
|
4534
|
+
// at its default size (1280x720 for most) and resized the canvas to it, so a 1080x1920 project became
|
|
4535
|
+
// 1280x720. Where the studio is reachable, an unsized compose uses the current canvas size.
|
|
4536
|
+
let width = input.width, height = input.height;
|
|
4537
|
+
let sizeFrom = width !== undefined || height !== undefined ? 'asked' : 'style';
|
|
4538
|
+
if (sizeFrom === 'style' && input.draw !== false && options.executeInBrowser) {
|
|
4539
|
+
const ctl = options.browserController || getBrowserController();
|
|
4540
|
+
if (ctl.connected) {
|
|
4541
|
+
const cs = await ctl.executeCode('(function () { const s = app.getCanvasSize ? app.getCanvasSize() : null; return s && s.width > 0 && s.height > 0 ? { width: s.width, height: s.height } : null; })()', false)
|
|
4542
|
+
.then((r) => (r.success ? r.result : null)).catch(() => null);
|
|
4543
|
+
if (cs) {
|
|
4544
|
+
width = cs.width;
|
|
4545
|
+
height = cs.height;
|
|
4546
|
+
sizeFrom = 'canvas';
|
|
4547
|
+
}
|
|
4548
|
+
}
|
|
4549
|
+
}
|
|
4461
4550
|
let scene;
|
|
4462
4551
|
try {
|
|
4463
4552
|
scene = designSystems.compose(input.style, {
|
|
4464
4553
|
title: input.title, subtitle: input.subtitle, body: input.body,
|
|
4465
|
-
width
|
|
4554
|
+
width, height, variant: input.variant,
|
|
4466
4555
|
});
|
|
4467
4556
|
}
|
|
4468
4557
|
catch (composeError) {
|
|
@@ -4476,10 +4565,12 @@ You can now start creating new items on a clean canvas.${sizeNote}`,
|
|
|
4476
4565
|
// Some vendored styles lay out at their OWN fixed size and ignore
|
|
4477
4566
|
// width/height (swiss_typographic is always 1280x720), so a caller
|
|
4478
4567
|
// asking for 1080x1080 got a resized canvas (gate run 3). Say so.
|
|
4479
|
-
const sizeIgnored = (
|
|
4480
|
-
|| (
|
|
4568
|
+
const sizeIgnored = (width !== undefined && width !== scene.width)
|
|
4569
|
+
|| (height !== undefined && height !== scene.height);
|
|
4481
4570
|
const sizeWarning = sizeIgnored
|
|
4482
|
-
?
|
|
4571
|
+
? (sizeFrom === 'canvas'
|
|
4572
|
+
? `"${scene.style}" lays out at its own size, ${scene.width}x${scene.height}, not your canvas's ${width}x${height}, so the canvas is resized to it`
|
|
4573
|
+
: `"${scene.style}" lays out at its own size, ${scene.width}x${scene.height}; the requested ${input.width ?? '?'}x${input.height ?? '?'} was not used`)
|
|
4483
4574
|
: undefined;
|
|
4484
4575
|
// BAUHAUS-SUBTITLE: at a size the style was not laid out for, its
|
|
4485
4576
|
// proportions can put text across a shape (bauhaus at 1920x1080
|
|
@@ -4487,18 +4578,20 @@ You can now start creating new items on a clean canvas.${sizeNote}`,
|
|
|
4487
4578
|
// the result names each collision rather than drawing it as intended.
|
|
4488
4579
|
const collisions = designSystems.scalingCollisions(input.style, {
|
|
4489
4580
|
title: input.title, subtitle: input.subtitle, body: input.body,
|
|
4490
|
-
width
|
|
4581
|
+
width, height, variant: input.variant,
|
|
4491
4582
|
}, scene);
|
|
4492
4583
|
const layoutWarning = collisions.length
|
|
4493
4584
|
? `at ${scene.width}x${scene.height} the "${scene.style}" layout runs text onto a shape it does not touch at its own default size: `
|
|
4494
4585
|
+ collisions.map((c) => `${c.text} over ${c.shape}`).join(', ')
|
|
4495
|
-
+ '.
|
|
4586
|
+
+ '. For the layout as designed, compose at the style\'s own size (draw: false without width/height returns it), or move the text afterwards with pinepaper_modify_item.'
|
|
4496
4587
|
: undefined;
|
|
4497
4588
|
const collisionReport = collisions.length ? { layoutCollisions: collisions, layoutWarning } : {};
|
|
4498
4589
|
if (input.draw === false) {
|
|
4499
4590
|
return dataResult({ scene, ops, drawn: false, ...(sizeWarning ? { warning: sizeWarning } : {}), ...collisionReport });
|
|
4500
4591
|
}
|
|
4501
|
-
|
|
4592
|
+
// A style that cannot lay out at your canvas size is fitted into it rather than resizing it.
|
|
4593
|
+
const fitTo = sizeFrom === 'canvas' && sizeIgnored && width && height ? { width, height } : undefined;
|
|
4594
|
+
const code = codeGenerator.generateDesignCompose(scene, ops, scene.style, sizeWarning, collisionReport, fitTo);
|
|
4502
4595
|
return executeOrGenerate(code, `Composed a ${scene.style} scene (${ops.length} items)`, options, 'pinepaper_design_system');
|
|
4503
4596
|
}
|
|
4504
4597
|
}
|