Files
mangaBookmark/backend/.impeccable/critique/2026-07-26T17-08-41Z__backend-templates-app-html.md
T
sulthan d1253e8a7b docs: track product context and UI critique snapshots
PRODUCT.md records the durable constraints the UI work keeps having to
rediscover: dark-first is binding (night reading), mobile is the target
rather than the starting breakpoint, and updated_at ordering is a
correctness rule the design must not decorate over.

The two critique snapshots are the scored before/after (21/40, then
26/40) the card fixes were driven from — worth keeping as the record of
which problems were already known, and which ones the fixes introduced.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-27 00:34:01 +07:00

3.7 KiB

target, total_score, max_score, na_heuristics, p0_count, p1_count, timestamp, slug
target total_score max_score na_heuristics p0_count p1_count timestamp slug
backend/templates (web UI) 26 40 1 0 2026-07-26T17-08-41Z backend-templates-app-html

Method: dual-agent (A: a67675dd3039e8156 · B: aa64e48aafb9db799), regression independently re-verified live

Design Health Score

# Heuristic Score Key Issue
1 Visibility of System Status 3 htmx dimming/error-inline verified live and working
2 Match System/Real World 4 "Continue reading," "Updated," site names all read naturally
3 User Control and Freedom 3 Cancel works; no undo after delete (acceptable, single-user tool)
4 Consistency and Standards 2 Disclosure-toggle pattern consistent; bare-emoji icons vs. tuned typography mismatch
5 Error Prevention 2 Chapter input still has no max, hint is prose-only
6 Recognition Rather Than Recall 2 The hint meant to aid recall is what causes the overflow bug
7 Flexibility and Efficiency 3 Search, tabs, direct Continue link present
8 Aesthetic/Minimalist Design 2 Clean tokens undercut by a live horizontal-scroll bug and flat no-cover placeholder
9 Error Recovery 3 "No connection - try again" verified firing on network abort
10 Help and Documentation 2 No help affordance beyond hover tooltips

Total: 26/40 - Acceptable band. Trend: 21 -> 26.

Design Specificity Verdict

Real measured progress: site-tinted badges and --new ribbon hue verified via computed contrast (5.3-9.0:1), genuine product-specific signal. Working against it: bare OS-emoji icons (star/pencil/trash/play) clash with tuned typography; no-cover placeholder still a flat contentless box.

Deterministic scan: CLI 0 findings (clean). Live detector: overused-font/single-font expected (deliberate single-typeface Operate surface). flat-type-hierarchy already accepted. monotonous-spacing and text-occlusion confirmed FALSE POSITIVES (detector's own accumulated debug overlays). edge-flush-cards on Continue-reading strip likely false positive (deliberate scrollable carousel with edge-bleed). ai-color-palette flagging new site-tint hues - plausible false positive (contrast-verified, restrained) but unconfirmed.

Priority Issues

P0 - Chapter-edit form causes 97-127px horizontal page overflow on mobile, Save button pushed off-screen. .chapter-form has display:flex with no wrap, now holds 3 children (hint/input/button) in one unwrapped row. Confirmed live at 390px and 360px. Regression from the harden command - hint text was verified to render but never checked for container overflow at mobile width. Fix: flex-wrap:wrap + .hint{flex:1 0 100%}, same pattern already used in .actions/.confirm-row. P3 - Icon-glyph inconsistency: bare emoji vs tuned type/color system. P3 - No-cover placeholder reads as stuck loading skeleton, not designed empty state. P3 - .confirm-row text wraps awkwardly ("Remove/this?") - cosmetic only, no overflow.

Persona Red Flags

Casey (mobile, primary): chapter-form overflow directly hits her core task (one-handed chapter correction), unexpected sideways scroll needed. Sam (accessibility): well-served overall, but no custom :focus-visible on icon/action buttons.

Minor Observations

Continue-reading strip still not tab-scoped. updated_at ordering verified live via actual favourite-toggle round-trip. ai-color-palette on site tints worth a second glance, unconfirmed either way.

Questions to Consider

  1. Did the harden command's verification ever check mobile viewport width with the hint text present, or only that it rendered?
  2. Is the emoji-icon look deliberate "undesigned" for a single-user tool, or just expedient?
  3. Is a missing og:image common enough in practice to deserve real empty-state design?