CNA-BUG-229: docs/graphics-renderer-feature-matrix.md calls itself up to date but still says EasyGL's ReferenceStencil gap (Task 872) is open and lists its test as a known failure, contradicting its own table row
Evidence basis: source-verified at the pinned commit; tests exist (not executed for this page). Claims on this page were checked by reading the CNA source at commit 009d40f5; unless a sentence says otherwise, nothing here was built or executed. Nothing on this page was executed unless the Evidence section says so.
The matrix's ReferenceStencil row says EasyGL passes (remeasured 2026-09-09), but its failure baseline and Vulkan bottom line still call the gap open, although REMED-GFX-236 fixed EasyGL on 2026-08-29.
- Identifier
CNA-BUG-229- Category
- Bug
- Subsystem
- Documentation & release tooling
- Status
- Narrowed (partially fixed; describes only what survives)
- Verified against
- CNA
009d40f5(009d40f5dd085c4e674d3479675fac84b12b3e0a) - Severity
- Low (a triage suggestion, not a project priority)
- Evidence basis
- Source-verified: read at TARGET, not executed
- Tests touching this area
- Yes: see Current tests
- Affected contract
- docs/graphics-renderer-feature-matrix.md ('Master, up-to-date cross-renderer feature matrix') and the documented status of GraphicsDevice::setReferenceStencilProperty on the EasyGL family
Expected behaviour
A matrix that labels itself "Master, up-to-date" should carry one status per feature and renderer. For GraphicsDevice.ReferenceStencil on EasyGL that status is fixed: REMED-GFX-236 (closed 2026-08-29 in plans/plan_postaudit.md) made EasyGLRenderer::SetReferenceStencil reissue the stencil function with the new reference, recording "1 FAIL - 2 PASS" for the test with a three-way mutation check, and rewrote the test's header accordingly.
Actual behaviour at TARGET
docs/graphics-renderer-feature-matrix.md says both things. Its GraphicsDevice.ReferenceStencil row: "shared stamp/test fixture passes on EasyGL (GraphicsDevice_ReferenceStencil, remeasured 2026-09-09)". Its "Known pre-existing test-failure baseline" still lists for EasyGL "3 - EasyGL_MRT_TwoAttachments, EasyGL_GraphicsDevice_ReferenceStencil, easy-gl-resource-smoke-tests", and its Vulkan bottom line says "the ReferenceStencil gap (Task 872) remains open only on EasyGL". The same stale state is recorded in plans/plan_graphics.md (Task 872 still open) and in the EasyGL registration comment, which still calls the test "a documented known failure".
Source locations
docs/graphics-renderer-feature-matrix.md— header label; ReferenceStencil row; Known pre-existing test-failure baseline; Vulkan bottom linemodules/renderers/easygl/src/EasyGLRenderer.cpp— EasyGLRenderer::SetReferenceStencil and the state ApplyDepthStencilState records for itmodules/renderers/easygl/examples/easygl_graphicsdevice_reference_stencil_test.cpp— header: the fix history and the exit-code contractmodules/renderers/easygl/examples/CMakeLists.txt— EasyGL_GraphicsDevice_ReferenceStencil registration comment ('documented known failure')plans/plan_graphics.md— Task 872 row, still openplans/plan_postaudit.md— REMED-GFX-236 record, closed 2026-08-29
Evidence
Checked by reading at 009d40f5; the test was not run here, so that it passes rests on CNA's own record (REMED-GFX-236 and the matrix row). Fixed since the matrix was first reported stale: the rows it then got wrong about Clear and stencil (Task 871) are corrected, FNA3D now appears (32-bit index audit), and the opening scope sentence limits the main tables to the established renderers. Whether EasyGL_MRT_TwoAttachments and easy-gl-resource-smoke-tests, the other two names in the EasyGL baseline, still fail at TARGET was not checked; the unfiltered CI job does not tolerate them.
Focused reproduction
No focused reproduction is known. Nothing has been invented here; the evidence above is what exists.
Current tests
EasyGL_GraphicsDevice_ReferenceStencil (single-sided and two-sided legs), its Vulkan and Software counterparts, and GraphicsDevice_ReferenceStencil in the DirectX parity corpus. The test exists; the defect is in the records around it.
Regression test
No new test: correct the baseline and bottom-line sections, close Task 872, and update the registration comment. The CI allowlist that still tolerates this test failing is a separate entry.
Blast radius
Readers of the matrix and the graphics plan; it also keeps the stale CI allowlist entry looking justified. No behaviour is affected.
Workaround
Trust the table row and plans/plan_postaudit.md section 33 over the later sections.
Related pages
The same subject is explained at several altitudes. These are the neighbouring pages at each one.
- Internals
- EasyGL renderer internals
- Deep dives
- Stencil reference history
- Known issues
- Bug index