Spaces:
Sleeping
Sleeping
Commit History
-
Esquema versionado y BD de usuarios en volumen persistente si lo hay
Jose Salazar +1: Claude Opus 5ARCHITECTURE_REVIEW §3.4. MIGRACIONES. El esquema era un único `CREATE TABLE IF NOT EXISTS`: creaba las tablas en una BD vacía y no hacía NADA sobre una existente, así que añadir una columna era una operación manual sobre un fichero al que, en Spaces, nadie puede llegar. Ahora `PRAGMA user_version` con pasos numerados; sólo se aplican los pendientes. Los pasos son reejecutables sobre lo ya existente porque las BD creadas antes de esto están en la versión 0 con las tablas del paso 1 ya dentro —ese es el caso de la instancia desplegada, y hay prueba de que se pone al día sin perder cuentas—. Paso 2: índice para el throttle de login, que filtraba por email+ip+momento con scan completo en cada intento. PERSISTENCIA. `db_path` apuntaba siempre a `instance/`, que en Spaces no sobrevive al reinicio: cada rebuild se llevaba cuentas, hashes e historial. Ahora se elige /data si hay un volumen persistente montado ahí, y si no se cae a `instance/` AVISANDO al arrancar. Se elige solo porque el fa…b90d0d2