agentleFS
sukirman1901sukirman1901/frontend-expert/skills/quality-loop/SKILL.md

quality-loop

Skill9 starsChanged 2 months agoMITView on GitHub

Loop UI work until quality gates pass — judge/build, test, audit, fix, repeat. Use for “rapihin sampai bagus”, polish until audit passes, fix Critical/High design findings, or /polish. Do not use for one-shot “rapihin detail”, copy-only rewrites, or “rapikan kode”.

7 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

10 rules. 0 are common, 6 are distinctive, and 4 are very specific to this project.

  • 0

    Common

    Most of the 5 edited versions we read keep these.

  • 6

    Distinctive

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run a tight quality loop until the UI clears gates (or hit the iteration cap).

    line 14
  2. Very specific:

    After a /design//audit with Critical/High findings and user wants them cleared

    line 28
  3. Distinctive:

    Medium/Low: do not block DONE unless the user asked for zero findings.

    line 69
  4. Distinctive:

    Do not invent a test stack just to satisfy the Tests gate — waive and list residual risk.

    line 71
  5. Distinctive:

    Default max 3 full AUDIT→FIX cycles after the first build

    line 75
  6. Very specific:

    After direction: (+ prototype if comparing/stressing) → tokens → (+ marketing if landing) → (+ app-shell / data-fetching / forms if needed) …

    line 84
  7. Distinctive:

    All Critical/High clear → DONE (report scorecard + remaining Medium/Low)

    line 92
  8. Distinctive:

    Prefer token/system fixes over one-off hacks

    line 99
  9. Distinctive:

    Do not expand scope to unrelated pages

    line 101
  10. Very specific:

    Test: testing (+ devtools when measuring)

    line 149

“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

UI Quality Loop

Overview

Run a tight quality loop until the UI clears gates (or hit the iteration cap). This is the pack’s mini lifecycle — not full /spec→/ship, but build → prove → audit → fix until it’s good.

JUDGE* → BUILD → TEST → AUDIT ──Critical/High──▶ FIX ──▶ TEST → AUDIT …
                         │
                       PASS → DONE

* Judgment only on blank-canvas / first pass (see design-direction skip rules).

When to use

  • User asks “rapihin sampai bagus”, “sampai lulus audit”, keep iterating until gates pass
  • /polish or natural language equivalent of the loop
  • After a /design//audit with Critical/High findings and user wants them cleared

When to skip

  • “Rapihin detail” / feels off → polish (one pass)
  • Copy / “tulisan AI” → content-design
  • “Rapikan kode” → anti-slop-code
  • Single-line token tweak with no quality ask
  • Pure audit with no fix permission (“audit saja”)
  • User said stop / “cukup” / accepted remaining Medium/Low

Agents (orchestrate — do not nest personas forever)

StepAgent
Judgment + build + fixui-developer
Testtest-engineer
Auditdesign-reviewer

You (the session agent) are the loop controller. Personas do not call each other; you invoke their workflows in sequence.

Gates (pass / fail)

GatePass when
Anti-slopNo Critical/High AI-aesthetic findings
UI feelNo Critical/High craft issues on touched UI (concentric radius, hit overlap, transition: all, broken press/enter)
Control geometryradius follows project tokens; text/icon variants are optically balanced; pending/disabled/focus states do not shift geometry
TokensNo Critical/High raw-hex / off-token issues; greenfield pack preset used decision tree + Token score / (explicit) / (hard-gate) / project system in Conventions check
ResponsiveConventions Responsive line present; full-width primary CTA <768; no Critical/High desktop-only layout on greenfield (320–1440)
HierarchyHierarchy pass (one primary focus + one primary CTA) or waiver for tiny tweaks
TypographyOne h1/page + sequential ladder (or waiver)
MotionShell light defaults or named families/patterns from motion-families.md; no decorative spam; reduced-motion; hand-roll (not registry default)
ShellTheme in topbar; avatar → account menu; custom selects (or waivers) on dashboards
LandingMarketing section stack via marketing (not hero-only; hand-roll) — or n/a for app-shell-only
A11yNo Critical keyboard/label/contrast findings (potential or measured)
StatesLoading/error/empty handled for interactive surfaces touched
TestsPlanned critical cases green, or explicit waiver if no test runner / out of scope (document why)
Perf (soft)No Critical obvious LCP/CLS footguns in touched UI; else note as remaining

