clusev/resources/views/livewire
boban 142b531d45 feat(auth): make password rotation optional + correct the 2FA copy
The seeded-password rotation was forced before the panel was reachable. It is now a
nudge, not a wall: the prompt shows once per session and can be skipped, and a standing
warning banner keeps reminding while the default password is still in use.

- EnsureSecurityOnboarded redirects to the password page only when must_change_password
  AND the session has not set onboarding.password_skipped (set by PasswordChange::skip,
  which lands on the dashboard WITHOUT rotating — so the flag/banner persist).
- app layout shows a default-password warning banner while must_change_password is true.
- the metrics broadcast channel no longer gates on securityOnboarded() — a deliberately
  un-rotated (but authenticated) operator would otherwise lose realtime metrics;
  /broadcasting/auth still runs in the web group (guest = 403), so it stays auth-gated.
- 2FA was already optional (never enforced) — only the login copy was wrong: "2FA
  required/enforced" → "recommended/optional" (de + en).

Browser-verified (R12): login → skippable prompt → dashboard banner → free navigation
(no re-redirect); login copy correct; zero console errors. Full suite 465 pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 19:47:17 +02:00
..
audit feat(audit): paginate the log + DB-wide search (v0.9.50) 2026-06-21 23:58:27 +02:00
auth feat(auth): make password rotation optional + correct the 2FA copy 2026-06-25 19:47:17 +02:00
files fix(files): responsive file rows + restore button cursor (v0.9.55) 2026-06-22 06:06:32 +02:00
help feat(wg): WireGuard help topic (registration + DE/EN content + test) 2026-06-20 22:46:04 +02:00
modals feat(terminal): Clusev-host SSH login tile + server search; drop the inline hint 2026-06-25 19:46:55 +02:00
release feat(release): publish + yank UI, strings, audit labels 2026-06-23 03:28:49 +02:00
servers fix(metrics): move the history chart x-axis labels below the plot 2026-06-25 01:55:49 +02:00
services fix(ui): add wire:key to list rows — stops "pending is not defined" (v0.9.53) 2026-06-22 00:44:03 +02:00
settings fix(ui): add wire:key to list rows — stops "pending is not defined" (v0.9.53) 2026-06-22 00:44:03 +02:00
system fix(ui): add wire:key to list rows — stops "pending is not defined" (v0.9.53) 2026-06-22 00:44:03 +02:00
terminal feat(terminal): Clusev-host SSH login tile + server search; drop the inline hint 2026-06-25 19:46:55 +02:00
versions fix(versions): dev box lists BOTH its source and the public repo 2026-06-24 23:51:28 +02:00
wireguard ux(wg): endpoint field is host-only (no apparent double port) (v0.9.47) 2026-06-21 23:25:44 +02:00
dashboard.blade.php fix(dashboard): readable audit labels in the recent-events panel (v0.9.52) 2026-06-22 00:27:13 +02:00
server-switcher.blade.php feat(i18n): bilingual foundation (DE/EN) + localize auth/dashboard/servers/fleet/account 2026-06-13 22:36:16 +02:00