[OK] normalizacja zdjęcia wariantu PrestaShop [OK] dodatnie id_image jest zachowane [OK] mockup pozostaje w rawSnapshotJson [OK] normalizacja pierwszego zdjęcia galerii [OK] brak zdjęcia nie blokuje normalizacji [OK] odrzucenie nieprawidłowego mockupu DTO #1 [OK] odrzucenie nieprawidłowego mockupu DTO #2 [OK] odrzucenie nieprawidłowego mockupu DTO #3 [OK] walidacja PNG przez finfo i getimagesize [OK] SHA-256 uploadu ma 64 znaki [OK] walidacja JPEG [OK] odrzucenie SVG [OK] odrzucenie PHP [OK] odrzucenie wykonywalnego podwójnego rozszerzenia [OK] snapshot mockupu zapisuje asset i assignment [OK] snapshot zawiera captured_at [OK] snapshot nie ujawnia ścieżki prywatnej ani URL publikacji [OK] brak mockupu daje null w snapshotcie realizacji [OK] SQL jest niedestrukcyjny [OK] SQL tworzy trzy wymagane tabele [OK] SQL dodaje mockup_snapshot_json [OK] trasa kontrolera /mockup/wgraj [OK] trasa kontrolera /mockup/zastap [OK] trasa kontrolera /mockup/usun [OK] trasa kontrolera /mockup/pobierz [OK] hover pokazuje powiększony mockup [OK] podgląd hover nie przechwytuje kursora i zamyka się po mouseleave Wynik: 27 OK, 0 błędów.