Files
KanbanGit/docs/ui-rework/epic-1-issue-22.md
T
Twyco 642e49d7b0
CI/CD / test_and_check_app (push) Failing after 2m11s
CI/CD / Publish immutable image (push) Skipped
feat: added ui docs
2026-09-09 08:15:37 +02:00

3.2 KiB

UI Rework 22: Sicherheit und Anwendungsschlüssel

Epic: Epic 1

Abhängigkeiten: Issue 6, Issue 7, Issue 21

Ziel und Grenzen

Sicherheit und Anwendungsschlüssel als abgegrenzten Teil des vollständigen Frontend-Neubaus umsetzen. Grundlage: Vue 3/Inertia 2 mit Laravel, Tauri 2 für Apps, gemeinsames Repository, servergeladene Oberfläche, HTTPS, Hell/Dunkel/System und englische Texte über Übersetzungsschlüssel. Bestehende Fachlogik bleibt maßgeblich; Resources und Routen nur soweit für diese Oberfläche erforderlich anpassen. Keine zusätzlichen Produktmodule.

Einstieg

Gezielt prüfen: resources/js/pages/settings/Security.vue; resources/js/pages/settings/Applications.vue; resources/js/components/TwoFactorSetupModal.vue; resources/js/components/TwoFactorRecoveryCodes.vue. Die Pfade sind Einstiegspunkte, keine Erlaubnis zu fachlichen Umbauten. AGENTS.md und die für den tatsächlich geänderten Bereich geltenden Skills beachten. Vor Codeänderungen die zur installierten Version passende Dokumentation prüfen.

Design: Fluid Emerald Kanban

Implementierungsweg

  1. Passwortverwaltung, 2FA-Einrichtung, Recovery-Codes und vorhandene Anwendungsschlüssel neu darstellen.
  2. Sensible Bestätigungsabläufe erhalten.
  3. Zustände vor und nach 2FA-Bestätigung sowie beim Anzeigen und Erneuern von Recovery-Codes anhand der bestehenden Endpunkte abbilden. Schlüsselanzeige und Kopierfunktion an die vorhandene Freigabelogik binden; fehlgeschlagene Bestätigungen direkt am Formular erklären.

Akzeptanzkriterien

  • 2FA-Aktivieren/Deaktivieren und Recovery-Codes funktionieren.
  • Schlüssel werden weiterhin nur nach bestehender Logik angezeigt.
  • Abbruch und Fehler sind sicher.

Prüfung

Vorhandene gezielte Abdeckung: tests/Feature/Settings/SecurityTest.php, tests/Feature/Settings/UserApplicationTest.php. Nur bei Berührung des jeweiligen Verhaltens aktualisieren bzw. ausführen.

Gezielte Verhaltenstests für die Änderung; betroffene PHPUnit-Featuretests bei Controller-/Resource-/Route-Anpassungen. Oberfläche mit Tastatur und bei mobiler Breite in beiden Themes prüfen. Projektvorgaben für Lint/Build und bei Vue/TypeScript abschließend npm run types:check erfüllen. Keine ausschließlich optischen Momentaufnahmen als Ersatz für Verhaltenstests.

Grenze der Agentensitzung

Nur dieses Ticket und bereits erfüllte Abhängigkeiten bearbeiten. Ein zusammenhängendes Ergebnis mit passenden Tests liefern; keine Nachbartickets mitziehen. Die Aufteilung zielt auf eine begrenzte Sitzung mit Reserve für Prüfung, garantiert aber kein festes Zeit- oder Tokenbudget. Wenn unerwartete Voraussetzungen den Umfang wesentlich vergrößern, rechtzeitig den Stand, betroffene Dateien, bereits ausgeführte Prüfungen und den konkret nötigen Folgeschritt festhalten.