rdms and Claude Opus 5.5
eb68781a1d
chore: Release v0.14.0 (Szenario-Zeitraum, Neuer Betrag, Szenario-Zahlungen)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-30 13:30:02 +02:00
rdms and Claude Haiku 4.5
dfb814955f
fix: Navigation bricht auf schmalen Bildschirmen um, gewähltes Tortensegment oben, Legendenzusatz nicht fett (A14-T6)
...
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-09-30 13:16:57 +02:00
rdms and Claude Opus 5.5
cd7ba6aa6a
feat: Szenarien-Seite mit zwei Formularen, Zeitraum-Spalte und wiederkehrenden Szenario-Zahlungen (A14-T4)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-30 13:08:16 +02:00
rdms and Claude Opus 5.5
60cd3c4fea
fix: Versionskennung an statischen Dateien gegen veraltete Browser-Caches (v0.13.1)
...
Gecachte style.css ohne Tortenfarben ließ alle Segmente schwarz erscheinen.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-29 17:54:55 +02:00
rdms and Claude Opus 5.5
987e28847c
fix: Aufteilung – Final-Review-Nachträge (Monat <1000, Übrige-Mitglieder, Auth-Test, Doku) (A13)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-29 16:56:57 +02:00
rdms and Claude Opus 5.5
b32f28fff5
chore: Release v0.13.0 (Seite Aufteilung)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-29 16:49:50 +02:00
rdms and Claude Opus 5.5
3ef20034d3
feat: Aufteilung – Drill-down in Kategorie per Klick auf Tortensegment (A13-T6)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-29 16:45:44 +02:00
rdms and Claude Opus 5.5
4b6144d812
fix: Aufteilung – Tabelle volle Breite, Torte darunter; ungültige Eingaben inline (A13-T5)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-29 16:29:24 +02:00
rdms and Claude Opus 5.5
2a62bdca6c
feat: Seite Aufteilung – Auswahl, Kennzahlen, Tabelle, Tortendiagramm (A13-T5)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-29 16:24:20 +02:00
rdms and Claude Opus 5.5
b78990786f
chore: Release v0.12.0 (System-Präfix, Doppelzählungs-Warnung)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-29 07:40:03 +02:00
rdms and Claude Opus 5.5
e665180b1f
feat: Warnfenster und Planungs-Hinweis bei möglicher Doppelzählung (A12-T4)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-29 07:35:16 +02:00
rdms and Claude Opus 5.5
b28b0e69c0
chore: Release v0.11.0 (Szenario-Löschen, Grafana-Korrekturen, Tabellensortierung)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-28 19:34:18 +02:00
rdms and Claude Opus 5.5
b1e007ed15
feat: Buchungen serverseitig nach Spalte sortierbar (A11-T5)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-28 19:29:25 +02:00
rdms and Claude Opus 5.5
4458300f43
feat: Tabellen per Spaltenkopf sortierbar (A11-T4)
...
Neues static/sort.js sortiert Tabellen clientseitig per Klick auf den
Spaltenkopf (⇅/▲/▼): Datum TT.MM.JJJJ, deutsche Zahlen/Beträge, sonst
Text (Intl.Collator 'de'). Sortierwert optional per td[data-sort]
(Punkt-Dezimal/ISO) überschreibbar, th[data-nosort] bekommt keinen
Button, table[data-sort-mode="server"] wird übersprungen (Buchungen
sortiert serverseitig, folgt in Task 5). Bearbeiten-/Tilgungsplan-
Zeilen (tr[data-sort-follow]) wandern mit ihrer Vorzeile mit.
Initialisierung über htmx.onLoad, greift auch bei nachgeladenen
Fragmenten.
Templates entsprechend annotiert (Planung, Szenarien, Admin, Index,
Salden, Import-Liste, Buchungen); Salden-Gesamtzeile dafür in ein
tfoot verschoben. test_gui.py::test_gui_zeigt_deutsche_betragsformate
angepasst, da das neue machinenlesbare data-sort-Attribut bewusst
Punkt-Dezimal führt (Interface-Konvention) - die Prüfung auf deutsches
Format im sichtbaren Text bleibt bestehen.
JS-Unit-/DOM-Tests unter tests/js (node --test, DOM-Teil optional via
jsdom), pytest-Wrapper skip ohne node (Fable-Gate führt sie per
Podman aus). Suite: 248 passed, 3 skipped (vorher 242/2).
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-28 19:22:34 +02:00
rdms and Claude Opus 5.5
32d78fdbe1
fix: German quote style U+201C instead of U+201D (A11-T1)
...
Corrected closing quotation mark in hx-confirm attribute and test assertions
from U+201D (RIGHT DOUBLE QUOTATION MARK) to U+201C (LEFT DOUBLE QUOTATION
MARK), matching German typographic convention („...") and house style (line 114).
Changes by code point:
- finance/app/templates/szenarien.html line 17: 1 × U+201D → U+201C
- finance/tests/test_gui.py lines 501, 521: 2 × U+201D → U+201C
Template lines 17 and 114 now have identical quote code points: U+201E...U+201C.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-28 19:07:31 +02:00
rdms and Claude Opus 5.5
8b637f91b3
fix: HTML attribute quoting in hx-confirm, test assertion precision (A11-T1)
...
Critical quoting fix: the hx-confirm attribute now uses U+201D (") for the
closing German quote instead of ASCII " (0x22), which was terminating the
attribute early and losing the confirm message text. The template now
correctly contains: hx-confirm="Szenario „{{ sc.name }}" mit allen..."
Test enhancement: restored the complete assertion text from the brief and
added HTML parsing verification to ensure the attribute value matches exactly
with correct typographic quotes.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-28 19:05:37 +02:00
rdms and Claude Opus 5.5
57ab6dae4a
feat: Szenario per GUI löschen, Name System-Ist reserviert (A11-T1)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-09-28 19:01:21 +02:00
rdms
a575c57d5b
feat: Grafana-Links aus FB_GRAFANA_PUBLIC_URL (Sub-Pfad-tauglich)
2026-07-21 07:11:27 +02:00
rdms and Claude Fable 5
bf3f56118e
feat: Vorschlaege mit Rhythmus, Start und Hinweis
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 21:26:48 +02:00
rdms and Claude Fable 5
4431640eb2
feat: Kategorien-Verwaltung auf der Admin-Seite
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 14:17:48 +02:00
rdms and Claude Fable 5
b21d7b9839
feat: Eintrags-Formular mit Paar-Layout und Gesperrt-Kennzeichnung
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 14:06:32 +02:00
rdms and Claude Fable 5
f03249bff1
feat: eigene Szenarien-Seite /szenarien
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 13:59:03 +02:00
rdms and Claude Fable 5
cb44194daf
feat: Szenario-Eintraege als eine editierbare Tabelle
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 12:51:04 +02:00
rdms and Claude Fable 5
033c41f449
feat: Szenario-GUI mit Ende-Modifikator und Einmalzahlungen je Szenario
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 11:59:42 +02:00
rdms and Claude Fable 5
aa1884c31e
feat: Inline-Bearbeiten fuer Fixposten, Einmalposten, Kredite und Szenario-Kopf
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 11:42:04 +02:00
rdms and Claude Fable 5
cbcf2e0439
feat: Start/Ende fuer Fixposten in der GUI + Datumsvalidierung
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 11:35:32 +02:00
rdms and Claude Fable 5
805cb4d852
feat: Betragseingabe mit Komma (data-type=amount in json-form)
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 11:30:58 +02:00
rdms and Claude Fable 5
fe0e1b5e93
feat: deutsche Betragsanzeige (eur-Filter) und deutsche GUI-Labels
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 11:23:26 +02:00
rdms and Claude Fable 5
f5fa3e45e8
feat: Admin-Seite mit Passwortaenderung und Regel-Neuanwendung
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 08:24:33 +02:00
rdms and Claude Fable 5
7a0f71aa8c
feat: Salden-Seite mit Stichtag und Monatsuebersicht
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 21:53:23 +02:00
rdms and Claude Fable 5
ea4858c4de
feat: CSV-Import ueber bestehende Pipeline mit dreiwertiger Saldo-Pruefung
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 21:45:53 +02:00
rdms and Claude Fable 5
f6a53b7e56
feat: Konto-Saldo-Anker mit ankerbasierter Saldenrechnung
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 21:25:04 +02:00
rdms and Claude Fable 5
06392c0fec
fix: tolerante GUI-Filter, sichtbare Bedienelemente, fixierte Navigation
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 17:09:35 +02:00
rdms and Claude Fable 5
e7855a7bda
feat: Import-Rollback fuer bestaetigte Auszuege (v0.3.0)
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 16:40:56 +02:00
rdms and Claude Fable 5
d71c22adce
feat: Buchungs-Pagination, Inbox-Scan-Button, Grafana-Direktansteuerung, UI-Feinschliff
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 16:18:54 +02:00
rdms and Claude Fable 5
0bad69bf42
fix: Final-Review-Feinschliff (DR-Kommentar korrigiert, SameSite-Pin, Grafana-Link-Hostname)
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 15:29:38 +02:00
rdms and Claude Fable 5
94eb80506e
feat: gemeinsames Passwort fuer GUI und Grafana, Dashboard-Embedding
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 15:13:31 +02:00
rdms and Claude Fable 5
bba04db663
fix: Arbeitsablauf als nummerierte Liste, HTML-Escaping in Hilfe
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 15:04:35 +02:00
rdms and Claude Fable 5
e40442b73b
feat: Hilfe-Seite mit Gebrauchsanleitung
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 15:02:19 +02:00
rdms and Claude Fable 5
82f278ca00
feat: Versionsanzeige (VERSION-Datei, Footer, /api/version, Image-Tag)
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 14:57:49 +02:00
rdms and Claude Fable 5
87f8bbc400
fix: json-form-Extension als Superset in base.html konsolidiert
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 14:54:54 +02:00
rdms and Claude Fable 5
36d3e4fc59
feat: Konten umbenennbar, Betrag-Spalte mit Euro im Kopf
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-19 14:50:39 +02:00
rdms and Claude Fable 5
cf9282c716
fix: Final-Review-Findings (GUI-Login, FK-Kaskaden, Validierung, Duplikat-Recheck, Views)
...
F1: GUI-Login-Hash gegen $-Korruption gehaertet. .env-Werte einfach-gequotet
geschrieben + Sanity-Check nach Sourcing. Zusaetzlich systemd-Ebene:
podman escapt $->$$ in Environment=, systemd 252 kollabiert das nicht ->
sed-Post-Processing der Unit-Dateien. Live-.env: GUI-Passwort rotiert.
F2: Explizite Dependent-Deletes gegen FK-500 (delete_scenario/loan), 409 bei
bestaetigtem Import-Delete. Test-Engine erzwingt PRAGMA foreign_keys=ON.
F3: Enum/Range-Validierung (Literal + Field ge/le) fuer Recurring, Loan,
Modifier inkl. PATCH-Pfade.
F4: Confirm nur fuer draft-Statements (sonst 409) + Dedup-Re-Check gegen
bestaetigte Buchungen vor dem Promoten.
F5: v_balance_history/v_balance_total addieren pro Konto den opening_balance
des fruehesten bestaetigten Statements (approved deviation vom Plan-SQL).
F6: patch_scenario Namenskollision -> 409; create_transaction unbekanntes
Konto -> 404 (statt 500).
F7: Generierte systemd-Unit-Dateien chmod 600 (enthalten Env-Secrets).
F8: Globaler htmx:responseError-Handler in base.html.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-17 20:11:31 +02:00
rdms and Claude Fable 5
df6615c8f7
fix: Fehler-Feedback Kreditzuordnung, robustes PDF-Fehlerhandling
...
Kreditzuordnung im Szenario prueft jetzt response.ok, zeigt bei Fehlschlag
eine deutsche Meldung und macht die Checkbox-Aenderung rueckgaengig statt
stillschweigend neu zu laden. process_pdf faengt zusaetzlich zu ParserError
auch unerwartete Parser-Exceptions (z.B. pdfminer bei strukturell kaputten
PDFs) ab und legt dafuer ein sauberes error-Statement an statt eines
unbehandelten 500; die Datei bleibt dabei im Posteingang.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-17 19:14:43 +02:00
rdms and Claude Fable 5
afbbcbe9a5
feat: Import-Seite mit Drag-and-Drop und Planungs-Seite
...
Ersetzt die Platzhalter-Routen aus Task 12 durch echte GUI-Seiten: /import
mit Drop-Zone (Fetch-Upload), gepollter Importliste (Status-Badges,
aufklappbarer Vorschau samt Saldo-/Duplikat-Anzeige, Uebernehmen/Verwerfen)
und /planung mit den vier Abschnitten Fixposten (inkl. Vorschlaege),
Einmalposten, Kredite (Tilgungsplan-Aufklapper) und Szenarien
(Kredit-Zuordnung, Modifikatoren, Durchrechnen mit Ergebnisanzeige).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-17 19:05:58 +02:00
rdms and Claude Fable 5
3847398055
fix: json-form-Extension fuer Standalone-Elemente, Kontoname in Buchungsliste
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-17 18:53:23 +02:00
rdms and Claude Fable 5
a6009c47e3
feat: Web-GUI Basis, Uebersicht, Buchungsliste
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-17 18:45:54 +02:00