Skip to content

[macOS 26] flutter/packages/flutter/test/cupertino/action_sheet_test.dart impeller golden failing #193157

Closed

Description

@vashworth

https://ci.chromium.org/ui/p/flutter/builders/staging.shadow/Mac%20framework_tests_impeller/9/overview

01:43 +3939 ~20: /Volumes/Work/s/w/ir/x/w/flutter/packages/flutter/test/cupertino/action_sheet_test.dart: Taps on a button can be slided to other buttons
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following TestFailure was thrown running a test:
Expected: one widget whose rasterized image matches golden image
"cupertinoActionSheet.press-drag.png"
  Actual: _TypeWidgetFinder:<Found 1 widget with type "CupertinoActionSheet": [
            CupertinoActionSheet(dependencies: [InheritedCupertinoTheme, MediaQuery,
ScrollConfiguration], state: _CupertinoActionSheetState#e439a),
          ]>
   Which: SkiaException: Skia Gold received an unapproved image in post-submit
          testing. Golden file images in flutter/flutter are triaged
          in pre-submit during code review for the given PR.

          Visit https://flutter-gold.skia.org// to view and approve
          the image(s), or revert the associated change. For more
          information, visit the wiki:
          https://github.com/flutter/flutter/blob/main/docs/contributing/testing/Writing-a-golden-file-test-for-package-flutter.md

          Debug information for Gold --------------------------------
          stdout: Given image with hash f279b6f7e42def8d9a0a365ba4176667 for test
cupertino.cupertinoActionSheet.press-drag
          Expectation for test: b5e4b8b8cdb69a6b2402dac90f6e6983 (positive)
          Expectation for test: ff8dfca74a2c8c33e7d884070e8ab13c (positive)
          Expectation for test: 3e324a42bbd58606fbc265146be59f40 (positive)
          Expectation for test: 4e2ce541846063446b9943bdfea6f8fb (positive)
          Expectation for test: 5331788b02f1dd7e51402ac4afe47f8c (positive)
          Expectation for test: 75f7cfcba0ec3ce440d87c29f1abc819 (positive)
          Expectation for test: df18d0b563f343c0354677d25b3c39d6 (positive)
          Expectation for test: e07d716fbdee96f01b77e7ed6f015a75 (positive)
          Expectation for test: ac2debec61b95d53cdc79b0d8dcc17d4 (positive)
          Expectation for test: 1d63087cd675e0aec9f30d0815d44b1f (positive)
          Expectation for test: 61863f38217aa3349c239eeb49b84930 (positive)
          Expectation for test: c07da5a14a91be432e2b59079ab26a1d (positive)
          Expectation for test: ce8ef79c146857d162663b1161fd6d5c (positive)
          Expectation for test: d12b902d840b7facb026d6e1371d1393 (positive)
          Expectation for test: 2b9ae3b662747803c17f0dd7abceb71b (positive)
          Expectation for test: 353af9cc48f299b054702e5f478fb3b0 (positive)
          Expectation for test: c491a2b774f5363c631c3e576bba586e (positive)
          Expectation for test: 3de43928aee862c12998cf69fbfa8eb2 (positive)
          Expectation for test: 3f8c592774caf3c760fbbd318a7dc5af (positive)
          Expectation for test: 46fda993fd7d7957a73de40832a4f275 (positive)
          Expectation for test: 15502de71915574ddfb2ad73fd528bef (positive)
          Expectation for test: 1b5fb52462a04afa28c0c46c3213b22a (positive)
          Expectation for test: 3bb57a8782f67836c6ad3ece7f00729a (positive)
          Expectation for test: 3e9a344352ae53d8dad0a1a75430ceef (positive)
          Expectation for test: 853b0b74d17d6e4477a1152ee550817a (positive)
          Expectation for test: efa6b43f32ea7b6d60392f8e3ec734f3 (positive)
          Expectation for test: 98af16e9b7eb3fb810b44c74bb18ffb9 (positive)
          Expectation for test: b9cf9c29f6e1650ace3332474dbcdfa5 (positive)
          Expectation for test: f9b6756eaaeaabb0eededfe00f7e3a25 (positive)
          Expectation for test: 2ca7f8a87a382e49143e003c065b987b (positive)
          Expectation for test: 52dbdc02bdb19324036c851fb9cdd495 (positive)
          Expectation for test: 54717d71fb8e72c46c9928d28d417d10 (positive)
          Expectation for test: 7676a9470c9acfa87af499397301922b (positive)
          Expectation for test: 8b744514f0d53ebf7052498a3ea3135f (positive)
          Expectation for test: a5aaa95d23d608acfe8e7c8da3162cf9 (positive)
          Untriaged or negative image:
https://flutter-gold.skia.org/detail?grouping=name%3Dcupertino.cupertinoActionSheet.press-drag%26source_type%3Dflutter&digest=f279b6f7e42def8d9a0a365ba4176667


          stderr: Test: cupertino.cupertinoActionSheet.press-drag FAIL


          result-state.json: No result file found.

Activity

  1. okorohelijah commented on Sep 23, 2026

    @okorohelijah
    Contributor

    What this is: Unlike the macOS 26 CoreText glyph-antialiasing drift in #184182 (and #193155 / #193158 / 27 of the 33 goldens in #193160), the untriaged cupertino.cupertinoActionSheet.press-drag image (f279b6f7e42def8d9a0a365ba4176667) has its alpha channel halved or quartered across the entire action sheet, so it should not be blindly triaged as positive in Gold.

    What I verified:

    • flutter test packages/flutter/test/cupertino/action_sheet_test.dart passes all 66 tests on Linux at c3edad87 (matching Linux positive 7676a9470c9acfa87af499397301922b).
    • Diffing the new macOS 26 PNG (f279b6f7..., 600×131) against the current macos + impeller positive baseline (46fda993..., trace 57eb56960f614d3d434f14cb8562cdb8 per skia_client.dart):
      • 67,047 / 78,600 pixels (85.30%) differ across the entire sheet interior (x=8..591, y=8..122), vs. 0.23%–3.42% pairwise among existing 600×131 positives.
      • RGB is virtually unchanged (max per-channel delta R=10, G=10, B=10; sheet fill stays RGB(245,245,245) and action text stays RGB(0,122,255)).
      • Alpha drops from mean 172.15 to 58.52 (max delta 191): 66,462 of the 67,047 differing pixels have A_new / A_base equal to exactly 0.25× (42,787 px, e.g. 202 -> 51) or 0.50× (23,675 px, e.g. 201 -> 101, 255 -> 128).

    What I could not verify: Which Impeller/Metal offscreen pass or BackdropFilter/saveLayer step on macOS 26.6.2 compounds the alpha — I do not have a macOS 26 host.

    Confidence: Medium — the 0.5×/0.25× alpha scaling in the Gold PNGs is directly measured, but isolating the Impeller/Metal cause needs macOS 26.

    To move this forward: @vashworth — could we hold off on approving f279b6f7e42def8d9a0a365ba4176667 in Gold and route this to the Impeller team to check translucent layer capture on macOS 26?

    Pre-triage by Elijah's_triage_agent — verify before acting on it.

  2. added
    a: tests"flutter test", flutter_test, or one of our tests
    platform-iosiOS applications specifically
    P2Important issues not at the top of the work list
    triaged-iosTriaged by iOS platform team
    on Sep 24, 2026
  3. github-actions commented on Oct 26, 2026

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  4. locked as resolved and limited conversation to collaborators on Oct 26, 2026
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

    P2Important issues not at the top of the work lista: tests"flutter test", flutter_test, or one of our testsplatform-iosiOS applications specificallyteam-iosOwned by iOS platform teamtriaged-iosTriaged by iOS platform team

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions