# Project State

## Project Reference

See: .paul/PROJECT.md (updated 2026-03-12)

**Core value:** Uzytkownik moze przegladac oferte dewelopera i sprawdzac historie cen
**Current focus:** Milestone v0.2 Miejsca Postojowe — ukonczone

## Current Position

Milestone: v0.2 Miejsca Postojowe — Complete
Phase: [3] of [3] (Miejsca postojowe) — Complete
Plan: 03-01 complete
Status: Milestone v0.2 complete — ready for next
Last activity: 2026-03-25 — UNIFY 03-01 complete

Progress:
- v0.1 Initial Release: [██████████] 100% ✓
- v0.2 Miejsca Postojowe: [██████████] 100% ✓
  - Phase 3: [██████████] 100% ✓

## Loop Position

Current loop state:
```
PLAN ──▶ APPLY ──▶ UNIFY
  ✓        ✓        ✓     [Loop complete — milestone done]
```

## Accumulated Context

### Decisions
| Decyzja | Faza | Wplyw |
|---------|------|-------|
| Flat ACF meta keys (information_price etc.) | Phase 1 | Cron uzywa get_post_meta bezposrednio |
| INSERT IGNORE w cronie | Phase 1 | Jeden rekord na apt na dzien, idempotentny |
| XML jako czysty PHP string ENT_XML1 | Phase 2 | Brak zaleznosci od ext-dom |
| Transient 1h + inwalidacja przez cron | Phase 2 | Cache XML odswieza sie po kazdym cronie |
| ACF group access: get_field('grupa','option')['pole'] | Phase 3 | Parking ceny w grupach ACF |
| Osobna tabela wp_parking_price_history | Phase 3 | Separacja od apartamentow (parking_type vs post_id) |
| Cena m2 ukryta w widgecie parkingowym | Phase 3 | Dane nadal w cronie/XML, UI uproszczone |

### Deferred Issues
- Klient musi recznie zglosic URL /dane-gov-pl.xml do kontakt@dane.gov.pl
- WP Cron pseudocron — na produkcji zalecany systemowy cron (docs/readme.md)

### Blockers/Concerns
Brak.

## Session Continuity

Last session: 2026-03-25
Stopped at: Milestone v0.2 complete
Next action: /paul:discuss-milestone
Resume file: .paul/phases/03-miejsca-postojowe/03-01-SUMMARY.md
Resume context:
- v0.2 kompletny: widget Miejsca Postojowe + historia cen + cron + XML
- Gotowy na nowy milestone

---
*STATE.md — Aktualizowany po kazdej istotnej akcji*
