Second attempt with all three suspected fixes applied
(materialised Items field, static readonly identity delegates,
Autocomplete downgraded from Both to List) still froze the UI on
Home. FluentCombobox in Fluent UI Blazor 4.11.8 is not viable
inside a per-row @foreach on a Blazor Server page independent of
parameter stability. Native <input list> stays. Record both attempts
and the fallback options for anyone who wants to try again later.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Record the reason U-11 was reverted (SignalR flood from per-row
FluentCombobox with fresh Items IEnumerable + inline delegate
parameters on every render) and what a retry needs (materialised
sortedBookingTexts field, static Func<string, string> for OptionText/
OptionValue, browser verification with a real pending-bookings count).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Route transaction.Value through ToFormattedString() so the confirmation
reads "Betrag 1'234.57" instead of "Betrag 1234.567", and fix the
"Transaction" → "Transaktion" typo. One-file change — the other four
CRUD pages don't put values into confirmations.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Add a Blazor built-in ErrorBoundary around @Body with a friendly
FluentMessageBar + retry / home buttons. Also hook
NavigationManager.LocationChanged so the boundary resets on any nav
(otherwise the error state persists across NavigateTo and "Zur
Startseite" still shows the failure banner).
U-6 split into U-6a (this) and U-6b (per-handler try/catch to route
expected exceptions to IMessageService — deferred).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
SplitBankTransactionAsync ended with NavigateTo(forceLoad: true), which
tore down the SignalR circuit and re-ran every repo constructor just
to refresh the pending-bookings list. Extract data loading into a
LoadDataAsync helper called from OnInitializedAsync, SplitBank
TransactionAsync, and OnCompletedAsync — the page refreshes in-circuit,
scoped caches survive, and the NavigationManager injection can go.
Also flags the plan: U-4 is split into U-4a (this) and U-4b (persist
settings + drop MyHeader's forceLoad, touching ~15 pages).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
UI-focused analysis complementing IMPROVEMENT_PLAN.md: 4 real bugs,
first-render null-guard inconsistency, Home page overload, report /
list-page visual-language split, missing error boundaries, missing
mutation feedback, missing search on grid pages, and a handful of
minor rough edges. Phased into 7 phases (U-1 .. U-12 plus
nice-to-haves) sequenced by value / risk.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>