feat(27-shipment-tracking-backend): infrastruktura sledzenia przesylek — statusy, tracking services, cron handler
Dwupoziomowy system statusow dostawy (normalized + raw z API), implementacje trackingu dla InPost ShipX, Apaczka i Allegro WZA, cron handler odpytujacy aktywne przesylki co 15 minut. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -5,15 +5,15 @@
|
||||
See: .paul/PROJECT.md (updated 2026-03-12)
|
||||
|
||||
**Core value:** Sprzedawca może obsługiwać zamówienia ze wszystkich kanałów sprzedaży i nadawać przesyłki bez przełączania się między platformami.
|
||||
**Current focus:** v1.1 Ręczny numer przesyłki — MILESTONE COMPLETE ✓
|
||||
**Current focus:** v1.2 Śledzenie przesyłek — Phase 27 COMPLETE, Phase 28 next
|
||||
|
||||
## Current Position
|
||||
|
||||
Milestone: v1.1 Ręczny numer przesyłki — COMPLETE ✓
|
||||
Phase: [1] of [1] (Manual Tracking Number) — COMPLETE ✓
|
||||
Plan: 26-01 — loop closed
|
||||
Status: Milestone v1.1 complete
|
||||
Last activity: 2026-03-23 — UNIFY complete, milestone v1.1 done
|
||||
Milestone: v1.2 Śledzenie przesyłek
|
||||
Phase: [1] of [2] (Shipment Tracking Backend) — COMPLETE ✓
|
||||
Plan: 27-01 — loop closed
|
||||
Status: Phase 27 complete, ready for Phase 28 PLAN
|
||||
Last activity: 2026-03-23 — UNIFY 27-01 complete
|
||||
|
||||
Progress:
|
||||
- v0.1 Initial Release: [██████████] 100% ✓
|
||||
@@ -27,14 +27,16 @@ Progress:
|
||||
- v0.9 Poprawki ustawień firmy: [██████████] 100% ✓
|
||||
- v1.0 Presety przesyłek: [██████████] 100% ✓
|
||||
- v1.1 Ręczny numer przesyłki: [██████████] 100% ✓
|
||||
- Phase 26: [██████████] 100% ✓ (1/1 plans)
|
||||
- v1.2 Śledzenie przesyłek: [█████░░░░░] 50%
|
||||
- Phase 27: [██████████] 100% ✓ (1/1 plans)
|
||||
- Phase 28: [░░░░░░░░░░] 0% (0/1 plans)
|
||||
|
||||
## Loop Position
|
||||
|
||||
Current loop state:
|
||||
```
|
||||
PLAN ──▶ APPLY ──▶ UNIFY
|
||||
✓ ✓ ✓ [Milestone v1.1 complete]
|
||||
✓ ✓ ✓ [Phase 27 complete — ready for Phase 28 PLAN]
|
||||
```
|
||||
|
||||
## Accumulated Context
|
||||
@@ -42,6 +44,9 @@ PLAN ──▶ APPLY ──▶ UNIFY
|
||||
### Decisions
|
||||
| Data | Decyzja | Faza | Wpływ |
|
||||
|------|---------|------|-------|
|
||||
| 2026-03-23 | Dwupoziomowy system statusów: normalized + raw z API | Faza 27 | Max szczegółowość dla usera + spójna logika filtrowania |
|
||||
| 2026-03-23 | Osobny ShipmentTrackingInterface (nie rozszerzenie ShipmentProviderInterface) | Faza 27 | Czysta separacja tracking vs creation; łatwe dodawanie providerów |
|
||||
| 2026-03-23 | Idempotentne migracje (IF NOT EXISTS + INSERT IGNORE) | Faza 27 | Bezpieczne re-run migracji |
|
||||
| 2026-03-12 | AllegroTokenManager wydzielony z 4 klas OAuth | Faza 01 | Centralizacja logiki tokenów, brak duplikacji |
|
||||
| 2026-03-12 | StringHelper jako final static class w Core/Support | Faza 01 | 19 duplikatów helperów usunięte z 15 klas |
|
||||
| 2026-03-13 | CronHandlerFactory jako jedyne miejsce kompozycji crona | Faza 02 | Application.php i bin/cron.php zsynchronizowane; 2 bugi naprawione |
|
||||
@@ -68,6 +73,11 @@ PLAN ──▶ APPLY ──▶ UNIFY
|
||||
| 2026-03-17 | Email history jako wpisy w order_activity_log (nie osobna sekcja) | Faza 15 | Spójność z istniejącym UX — jeden timeline zamiast fragmentacji |
|
||||
| 2026-03-17 | VariableResolver wydzielony z EmailTemplateController | Faza 15 | Reuse logiki zmiennych; resolwer niezależny od kontrolera szablonów |
|
||||
|
||||
### Skill Audit (Faza 27, Plan 01)
|
||||
| Oczekiwany | Wywołany | Uwagi |
|
||||
|------------|---------|-------|
|
||||
| sonar-scanner | ✓ | 0 nowych unikalnych issues; 3 pre-existing patterns (2x S1192 DeliveryStatus, 1x S1172 handler) |
|
||||
|
||||
### Skill Audit (Faza 26, Plan 01)
|
||||
| Oczekiwany | Wywołany | Uwagi |
|
||||
|------------|---------|-------|
|
||||
@@ -217,7 +227,7 @@ PLAN ──▶ APPLY ──▶ UNIFY
|
||||
- **Delivery mapping "Szukaj..." layout** — JS `attachSelectFilter()` w allegro.php tworzy input search dla InPost/Apaczka selectów, wizualnie wygląda jakby należał do wiersza powyżej. Pre-existing bug, do naprawy osobno.
|
||||
|
||||
### Git State
|
||||
Last commit: 91963d5 — feat(25-shipment-presets-management): edycja, usuwanie, zarządzanie presetami
|
||||
Last commit: c59d431 — feat(26-manual-tracking-number): reczne dodawanie numeru przesylki do zamowienia
|
||||
Branch: main
|
||||
Feature branches merged: none
|
||||
|
||||
@@ -227,21 +237,12 @@ Brak.
|
||||
## Session Continuity
|
||||
|
||||
Last session: 2026-03-23
|
||||
Stopped at: Milestone v1.1 complete
|
||||
Next action: /paul:discuss-milestone lub /paul:milestone
|
||||
Resume file: .paul/phases/26-manual-tracking-number/26-01-SUMMARY.md
|
||||
Stopped at: Phase 27 complete
|
||||
Next action: /paul:plan (Phase 28 — Shipment Tracking UI + Settings)
|
||||
Resume file: .paul/phases/27-shipment-tracking-backend/27-01-SUMMARY.md
|
||||
Resume context:
|
||||
- v0.1: COMPLETE ✓ (6 phases, 15 plans)
|
||||
- v0.2: COMPLETE ✓ (1 phase, 5 plans)
|
||||
- v0.3: COMPLETE ✓ (5 phases, 5 plans) — Moduł Paragonów
|
||||
- v0.4: COMPLETE ✓ (3 phases, 4 plans) — Moduł E-mail
|
||||
- v0.5: COMPLETE ✓ (1 phase, 2 plans) — Moduł Automatyzacji
|
||||
- v0.6: COMPLETE ✓ (1 phase, 1 plan) — Poprawki UX
|
||||
- v0.7: COMPLETE ✓ (3 phases, 3 plans) — Zdalne drukowanie etykiet
|
||||
- v0.8: COMPLETE ✓ (1 phase, 1 plan) — Poprawki źródła zamówień
|
||||
- v0.9: COMPLETE ✓ (1 phase, 1 plan) — Poprawki ustawień firmy
|
||||
- v1.0: COMPLETE ✓ (3 phases, 3 plans) — Presety przesyłek
|
||||
- v1.1: IN PROGRESS (1 phase, 1 plan) — Ręczny numer przesyłki
|
||||
- v0.1–v1.1: COMPLETE ✓ (26 phases, 38 plans)
|
||||
- v1.2: IN PROGRESS — Phase 27 done, Phase 28 (UI + Settings) next
|
||||
|
||||
---
|
||||
*STATE.md — Updated after every significant action*
|
||||
|
||||
Reference in New Issue
Block a user