From 531994cccdeca6ddd5e044c5aef5f0f67592f1a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hartmut=20N=C3=B6renberg?= Date: Sun, 15 Mar 2026 19:50:12 +0100 Subject: [PATCH] fix: OCP import for BRepGProp + route metadata task to asset_pipeline - Fixed: from OCP.BRepGProp import BRepGProp as brepgprop (was lowercase) - Routed reextract_rich_metadata_task to asset_pipeline queue (render-worker has OCC/OCP installed, worker container does not) - Backfill verified: 45/45 products updated with volume, surface area, part count, complexity metrics Co-Authored-By: Claude Opus 4.6 (1M context) --- backend/app/domains/pipeline/tasks/extract_metadata.py | 2 +- backend/app/services/step_processor.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/app/domains/pipeline/tasks/extract_metadata.py b/backend/app/domains/pipeline/tasks/extract_metadata.py index ffc96aa..89956a7 100644 --- a/backend/app/domains/pipeline/tasks/extract_metadata.py +++ b/backend/app/domains/pipeline/tasks/extract_metadata.py @@ -254,7 +254,7 @@ def _auto_populate_materials_for_cad(cad_file_id: str, tenant_id: str | None = N eng.dispose() -@celery_app.task(name="app.tasks.step_tasks.reextract_rich_metadata_task", queue="step_processing") +@celery_app.task(name="app.tasks.step_tasks.reextract_rich_metadata_task", queue="asset_pipeline") def reextract_rich_metadata_task(): """Batch re-extract rich metadata (volume, surface area, complexity) for all completed CAD files.""" from sqlalchemy import create_engine, select as sql_select, update as sql_update diff --git a/backend/app/services/step_processor.py b/backend/app/services/step_processor.py index ea5b019..51b630e 100644 --- a/backend/app/services/step_processor.py +++ b/backend/app/services/step_processor.py @@ -709,7 +709,7 @@ def extract_rich_metadata(step_path: str) -> dict: from OCP.TCollection import TCollection_ExtendedString # type: ignore[no-redef] from OCP.TDF import TDF_LabelSequence, TDF_Label # type: ignore[no-redef] from OCP.XCAFDoc import XCAFDoc_ShapeTool # type: ignore[no-redef] - from OCP.BRepGProp import brepgprop # type: ignore[no-redef] + from OCP.BRepGProp import BRepGProp as brepgprop # type: ignore[no-redef] from OCP.GProp import GProp_GProps # type: ignore[no-redef] from OCP.BRepMesh import BRepMesh_IncrementalMesh # type: ignore[no-redef] from OCP.TopExp import TopExp_Explorer # type: ignore[no-redef]