Add opt-in desktop GPU readback gate
This commit is contained in:
@@ -18,6 +18,12 @@ agent or engineer to remove them without reconstructing context from chat.
|
||||
|
||||
## Recent Reductions
|
||||
|
||||
- 2026-06-12: DEBT-0036 was narrowed again. The opt-in `desktop-gpu`
|
||||
preset now owns a real OpenGL readback golden gate through
|
||||
`pp_renderer_gl_gpu_readback_tests`, validating a deterministic 1x1 clear
|
||||
and `glReadPixels` result against exact RGBA bytes. The first context helper
|
||||
is Windows/WGL-only and skips clearly on platforms without a helper; macOS
|
||||
and Linux GPU context helpers plus broader golden coverage remain open.
|
||||
- 2026-06-12: DEBT-0060 was closed. Retained Android standard/Quest/Focus
|
||||
package CMake files no longer generate or prepend a patched `nanort.h`
|
||||
overlay. Android package configure now applies the tracked nanort source
|
||||
|
||||
@@ -51,7 +51,7 @@ or temporary adapters live only in chat history.
|
||||
| 4 | Component Split Without Behavior Change | Started | Each extracted target builds and tests |
|
||||
| 5 | Renderer Boundary And OpenGL Parity | Started | OpenGL output matches golden readbacks |
|
||||
| 6 | Platform Alignment | Started | Every supported platform has named validation |
|
||||
| 7 | Hardening, Coverage, And Breaking-Point Tests | Not started | Each component has edge/failure tests |
|
||||
| 7 | Hardening, Coverage, And Breaking-Point Tests | Started | Each component has edge/failure tests |
|
||||
| 8 | Future Backend Readiness | Not started | Vulkan/Metal lab targets remain non-default |
|
||||
|
||||
## Measurable Task Tracking
|
||||
@@ -1729,6 +1729,14 @@ Gate:
|
||||
|
||||
## Phase 7: Hardening, Coverage, And Breaking-Point Tests
|
||||
|
||||
Status: started. The first opt-in desktop GPU golden/readback gate now lives in
|
||||
`pp_renderer_gl_gpu_readback_tests` and is selected by the existing
|
||||
`desktop-gpu` preset. It creates a tiny desktop OpenGL context, clears to a
|
||||
deterministic 1x1 red fixture, reads back exact RGBA bytes, and skips with a
|
||||
clear message when no GPU/context helper is available. The first helper is
|
||||
Windows/WGL-only; macOS/Linux helpers and broader render golden coverage remain
|
||||
tracked under `DEBT-0036`.
|
||||
|
||||
Goal: tests should try to break components, not only confirm current happy
|
||||
paths.
|
||||
|
||||
|
||||
@@ -37,8 +37,8 @@ auditable steps rather than by subjective estimates.
|
||||
| Legacy adapter retirement | 20 | 7 | `legacy_*_services` and singleton bridges are deleted or reduced to trivial composition. |
|
||||
| Renderer boundary and OpenGL parity | 15 | 10 | Live render/export/readback paths execute through renderer interfaces with parity checks. |
|
||||
| Platform and package parity | 10 | 6 | Required platforms have root CMake/package validation and injected platform services. |
|
||||
| Hardening and future backend readiness | 10 | 0 | Edge, fuzz, golden, stress, and backend-lab gates exist for high-risk paths. |
|
||||
| **Total** | **100** | **53** | Only completed tasks below may change this number. |
|
||||
| Hardening and future backend readiness | 10 | 2 | Edge, fuzz, golden, stress, and backend-lab gates exist for high-risk paths. |
|
||||
| **Total** | **100** | **55** | Only completed tasks below may change this number. |
|
||||
|
||||
When updating `Current`, add a dated note under "Completed Task Log" with the
|
||||
task id, points moved, validation command, and commit hash.
|
||||
@@ -331,7 +331,7 @@ cmake --build --preset windows-msvc-default --config Debug --target PanoPainter
|
||||
|
||||
### RND-004 - Add First Desktop GPU Golden Gate
|
||||
|
||||
Status: Blocked
|
||||
Status: Done
|
||||
Score: +2 hardening and future backend readiness
|
||||
Debt: `DEBT-0036`
|
||||
Scope: `tests/`, `CMakeLists.txt`, renderer test helpers only
|
||||
@@ -526,6 +526,7 @@ Done Checks:
|
||||
|
||||
| Date | Task | Score Change | Validation | Commit |
|
||||
| --- | --- | ---: | --- | --- |
|
||||
| 2026-06-12 | RND-004 | +2 hardening and future backend readiness | `ctest --preset desktop-gpu --build-config Debug --output-on-failure`; `ctest --preset desktop-fast --build-config Debug -R "pp_renderer_gl\|pp_paint_renderer" --output-on-failure` | pending |
|
||||
| 2026-06-12 | DEP-002 | +1 build and CMake ownership | `powershell -ExecutionPolicy Bypass -File scripts\automation\android-legacy-package-build.ps1 -Packages standard` | 648404ee |
|
||||
| 2026-06-12 | RND-002 | +2 renderer boundary and OpenGL parity | `ctest --preset desktop-fast --build-config Debug -R "pp_app_core_document_export\|pp_paint_renderer_compositor\|pano_cli_plan_export_snapshot_route\|pano_cli_simulate_document_export" --output-on-failure` | 46fb8ef |
|
||||
| 2026-06-12 | RND-001 | +2 renderer boundary and OpenGL parity | `ctest --preset desktop-fast --build-config Debug -R "pp_app_core_document_export\|pp_paint_renderer_compositor\|pano_cli_plan_export_snapshot_route\|pano_cli_simulate_document_export" --output-on-failure` | 46fb8ef |
|
||||
|
||||
Reference in New Issue
Block a user