ux-bar — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited ux-bar (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
My design/UX bar. It layers on top of frontend-design (reference it for the craft) and adds the rules I care about. Usable standalone on a diff, and invoked by the quality stage of eskills:task-flow.
#FF5A47 light / #FF7A66 dark) is the brand.Coral conventionally reads as "owe / alert" in money apps, so brand color must never also mean a debt or an error.
slate-/violet-/rose-NNN).Surfaces, text, border, brand all go through semantic CSS variables so light/dark flip for free.
system as the default preference.POUR: Perceivable, Operable, Understandable, Robust. The checks that catch most barriers:
#E8472F fallback documented).button, a, nav, label) before a div + ARIA. Correct Name / Role / Value; text alternatives for icons and images.aria-live/live regions; descriptive errors with how to fix (SC 3.3.3).The responsive bug I hit most. Symptom → cause → fix:
min-width: auto, so it refuses to go below its content's intrinsic min-size and drags the whole track wider than the viewport. Fix: min-width: 0 on the item (the grid/flex child) — not on the inner element.
<select>/<input> carry a min width(~longest option / ~20ch) that ignores min-width:0 on the control itself. Put min-width:0 on its grid/flex container; width:0 on the control alone does nothing.
repeat(auto-fit, minmax(min(BASIS, 100%), 1fr)).The min(BASIS,100%) is essential — it stops the column floor (BASIS) from overflowing below that width. Wraps N→1 with no magic media query.
position:sticky, unlike hidden), but the element is still too wide. Find and shrink the real culprit; keep clip only as defense-in-depth.
expands the layout viewport, so a max-width/centered header stops lining up with full-width cards. Don't fix the header — find what overflows.
Measure, don't eyeball. For any "not responsive" report: render at real widths and check documentElement.scrollWidth > clientWidth. Bisect the culprit by hiding each child (display:none) and re-measuring; confirm the fix by injecting the candidate style and re-measuring before editing. Verify down to 320px (real floor; Galaxy Fold cover ~280px) in every view. Harness: eskills:stack-gotchas → "mobile rendering in WSL".
eskills:standards —neutral/collective wording (no niños/as, no -x/-e), no assumed gender or family shape. Report offenders file:line → fix.
When reviewing, report findings as file:line → which rule → the fix. Default to passing only what you actually checked.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.