fix: honor fal scale adjust mask requests

This commit is contained in:
134 2026-07-07 19:57:36 +08:00
parent 40ce24feb8
commit 3828ec792d

View File

@ -471,6 +471,16 @@ function resolveScaleAdjustPreferredModelId(params: {
const maskCapableGptImage2 = gptImage2Candidates
.filter(isScaleAdjustMaskCapableModel)
.filter((entry) => entry.model.healthStatus !== "auto_disabled");
const requestedMaskCapableGptImage2 = requestedModel
? maskCapableGptImage2.find(
(entry) =>
entry.model.id === requestedModel.model.id ||
entry.model.modelId === requestedModel.model.modelId
)
: null;
if (requestedMaskCapableGptImage2) {
return requestedMaskCapableGptImage2.model.id;
}
if (maskCapableGptImage2[0]) {
return maskCapableGptImage2[0].model.id;
}
@ -5410,11 +5420,22 @@ export async function POST(request: NextRequest) {
} catch (error) {
scaleAdjustPatchReferenceFailed = true;
console.warn(
"[Canvas Local Edit] Scale adjust patch reference failed; falling back to source-only coordinate prompt:",
"[Canvas Local Edit] Scale adjust patch reference failed:",
{
error: error instanceof Error ? error.message : String(error),
structureLockedPatchWorkflow: useScaleAdjustStructureLockedPatchWorkflow,
}
);
if (useScaleAdjustStructureLockedPatchWorkflow) {
return NextResponse.json(
{
success: false,
error:
"比例调整参考图上传失败,请稍后重试;已停止本次生成以避免返回无效结果。",
},
{ status: 503 }
);
}
}
}
const shouldCreateScaleAdjustCropReferences =