Files
j_kedzierski/.agents/context/operations.md
T

3.2 KiB
Raw Blame History

Notatki Operacyjne

Resetowanie bazy danych (db:reset)

Ważne: Skrypt db:reset wymaga zatrzymania działającego serwera Next.js (pnpm dev) przed uruchomieniem. W przeciwnym razie usunięcie pliku SQLite w trakcie działania (hot-swap pliku bazy) spowoduje zablokowanie go w trybie "read only" dla starego połączenia, co zaowocuje błędem podczas auto-migracji Payload: SQLITE_READONLY_DBMOVED: attempt to write a readonly database.

Skrypt w package.json ma wbudowane automatyczne ubijanie serwera działającego na porcie 3000 przed resetem: "db:reset": "lsof -ti:3000 | xargs kill -9 2>/dev/null || true; rm -f dev.db && cross-env NODE_OPTIONS=--no-deprecation payload run ./scripts/seed.ts"

Jeśli błąd się powtórzy, upewnij się, że nie działają inne ukryte procesy trzymające połączenie do dev.db.

Migracje i podatność strony Kontakt (ID 5)

Ostrzeżenie: Przy pisaniu jakichkolwiek skryptów modyfikujących układ stron (layout) w Payload CMS, ZAWSZE sprawdzaj stan strony Kontakt (ID 5) przed i po migracji. W przeszłości wadliwe skrypty (np. wczesna wersja migrate_faq.ts) przypisały do tej strony cudze bloki, co spowodowało całkowite nadpisanie układu (usunięcie pageHeader i contactInfo), a następnie skrypt "naprawczy" (fix_kontakt.ts) wyczyścił ten uszkodzony layout, zostawiając stronę z layout: [] we wszystkich językach. Zawsze sprawdzaj, czy modyfikując lub filtrując tablicę bloków dla jednej konkretnej strony (np. FAQ o ID 6), nie nadpisujesz omyłkowo strony sąsiedniej (np. Kontakt o ID 5).

Protokół Testowy: Hero i PageHeader (Responsywność i Motywy) - ZAKOŃCZONY

Rozwiązanie "Pustego Czarnego Obszaru"

Użytkownik słusznie zauważył, że w Dark Mode zamiast placeholdera pokazywał się pusty, czarny obszar z samym pływającym statem. Diagnoza wykazała, że klasa .bg-paper-noise w globals.css wymuszała background-color: var(--bg-color);. Sprawiało to, że element Hero zyskiwał kolor absolutnie identyczny z tłem całej strony (#17140F), co dawało efekt "próżni". Naprawa: Usunięto sztywny background-color z .bg-paper-noise. Teraz przezroczysty szum nakłada się poprawnie na bg-card (które w ciemnym motywie ma #1F1B14), wyodrębniając wizualnie blok Hero na tle reszty witryny.

Wykonanie Pełnego Testu (10 stron × 2 motywy)

Dla pewności użyto tymczasowego wymuszenia forcedTheme="dark" w Providers/index.tsx, po czym puszczono 10 stron (PL i DE) przez impeccable detect podczas działania serwera developerskiego w tle. Macierz wynikowa:

  1. /pl (Hero) - Light: OK | Dark: OK (0 occlusion/contrast errors)
  2. /pl/uslugi (PageHeader) - Light: OK | Dark: OK
  3. /pl/jak-sie-umowic (PageHeader) - Light: OK | Dark: OK
  4. /pl/o-nas (PageHeader) - Light: OK | Dark: OK
  5. /pl/faq (PageHeader) - Light: OK | Dark: OK
  6. /pl/kontakt (PageHeader) - Light: OK | Dark: OK
  7. /de (Hero) - Light: OK | Dark: OK
  8. /de/leistungen (PageHeader) - Light: OK | Dark: OK
  9. /de/terminvereinbarung (PageHeader) - Light: OK | Dark: OK
  10. /de/uber-uns (PageHeader) - Light: OK | Dark: OK

Brak błędów na jakiejkolwiek stronie. Tło widoczne. Text-occlusion: wyeliminowane. Kontrast > 4.5:1.