Skip to content

Roasty's faces skip the design's cheeks, open mouths and badge opacity #506

Description

@maximsan

Found while giving Roasty's palette a home (#424). The colours match the design 1:1, but the faces in roasty_faces.dart and the wrong badge in roasty_particles.dart draw fewer marks than the mascot component, prototype/roasty.jsx:

  • Cheeks. The design blushes every face. The app leaves them off the wrong face (opacity 0.3), the card face (0.5), the sleep face (0.35) and the awake face (0.4) — and the module face wears the idle face's 0.45 where the design gives it 0.55.
  • Lesson face. The design draws a filled open mouth with a tongue; the app reuses the correct face's stroked smile, so the two moments look alike.
  • Module face. The design adds a tongue under the open mouth; the app draws the mouth alone.
  • Wrong badge. The design draws the badge group at opacity 0.85; the app draws it opaque.

Also found, and fixed here

One helper generated a regular five-pointed star for its two callers, and the design draws neither of them that way: the module face's eyes are a hand-drawn star whose inner points sit at two different radii and which hangs lower than it reaches, and the sparkles are four-pointed twinkles at three sizes rather than one five-pointed star at one size. Both now come from the design's own paths.

Acceptance criteria

  • Each of the seven faces draws the marks roasty.jsx draws for it, at the design's alphas — roasty_faces_test.dart reads the source and compares every cheek pair, mouth and tongue
  • The wrong badge is drawn at the design's group opacity — through saveLayer, so the badge composites before it fades rather than fading mark by mark
  • flutter analyze, metrics gate, tests clean — run on main merged in, with the suite at 2577

Left open

The design has nine mascot states and the app has eight — the points wink is undrawn. Whether the app has a moment that should use it is a product call, so it is #518 rather than part of this.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingdesign-parityCloses a finding in the app-vs-prototype divergence register

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions