🚀 CartList jest w fazie beta! Zarejestruj się i testuj za darmo. Dołącz teraz →
Zacznij za darmo →

Changelog

Historia zmian i aktualizacji CartList.

v6.22.4 v6.22.4

📦 Bump

Wszystkie zmiany z v6.22.0-v6.22.3 + drobne fixy. Stabilna wersja Sprint 1+2.

✅ Co jest w paczce (Sprint 1+2)

  • Feature Flags unification (Facade + FeatureGateService + Blade @feature)
  • OcrService centralization (OcrAvailability + Exception + API)
  • Stripe sync warning + audit command + cron
  • SMTP read-only display + test command
  • 10 Cron entries (z 6)
  • --cron-audit mode
  • 2 migracje (remove_dead_smtp_settings, unify_feature_flags)
  • Sentry integration
  • Auto-changelog cross-app

⚠ Known issue na produkcji (nie blokujące)

Cannot declare class CreateGroup — OPcache trzyma starą wersję klasy z poprzedniego deploya. Plik w paczce jest czysty, classmap też. Problem TYLKO na serwerze MyDevil.

Workaround: kontakt z support@mydevil.net z prośbą o restart PHP-FPM dla my.cartlist.app.

Nie blokuje aplikacji — wszystkie inne Resources działają, smoke test 22/22, production readiness 92%.


Sprint 1+2 finalna paczka · stabilna


Aplikacja: PWA · Środowisko: production · Wdrożenie: 2026-06-10 12:59

v6.22.3 — Hotfix migration v6.22.3

🐛 Naprawione

  • Migracja unify_feature_flags padała z błędem "Column 'rollout_percentage' cannot be null".
  • Kolumna rollout_percentage w tabeli feature_flags ma constraint NOT NULL z default 100, a migracja próbowała wstawić null.
  • Fix: ustawienie wartości 100 dla wszystkich nowych feature flags.

⚙️ Idempotency

Migracja unify_feature_flags ma check if (!$existing) więc:

  • 6 feature flags już zostało wstawionych w poprzednim (padłym) deploy: geofencing, price_comparison, barcode_scanner, ocr, gamification, settlements
  • 4 pozostałe wstawią się teraz: realtime, ai_suggestions, smart_suggestions, email_notifications
  • Migracja sama się dokończy bez konfliktów

Hotfix · migration only · zero zmian w kodzie


Aplikacja: PWA · Środowisko: production · Wdrożenie: 2026-06-10 11:40

v6.21.17 — Stripe production detection v6.21.17

🐛 Naprawione

  • Production readiness pokazywało Stripe jako "test mode" mimo że klucze są skonfigurowane produkcyjnie. Skrypt deploy szukał kluczy tylko w .env, podczas gdy Filament StripeSetup wizard zapisuje je w bazie (encrypted, bezpieczniej).
  • Skrypt deploy teraz sprawdza obydwa źródła: .env + zaszyfrowane Settings w bazie.

⚙️ Pod maską

  • Auto-detection mode (live/test) działa zarówno dla sk_live_ jak i rk_live_ (restricted keys)
  • Pre-flight check nie ostrzega o "puste STRIPE_SECRET" jeśli klucze są w DB

Skrypt deploy poprawnie raportuje stan Stripe — readiness score wyższy


Aplikacja: PWA · Środowisko: production · Wdrożenie: 2026-06-09 21:03

v6.21.16 — Sentry CDN load fix v6.21.16

🐛 Naprawione

  • Sentry frontend SDK nie ładował się — CDN aktualizuje bundle bez zmiany URL, więc weryfikacja SRI integrity nie działała. Usunięte SRI sprawdzanie (Sentry CDN to zaufany dostawca).
  • Plus rozszerzony classmap verify (sprawdza krytyczny trait SubscriptionPlan)

⚙️ Pod maską

  • Frontend Sentry teraz ładuje aktualną wersję bundle automatycznie
  • Auto-detect missing klas w composer classmap zawiera teraz Filament traits

Naprawia ostrzeżenia w konsoli przeglądarki


Aplikacja: PWA · Środowisko: production · Wdrożenie: 2026-06-09 20:53

v6.21.13 — Cleanup v6.21.13

⚙️ Pod maską

  • Refaktor komentarzy w kodzie — usunięte zbędne markery wersji
  • Spójniejszy styl dokumentacji w nowych plikach

Wewnętrzna porządki · bez wpływu na funkcje


Aplikacja: CMS · Środowisko: production · Wdrożenie: 2026-06-09 19:39

v6.21.11 — Drobne poprawki UX v6.21.11

🐛 Naprawione

  • Paginacja na stronie Changelog — strzałki były ogromne (defaultowe SVG bez wymiarów). Teraz elegancki paginator dopasowany do dark design landing
  • Plus poprawiona paginacja w sekcji forum (kategorie + wyszukiwarka)

