Bricks Health v0.3.0
Beta hardening — accuracy, safety, and scale
Everything learned from the beta round, plus a full pre-launch engineering audit.
Accuracy (beta-tester driven)
- Colors set through variables or theme styles (
var(--bg-surface)) are no longer flagged as hardcoded. posts_per_pageis treated as a cap, not the rendered count — a sensible query-loop limit is never flagged.- BEM-structured classes (elements, modifiers, and component roots) are excluded from duplicate-merge and single-use findings.
- Deep-nesting discounts required list semantics (
ul > licard grids). - Responsive overflow findings now carry exact, checkable measurements (“extends 37px past the right edge”), and invisible sub-pixel spills are ignored.
- Classes used only in header/footer templates now correctly count as used — previously they could be reported unused.
- Long finding titles (duplicate-class lists, 250 unused variables) collapse to readable counts.
Smart Fix safety
- Content writes preserve backslashes in custom CSS and Code elements exactly (apply, rollback, and undo).
- Snapshots are verified before any write; a corrupt snapshot can never be restored over your content.
- Fixes take a site-wide lock, so two overlapping applies can’t interfere.
- Delete/merge fixes refuse when a class is used in header/footer templates or inside components.
- Merging duplicate variables refuses if the losing token is still referenced in theme styles, components, or custom CSS.
Scans at scale
- Scan progress persists per job and survives timeouts — an interrupted scan can no longer wedge the dashboard.
- The health score stays density-normalized at any site size (large sites no longer drift toward 100).
- Responsive checks show which breakpoints are being measured, live, and a Stop button aborts instantly.
Housekeeping
- Real server error messages now surface in the dashboard instead of generic failures.
- A new setting: optionally delete all plugin data when the plugin is deleted.
- Uninstall now removes every option, transient, and capability the plugin created.