feat(prezentacja): eksport wyników do Excela — tabela robocza (DAN-23/PRE-10)
Testy / Testy warstwy logicznej (silnik) (pull_request) Successful in 10m29s
Testy / Testy warstwy prezentacji (dostęp do baz) (pull_request) Successful in 9m32s
Testy / Build obrazu silnika B (swisseph) (pull_request) Successful in 16s
Testy / Kontrola składni wszystkich warstw (pull_request) Successful in 11s
Testy / Testy warstwy prezentacji (dostęp do baz) (push) Has been cancelled
Testy / Build obrazu silnika B (swisseph) (push) Has been cancelled
Testy / Kontrola składni wszystkich warstw (push) Has been cancelled
Testy / Testy warstwy logicznej (silnik) (push) Has been cancelled
build / build (push) Successful in 53s

Astrolog chce PRACOWAĆ z dopasowaniami: filtrować, sortować, zaznaczać, usuwać —
najwygodniej w Excelu. Raport z logiki jest zagnieżdżony (obiekt → fasety →
próbki), więc spłaszczamy go do JEDNEJ płaskiej tabeli: wiersz = jedno
dopasowanie z bazy. Kolumny: Obiekt · Faseta · Typ · Token · Sygnifikator ·
Rozwinięcie · Opis/efekt.

- `report_export.py`: `report_to_xlsx(report)` (openpyxl). Auto-filtr + zamrożony
  nagłówek = filtrowanie/sortowanie od razu; „Opis" zawijany. Bez ozdób — materiał
  roboczy. Plik składamy TU, w prezentacji (jak PDF idzie przez render): logika
  liczy, prezentacja formatuje wyjście.
- `/interpret` dostaje akcję `export` → pobranie `.xlsx` (nie strona). Przycisk
  „Pobierz Excel" obok „Szukaj interpretacji".
- Zależność: openpyxl (czysty Python).

Zero swissepha, zero walidacji krzyżowej, zero danych od użytkownika — pierwsza
z iteracji „czysto". Testy: +7 (round-trip pliku: nagłówek, spłaszczenie, auto-
filtr/zamrożenie, pusty-bezpieczny, %, wpięcie w UI). Prezentacja 180.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit was merged in pull request #45.
This commit is contained in:
2026-07-30 00:48:33 +02:00
parent 52b7c20c2a
commit 8ebce816cd
5 changed files with 147 additions and 0 deletions
+2
View File
@@ -10,3 +10,5 @@ cryptography>=44.0
# bez systemowej bazy stref.
tzfpy>=0.15
tzdata>=2024.1
# Eksport wyników do Excela — „tabela robocza" (DAN-23/PRE-10)
openpyxl>=3.1