Measured on main · b12bcd5607 · 2026-10-31 · mirrors docs/FEATURE_MAP.md
-
34 features
+
35 features
158 HTTP routes
18 server modules
14 web features
diff --git a/docs/testing/TEST_IDS.md b/docs/testing/TEST_IDS.md
index 1628c380d..39e0f7a4e 100644
--- a/docs/testing/TEST_IDS.md
+++ b/docs/testing/TEST_IDS.md
@@ -8,7 +8,7 @@ or `TestIds` for the same tree with autocomplete. `{name}` marks a part filled i
time; "in FilterPicker" marks an ID a shared component draws from the prop written here.
How to write a test with them: [WRITING_E2E.md](WRITING_E2E.md).
-Every control has a test ID: **1015** buttons, text boxes, selects and textareas.
+Every control has a test ID: **1024** buttons, text boxes, selects and textareas.
## access
@@ -1578,6 +1578,26 @@ Every control has a test ID: **1015** buttons, text boxes, selects and textareas
- `clone-table-name-option-{value}` · button in Autocomplete
- `clone-table-name-toggle` · button in Autocomplete
- `clone-unlock` · button · Unlock
+- **ColumnChangePanel** · `features/utilities/components/ColumnChangePanel.tsx`
+ - `{testId}` · button · passed in by the parent
+ - `column-change-batch` · input
+ - `column-change-column` · select · Pick a column
+ - `column-change-copy-all` · button in CopyButton
+ - `column-change-hint` · p
+ - `column-change-impact` · section · What it touches
+ - `column-change-load-error` · p
+ - `column-change-new-name` · input
+ - `column-change-new-type` · input
+ - `column-change-open-editor` · button · Open in editor
+ - `column-change-panel` · div · What it touches
+ - `column-change-password` · input
+ - `column-change-refused` · p
+ - `column-change-step-{value}` · article
+ - `column-change-step-{value}-copy` · button in CopyButton
+ - `column-change-steps` · section · Steps ( )
+ - `column-change-table` · select
+ - `column-change-unlock` · button · Unlock
+ - `column-change-warnings` · ul
- **DatabaseAccessModal** · `features/utilities/components/DatabaseAccessModal.tsx`
- `db-access-all-form` · div
- `db-access-all-note` · p
@@ -1714,6 +1734,7 @@ Every control has a test ID: **1015** buttons, text boxes, selects and textareas
- `index-management-modal` · div
- `sql-sidebar-utilities` · nav · Database utilities
- `utilities-backup` · data · Backup & Restore
+ - `utilities-change-column` · data · Change Column
- `utilities-clone-table` · data · Clone Table
- `utilities-connection` · select
- `utilities-connection-pool` · data · Connection Pool
diff --git a/packages/ui-shared/src/index.ts b/packages/ui-shared/src/index.ts
index 070b7dfd7..28e967310 100644
--- a/packages/ui-shared/src/index.ts
+++ b/packages/ui-shared/src/index.ts
@@ -166,6 +166,10 @@ export type {
TableSizeGroup,
} from '@foxschema/sql';
+// Safe column change: what a rename or type change touches, and its steps as SQL to review.
+export { DEFAULT_COLUMN_CHANGE_BATCH, planColumnChange } from '@foxschema/sql';
+export type { ColumnChange, ColumnChangeImpact, ColumnChangePlan, ColumnChangeStep } from '@foxschema/sql';
+
// SQL Tracer: shapes and bounds (the server redacts; the screen only shows).
export { TRACE_MAX_EVENTS, TRACE_MAX_MS } from '@foxschema/sql';
export type { TraceEvent, TraceMode } from '@foxschema/sql';