diff --git a/src-tauri/src/db.rs b/src-tauri/src/db.rs index 4e46df7..d369111 100644 --- a/src-tauri/src/db.rs +++ b/src-tauri/src/db.rs @@ -315,6 +315,26 @@ async fn get_conn(db_path: &str) -> Result { .await .map_err(|e| format!("Migration: {e}"))?; + // Migraciones post-CREATE: agregar columnas que pueden no existir en BD viejas + for alter in &[ + "ALTER TABLE projects ADD COLUMN hus_count INTEGER DEFAULT 0", + "ALTER TABLE projects ADD COLUMN epics_count INTEGER DEFAULT 0", + "ALTER TABLE epics ADD COLUMN item_type TEXT DEFAULT 'E'", + "ALTER TABLE epics ADD COLUMN hierarchy_path TEXT", + "ALTER TABLE user_stories ADD COLUMN item_type TEXT DEFAULT 'U'", + "ALTER TABLE user_stories ADD COLUMN hierarchy_path TEXT", + "ALTER TABLE user_stories ADD COLUMN parent_code TEXT", + "ALTER TABLE work_items ADD COLUMN epic_id INTEGER", + "ALTER TABLE work_items ADD COLUMN parent_type TEXT", + "ALTER TABLE work_items ADD COLUMN parent_id INTEGER", + "ALTER TABLE work_items ADD COLUMN story_points REAL", + "ALTER TABLE work_items ADD COLUMN estimated_hours REAL", + "ALTER TABLE work_items ADD COLUMN actual_hours REAL", + "ALTER TABLE work_items ADD COLUMN assigned_to INTEGER", + ] { + let _ = conn.execute(alter, ()).await; + } + // Copiar DB al Desktop para acceso rĂ¡pido con DBeaver let _ = std::fs::copy( db_path,