"""Named pipeline step identifiers. All Celery tasks and render scripts reference these constants so that log messages, DB records, and UI labels stay consistent across the codebase. """ from enum import StrEnum class StepName(StrEnum): # ── STEP file processing ────────────────────────────────────────── RESOLVE_STEP_PATH = "resolve_step_path" OCC_OBJECT_EXTRACT = "occ_object_extract" OCC_GLB_EXPORT = "occ_glb_export" GLB_BBOX = "glb_bbox" MATERIAL_MAP_RESOLVE = "material_map_resolve" AUTO_POPULATE_MATERIALS = "auto_populate_materials" # ── Thumbnail generation ───────────────────────────────────────── BLENDER_RENDER = "blender_render" THREEJS_RENDER = "threejs_render" THUMBNAIL_SAVE = "thumbnail_save" # ── Order line render ───────────────────────────────────────────── ORDER_LINE_SETUP = "order_line_setup" RESOLVE_TEMPLATE = "resolve_template" BLENDER_STILL = "blender_still" BLENDER_TURNTABLE = "blender_turntable" OUTPUT_SAVE = "output_save" # ── GLB / asset export ──────────────────────────────────────────── EXPORT_GLB_GEOMETRY = "export_glb_geometry" EXPORT_BLEND = "export_blend" # ── STL cache ──────────────────────────────────────────────────── STL_CACHE_GENERATE = "stl_cache_generate" # ── Notifications ───────────────────────────────────────────────── NOTIFY = "notify"