Files
orderPRO/.paul/STATE.md
Jacek Pyziak 782a291210 feat(112): re-import data protection — delta-only re-import + project_generated preservation
Phase 112 / Plan 112-01 complete (v3.6):
- OrderImportRepository::upsertOrderAggregate split into create vs re-import paths
- replaceAddresses/Items/Notes/Shipments/StatusHistory invoked only on first import
- new updateOrderDelta() narrows UPDATE to status_code (cond.), payment_status,
  total_paid, is_canceled_by_buyer, source_updated_at, payload_json, fetched_at
- source-side cancellation override (is_canceled_by_buyer=1 OR pull status_code='anulowane')
- identical-payload no-op guard via normalizePayloadJson()
- fixes case #882: order_items.id stable, project_generated (Phase 97) preserved
- Phase 111 payment.status_changed emit retained without regression

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 23:22:37 +02:00

2.9 KiB

Project State

Project Reference

See: .paul/PROJECT.md (updated 2026-05-07)

Core value: Sprzedawca moze obslugiwac zamowienia ze wszystkich kanalow sprzedazy i nadawac przesylki bez przelaczania sie miedzy platformami. Current focus: Brak aktywnego milestone - v3.6 zamkniety

Current Position

Milestone: v3.6 Re-import Data Protection (hotfix) — COMPLETE Phase: 112 of 112 (Re-import Data Protection) — COMPLETE Plan: 112-01 — COMPLETE Status: v3.6 shipped, oczekiwanie na nastepny milestone Last activity: 2026-05-07 — Transition Phase 112 / Plan 112-01 complete (PROJECT.md + ROADMAP.md updated, git commit)

Progress:

  • Milestone v3.6: [##########] 100% (1/1 phases, 1/1 plans)
  • Phase 112: [##########] 100%

Loop Position

Current loop state:

v3.6 milestone:
  Phase 112 (Re-import Data Protection):
    Plan 112-01: PLAN ✓ → APPLY ✓ → UNIFY ✓
  -> Phase 112 closed
-> v3.6 milestone closed (pending transition commit)
PLAN ──▶ APPLY ──▶ UNIFY
  ✓        ✓        ✓     [Loop complete]

Session Continuity

Last session: 2026-05-07 Stopped at: v3.6 milestone closed (Phase 112 transitioned) Next action: manualne testy AC-1..AC-7 na zywej bazie (XAMPP), backfill #882, nastepnie /paul:milestone (nowy milestone) Resume file: .paul/phases/112-reimport-data-protection/112-01-SUMMARY.md

Git State

Last commit: 0e457ae update Branch: main Feature branches merged: none

Pending Actions

  • Manualne testy AC-1..AC-7 dla Phase 112 na zywej bazie (XAMPP online)
  • Backfill zamowienia #882 — operator robi recznie po wdrozeniu (poza zakresem planu)
  • Uruchom migracje gdy XAMPP online: php bin/migrate.php (delivery_statuses)
  • Recznie odtworzyc istniejace reguly automatyzacji z grupowymi kluczami (BREAKING z 108-02)

Deferred to Next Milestones

  • Phase 68 - Code Deduplication Refactor (0/2 Planning, nigdy nie rozpoczety)
  • STAT-NET - netto shopPRO z API lub z order_items.tax_rate (.paul/TODO.md)
  • Mobile Orders List / Mobile Order Details / Mobile Settings (TBD z poprzedniego roadmapu)
  • sonar-scanner - skan dla phase 105, 106, 107, 108 nie zostal uruchomiony (skill gap odnotowany)
  • INDEX-106-01 - indeksy DB dla query customer_returned_count: order_addresses(order_id, address_type), shipment_packages(order_id, delivery_status) (gdy dataset >50k wierszy)

Skill Audit (Phase 108)

Expected Invoked Notes
sonar-scanner (required) o Wymagany po APPLY 108-01 i 108-02 - odlozony

Skill Audit (Phase 110)

Expected Invoked Notes
sonar-scanner (required) yes Skan uruchomiony po APPLY; raport wyslany do SonarQube.

Phase 110 Notes

  • Local HTTP verification blocked by MySQL/XAMPP connection refused.
  • PHPUnit not run: composer unavailable in PATH and vendor/ absent.
  • Sonar issue import to DOCS/todo.md not performed because SonarQube MCP/resources are unavailable in this session.