[Phase 2] Flip driver manifest to editing-ready (closes Phase 2)
Part of the SQL Server Phase 2 epic #150. Blocked by #ISSUE_1, #ISSUE_2, #ISSUE_3, #ISSUE_4, #ISSUE_5 — should be the last PR of Phase 2.
The driver isn't on main. Code lives on feat/sql-server and isn't in any release. This PR is the close-out — once it lands on feat/sql-server, the whole branch squashes into main.
Once all the backend + frontend Phase 2 work has landed, this PR re-enables editing in the UI by flipping capability flags in the driver manifest. Should be a tiny diff + a thorough manual QA pass.
Task
Backend
In src-tauri/src/drivers/sqlserver/mod.rs::SqlServerDriver::new:
DriverCapabilities {
// ...
alter_column: false, // keep false — DDL generation is Phase 3
create_foreign_keys: false, // keep false — DDL generation is Phase 3
manage_tables: true, // was false ← change
readonly: false, // was true ← change
}
Bump the driver version:
version: "0.2.0".to_string(), // was "0.1.0"
description: "Microsoft SQL Server".to_string(), // drop "(read-only preview)"
Frontend
Mirror the same changes in src/hooks/useDrivers.ts → FALLBACK_DRIVERS entry for sqlserver.
Integration test (gated)
Add one gated integration test under src-tauri/src/drivers/sqlserver/tests.rs (or a new tests/sqlserver_integration.rs) that exercises the full editing loop:
- Start
mcr.microsoft.com/mssql/server:2022-latest via testcontainers
CREATE TABLE with single PK + composite PK + one table with an IDENTITY column
- Insert rows, update one column per row, delete one row — for each table shape
- Assert row counts match expectations
- Gate with
#[ignore] so CI without Docker skips it
Manual QA checklist
Reference
- Plan:
docs/sql-server-implementation-plan.md § Phase 2 — closing
[Phase 2] Flip driver manifest to editing-ready (closes Phase 2)
Part of the SQL Server Phase 2 epic #150. Blocked by #ISSUE_1, #ISSUE_2, #ISSUE_3, #ISSUE_4, #ISSUE_5 — should be the last PR of Phase 2.
The driver isn't on
main. Code lives onfeat/sql-serverand isn't in any release. This PR is the close-out — once it lands onfeat/sql-server, the whole branch squashes intomain.Once all the backend + frontend Phase 2 work has landed, this PR re-enables editing in the UI by flipping capability flags in the driver manifest. Should be a tiny diff + a thorough manual QA pass.
Task
Backend
In
src-tauri/src/drivers/sqlserver/mod.rs::SqlServerDriver::new:Bump the driver version:
Frontend
Mirror the same changes in
src/hooks/useDrivers.ts→FALLBACK_DRIVERSentry forsqlserver.Integration test (gated)
Add one gated integration test under
src-tauri/src/drivers/sqlserver/tests.rs(or a newtests/sqlserver_integration.rs) that exercises the full editing loop:mcr.microsoft.com/mssql/server:2022-latestvia testcontainersCREATE TABLEwith single PK + composite PK + one table with anIDENTITYcolumn#[ignore]so CI without Docker skips itManual QA checklist
Reference
docs/sql-server-implementation-plan.md§ Phase 2 — closing