From 07a14fdd56e8f157efdcf5e76140661276962187 Mon Sep 17 00:00:00 2001 From: omigamedev Date: Sat, 13 Jun 2026 17:45:20 +0200 Subject: [PATCH] Add STR-005 live stroke face callback task --- docs/modernization/tasks.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/docs/modernization/tasks.md b/docs/modernization/tasks.md index bb927a0..d08217a 100644 --- a/docs/modernization/tasks.md +++ b/docs/modernization/tasks.md @@ -810,6 +810,7 @@ Done Checks: | 2026-06-12 | ADP-001 | +1 legacy adapter retirement | `ctest --preset desktop-fast --build-config Debug -R "pp_app_core_document_resize\|pp_app_core_document_canvas\|pano_cli_plan_document_resize\|pano_cli_plan_canvas_clear" --output-on-failure`; `powershell -ExecutionPolicy Bypass -File scripts\automation\quiet-validate.ps1 -BuildTargets PanoPainter,pano_cli -TestRegex "pp_app_core\|pano_cli_plan"` | e489b1e2 | | 2026-06-12 | MT-001 | 0 | `git diff -- docs\modernization\roadmap.md docs\modernization\tasks.md` | same docs slice | | 2026-06-13 | STR-004 | +1 renderer boundary and OpenGL parity | `ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_stroke_execution" --output-on-failure`; `MSBuild.exe out\build\windows-msvc-default\tests\pp_paint_renderer_stroke_execution_tests.vcxproj /p:Configuration=Debug /p:Platform=x64` | 5c03b130 | +| 2026-06-13 | STR-005 | +1 renderer boundary and OpenGL parity | `ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_stroke_execution" --output-on-failure`; `MSBuild.exe out\build\windows-msvc-default\tests\pp_paint_renderer_stroke_execution_tests.vcxproj /p:Configuration=Debug /p:Platform=x64` | pending | ## Task Template @@ -845,3 +846,33 @@ Validation: ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_stroke_execution" --output-on-failure & 'C:\Program Files\Microsoft Visual Studio\18\Community\MSBuild\Current\Bin\MSBuild.exe' out\build\windows-msvc-default\tests\pp_paint_renderer_stroke_execution_tests.vcxproj /p:Configuration=Debug /p:Platform=x64 ``` + +### STR-005 - Extract Live Stroke Face Callback Orchestration + +Status: Ready +Score: +1 renderer boundary and OpenGL parity +Debt: `DEBT-0036` +Scope: `src/canvas.cpp`, `src/legacy_canvas_stroke_execution_services.h`, +`tests/paint_renderer/stroke_execution_tests.cpp` + +Goal: + +Move the remaining inline live-pass face callback orchestration in +`Canvas::stroke_draw()` into a retained helper so the live stroke path owns only +concrete GL object wiring and per-face execution callbacks. Keep the face loop +and callback order unchanged. + +Done Checks: + +- `Canvas::stroke_draw()` no longer contains the remaining inline face-pass + callback block around `execute_legacy_canvas_stroke_live_pass_with_face_framebuffers(...)`. +- Regression coverage proves the extracted helper preserves callback order and + face-state updates. +- `docs/modernization/debt.md` records the reduced live-stroke callback surface. + +Validation: + +```powershell +ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_stroke_execution" --output-on-failure +& 'C:\Program Files\Microsoft Visual Studio\18\Community\MSBuild\Current\Bin\MSBuild.exe' out\build\windows-msvc-default\tests\pp_paint_renderer_stroke_execution_tests.vcxproj /p:Configuration=Debug /p:Platform=x64 +```