- Функция process_checkout была слишком большой
- Валидация, расчёты и логика скидок были смешаны
- Использовались магические числа
- Код был трудно читаем
- Логика разделена на отдельные функции
- Магические числа вынесены в константы
- Улучшена читаемость и структура
- Все тесты проходят
Код стал короче, чище и проще