Files
ems/docs/06-open-questions.md
Dusan Vojacek b78597fdda
Some checks failed
CI and deploy / migration-check (push) Failing after 16s
CI and deploy / deploy (push) Has been skipped
uprava vypoctu slotu
2026-05-21 12:36:03 +02:00

3.3 KiB
Raw Blame History

Otevřené otázky a nedořešené body

Tento soubor slouží jako živý seznam věcí které je potřeba rozhodnout před nebo během implementace.


Kritické (blokují implementaci)

  • Teltonika API vs OCPP Jaký protokol použít pro komunikaci s EV nabíječkami? OCPP 1.6 je standardní, Teltonika REST API je jednodušší. Rozhodnout před implementací control.md EV části.

  • Kurz EUR/CZK Fixní hodnota v konfiguraci nebo denní stahování z ČNB API? Ovlivňuje price_importer.py.

  • Azimut a sklon FVE polí Ověřit hodnoty v seedu pro home-01 (pv-a 184°/22°, pv-b 184°/35°). Nutné pro forecast_service.py; konvence je kompasově/pvlib 0=N, 90=E, 180=S, 270=W.

  • GPS souřadnice lokality home-01 V seedu jsou vyplněné; ověřit proti skutečné instalaci, protože jsou vstupem pro Open-Meteo API.


Důležité (neblokují, ale řeší se brzy)

  • Arbitráž baterie — 1. vlna (před solve): charge_acquisition_buy_czk_kwh + cutoff před 1. allow_discharge_export; LP +ge_bat×acquisition v exportních slotech. Zbývá iterace po solve a více charge slotů — planning-arbitrage-accounting.md §6, docs/05-todo.md.

  • Dvě úrovně min SoC v DB Dnes jedno min_soc_percent (provozní podlaha pro LP i TOU PASSIVE). Budoucí oddělení „tvrdé BMS minimum“ vs „plánovací minimum“ by vyžadovalo nový sloupec nebo politiku per site.

  • TUV výkon Je TUV výkon měřitelný zvlášť nebo jen ON/OFF? Pokud jen ON/OFF, použijeme asset_heat_pump.rated_heating_power_w jako aproximaci.

  • Pole B (ongridový) Zahrnout do auditu jako "neřízená výroba"? Nebo ignorovat úplně? Komplikuje audit ale zpřesňuje ho.

  • PostgREST autentikace Jaký model? JWT tokeny? Row-level security? (Anon role ems_anon je nastavena viz Vyřešeno; produkce může vyžadovat JWT/RLS navíc.)

  • Backup a obnova Jak se zálohuje PostgreSQL? pg_dump cron? Replikace? Nutné pro produkci.


Fáze 2 (zatím neřešíme)

  • Více lokalit správa (admin CRUD site v UI, šablony migrací pro novou lokalitu) — základ UI je: combobox aktivních lokalit (GET /api/v1/me/sites), PostgREST dotazy filtrované podle výběru; autorizace per user/site a RLS u PostgREST stále otevřené, viz níže.
  • Solcast jako alternativa k Open-Meteo
  • Intraday OTE ceny
  • Sezónní korekce predikce spotřeby
  • Mobile app / PWA notifikace
  • Integrace s dodavatelem elektřiny pro automatický reporting

Vyřešeno

  • PostgREST anon role: ems_anon, read-only na vybrané views a tabulky (migrace V009__postgrest_roles.sql + repeatable R__072_z_postgrest_ems_anon_grants.sql kvůli pořadí Flyway); zápisy přes FastAPI. Compose / .env: POSTGREST_ANON_ROLE=ems_anon, PostgREST PGRST_DB_ANON_ROLE.

  • Multi-site (částečně): OTE import jednou pro celý systém do market_interval_price; frontend výběr lokality (SiteSelectionContext, persist ems.selected_site_id), API GET /api/v1/me/sites (zatím všechny aktivní site). Chybí: mapování uživatel → site, JWT/RLS u PostgREST (viz otevřená otázka výše).