Loop continues while any Critical or High remains on touched UI. Medium/Low do not block DONE unless the user asked for zero findings.

Do not invent a test stack just to satisfy the Tests gate — waive and list residual risk.

Iteration cap

  • Default max 3 full AUDIT→FIX cycles after the first build
  • On cap: stop, ship best effort, list remaining findings + what would need another round
  • Never infinite-loop

Workflow

Round 0 — Direction + build

  1. Load design-direction if non-trivial / blank-canvas
  2. After direction: (+ prototype if comparing/stressing) → tokens → (+ marketing if landing) → (+ app-shell / data-fetching / forms if needed) → components → (+ design-surfaces when radius/control geometry is implicated) → anti-slop-code → responsive → motion (light shell; marketing = families/patterns from motion-families.md, hand-roll) → anti-slop-design → polish → accessibility (+ webgl / seo if needed)
  3. Produce UI + Conventions check (references/compliance-gates.md)

Each cycle — Prove + audit + fix

  1. TEST — testing via test-engineer (/test-ui workflow) for touched surfaces
  2. AUDIT — design-reviewer scorecard (/design or /audit). Mark unevaluated honestly.
  3. DECIDE
    • All Critical/High clear → DONE (report scorecard + remaining Medium/Low)
    • Else if iterations left → FIX with ui-developer (only findings that block gates; include design-surfaces when radius is implicated)
    • Else → STOP at cap with remaining list

Fix discipline

  • Fix highest severity first
  • Prefer token/system fixes over one-off hacks
  • Re-run TEST for behavior you changed
  • Do not expand scope to unrelated pages

Output template (every cycle)

## Quality loop — cycle N/3

### Test
- … pass/fail …

### Audit scorecard
| Metric | Status | Notes |
|--------|--------|-------|
| … | … | … |

### Blocking (Critical/High)
1. …

### Action
FIX … | DONE | STOP (cap)

Final output (DONE or STOP)

  1. What shipped / changed
  2. Final scorecard
  3. Remaining Medium/Low (if any)
  4. Cycles used

Checklist

  • Judgment only when blank-canvas / first pass (skip rules honored)
  • Build chain includes responsive + motion (+ marketing if landing) or waivers
  • Gates table evaluated each cycle (Anti-slop, Feel, Tokens, Responsive, Hierarchy, Typography, Motion, Shell, Landing, A11y, States, Tests)
  • Shell chrome: theme topbar + avatar menu + custom selects (or waivers)
  • Marketing landing: section stack hand-roll (or n/a / waiver)
  • Conventions check filled before DONE
  • Control geometry Conventions line covers radius token, text/icon optical balance, and relevant states (or valid n/a/waiver)
  • Cap ≤3 fix cycles; STOP lists remaining Critical/High if any
  • No fabricated audit scores

Depth

Craft review: use references/prototype.md → Craft comparison, not a taste score for matched captures, local readability and causal fixes. Geometry exceptions follow references/component-patterns.md: explicit measured morph needs endpoint/playback evidence and stable neighboring targets; accidental shifts remain defects.

  • Lifecycle A→Z: references/fe-lifecycle.md
  • Judgment: design-direction
  • Build: tokens, components, design-surfaces when radius is implicated, anti-slop-code, responsive, motion (motion-families.md), anti-slop-design, polish, accessibility
  • Test: testing (+ devtools when measuring)
  • Audit: design-reviewer + references/anti-patterns.md / references/polish.md / a11y / performance as needed

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.