⚙️ Pod maską

  • Globalnie zastąpiony domyślny Laravel paginator własnym, lighter view
  • Mobile-friendly (mniejsze przyciski + responsywne)
  • Active page highlighted neon green ze świecącym box-shadow

Drobna poprawka kosmetyczna · zero wpływu na funkcje


Aplikacja: CMS · Środowisko: production · Wdrożenie: 2026-06-09 13:10

v6.21.10 — Business plan "Wkrótce" + Auto-changelog v6.21.10

🚀 Co nowego

  • Plan Business teraz dostępny przez kontakt — pełna informacja o funkcjach + indywidualna wycena dla firm
  • Auto-changelog — każde wdrożenie automatycznie tworzy wpis tutaj (admin tylko publikuje)
  • Nowy publiczny endpoint API do tworzenia changelog z opisem

🎨 Zmiany w landing

  • Sekcja "Dla zespołów i firm" ma teraz badge "Wkrótce 🚀"
  • Cena Business dimmed z opisem "od X zł" + "ostateczna cena ustalana indywidualnie"
  • CTA zmieniony na "📧 Skontaktuj się z nami" (mailto: business@cartlist.app)
  • Lista features rozszerzona o SLA + dedykowany account manager
  • Self-service onboarding planowany na Q4 2026

🐛 Naprawione

  • Stabilność landing page po migracji Laravel 12 (JSON-LD escape)
  • Drobne poprawki w SEO + Schema.org markup

⚙️ Pod maską

  • Nowy endpoint POST /api/internal/release-stub (auto-changelog drafts)
  • Markdown parser dla automatycznie generowanego content (HTML z <h2>, <ul>, <strong>)
  • Idempotent seeder dla historycznego changelog (v6.20 + v6.21)

Wdrożenie nie wymaga żadnej akcji od użytkowników. Strona główna zostanie automatycznie odświeżona.


Aplikacja: CMS · Środowisko: production · Wdrożenie: 2026-06-09 12:51

Bezpieczeństwo i fundamenty — Laravel 12 v6.21

🔒 Kluczowa poprawka bezpieczeństwa

Załatana podatność w mechanizmie walidacji emaili (CVE-2026-48019, severity HIGH). Wszystkie nasze aplikacje są teraz w 100% odporne na ten konkretny typ ataków.

🚀 Nowsza wersja frameworka

Migracja na Laravel 12 oraz odświeżenie ponad 60 wewnętrznych pakietów. Aplikacja działa szybciej, jest bardziej stabilna i przygotowana na kolejne lata rozwoju.

🐛 Naprawione

  • Wersja aplikacji w Ustawieniach pokazuje teraz aktualną wersję (nie cache'owaną)
  • Bezpośredni link /register otwiera od razu zakładkę "Rejestracja" (zamiast logowania)
  • Strona główna cartlist.app — drobne poprawki w SEO i renderowaniu

Logowanie odciskiem palca + jeden regulamin v6.20-final

🔐 Loguj się błyskawicznie

Wprowadziliśmy logowanie odciskiem palca, Face ID lub PIN-em. Twoje dane biometryczne nigdy nie opuszczają urządzenia — przechowywane są lokalnie, jak w aplikacji bankowej.

Możesz też ustawić własny 4-cyfrowy PIN dla szybkiego dostępu, gdy biometria nie jest dostępna.

💾 BackupManager

W panelu admina dodaliśmy automatyczne kopie zapasowe Twoich danych z możliwością jednoklikowego przywrócenia. Twoje listy nigdy nie znikną.

📜 Regulamin zawsze aktualny

Połączyliśmy regulamin między aplikacją a stroną — zmiana w jednym miejscu trafia do wszystkich użytkowników w 5 minut. Plus dodaliśmy nowy checkbox zgodności na rejestracji (art. 38 pkt 13 ustawy o prawach konsumenta).

⚙️ Pod maską

  • 308 automatycznych testów po każdej zmianie kodu
  • 22-punktowy smoke test po każdym wdrożeniu
  • Production readiness score — sprawdza 10 kategorii gotowości

RODO compliance + hardening bezpieczeństwa v6.20

🛡 Bezpieczeństwo i RODO

  • Eksport danych RODO — pobierz wszystkie swoje dane pod /api/me/export (art. 20 RODO)
  • Customer Portal Stripe — zarządzaj subskrypcją bezpośrednio z aplikacji
  • Aktualizacja Regulaminu, Polityki Prywatności i Cookies — zgodność z polskim prawem konsumenckim
  • Idempotency dla Stripe webhooks — żadnych duplikatów płatności
  • Wszystkie błędy formularzy w pełni po polsku

⚡ Stabilność

  • Naprawione duplikaty w odznakach (race condition w gamification)
  • Defensive verification autoload po każdym deploy
  • Monitoring failed jobs z alertami Slack
  • API versioning + zdrowie systemu (/up)