Centralize legacy brush package export

This commit is contained in:
2026-06-04 14:44:37 +02:00
parent 2bd1b12ade
commit 78185b8fd5
13 changed files with 511 additions and 20 deletions

View File

@@ -639,6 +639,16 @@ Known local toolchain state:
preserving desktop worker-thread timelapse behavior, mobile/Web save
callbacks, `App::rec_export`, animation `Canvas::export_anim_mp4`, and
success messages; retained video/export ownership is tracked by `DEBT-0044`.
- `src/legacy_brush_package_export_services.*` is the current app-shell bridge
between `pp_app_core` PPBR brush package export requests and live
`NodePanelBrushPreset::export_ppbr` execution. It preserves dialog metadata,
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`.
- `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
requiring a window, brush preset panel, or filesystem write.
- `src/legacy_history_services.*` is the current app-shell bridge between
`pp_app_core` history plans and legacy `ActionManager`; toolbar and
`NodeCanvas` hotkeys share it while document-history extraction remains