Add ref path and dedup integration plan

- Introduced a new plan file detailing the integration of ref path handling and deduplication cleanup processes.
- Implemented a `tentative_fs_path()` function to build filesystem-compatible paths, addressing issues with slugified and deduplicated instance names.
- Enhanced the `handle_tree_event()` method in the change processor to trigger dedup cleanup actions upon deletions, ensuring proper management of dedup groups.
- Updated relevant files to replace legacy path handling with the new system, improving overall path resolution and cleanup efficiency.

These changes enhance the robustness of path handling and deduplication processes, paving the way for improved project management and user experience.
This commit is contained in:
Joe 2026-02-17 03:56:59 -06:00
parent 1a1d9ce886
commit 3ad3c21c01
3 changed files with 90 additions and 2 deletions

View file

@ -2640,7 +2640,7 @@ impl ApiService {
remove_attributes.push(attr_name);
} else if tree.get_instance(*target_ref).is_some() {
// Valid target: compute path and add as Rojo_Ref_* attribute
let path = crate::ref_target_path_from_tree(&tree, *target_ref);
let path = crate::ref_target_path_from_tree(tree, *target_ref);
// Warn if the path is ambiguous (duplicate-named siblings
// at any ancestor level). The ref will still be written,