update: session state, docs, screenshots

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-15 21:31:57 +01:00
parent 22ce87efe2
commit 8b3fb3fd0b
19 changed files with 159 additions and 49 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

View File

@@ -1,39 +1,40 @@
# Session State
Ostatnia aktualizacja: 2026-03-12
Ostatnia aktualizacja: 2026-03-15
## Aktualny cel
Naprawa błędów z `.paul/codebase/CONCERNS.md` w ramach Fazy 02 (Bug Fixes). Aktualnie zaplanowany Plan 02-02 — kursor `last_status_checked_at` w `AllegroStatusSyncService`.
Wdrożenie modułu paragonów (milestone v0.3) — 5 faz (0812). Dwie fazy ukończone, trzy pozostały.
## Co zostało zrobione
- Faza 01 (Tech Debt) — ukończona w całości (2 plany)
- Faza 02, Plan 01 — naprawiony martwy warunek ZPL page size w `AllegroShipmentService` (wpis usunięty z CONCERNS.md)
- Faza 02, Plan 02 — **PLAN UTWORZONY**, oczekuje na zatwierdzenie i uruchomienie APPLY
- Plik: `.paul/phases/02-bug-fixes/02-02-PLAN.md`
- STATE.md i ROADMAP.md zaktualizowane
- **Faza 0 (poza planem):** Nieaktywne przyciski w orders/show.php — klasa `btn--disabled` (opacity 0.3, cursor not-allowed)
- **Faza 08 — DB Foundation:** 4 migracje SQL (receipt_configs, receipts, receipt_number_counters, company_settings extension o BDO/REGON/KRS/logo), formularz danych firmy rozszerzony, dokumentacja
- **Faza 09 — Konfiguracja paragonów:** CRUD w Ustawienia > Księgowość (ReceiptConfigController + ReceiptConfigRepository + widok accounting.php), sublinek nawigacji, tłumaczenia PL
- **Poprawki globalne CSS:** form-control min-height 30px/border-radius 6px, form-grid align-items: start, klasa .table zamiast nieistniejącej .data-table
- **Fixy API:** Request::input() zamiast query(), Csrf::token() zamiast generate(), Csrf::validate() jako bool (if zamiast try/catch)
## Co zostało do zrobienia
- [ ] Zatwierdzić Plan 02-02 i uruchomić `/paul:apply .paul/phases/02-bug-fixes/02-02-PLAN.md`
- [ ] Po APPLY: uruchomić `/code-review` (required skill)
- [ ] Po APPLY: uruchomić `sonar-scanner` i zaktualizować `DOCS/todo.md`
- [ ] Zamknąć pętlę: `/paul:unify`
- [ ] Kontynuować z kolejnym błędem z CONCERNS.md
- **Faza 10:** Wystawianie paragonów z widoku zamówienia (backend ReceiptService + UI przycisk + modal wyboru konfiguracji + blokada is_invoice + zapis do receipts + wpis order_activity_log + zakładka Dokumenty powiązane)
- **Faza 11:** Podgląd i wydruk paragonu (HTML+CSS @media print + PDF w locie)
- **Faza 12:** Sekcja główna Księgowość — lista paragonów z filtrami, paginacją, eksport XLSX + nowa grupa w sidebarze
## Kluczowe pliki
| Plik | Rola |
|------|------|
| `.paul/phases/02-bug-fixes/02-02-PLAN.md` | Plan do wykonania — gotowy na APPLY |
| `src/Modules/Settings/AllegroStatusSyncService.php` | Plik do modyfikacji (filtr + markOrderStatusChecked) |
| `database/migrations/20260312_000047_add_last_status_checked_at_to_orders.sql` | Nowa migracja do utworzenia |
| `.paul/codebase/CONCERNS.md` | Źródło błędów — wpis do usunięcia po naprawieniu |
| `.paul/STATE.md` | Loop position: PLAN ✓, APPLY ○, UNIFY ○ |
- `.paul/ROADMAP.md` — roadmap z postępem v0.3
- `.paul/STATE.md` — aktualny stan (Phase 09 complete)
- `.paul/phases/08-db-foundation/08-01-SUMMARY.md` — podsumowanie fazy 08
- `.paul/phases/09-receipt-config/09-01-SUMMARY.md` — podsumowanie fazy 09
- `src/Modules/Settings/ReceiptConfigController.php` — kontroler CRUD konfiguracji
- `src/Modules/Settings/ReceiptConfigRepository.php` — repozytorium konfiguracji
- `resources/views/settings/accounting.php` — widok konfiguracji paragonów
- `database/migrations/20260315_000050000053_*.sql` — migracje modułu paragonów
## Ważne decyzje / ustalenia
- Kolumna `last_status_checked_at DATETIME NULL` dodawana do tabeli `orders` — istniejące rekordy mają NULL (zostaną sprawdzone przy pierwszym przebiegu)
- `markOrderStatusChecked()` wywoływane tylko po sukcesie, NIE w catch — błędnie zaimportowane nie dostają timestampu
- Wyjątki w `markOrderStatusChecked()` są cicho ignorowane (nie przerywają pętli sync)
- Tabela `orders` ma kolumny `source`, `source_order_id`, `source_updated_at` (ze schematu draft — są w produkcyjnym DB mimo braku w oficjalnych migracjach)
- Wymagane skille przed UNIFY: `/code-review` + `sonar-scanner`
- Puppeteer: zawsze viewport 1920x1080 (domyślny za mały, aktywuje media query 768px)
- Klasa Request nie ma metody query() — używać input() (obsługuje GET i POST)
- Csrf::token() do generowania, Csrf::validate() zwraca bool
- Tabele: klasa `.table` (nie `.data-table` — ta nie istnieje)
- receipts.order_id musi być BIGINT UNSIGNED (match orders.id)
- ON DELETE RESTRICT na receipt_configs (nie usuwaj konfiguracji z paragonami)
- Logo firmy: na razie pole tekstowe, upload w przyszłości
- Paul planuje przed wdrożeniem — nie implementować bez planu
## Następny krok
Uruchomić APPLY planu 02-02:
/paul:apply .paul/phases/02-bug-fixes/02-02-PLAN.md
Uruchomić `/paul:plan` dla Fazy 10 (Wystawianie paragonów z zamówienia). Plan powinien obejmować: ReceiptService, ReceiptRepository, rozszerzenie OrdersController, UI w orders/show.php (przycisk + modal + zakładka Dokumenty).