Plan live stroke rasterization boundaries

This commit is contained in:
2026-06-12 22:13:21 +02:00
parent 57c6128d11
commit 81726d30a5
8 changed files with 348 additions and 22 deletions

View File

@@ -18,6 +18,13 @@ agent or engineer to remove them without reconstructing context from chat.
## Recent Reductions
- 2026-06-12: DEBT-0036 was narrowed again. Live `Canvas::stroke_draw`
destination feedback now consumes a named `CanvasStrokeRasterizationPlan`
through `plan_legacy_canvas_stroke_rasterization`, and `pp_paint_renderer`
owns pure material/pass planning for stroke pattern, mixer, dual-brush, and
final composite texture/uniform intent. Retained OpenGL stroke execution
still lives in `Canvas`, but feedback/material decisions now have tested
renderer-facing plan boundaries.
- 2026-06-12: DEBT-0036 was narrowed again. The opt-in `desktop-gpu`
preset now owns a real OpenGL readback golden gate through
`pp_renderer_gl_gpu_readback_tests`, validating a deterministic 1x1 clear

View File

@@ -1332,9 +1332,16 @@ catalog now consumed by the legacy OpenGL app initialization path.
OpenGL capability detection for framebuffer fetch, map-buffer alignment, and
float texture support. It also owns the OpenGL texture upload-type mapping used
by legacy `Texture2D` and `RTT` creation, RGBA pixel-format mapping used by
`RTT` texture allocation, plus image channel-count to texture
format mapping for `Texture2D` image uploads and framebuffer status naming for
`RTT` and `Texture2D` diagnostics. It also owns renderer API texture-format to
`RTT` texture allocation, plus image channel-count to texture format mapping
for `Texture2D` image uploads and framebuffer status naming for `RTT` and
`Texture2D` diagnostics. Live stroke rasterization has started moving toward renderer
services: `Canvas::stroke_draw` now consumes a named
`CanvasStrokeRasterizationPlan` through a legacy adapter boundary for
destination feedback/copy decisions, and `pp_paint_renderer` owns pure
stroke material/pass planning for pattern, mixer, dual-brush, and final
composite texture/uniform intent. Actual retained OpenGL draw execution remains
in `Canvas` under `DEBT-0036`.
It also owns renderer API texture-format to
OpenGL internal/pixel/component token mapping, including depth-stencil formats,
for future backend texture objects. `Texture2D` 2D texture binding, upload,
mipmap generation, framebuffer readback setup, and update component-type tokens

View File

@@ -495,10 +495,9 @@ Done Checks:
### LATER-003 - Live Stroke Rasterization Through Renderer Services
Status: Blocked
Status: Ready
Score: +5 renderer boundary and OpenGL parity
Debt: `DEBT-0036`
Blocked By: `RND-001`, `RND-002`, `RND-003`, and at least one GPU golden gate
Done Checks: