Skip to content

sec(extensions): add destructive SQL confirmation dialog for extension workspaces (#638) - #641

Merged
ZhuchkaTriplesix merged 1 commit into
devfrom
issue/638-extension-destructive-dialog
Aug 30, 2026
Merged

sec(extensions): add destructive SQL confirmation dialog for extension workspaces (#638)#641
ZhuchkaTriplesix merged 1 commit into
devfrom
issue/638-extension-destructive-dialog

Conversation

@ZhuchkaTriplesix

Copy link
Copy Markdown
Member

Summary

Closes #638

Adds destructive SQL confirmation interceptor to ExtensionSqlWorkspace to protect external database sources (such as ClickHouse, DuckDB, etc.) from accidental data loss on DROP TABLE, TRUNCATE, DROP DATABASE, etc.

Changes

  1. ExtensionSqlWorkspace (lib/features/extensions/extension_sql_workspace.dart):
    • Integrated DestructiveSqlDetector and showDestructiveQueryDialog.
    • Checks AppSettings.getConfirmDestructiveOperations().
    • Aborts query execution if user rejects confirmation.
    • Added optional initialSql parameter for testing and query seeding.
  2. Tests (test/features/extensions/extension_sql_workspace_test.dart):
    • Added unit and widget tests validating destructive query detection and confirmation dialog flow in extension workspaces.

@github-actions github-actions Bot added editor Code/SQL editor stability Theme parser epic label: stability ui User interface components and widgets labels Aug 30, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix merged commit 135f6e5 into dev Aug 30, 2026
4 checks passed
This was referenced Aug 30, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix deleted the issue/638-extension-destructive-dialog branch August 30, 2026 19:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

editor Code/SQL editor stability Theme parser epic label: stability ui User interface components and widgets

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant