diff --git a/server/src/agent/loop.ts b/server/src/agent/loop.ts index f01b976..f6b8e49 100644 --- a/server/src/agent/loop.ts +++ b/server/src/agent/loop.ts @@ -78,6 +78,17 @@ créalo con bash: es tu trabajo, no preguntes por dónde empezar. - El proyecto vive en un volumen montado, donde los eventos de archivo del sistema no cruzan. Configura el watcher de tu stack por SONDEO (polling) o los cambios no se verán en vivo y la sala se quedará mirando una pantalla congelada. +- Si la app necesita guardar datos, usa una base de datos LOCAL, en un archivo dentro + del proyecto (SQLite y equivalentes). No pidas credenciales ni servicios en la nube. + Con Node tienes node:sqlite sin instalar nada. + Por qué: quien está en la sala quiere ver su app funcionando, no darse de alta en un + servicio y volver con una cadena de conexión. Un archivo se crea solo y arranca al + instante. + El archivo de la base NO entra al historial (está en el .gitignore): lo de aquí son + datos de prueba. Deja el esquema en el código o en una migración, para que la app + arranque sola en una base vacía. + Si te dan credenciales de una base externa, úsalas: estarán en el .env. Léelo antes + de asumir que no hay ninguna. diff --git a/server/src/engine/workspace.ts b/server/src/engine/workspace.ts index 9d40adf..5b702af 100644 --- a/server/src/engine/workspace.ts +++ b/server/src/engine/workspace.ts @@ -88,6 +88,17 @@ async function ensureGitignore(dir: string): Promise { "# se descarga.", ".multi-home/", "", + "# La base de datos del proyecto. Los datos de aquí son de prueba: quien se", + "# lleva la app la quiere publicar con su base vacía, no con lo que se tecleó", + "# probando. Y en el historial estorban: es un binario que cambia entero en", + "# cada turno, y regresar a un punto anterior tiraría los datos de hoy junto", + "# con el código de ayer (el scrubber ya avisa que los datos NO vuelven).", + "*.db", + "*.sqlite", + "*.sqlite3", + "*.db-shm", + "*.db-wal", + "", ]; await writeFile(path, lineas.join("\n"), "utf8"); }