feat(50-allegro-shipment-waybill-push): push waybill to allegro checkout form

Phase 50 complete:

- add conditional waybill push for allegro orders only

- add retry on ALLEGRO_HTTP_401 and non-critical failure handling

- add unit tests and update architecture/changelog docs
This commit is contained in:
2026-03-28 15:32:34 +01:00
parent 2ab0d0e90e
commit 176d740578
9 changed files with 696 additions and 30 deletions

View File

@@ -0,0 +1,36 @@
---
phase: 50-allegro-shipment-waybill-push
plan: 01
status: completed
completed: 2026-03-28
---
# Phase 50 Plan 01 Summary
## Result
- Dodano automatyczny push numeru przesylki do Allegro (`POST /order/checkout-forms/{id}/shipments`) po uzyskaniu `tracking_number`.
- Push wykonuje sie tylko dla zamowien Allegro (`orders.source='allegro'`) z niepustym `source_order_id`.
- Blad pushu jest niekrytyczny - lokalna paczka pozostaje utworzona.
- Dodano retry pushu po `ALLEGRO_HTTP_401` z odswiezeniem tokenu.
## Acceptance Criteria
- AC-1: Pass
- AC-2: Pass
- AC-3: Pass
- AC-4: Pass
## Verification
- `C:\xampp\php\php.exe -l src/Modules/Shipments/AllegroShipmentService.php` PASS
- `C:\xampp\php\php.exe -l tests/Unit/AllegroShipmentServiceTest.php` PASS
- `C:\xampp\php\php.exe vendor/bin/phpunit --filter AllegroShipmentServiceTest --testdox` PASS (4 tests, 54 assertions)
- `sonar-scanner` PASS (analysis successful): https://sonar.project-pro.pl/dashboard?id=orderPRO
## Files
- `src/Modules/Shipments/AllegroShipmentService.php`
- `tests/Unit/AllegroShipmentServiceTest.php`
- `DOCS/ARCHITECTURE.md`
- `DOCS/TECH_CHANGELOG.md`
## Notes
- Brak zmian schematu DB.
- Brak checkpointow manualnych (plan autonomiczny).