Skip to content

Week 02 - May 25-31, 2026

Focus: Audit protocol, contrast audit, screenshot automation


What I did

  • Wrote the full audit methodology (4 axes, severity scale, evidence standards, evaluation order)
  • Ran the contrast audit: every color pair in all 5 themes, plus network indicators and the Amigo-specific override
  • Converted all 19 RGB565 byte-swapped constants to standard RGB, computed luminance values
  • Found contrast failures across all 5 themes. Later re-validated by tracing how each color is actually used in the rendering code. Final count: 10 confirmed WCAG violations (6 critical, 4 high).
  • Got screenshot automation working across 3 devices (Amigo, TZT, M5StickV). 118 screenshots each, 354 total.
  • Measured legibility metrics: chars per line, CJK capacity, visible lines, font-to-screen ratio for each tier
  • Put up this progress site

What I found

The contrast results had clear patterns:

  1. Amigo's info_background override fails in 4 of 5 themes. The runtime swap creates a readability problem specific to that device.
  2. Light theme is the worst: frame, go, error, and both network indicators all fail.
  3. The network indicators (mainnet vs testnet) are invisible on Light theme. That's a security problem, not just aesthetics.
  4. I originally counted foreground/frame as a text contrast failure in 3 themes. After tracing the code, draw_string() always renders on bg_color, never on frame_color. Those are adjacency concerns, not WCAG violations. Both elements pass against the background individually.

Full breakdown: Contrast Findings

Things I noticed

  • The foreground/frame situation is less severe than I first thought. On keypads, text and outline are both clearly visible against black, they just look similar to each other. Still worth improving for scannability, but not a blocking accessibility failure.
  • The Amigo info_background thing is trickier. It was added to compensate for how that device's physical display renders darker. Can't just remove it without understanding the original problem.
  • Light theme might need a larger rethink. When 4 different pairs fail, swapping colors one at a time probably won't produce a coherent result.
  • The re-validation step was worth doing. Counting failures purely by math without tracing the rendering path overstates the problem. Understanding how colors are actually composed on screen matters.

Next week

  • Start layout consistency analysis on the 354 captured screenshots
  • Annotate with region boundaries and spacing measurements
  • Compare identical flows across devices
  • Find spacing inconsistencies and region violations