Files
wyszynskiego12.pagedev.pl/.paul/HANDOFF-2026-03-12.md
Jacek Pyziak 972c69b136 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>
2026-03-12 15:40:29 +01:00

3.7 KiB

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)