Extract PPBR package path validation

This commit is contained in:
2026-06-04 14:56:29 +02:00
parent 6ab64ccc82
commit 394979e4fc
11 changed files with 444 additions and 32 deletions

View File

@@ -788,6 +788,13 @@ through the app-core brush package export executor and
collection, legacy `Image` header ownership, desktop worker-thread export,
mobile/Web save completion, `NodePanelBrushPreset::export_ppbr`, and existing
success messages while retained execution remains tracked under `DEBT-0047`.
PPBR package header validation and export target/data-directory planning now
live in `pp_assets::brush_package` and are exercised by
`pp_assets_brush_package_tests` plus `pano_cli plan-brush-package-export`.
The live PPBR import/export path consumes those helpers, while legacy
Serializer/Image payload reading, stroke preview generation, preset storage,
and the historical permissive version check remain tracked under `DEBT-0047`
and `DEBT-0049`.
Implementation tasks:
@@ -1396,6 +1403,13 @@ Results:
`pano_cli_plan_brush_package_import_abr_smoke`,
`pano_cli_plan_brush_package_import_rejects_empty_path`, and
`pano_cli_plan_brush_package_import_rejects_unknown_kind`.
- `PanoPainter`, `pp_assets_brush_package_tests`,
`pp_app_core_brush_package_export_tests`, and `pano_cli` built after PPBR
header validation and export path/data-directory planning moved into
`pp_assets`.
- Focused PPBR asset CTest coverage passed for `pp_assets_brush_package_tests`
and the brush package export CLI tests, including path-without-directory
rejection and legacy no-export-data data-directory planning.
- `pp_app_core_document_recording_tests` passed, covering recording start/stop,
clear, platform recorded-file cleanup, frame-count reset, export progress
totals, and oversized progress-total clamping.