diff --git a/docs/modernization/debt.md b/docs/modernization/debt.md index d679855..acf97f2 100644 --- a/docs/modernization/debt.md +++ b/docs/modernization/debt.md @@ -215,6 +215,10 @@ agent or engineer to remove them without reconstructing context from chat. branch orchestration now routes through `draw_merge_branch_orchestration(...)`; the retained path still owns the concrete per-branch framebuffer, sampler, and texture wiring. +- 2026-06-13: DEBT-0036 was narrowed again. `Canvas::draw_merge()` final-plane + composite now routes through `draw_merge_final_plane_composite(...)`; the + retained path still owns the concrete merged-texture copy, checkerboard + redraw, and final blend/draw wiring. - 2026-06-13: DEBT-0036 was narrowed again. `NodeStrokePreview::draw_stroke_immediate()` now routes retained preview feedback/material/composite planning plus stroke shader uniform assembly through diff --git a/docs/modernization/tasks.md b/docs/modernization/tasks.md index fe784e7..70131c5 100644 --- a/docs/modernization/tasks.md +++ b/docs/modernization/tasks.md @@ -1887,6 +1887,42 @@ ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_composito & 'C:\Program Files\Microsoft Visual Studio\18\Community\MSBuild\Current\Bin\MSBuild.exe' out\build\windows-msvc-default\tests\pp_paint_renderer_compositor_tests.vcxproj /p:Configuration=Debug /p:Platform=x64 ``` +### STR-033 - Extract Draw Merge Final Plane Composite + +Status: Done +Score: +1 renderer boundary and OpenGL parity +Debt: `DEBT-0036` +Scope: `src/canvas.cpp`, `src/legacy_canvas_draw_merge_services.*`, `tests/paint_renderer/compositor_tests.cpp` + +Goal: + +Move the final-plane composite call in `Canvas::draw_merge()` behind a +retained helper so the merge path keeps only final-branch selection and +concrete GL object wiring. + +Done Checks: + +- `Canvas::draw_merge()` no longer owns the final-plane composite call inline. +- Regression coverage proves the final-plane helper preserves ordering and + checkerboard/blend behavior. +- `docs/modernization/debt.md` records the reduced final-plane composite + surface. + +Closeout: `666c4dd3` + +Validation: + +```powershell +ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_compositor" --output-onfailure +& 'C:\Program Files\Microsoft Visual Studio\18\Community\MSBuild\Current\Bin\MSBuild.exe' out\build\windows-msvc-default\tests\pp_paint_renderer_compositor_tests.vcxproj /p:Configuration=Debug /p:Platform=x64 +``` + +### Completed Task Log + +| Date | Task | Score | Validation | Commit | +| --- | --- | ---: | --- | --- | +| 2026-06-13 | STR-033 | +1 renderer boundary and OpenGL parity | `ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_compositor" --output-onfailure`; `& 'C:\Program Files\Microsoft Visual Studio\18\Community\MSBuild\Current\Bin\MSBuild.exe' out\build\windows-msvc-default\tests\pp_paint_renderer_compositor_tests.vcxproj /p:Configuration=Debug /p:Platform=x64` | `666c4dd3` | + ### STR-012 - Extract Preview Final Composite Orchestration Status: Done