From e2c03fef9a5a73d291e340c4916d0553325179a4 Mon Sep 17 00:00:00 2001 From: Arfian Date: Sun, 22 Mar 2026 22:18:57 +0700 Subject: [PATCH] Fix: move lazy imports to top-level and use absolute paths to resolve ModuleNotFoundError in production --- backend/services/effects.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/services/effects.py b/backend/services/effects.py index 29ca5918..29d61e15 100644 --- a/backend/services/effects.py +++ b/backend/services/effects.py @@ -11,6 +11,8 @@ from typing import List, Optional from sqlalchemy.orm import Session from sqlalchemy.exc import IntegrityError +from backend.utils.effects import validate_effects_chain + from ..database import EffectPreset as DBEffectPreset from ..models import EffectPresetResponse, EffectPresetCreate, EffectPresetUpdate, EffectConfig @@ -52,7 +54,6 @@ def get_preset_by_name(name: str, db: Session) -> Optional[EffectPresetResponse] def create_preset(data: EffectPresetCreate, db: Session) -> EffectPresetResponse: """Create a new user effect preset.""" - from .utils.effects import validate_effects_chain chain_dicts = [e.model_dump() for e in data.effects_chain] error = validate_effects_chain(chain_dicts) @@ -94,7 +95,6 @@ def update_preset(preset_id: str, data: EffectPresetUpdate, db: Session) -> Opti if data.description is not None: preset.description = data.description if data.effects_chain is not None: - from .utils.effects import validate_effects_chain chain_dicts = [e.model_dump() for e in data.effects_chain] error = validate_effects_chain(chain_dicts)