- NFC onDiscovered: try/finally um stopSession(), sonst bleibt die native
NFC-Session bei einer Exception in _extractUid offen und jeder weitere
Scan schlägt dauerhaft fehl (nur App-Neustart behebt es).
- Alle Login-/Stamp-Handler fangen jetzt auch generische Exceptions (nicht
nur DioException) – sonst wirkt der Kiosk bei unerwarteter Serverantwort
nur "eingefroren" ohne Hinweis.
- _runAction: expliziter Re-Entrancy-Guard gegen Doppel-Tap, Status-Refresh
nach fehlgeschlagener Stempel-Aktion (kein veralteter Button-Zustand).
- ApiClient.init(): Secure-Storage-Reads einzeln try/catch, dio wird immer
konstruiert auch wenn Keystore beim Kaltstart noch nicht bereit ist.
- main(): ApiClient.init() in try/catch – Fehler dort ließ die App vorher
komplett schwarz bleiben (runApp() nie erreicht).
v0.1.2+3. Review von flutter-expert-Subagent, Diffs manuell gegengeprüft.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dzdm3EWeNdYFUuXFRJryA1