$44│ Started PID#16306 - '/Users/aaclarke/dev/flutter/engine/src/out/host_debug_unopt_arm64/impeller_unittests'
$44│
$44│ ⬇ std::cerr:
$44│ [INFO:flutter/testing/test_timeout_listener.cc(75)] Test timeout of 300 seconds per test case will be enforced.
$44│
$44│ ⬆ std::cerr
$44│ Note: Google Test filter = Play/AiksTest.StrokedCirclesRenderCorrectly/Vulkan
$44│ [==========] Running 1 test from 1 test suite.
$44│ [----------] Global test environment set-up.
$44│ [----------] 1 test from Play/AiksTest
$44│ [ RUN ] Play/AiksTest.StrokedCirclesRenderCorrectly/Vulkan @ ./impeller/display_list/aiks_dl_basic_unittests.cc:488
$44│ ⬇ std::cerr:
$44│ 2025-04-16 15:51:10.514 impeller_unittests[16306:946975] Metal API Validation Enabled
$44│ 2025-04-16 15:51:10.514 impeller_unittests[16306:946975] Metal GPU Validation Enabled
$44│
$44│ ⬆ std::cerr
$44│ ⬇ std::cerr:
$44│ [INFO:flutter/impeller/renderer/backend/vulkan/capabilities_vk.cc(68)] Vulkan validations are enabled.
$44│
$44│ ⬆ std::cerr
$44│ ⬇ std::cerr:
$44│ [INFO:flutter/impeller/renderer/backend/vulkan/capabilities_vk.cc(68)] Vulkan validations are enabled.
$44│
$44│ ⬆ std::cerr
$44│ ⬇ std::cerr:
$44│ 2025-04-16 15:51:10.580 impeller_unittests[16306:946975] Fragment Function(fragCmdBlitImage): uses texture binding at index 0 for tex[0] which is also a color attachment at index 0. This may be a conflict as the color attachment's storeAction == MTLStoreActionStore and writeMask != MTLColorWriteMaskNone.
$44│
$44│ ⬆ std::cerr
$44│ ⬇ std::cerr:
$44│ 2025-04-16 15:51:10.580 impeller_unittests[16306:946975] Fragment Function(fragCmdBlitImage): uses texture binding at index 0 for tex[0] which is also a color attachment at index 0. This may be a conflict as the color attachment's storeAction == MTLStoreActionStore and writeMask != MTLColorWriteMaskNone.
$44│
$44│ ⬆ std::cerr
$44│ ⬇ std::cerr:
$44│ 2025-04-16 15:51:10.580 impeller_unittests[16306:946975] Fragment Function(fragCmdBlitImage): uses texture binding at index 0 for tex[0] which is also a color attachment at index 0. This may be a conflict as the color attachment's storeAction == MTLStoreActionStore and writeMask != MTLColorWriteMaskNone.
$44│
$44│ ⬆ std::cerr
$44│ ⬇ std::cerr:
$44│ 2025-04-16 15:51:10.580 impeller_unittests[16306:946975] Fragment Function(fragCmdBlitImage): uses texture binding at index 0 for tex[0] which is also a color attachment at index 0. This may be a conflict as the color attachment's storeAction == MTLStoreActionStore and writeMask != MTLColorWriteMaskNone.
$44│ 2025-04-16 15:51:10.580 impeller_unittests[16306:946975] Fragment Function(fragCmdBlitImage): uses texture binding at index 0 for tex[0] which is also a color attachment at index 0. This may be a conflict as the color attachment's storeAction == MTLStoreActionStore and writeMask != MTLColorWriteMaskNone.
$44│
$44│ ⬆ std::cerr
$44│ ⬇ std::cerr:
$44│ 2025-04-16 15:51:10.580 impeller_unittests[16306:946975] Fragment Function(fragCmdBlitImage): uses texture binding at index 0 for tex[0] which is also a color attachment at index 0. This may be a conflict as the color attachment's storeAction == MTLStoreActionStore and writeMask != MTLColorWriteMaskNone.
$44│ 2025-04-16 15:51:10.581 impeller_unittests[16306:946975] Fragment Function(fragCmdBlitImage): uses texture binding at index 0 for tex[0] which is also a color attachment at index 0. This may be a conflict as the color attachment's storeAction == MTLStoreActionStore and writeMask != MTLColorWriteMaskNone.
$44│
$44│ ⬆ std::cerr
$44│ ⬇ std::cerr:
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Set Cull Mode Validation
$44│ redundant setCullMode.
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Set Front Facing Winding Validation
$44│ redundant setFrontFacingWinding.
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Set Triangle Fill Mode Validation
$44│ redundant setTriangleFillMode.
$44│
$44│ ⬆ std::cerr
$44│ ⬇ std::cerr:
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Viewport Validation
$44│ redundant setViewport.
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Set Scissor Rect Validation
$44│ redundant setScissorRect.
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Set Cull Mode Validation
$44│ redundant setCullMode.
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Set Front Facing Winding Validation
$44│ redundant setFrontFacingWinding.
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Set Triangle Fill Mode Validation
$44│ redundant setTriangleFillMode.
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Viewport Validation
$44│ redundant setViewport.
$44│ 2025-04-16 15:51:10.667 impeller_unittests[16306:946975] Set Scissor Rect Validation
$44│ redundant setScissorRect.
$44│
$44│ ⬆ std::cerr
$44│ │ Failure @ ./impeller/renderer/backend/vulkan/debug_report_vk.cc:191
$44│ │ Impeller Validation Error
$44│ │
$44│ │ --- Vulkan Debug Report ----------------------------------------
$44│ │ | Severity: Error
$44│ │ | Type: { Validation }
$44│ │ | ID Name: VUID-VkRenderPassBeginInfo-clearValueCount-00902
$44│ │ | ID Number: 1306546659
$44│ │ | Queue Breadcrumbs: [NONE]
$44│ │ | CMD Buffer Breadcrumbs: [NONE]
$44│ │ | Related Objects: RenderPass [9175643336604647822] [EntityPass Render Pass]
$44│ │ | Trigger: Validation Error: [ VUID-VkRenderPassBeginInfo-clearValueCount-00902 ] Object 0: handle = 0x7f566f000000018e, name = EntityPass Render Pass, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x4de051e3 | In vkCmdBeginRenderPass the VkRenderPassBeginInfo struct has a clearValueCount of 1 but there must be at least 3 entries in pClearValues array to account for the highest index attachment in VkRenderPass 0x7f566f000000018e[EntityPass Render Pass] that uses VK_ATTACHMENT_LOAD_OP_CLEAR is 3. Note that the pClearValues array is indexed by attachment number so even if some pClearValues entries between 0 and 2 correspond to attachments that aren't cleared they will be ignored. The Vulkan spec states: clearValueCount must be greater than the largest attachment index in renderPass specifying a loadOp (or stencilLoadOp, if the attachment has a depth/stencil format) of VK_ATTACHMENT_LOAD_OP_CLEAR (https://vulkan.lunarg.com/doc/view/1.3.243.0/mac/1.3-extensions/vkspec.html#VUID-VkRenderPassBeginInfo-clearValueCount-00902)
$44│ │ -----------------------------------------------------------------
$44│ │
$44│ ⬇ std::cerr:
$44│ validateRenderPassDescriptor:899: failed assertion `RenderPass Descriptor Validation
$44│ This render pass descriptor's clear depth (5609560425485417253521326080.000000) is outside of the range [0..1]
$44│ '
$44│
$44│ ⬆ std::cerr
$44│ Stopped PID#16306 - Signal received: SIGABRT - '/Users/aaclarke/dev/flutter/engine/src/out/host_debug_unopt_arm64/impeller_unittests'
$44│ ❌ Executable run is finished with error.$44│ "/Users/aaclarke/dev/flutter/engine/src/out/host_debug_unopt_arm64/impeller_unittests"" "--enable_playground"" "--gtest_color=no"" "--gtest_filter=Play/AiksTest.StrokedCirclesRenderCorrectly/Vulkan"" "--gtest_also_run_disabled_tests""$44│ ❗️ Test has ended unexpectedly: Signal received: SIGABRT
found while working on #167203
reproduction steps
Play/AiksTest.StrokedCirclesRenderCorrectly/Vulkanas a playground.log