house style adoption #6

Merged
cheapnud merged 11 commits from d/ux2-house-style into master 2026-08-17 15:05:06 +00:00
Owner

Adopts the shared design language across every page: flat themed chrome with aliased self-hosted fonts, page headers with module kickers, semantic status colors, progress buttons on async actions, uniform table plumbing, and a stronger conventions test suite. Also fixes a dozen latent dead controls found along the way.

Adopts the shared design language across every page: flat themed chrome with aliased self-hosted fonts, page headers with module kickers, semantic status colors, progress buttons on async actions, uniform table plumbing, and a stronger conventions test suite. Also fixes a dozen latent dead controls found along the way.

🤖 Claude AI Code Review

  1. Summary
    Large but disciplined house-style sweep introducing shared PageHeader/StatusChip/ProgressButton components, a centralized theme, and a strong grep-based conventions test suite; also fixes real dead @bind-Checked switches.

  2. Code Quality
    Excellent test coverage and genuinely well-documented rationale; the @bind-Checked@bind-Value fix and its regression guard are especially good.

  3. Issues

🟡 ProgressButton.razor — StartIcon is dropped while running but the spinner has Class="mr-2" even when ChildContent is null (icon-only usage). Minor visual only; not a bug in behavior. (Skip if intentional.)

🟢 PageHeader.razor — the .mud-text-secondary class on the kicker and Subtitle body2 rely on MudBlazor emitting that utility class; the conventions test checks mud-typography-overline instead, so this is fine, but worth confirming mud-text-secondary actually exists in your MudBlazor version (it's mud-secondary-text in some versions).

🟢 UiConventionsTests — HexColorPattern (#[0-9A-Fa-f]{3,8}) will match things like Git-style refs or #region-adjacent text inside razor markup/comments, risking false positives on future edits. Low risk given current allowlist, but the heuristic is broad.

  1. Verdict: APPROVE

The switch-binding fixes are real, correct, and now guarded against regression. No blocking bugs, security issues, deadlocks, or resource leaks found. The loading-flag try/finally refactors are correct and the search/filter additions are pure client-side over already-loaded lists.


📊 Tokens: 138699 input + 615 output | 💰 Cost: ~$0.7089
Generated by Claude Opus 4.8 via Gitea Actions

## 🤖 Claude AI Code Review 1. **Summary** Large but disciplined house-style sweep introducing shared PageHeader/StatusChip/ProgressButton components, a centralized theme, and a strong grep-based conventions test suite; also fixes real dead `@bind-Checked` switches. 2. **Code Quality** ⭐⭐⭐⭐☆ Excellent test coverage and genuinely well-documented rationale; the `@bind-Checked`→`@bind-Value` fix and its regression guard are especially good. 3. **Issues** 🟡 ProgressButton.razor — `StartIcon` is dropped while running but the spinner has `Class="mr-2"` even when `ChildContent` is null (icon-only usage). Minor visual only; not a bug in behavior. (Skip if intentional.) 🟢 PageHeader.razor — the `.mud-text-secondary` class on the kicker and `Subtitle` `body2` rely on MudBlazor emitting that utility class; the conventions test checks `mud-typography-overline` instead, so this is fine, but worth confirming `mud-text-secondary` actually exists in your MudBlazor version (it's `mud-secondary-text` in some versions). 🟢 UiConventionsTests — `HexColorPattern` (`#[0-9A-Fa-f]{3,8}`) will match things like Git-style refs or `#region`-adjacent text inside razor markup/comments, risking false positives on future edits. Low risk given current allowlist, but the heuristic is broad. 4. **Verdict**: **APPROVE** The switch-binding fixes are real, correct, and now guarded against regression. No blocking bugs, security issues, deadlocks, or resource leaks found. The loading-flag `try/finally` refactors are correct and the search/filter additions are pure client-side over already-loaded lists. --- 📊 **Tokens**: 138699 input + 615 output | 💰 **Cost**: ~$0.7089 *Generated by Claude Opus 4.8 via Gitea Actions*
cheapnud merged commit d1e9b78afa into master 2026-08-17 15:05:06 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
cheapnud/CheapFurniturePlanner!6
No description provided.