mikebridge opened a new pull request, #45545: URL: https://github.com/apache/superset/pull/45545
### SUMMARY **What admins saw.** Semantic-layer deletion warned that charts would stop working, even though existing dependents block deletion. Archived charts were missed by that protection and could lose the source needed to restore them. **Why, in plain terms.** The dialog described an older behavior, and the dependency check counted only live charts and dashboards. **What this changes.** Archived charts and dashboards also block semantic-source deletion. This includes archived dashboards whose native filters or chart customizations target a semantic view, even without a chart using that view. The refusal includes the total and archived counts and explains how to restore and repoint archived assets, or delete them permanently through Recently Archived, or ask an admin for help when those assets are inaccessible. Layer and view confirmations explain the block; layer deletion still warns that its views are permanently deleted and the action cannot be undone. Empty layers retain the irreversible-deletion warning without a nonexistent-view dependency warning. The three deletion conflict responses add `archived_count`; it overlaps `inaccessible_count`, so clients must not add those counts. Named results remain filtered through existing live-list visibility. Active-report and transaction policies are unchanged. ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF Not captured; focused component regressions cover both confirmations and refusal messages. ### TESTING INSTRUCTIONS 1. Create a chart using a semantic view, then archive the chart. 2. Try deleting the view or its layer. Confirm the refusal includes the archived dependent count and Recently Archived guidance. 3. Restore and repoint the chart, or permanently delete it, then retry with no remaining dependents. 4. Verify the layer confirmation still lists its views and warns that their permanent deletion cannot be undone. Check the single-view and bulk-view confirmations also describe dependency blocking. Local checks: 251 semantic command/API tests; 41 frontend tests. The three archived-dashboard listener regressions pass and fail with an ORM-query mutation. Changed-file hooks, POT drift and repeated OpenAPI generation pass. Follow-up: the confirmation offers admin help for inaccessible dependents. The server refusal currently repeats that hint only when archived assets are present; extending it to inaccessible live-only dependents and simplifying the wording is separate copy polish. ### ADDITIONAL INFORMATION - [ ] Has associated issue: - [x] Required feature flags: SEMANTIC_LAYERS; SOFT_DELETE to exercise archived assets - [x] Changes UI - [ ] Includes DB Migration (follow approval process in [SIP-59](https://github.com/apache/superset/issues/13351)) - [ ] Migration is atomic, supports rollback & is backwards-compatible - [ ] Confirm DB migration upgrade and downgrade tested - [ ] Runtime estimates and downtime expectations provided - [ ] Introduces new feature or API - [ ] Removes existing feature or API -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
