From 6c355f5200cf2fbc3b44a8e0060659728d7312df Mon Sep 17 00:00:00 2001 From: xiaoxia Date: Sun, 27 Sep 2026 20:36:03 +0800 Subject: [PATCH] =?UTF-8?q?fix(worker):=20rendered=5Foutput=20=E6=94=B9?= =?UTF-8?q?=E4=B8=BA=20dict=20=E5=B1=95=E5=BC=80=EF=BC=8C=E9=81=BF?= =?UTF-8?q?=E5=85=8D=E6=89=8B=E5=86=99=E5=AD=97=E6=AE=B5=E7=99=BD=E5=90=8D?= =?UTF-8?q?=E5=8D=95=E6=BC=8F=E4=BC=A0=20fingerprint=5Fchunks/is=5Fduplica?= =?UTF-8?q?te=20=E7=AD=89=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/worker/worker_app/tasks/generation.py | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/apps/worker/worker_app/tasks/generation.py b/apps/worker/worker_app/tasks/generation.py index 1ba072f71..94e492205 100644 --- a/apps/worker/worker_app/tasks/generation.py +++ b/apps/worker/worker_app/tasks/generation.py @@ -1051,20 +1051,15 @@ def generate_video(self, task_id: str) -> dict: ) if _meta_model: meta = dict(_meta_model.extra_meta or {}) + # #2024/P0 finalize-400: 直接展开 _precompute_render_metadata 返回的 + # 完整 dict(含 file_url/fingerprint_dict/fingerprint_chunks/is_duplicate + # /duplicate_of/...),避免手写字段白名单漏传字段导致 finalize 读不到数据。 meta["rendered_output"] = { + **dict(rendered_output or {}), + # file_url/duration 由外层调用方拿到的实际上传结果,优先覆盖预计算值 "file_url": file_url, "file_size": file_size, "duration": duration, - "width": rendered_output.get("width", 1280), - "height": rendered_output.get("height", 720), - "fps": rendered_output.get("fps", 25.0), - "name": rendered_output.get("name", ""), - "thumbnail_url": rendered_output.get("thumbnail_url", ""), - "mode": rendered_output.get("mode", editing_mode.value), - "fingerprint_dict": rendered_output.get("fingerprint_dict"), - "batch_id": batch_id, - "project_id": project_id, - "user_id": user_id, } _meta_model.extra_meta = meta _finalize_meta_session.commit()