Neu drin: wo der einzige 409-Fall sitzt und wie er behandelt wird (eine Frage, kein Fehler), woran man einen Uebertrag im Eingang erkennt, warum die Dublettenliste die Kennung der Bank zeigt, und der Backend-Fehler, den die App ans Licht brachte. Ausserdem der Hinweis, der den naechsten sonst eine Stunde kostet: Die Pruefdatei-Tests zaehlen keine Mengen mehr. Wer die Saat erweitert, macht sonst die aelteren Pruefungen rot, ohne dass etwas kaputt waere. Festgehalten, was weiter bewusst fehlt: Vertragslogo, Kontoreihenfolge und das Loesen einer Uebertrags-Verknuepfung. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
3.2 KiB
Fahrplan
Jede Phase ist für sich lauffähig und wird nach Fertigstellung committet/gepusht.
Phase 0 – Gerüst ✅
Repo-Struktur, FastAPI + SQLite + Alembic, Multi-User-Login (Server-Sitzungen, Cookie), Erst-Admin + Benutzerverwaltung (Temporär-Passwort), React-App-Shell, Design-Tokens (Light/Dark), i18n (DE/EN), Einstellungen je Benutzer, ein systemd-Dienst mit API + SPA auf einem Port, Install-/Update-Skript.
Phase 1 – Konten, Kategorien, Transaktionen, Währung ✅
Konten (feste Währung EUR/CHF, Typ, mehrere Identifikatoren, Anfangssaldo+Stichtag), Kategorien (Gruppen→Kategorien, Einnahme/Ausgabe, SVG-Icons), Transaktionen (Ausgabe/Einnahme/Transfer), EZB-Wechselkurse zum Buchungsdatum (lokal gecacht, pro Buchung überschreibbar), Kontostände.
Phase 2 – Budget-Engine ✅
Einstellbarer Budget-Monat-Starttag, Standard-Budget als Vorlage (Snapshot-on- Customize), geplante Einnahmen mit Zielkonto, Soll/Ist-Tabelle (grün/rot), kein Rollover in v1.
Phase 3 – Dashboard ✅
Konfigurierbares Karten-Grid: Budget-Donut, Kontostände, Vermögensverlauf, Budget-Fortschritt, Einnahmen/Ausgaben, letzte Buchungen.
Phase 4 – CSV-Import ✅
Bank-Templates (Trennzeichen/Dezimal/Datum/Spaltenmapping/Vorzeichen), lernende Auto-Kategorisierung, Prüfansicht, Duplikat-Erkennung, interne-Transfer-Erkennung via IBAN, Batch-Undo. Vorgefertigte Bank-Templates folgen aus Nutzer-Beispielen.
Phase 5 – PDF/Bild-Import (Stretch) ✅
Lokal: PyMuPDF (PDF-Text) + Tesseract-OCR (Scans/Bilder), heuristischer Zeilen-Parser (Datum + Betrag), speist dieselbe Prüfansicht. Best-Effort.
Querschnitt – Backup/Export ✅
DB-Backup-Download (Admin) + Export je Entität (CSV/JSON); dokumentierte LXC-Sicherung (docs/BACKUP.md).
Querschnitt – Schlagwörter & Kategorie-Auswahl ✅
Manuelle Schlagwörter je Kategorie (Popup, Doppelklick zum Bearbeiten); Treffer über Empfänger ODER Verwendungszweck, längstes Schlagwort gewinnt, nur bei künftigen Importen. Korrektur-Erkennung: ab 5 Anwendungen und ≥ 1/3 Korrekturen Prüf-Meldung in den Einstellungen (Behalten/Entfernen). Auf-/zuklappbares Kategorie-Dropdown mit Suche (ersetzt das native optgroup-Select) in Buchungen und Import-Prüfansicht.
Phase 6 – iOS-App 🚧
Native App in ios/, die sich über die Server-Adresse ans selbe Backend hängt.
Anmeldung über eine Gerätemarke der Reichweite app (kein Passwort auf dem
Gerät, kein 30-Tage-Ablauf, einzeln widerrufbar). Deutsch und Englisch, iPad
zweispaltig, offline der letzte Stand mit Datum.
Stufe 1 ✅: Gerüst, Netzwerkschicht, Anmeldung samt zweitem Faktor und
Pflicht-Passwortwechsel, Kontenliste. Stufe 2 ✅: Übersicht, Budget-Monat,
Buchungsliste mit Suche, Vertragsliste. Stufe 3 ✅: Buchungen, Budget-Zeilen,
Verträge und Konten anlegen, ändern und löschen. Stufe 4 ✅: Arbeitsliste mit
Eingang, Übertragsvorschlägen, Gebuchtem ohne Kategorie und Dubletten.
Übersetzt fehlerfrei, 54 Tests grün, läuft im Simulator; das Xcode-Projekt
entsteht aus ios/project.yml, die Modelle werden gegen echte
Serverantworten geprüft.
Stufen 5–7 (Nebenräume, Erweiterungen, voller CSV-Import) stehen aus.
Stand, Entscheidungen und offene Punkte: ios/UEBERGABE.md.