Files
adsPRO/.paul/STATE.md
2026-04-24 23:37:47 +02:00

2.5 KiB

STATE

Current Position

Milestone: (ad-hoc) Products — widok "wszystkie kampanie" Phase: 3 of 3 (Products All Campaigns View) — Completed Plan: 03-01 unified (loop closed) Status: UNIFY complete Last activity: 2026-04-24 — Zamknięto pętlę planu 03-01

Progress:

  • Milestone: [██████████] 100%
  • Phase 3: [██████████] 100%

Loop Position

PLAN ──▶ APPLY ──▶ UNIFY
  ✓        ✓        ✓     [Pętla zamknięta]

Session Continuity

Last session: 2026-04-24 Stopped at: Loop closed, pętla gotowa do nowego /paul:plan Next action: Wdróż templates/products/main_view.php na produkcję (FTP sync); w razie kolejnego zadania — /paul:plan z opisem Resume file: .paul/phases/03-products-all-campaigns-view/03-01-SUMMARY.md

Historia zrealizowanych planów

  • 01-01-PLAN.md — CL3 → CL1 w tabeli /products (completed 2026-04-22)
    • 4 pliki zmodyfikowane: migration 028, factory, controller, template
    • 4 AC spełnione
    • 2 odchylenia udokumentowane (szerokość kolumny 50→120px, weryfikacja sync GAds)
  • 02-01-PLAN.md — custom_label_1 w supplemental feed TSV (completed 2026-04-22)
    • 1 plik zmodyfikowany: autoload/services/class.SupplementalFeed.php (+6/-4)
    • 4 AC spełnione
    • 0 odchyleń — plan 1:1
  • 03-01-PLAN.md — Powrót do widoku "wszystkie kampanie" w /products (completed 2026-04-24)
    • 1 plik zmodyfikowany: templates/products/main_view.php (+1/-3)
    • Zmiana: usunięto placeholder: '- wybierz -' i allowClear: true z Select2 dla #products_campaign_id / #products_ad_group_id
    • 4 AC spełnione
    • 1 kosmetyczna różnica w verify (allowClear na linii 2097 to niezwiązany Google taxonomy picker, poza zakresem)

Decisions

Date Decision Phase Impact
2026-04-24 Usunięcie placeholdera zamiast wprowadzania wartości sentinel 0/all — minimalny blast radius 3 1-linijkowa zmiana w JS, brak zmian w kontrolerze/factory

Notes

  • PAUL framework działa w trybie ad-hoc (bez pełnej roadmapy/PROJECT.md).
  • Backend factory\Products::build_scope_filters już dziś traktuje campaign_id ≤ 0 jako "bez filtra" — fix był wyłącznie po stronie JS.
  • Ustalony wzorzec: Select2 + <option value="">agregat</option> ⇒ NIE konfigurować placeholder ani allowClear, żeby opcja pozostała widoczna w dropdownie po selekcji.
  • Deploy: wymaga FTP sync szablonu + hard reload (Ctrl+Shift+R) w przeglądarce klientów.