update: session state, docs, screenshots
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
BIN
.claude/screenshots/accounting_after_save.png
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
.claude/screenshots/accounting_aligned.png
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
.claude/screenshots/accounting_checkboxes.png
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
.claude/screenshots/accounting_checkboxes_fixed.png
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
.claude/screenshots/accounting_current.png
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
.claude/screenshots/accounting_fixed_table.png
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
.claude/screenshots/accounting_table_issue.png
Normal file
|
After Width: | Height: | Size: 72 KiB |
BIN
.claude/screenshots/accounting_table_v2.png
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
.claude/screenshots/accounting_wide.png
Normal file
|
After Width: | Height: | Size: 69 KiB |
BIN
.claude/screenshots/accounting_with_config.png
Normal file
|
After Width: | Height: | Size: 54 KiB |
BIN
.claude/screenshots/orders_filters_after.png
Normal file
|
After Width: | Height: | Size: 271 KiB |
BIN
.claude/screenshots/orders_filters_final.png
Normal file
|
After Width: | Height: | Size: 271 KiB |
BIN
.claude/screenshots/orders_filters_fixed.png
Normal file
|
After Width: | Height: | Size: 270 KiB |
BIN
.claude/screenshots/orders_table_ref.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
.claude/screenshots/statuses_reference.png
Normal file
|
After Width: | Height: | Size: 152 KiB |
@@ -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 (08–12). 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_000050–000053_*.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).
|
||||
|
||||