3.3 KiB
3.3 KiB
PR-07e Assets Refactor Cleanup and Regression Coverage
Domain owner: docs/studio
Briefing
Consolidate the refactor by removing obsolete redraw-heavy code paths, tightening naming, and locking the event-driven behavior with tests.
Objective
Finish the corrective refactor so the codebase does not drift back toward monolithic render ownership.
After this PR:
- obsolete redraw-request and monolithic render helpers are removed;
- remaining component boundaries are clearer and easier to maintain;
- tests guard lifecycle, event routing, and selective-update behavior;
- the workspace code is organized around durable responsibilities rather than incremental leftovers.
- the resulting framework is left in a shape that other Studio workspaces can adopt directly.
Dependencies
./PR-07a-assets-event-topology-and-lifecycle-foundation.md./PR-07b-asset-navigator-and-row-subscriptions.md./PR-07c-asset-details-and-form-lifecycle.md./PR-07d-asset-mutation-and-structural-sync-orchestration.md
Scope
- remove dead or transitional redraw-oriented code
- rename classes/events where the old naming reflects the wrong direction
- tighten package structure for navigator, details, and orchestration code
- make reusable framework pieces visible and discoverable to future workspace implementations
- add regression coverage for:
- lifecycle subscription hygiene
- selection propagation
- row patch propagation
- details-local updates
- structural sync boundaries
- update Studio learn/spec material if the refactor exposes terminology drift
Non-Goals
- no new user-facing asset features in this slice
- no speculative refactor outside the
Assetsworkspace and its direct event contracts
Execution Method
- Remove compatibility layers that existed only to bridge from the old refresh-heavy implementation.
- Normalize class and event naming around lifecycle and event-driven ownership.
- Reorganize tests to reflect component boundaries instead of one giant workspace class.
- Update documentation to reflect the stabilized architecture.
Acceptance Criteria
- the refactored
Assetsworkspace no longer depends on redraw-request events as a primary mechanism - code ownership is split along navigator, details, and orchestration boundaries
- lifecycle and event-driven behavior are covered by focused tests
- the remaining
AssetWorkspaceroot is materially smaller and primarily compositional - the reusable framework surface is clear enough for other workspaces to consume instead of cloning
Assetsinternals
Validation
- full unit-test pass for asset-workspace packages
- targeted regression tests for mount/unmount lifecycle safety
- targeted regression tests proving that local updates stay local unless structural sync is requested
Affected Artifacts
prometeu-studio/src/main/java/p/studio/workspaces/assets/...prometeu-studio/src/main/java/p/studio/events/...prometeu-studio/src/test/java/p/studio/workspaces/assets/...docs/studio/specs/4. Assets Workspace Specification.mddocs/studio/learn/mental-model-assets-workspace.md