import json from decimal import Decimal, ROUND_HALF_UP def normalize_scalar(value: object) -> object: if isinstance(value, Decimal): return float(value) return value def round_weight(value: object) -> float | None: if value is None: return None decimal_value = Decimal(str(value)).quantize( Decimal("0.0001"), rounding=ROUND_HALF_UP, ) return float(decimal_value) def parse_video_list(value: object) -> list[str] | None: if value is None: return None if isinstance(value, list): return [str(item) for item in value] if isinstance(value, str): text = value.strip() if not text: return None try: parsed = json.loads(text) except json.JSONDecodeError: return [text] if isinstance(parsed, list): return [str(item) for item in parsed] return [text] return [str(value)]