Render captured canvas snapshots through renderer boundary

This commit is contained in:
2026-06-05 18:31:39 +02:00
parent ba5c3069e1
commit 9cafc39788
6 changed files with 78 additions and 8 deletions

View File

@@ -674,7 +674,10 @@ prepare and log a payload-completeness report from that snapshot before
delegating to retained `Canvas::project_save`; the app-core snapshot boundary
also has a tested pure PPI export helper, and
`pano_cli plan-canvas-document-snapshot` runs that helper for payload-complete
snapshots and reports generated byte/dirty-face summaries. Live save writer
snapshots and reports generated byte/dirty-face summaries. The same automation
now feeds payload-complete snapshots through the `pp_paint_renderer`
document-frame compositor and renderer-neutral recording upload path, reporting
texture, transition, byte, payload, and command counts. Live save writer
replacement, export adoption, and renderer-owned readback remain under
`DEBT-0010`/`DEBT-0013`/`DEBT-0036`.
`pano_cli plan-image-import` exposes app-core planning for File > Import image
@@ -2219,6 +2222,10 @@ Results:
report (`payloadComplete` and `canExportPpi`) used by the live save bridge,
and payload-complete snapshots now run the pure `pp_document` PPI exporter
and decoded-project summary before emitting `ppiExport` JSON.
- The same payload-complete snapshot automation now uploads the active document
frame through `pp_paint_renderer::upload_document_frame_faces` and the
`RecordingRenderDevice`, emitting `rendererUpload` JSON with texture,
transition, command, byte, and active-frame payload counts.
- `pp_app_core_document_import_tests` passed, covering wide equirectangular,
legacy vertical cube strip, regular transform-placement, and invalid-dimension
import route decisions, equirectangular service dispatch, transform import
@@ -2497,6 +2504,11 @@ Results:
document-canvas tests decode the generated bytes, and
`pano_cli plan-canvas-document-snapshot` reports `ppiExport` readiness,
byte count, and dirty-face count for agent automation.
- Payload-complete canvas snapshot automation also crosses the renderer
boundary now: `pano_cli plan-canvas-document-snapshot` records the same
snapshot through the pure document-frame compositor and renderer-neutral
texture upload stream, so agents can validate document/canvas payloads moving
into renderer commands before live canvas export/save writer replacement.
- Snapshot creation now rejects invalid embedded RGBA8 face payloads before
document export or history can persist malformed state.
- Package-smoke wrappers validate the Windows CMake app executable/runtime