Extract dual brush tip dispatch

This commit is contained in:
2026-06-13 23:04:26 +02:00
parent 92c830ed64
commit 065ddf8ebc
4 changed files with 73 additions and 30 deletions

View File

@@ -537,6 +537,10 @@ agent or engineer to remove them without reconstructing context from chat.
sampler dispatch now has regression coverage through
`make_legacy_canvas_stroke_live_pass_sampler_dispatch(...)`; the live path
still owns the concrete sampler objects and binding state.
- 2026-06-13: DEBT-0036 was narrowed again. `Canvas::stroke_draw()` dual-pass
brush-tip dispatch now uses a retained helper object, with regression
coverage proving the helper order; the live path still owns the concrete
brush-tip texture object and dual-pass branch wiring.
- 2026-06-13: DEBT-0036 was narrowed again. `Canvas::draw_merge` checkerboard
background shader setup and final merged-texture redraw setup now route
through `legacy_canvas_draw_merge_services.h`. The retained Canvas path still

View File

@@ -668,6 +668,12 @@ Validation:
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-022 | +1 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` |
Progress Notes:
- 2026-06-13: `NodeStrokePreview::draw_stroke_immediate()` now routes final