refactor(tradein): normalize repair_state raw→enum at ingest (#621) #629

Merged
Light1YT merged 2 commits from refactor/621-normalize-repair-state into main 2026-05-28 15:18:12 +00:00

2 commits

Author SHA1 Message Date
f1d275af3a fix(tradein): wrap repair_state migration 073 in BEGIN/COMMIT (#621) 2026-05-28 20:17:20 +05:00
dfd608d6f2 refactor(tradein): нормализовать repair_state → enum на ингесте (#621)
listings.repair_state хранил сырые значения парсеров (cosmetic/euro/
designer/required/without/…), не совместимые с ожидаемым estimator-ом
enum needs_repair/standard/good/excellent. Покрытие ~2%, но значения
не совпадали с enum — repair_coef всегда возвращал 1.0 (no-op).

Решение: централизованный helper repair_state_normalizer.py со всеми
10 известными raw-значениями → 4 enum-buckets. Все ingest-пути
нормализуют на входе; миграция 073 бэкфилит существующие строки.
2026-05-28 20:12:35 +05:00