feat(v0.1): historia cen + jawnosc cen — milestone Initial Release
Historia cen: - Tabela wp_price_history z WP Cronem dziennym (snapshot cen) - AJAX endpoint apartamenty_get_price_history (zabezpieczony nonce) - Popup "Historia cen" w widgecie — vanilla JS, modal zgodny z projektem Jawnosc cen: - Endpointy /ceny-mieszkan.xml + /dane-gov-pl.xml (XSD-compliant) - Pliki MD5 dla obu XML - Strona admina: Narzedzia -> Jawnosc Cen z URL-ami do Ministerstwa - Transient cache 1h z inwalidacja przez cron Dokumentacja: docs/readme.md + docs/jawnosc-cen.md Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
123
.paul/HANDOFF-2026-03-12.md
Normal file
123
.paul/HANDOFF-2026-03-12.md
Normal file
@@ -0,0 +1,123 @@
|
||||
# PAUL Handoff
|
||||
|
||||
**Date:** 2026-03-12 (aktualizacja: sesja 2)
|
||||
**Status:** paused — plan 02-01 gotowy, czeka na APPLY w nowej sesji
|
||||
|
||||
---
|
||||
|
||||
## READ THIS FIRST
|
||||
|
||||
You have no prior context. This document tells you everything.
|
||||
|
||||
**Project:** wyszynskiego12.pagedev.pl — strona internetowa dewelopera
|
||||
**Core value:** Użytkownicy mogą przeglądać na stronie ofertę dewelopera
|
||||
|
||||
---
|
||||
|
||||
## Current State
|
||||
|
||||
**Version:** v0.0.0 (Prototype)
|
||||
**Phase:** 2 of 2 — Jawność cen
|
||||
**Plan:** 02-01 — PLAN created, ready for APPLY
|
||||
|
||||
**Loop Position:**
|
||||
```
|
||||
PLAN ──▶ APPLY ──▶ UNIFY
|
||||
✓ ○ ○ [Plan 02-01 gotowy, oczekuje na zatwierdzenie]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## What Was Done
|
||||
|
||||
**Sesja 1 (wcześniej):**
|
||||
- Tabela `wp_price_history` założona przez dbDelta()
|
||||
- WP Cron `apartamenty_record_prices` dzienny — snapshot cen apartamentów
|
||||
- AJAX endpoint `apartamenty_get_price_history` (public, nonce-secured)
|
||||
- `wp_localize_script` przekazujący ajaxUrl + nonce do JS
|
||||
|
||||
**Sesja 2 (ta sesja):**
|
||||
- Zbadano wymagania ustawy o jawności cen (dane.gov.pl)
|
||||
- Odczytano XSD portalu: `https://www.dane.gov.pl/static/xml/otwarte_dane_latest.xsd`
|
||||
- Ustalono format XML cen (voxDeveloper-compatible)
|
||||
- Dodano Phase 2 do ROADMAP.md
|
||||
- Utworzono plan `02-01-PLAN.md` — 3 zadania auto + 1 checkpoint
|
||||
|
||||
**WAŻNE: Plan 01-02 (frontend popup historia cen) nadal czeka na APPLY.**
|
||||
Zdecydowano skupić się najpierw na 02-01 (jawność cen). Można wrócić do 01-02 później.
|
||||
|
||||
---
|
||||
|
||||
## What's In Progress
|
||||
|
||||
Plan `02-01-PLAN.md` gotowy, NIE był jeszcze uruchomiony APPLY.
|
||||
|
||||
---
|
||||
|
||||
## What's Next
|
||||
|
||||
**Immediate:** `/paul:apply .paul/phases/02-jawnosc-cen/02-01-PLAN.md`
|
||||
|
||||
Plan 02-01 zawiera 3 zadania auto + 1 checkpoint:
|
||||
1. Endpoint `/ceny-mieszkan.xml` + `/ceny-mieszkan.md5` (price data XML z ACF + wp_price_history)
|
||||
2. Endpoint `/dane-gov-pl.xml` + `/dane-gov-pl.md5` (katalog XSD-compliant dla dane.gov.pl)
|
||||
3. Strona admin: `Narzędzia → Jawność Cen` z URL-ami do zgłoszenia do Ministerstwa
|
||||
4. Checkpoint: weryfikacja URL-ów w przeglądarce
|
||||
|
||||
**After that:** UNIFY plan 02-01, then consider 01-02 (frontend popup)
|
||||
|
||||
---
|
||||
|
||||
## Key Context — Technikalia
|
||||
|
||||
**Jedyny plik do zmiany:** `wp-content/plugins/elementor-addon/elementor-addon.php`
|
||||
|
||||
**Stack:** WordPress + ACF + Elementor + custom plugin `elementor-addon`
|
||||
|
||||
**Dostępne ACF flat meta keys (z `information` group):**
|
||||
- `information_price` — cena brutto
|
||||
- `information_price_m2` — cena za m²
|
||||
- `information_floor_space` — metraż
|
||||
- `information_type` — typ lokalu
|
||||
- `information_floor` — piętro
|
||||
- `information_status` — status (value/label)
|
||||
|
||||
**Tabela wp_price_history:** `id, post_id, price, price_m2, floor_space, recorded_at`
|
||||
|
||||
**Post type:** `apartamenty`
|
||||
|
||||
**Istniejące hooki w elementor-addon.php:**
|
||||
- Cron: `apartamenty_record_prices` (daily)
|
||||
- AJAX: `wp_ajax_apartamenty_get_price_history` + nopriv
|
||||
- Nonce: `apartamenty_price_history_nonce`
|
||||
|
||||
**Wymagania techniczne dane.gov.pl:**
|
||||
- Content-Type: `application/xml` lub `text/xml`
|
||||
- MD5 companion file — lowercase hex, ten sam URL ale z `.md5` zamiast `.xml`
|
||||
- Port standardowy (80/443)
|
||||
- Aktualizacja min. co 24h
|
||||
|
||||
---
|
||||
|
||||
## Key Files
|
||||
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `.paul/STATE.md` | Live project state |
|
||||
| `.paul/ROADMAP.md` | Phase overview (fazy 1 i 2) |
|
||||
| `.paul/phases/02-jawnosc-cen/02-01-PLAN.md` | Plan do APPLY |
|
||||
| `.paul/phases/01-historia-cen/01-01-SUMMARY.md` | Co zbudowano w backendzie |
|
||||
| `wp-content/plugins/elementor-addon/elementor-addon.php` | Jedyny plik do modyfikacji |
|
||||
|
||||
---
|
||||
|
||||
## Resume Instructions
|
||||
|
||||
1. Przeczytaj `.paul/STATE.md` dla aktualnej pozycji
|
||||
2. Uruchom `/paul:apply .paul/phases/02-jawnosc-cen/02-01-PLAN.md`
|
||||
3. Po APPLY wykonaj checkpoint (flush permalinks, sprawdź URL-e w przeglądarce)
|
||||
4. Następnie `/paul:unify`
|
||||
|
||||
---
|
||||
|
||||
*Handoff created: 2026-03-12 (updated: sesja 2)*
|
||||
Reference in New Issue
Block a user