Skip to content

[6.x] New Asset Exists Modal Resolution Feature#14433

Open
jackmcdade wants to merge 12 commits into6.xfrom
asset-exists-modal
Open

[6.x] New Asset Exists Modal Resolution Feature#14433
jackmcdade wants to merge 12 commits into6.xfrom
asset-exists-modal

Conversation

@jackmcdade
Copy link
Copy Markdown
Member

@jackmcdade jackmcdade commented Apr 3, 2026

Works with uploading and moving assets. Resolves #14381.

asset-conflicts.mp4

Note

Medium Risk
Changes asset upload and move flows to surface file conflicts and retry actions with overwrite/keep-both strategies, touching CP UI state management and backend action/controller error handling. Moderate risk due to new branching around file operations, cache invalidation, and multi-selection move retries.

Overview
Adds file conflict detection and resolution to the CP asset browser for both uploads and drag/drop moves, prompting a modal to Cancel, Keep Both (timestamp), or Overwrite, with optional apply to all handling.

Backend now returns structured conflict payloads for uploads (AssetsController@store 409 JSON) and moves (MoveAsset throws new AssetConflictException captured by ActionController), including partial completed_moves for multi-selection moves; frontend queues conflicts, retries with chosen strategy, supports multi-select drag moves, and clears Glide/image caches after overwrite/timestamp resolutions.

Reviewed by Cursor Bugbot for commit 8cd9ec5. Bugbot is set up for automated code reviews on this repo. Configure here.

Works with uploading and moving assets. Resolves #14381.
This updates the asset conflict UX by making modal-dismiss behavior resolve as cancel, only showing “apply to all” when multiple upload conflicts exist, and replacing recursive move-conflict continuation with an iterative loop. It also adds MoveAsset tests for non-conflicting moves, same-folder no-op moves, and explicit cancel strategy handling.
Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 6c5b195. Configure here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Moving assets into a subfolder silently overwrites existing files

1 participant