From fb7fab24f46c06a41bf94a2ff91135a2c1a62c08 Mon Sep 17 00:00:00 2001 From: omigamedev Date: Mon, 15 Jun 2026 23:38:55 +0200 Subject: [PATCH] Normalize STR-016 tracker state --- docs/modernization/debt.md | 26 ++++++++++++-------------- docs/modernization/roadmap.md | 30 ++++++++++++------------------ docs/modernization/tasks.md | 6 +++--- 3 files changed, 27 insertions(+), 35 deletions(-) diff --git a/docs/modernization/debt.md b/docs/modernization/debt.md index 1d8e1777..f0405062 100644 --- a/docs/modernization/debt.md +++ b/docs/modernization/debt.md @@ -401,24 +401,22 @@ agent or engineer to remove them without reconstructing context from chat. now drops the unused `draw_checkerboard` flag from the branch helper chain, shrinking the helper API mismatch while `Canvas::draw_merge_branch_orchestration()` still owns the remaining branch orchestration. +- 2026-06-13: `STR-016` completed in `b9ed78e1`. The per-layer composite block + moved out of `Canvas::draw_merge()`, and the helper-shape cleanup that had + been keeping the extraction blocked now reads as completed historical + context rather than a live blocker. - 2026-06-15: `DEBT-0036` was narrowed again. `Canvas::draw_merge_branch_orchestration()` now drops the unused `draw_checkerboard` parameter from the internal branch - wrapper, shrinking the remaining call-shape mismatch while the draw-merge - extraction remains blocked by the helper API shape mismatch. -- 2026-06-15: `DEBT-0036` was narrowed again. `Canvas::draw_merge_temporary_paint_branch()` - now drops the unused `copy_blend_destination` parameter from the temporary-paint - wrapper, shrinking the remaining draw-merge helper API mismatch while the - extraction remains blocked by the helper API shape mismatch. + wrapper, and `Canvas::draw_merge_temporary_paint_branch()` now drops the + unused `copy_blend_destination` parameter from the temporary-paint wrapper, + but those changes are follow-on cleanup after `STR-016`, not blockers on the + completed extraction. - 2026-06-15: `DEBT-0036` was narrowed again. The stale `make_canvas_draw_merge_branch_dispatch(...)` forward declaration in - `src/canvas.cpp` now matches the 7-argument implementation, shrinking the - remaining draw-merge helper API mismatch while the extraction remains blocked - by the helper API shape mismatch. -- 2026-06-15: `DEBT-0036` was narrowed again. The remaining - `Canvas::draw_merge()` inline-default comment in `src/canvas.cpp` now - matches the header's `SIXPLETTE(true)` default, so the draw-merge mismatch - is comment-only and aligned while the extraction remains blocked by the - helper API shape mismatch. + `src/canvas.cpp` now matches the 7-argument implementation, and the + remaining `Canvas::draw_merge()` inline-default comment in `src/canvas.cpp` + now matches the header's `SIXPLETTE(true)` default; both are historical + cleanup notes after `STR-016`, not reasons the task stayed blocked. - 2026-06-14: `DEBT-0036` was narrowed again. `Canvas::draw_merge_branch_orchestration()` now routes the temporary erase, temporary paint, texture, and blend dispatch bodies through retained helpers inside `execute_canvas_draw_merge_branch_body(...)`; diff --git a/docs/modernization/roadmap.md b/docs/modernization/roadmap.md index f37d4146..18710c42 100644 --- a/docs/modernization/roadmap.md +++ b/docs/modernization/roadmap.md @@ -80,12 +80,12 @@ app-owned dialog insertion path while leaving the remaining retained dialog families debt-tracked. The stale `make_canvas_draw_merge_branch_dispatch(...)` forward declaration in `src/canvas.cpp` now matches the existing 7-argument implementation, shrinking -the remaining draw-merge helper API mismatch while the extraction remains -blocked by the helper API shape mismatch. +the draw-merge helper API mismatch as part of the completed `STR-016` +cleanup logged in `b9ed78e1`. The remaining `Canvas::draw_merge()` inline-default comment in `src/canvas.cpp` now matches the header's `SIXPLETTE(true)` default, so the draw-merge mismatch -is comment-only and aligned while the extraction remains blocked by the helper -API shape mismatch. +is comment-only and aligned as historical `STR-016` cleanup rather than a live +blocker. The cloud browser dialog now also opens through that seam from `src/legacy_cloud_services.cpp`, so the remaining cloud modernization debt is now concentrated in retained background worker threads, transfer helpers, @@ -3231,20 +3231,14 @@ Results: shared canvas blend-gate plan to decide whether they can read destination color through framebuffer fetch or must copy the destination texture before the legacy OpenGL blend draw. -- `execute_canvas_draw_merge_branch_body()` now drops the unused - `draw_checkerboard` flag from the branch helper chain, shrinking the helper - API mismatch while `Canvas::draw_merge_branch_orchestration()` still owns the - remaining branch orchestration. `STR-016` remains blocked by the helper API - shape mismatch until the helper shape is simplified enough to move the - per-layer composite block out cleanly. -- `Canvas::draw_merge_branch_orchestration()` now drops the unused - `draw_checkerboard` parameter from the internal branch wrapper, shrinking the - remaining call-shape mismatch while the draw-merge extraction remains - blocked by the helper API shape mismatch. -- `Canvas::draw_merge_temporary_paint_branch()` now drops the unused - `copy_blend_destination` parameter from the temporary-paint wrapper, - shrinking the remaining draw-merge helper API mismatch while the extraction - remains blocked by the helper API shape mismatch. +- `STR-016` completed on 2026-06-13 in `b9ed78e1`; the per-layer composite + block moved out of `Canvas::draw_merge()`, and the follow-on + `draw_checkerboard`/helper-shape cleanup now reads as historical `DEBT-0036` + reduction rather than a live blocker on the task tracker. +- `Canvas::draw_merge_branch_orchestration()` and + `Canvas::draw_merge_temporary_paint_branch()` later kept narrowing + `DEBT-0036`, but the draw-merge extraction itself is no longer blocked by + the helper API shape mismatch. - Canvas main-brush, dual-brush, and stroke-pad draw paths now use the tested `pp_paint_renderer` stroke-feedback plan to decide whether framebuffer fetch supplies destination color or the legacy OpenGL path must copy the target diff --git a/docs/modernization/tasks.md b/docs/modernization/tasks.md index 2fb79fc9..5cd345bf 100644 --- a/docs/modernization/tasks.md +++ b/docs/modernization/tasks.md @@ -4443,11 +4443,11 @@ Completed Task Log: ### STR-016 - Extract Draw Merge Layer Composite Execution -Status: Blocked -Score: +2 renderer boundary and OpenGL parity +Status: Done +Score: +1 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` -Blocked By: Helper API shape mismatch in the current per-layer composite extraction attempt +Completed: 2026-06-13 (`b9ed78e1`) Goal: