From 60d5a6aab93322872615b04022c6d60d35356b2c Mon Sep 17 00:00:00 2001 From: omigamedev Date: Sat, 13 Jun 2026 22:25:57 +0200 Subject: [PATCH] Promote draw merge layer composite task --- docs/modernization/tasks.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/docs/modernization/tasks.md b/docs/modernization/tasks.md index 0b534ee..dd38134 100644 --- a/docs/modernization/tasks.md +++ b/docs/modernization/tasks.md @@ -1325,6 +1325,39 @@ Completed Task Log: ### STR-010 - Extract Remaining Draw Merge Composite Orchestration +### STR-016 - Extract Draw Merge Layer Composite Execution + +Status: Ready +Score: +2 renderer boundary and OpenGL parity +Debt: `DEBT-0036` +Scope: `src/canvas.cpp`, `src/legacy_canvas_draw_merge_services.h`, `tests/paint_renderer/compositor_tests.cpp` + +Goal: + +Move the large per-layer `draw_merge()` composite execution block into a +retained helper so the callsite only supplies branch selection and concrete GL +objects. + +Done Checks: + +- `Canvas::draw_merge()` no longer builds the per-layer composite execution + inline. +- Regression coverage proves the extracted helper preserves per-branch order. +- `docs/modernization/debt.md` records the reduced draw-merge composite + surface. + +Validation: + +```powershell +ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_compositor|pp_paint_renderer_stroke_execution" --output-on-failure +``` + +### Completed Task Log + +| Date | Task | Score | Validation | Commit | +| --- | --- | ---: | --- | --- | +| 2026-06-13 | STR-016 | +2 renderer boundary and OpenGL parity | `ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_compositor|pp_paint_renderer_stroke_execution" --output-on-failure` | `pending` | + ### STR-012 - Extract Preview Final Composite Orchestration Status: Done