Extract retained stroke preview setup planner

This commit is contained in:
2026-06-13 11:27:30 +02:00
parent 499747173b
commit 3ec4f25889
6 changed files with 232 additions and 28 deletions

View File

@@ -18,6 +18,14 @@ agent or engineer to remove them without reconstructing context from chat.
## Recent Reductions
- 2026-06-13: DEBT-0036 was narrowed again. `NodeStrokePreview::draw_stroke_immediate()`
now routes retained preview stroke max-size fallback, dual-preview max-size
derivation, pattern-scale flips, and Bezier preview-point generation through
`plan_legacy_node_stroke_preview_stroke_setup(...)`; compositor coverage now
also locks the retained stroke-setup curve/pressure intent and
pass-sequence validation short-circuit behavior. Brush object mutation,
camera wiring, retained `Stroke` population, and all live GL execution
remain in the legacy preview node.
- 2026-06-13: DEBT-0036 was narrowed again. `Canvas::draw_merge()` per-layer
blend composite now routes merge-RTT unbind, shader setup, optional
destination-copy feedback, draw, and cleanup ordering through

View File

@@ -3155,6 +3155,12 @@ Results:
dual-pass/background/main-pass/final-composite/copy-back ordering, while the
remaining local preview ownership is concentrated around `stroke_draw_mix()`
setup/execution.
- `NodeStrokePreview::draw_stroke_immediate()` now routes preview stroke
max-size fallback, dual-preview max-size derivation, pattern-scale flips,
and Bezier preview-point generation through
`plan_legacy_node_stroke_preview_stroke_setup(...)`, while brush mutation,
camera wiring, retained `Stroke` population, and live GL execution remain in
the preview node.
- `NodeStrokePreview::stroke_draw_mix()` now shares one local helper for mixer
framebuffer bind/unbind, viewport/scissor/blend state, texture-slot
binding, and final plane draw, while material planning and shader uniform

View File

@@ -509,6 +509,16 @@ Done Checks:
Progress Notes:
- 2026-06-13: `NodeStrokePreview::draw_stroke_immediate()` now routes preview
stroke max-size fallback, dual-preview max-size derivation, pattern-scale
flips, and Bezier preview-point generation through
`plan_legacy_node_stroke_preview_stroke_setup(...)`; compositor coverage now
also locks the retained stroke-setup curve/pressure intent and
pass-sequence request-validation short-circuit behavior. The preview node
still owns brush object mutation, camera wiring, retained `Stroke`
population, and live GL execution. Next slice should target the remaining
higher-level preview pass orchestration seam without reopening landed
sample, mix, pass-sequence, or final-composite helpers.
- 2026-06-13: `Canvas::draw_merge()` per-layer blend composite now routes
merge-RTT unbind, shader setup, optional destination-copy feedback, draw,
and cleanup ordering through