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

@@ -654,6 +654,15 @@ Known local toolchain state:
the retained legacy `Image` header object, desktop worker-thread export,
mobile/Web save completion, dialog lifetime, and success messages while brush
asset/storage/UI/platform ownership is tracked by `DEBT-0047`.
- `src/assets/brush_package.*` owns the first headless PPBR package helpers:
header validation, legacy-compatible version acceptance, export path
normalization, and preview-data-directory planning. Live
`NodePanelBrushPreset::export_ppbr`/`import_ppbr` consumes these helpers, but
legacy Serializer/Image payload parsing, preview rendering, preset storage,
and strict-version cleanup remain tracked by `DEBT-0047` and `DEBT-0049`.
- `pp_assets_brush_package_tests` covers PPBR header parsing, truncated/bad
magic rejection, legacy version tolerance, export package/data path planning,
legacy extension containment, and paths the legacy regex could not match.
- `pp_app_core_brush_package_export_tests` covers PPBR export request path
validation, metadata preservation, legacy-flexible destination/export-data
combinations, service dispatch, and malformed request rejection without