From 34ed511d9d20bf6882a4e1aefc543b4ec0c7a94a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hartmut=20N=C3=B6renberg?= Date: Wed, 22 Jul 2026 16:33:40 +0200 Subject: [PATCH] fix: remove stale cinematic legacy-only guard in dispatch_service MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The guard forced all cinematic output types to legacy dispatch because BLENDER_CINEMATIC did not exist in the workflow graph. M1 added that node, so the guard is now stale — it was preventing cinematic output types from ever using graph mode even after an admin sets workflow_rollout_mode=graph. The normal gate path handles it correctly: workflow_rollout_mode=legacy_only keeps it on legacy, and find_unsupported_graph_nodes preflight catches any workflow that doesn't actually contain a BLENDER_CINEMATIC node. Co-Authored-By: Claude Sonnet 4.6 --- .../app/domains/rendering/dispatch_service.py | 24 ------------------- 1 file changed, 24 deletions(-) diff --git a/backend/app/domains/rendering/dispatch_service.py b/backend/app/domains/rendering/dispatch_service.py index 98c1340..02dd31f 100644 --- a/backend/app/domains/rendering/dispatch_service.py +++ b/backend/app/domains/rendering/dispatch_service.py @@ -193,30 +193,6 @@ def dispatch_render_with_workflow(order_line_id: str) -> dict: ) return legacy_result - # Cinematic output types have no BLENDER_CINEMATIC graph node — force legacy regardless - # of what workflow_rollout_mode or workflow_definition_id say. - if output_type and isinstance(output_type.render_settings, dict) and output_type.render_settings.get("cinematic"): - logger.warning( - "order_line %s: output_type %s is cinematic but has a workflow_definition_id set; " - "forcing legacy dispatch (no BLENDER_CINEMATIC node exists in the workflow graph)", - order_line_id, - output_type.id, - ) - legacy_result = _legacy_dispatch(order_line_id) - legacy_result.update( - _build_rollout_signal( - gate_status="cinematic_legacy_only", - ready=False, - reasons=[ - "Cinematic output types always use the legacy dispatch path.", - "Remove the workflow_definition_id link to silence this warning.", - ], - workflow_def_id=wf_def.id, - output_type_id=output_type.id, - ) - ) - return legacy_result - configured_execution_mode = get_workflow_execution_mode(canonical_config, default="legacy") workflow_rollout_mode = _normalize_workflow_rollout_mode( getattr(output_type, "workflow_rollout_mode", None)