Files
genesis-2/scripts/sql_para_local_como_remoto.ts
Guillermo.Arrieta e5657d6b0f chore(db): actualizar esquema/backups (auditoría de planes, hashes y conversation_id)
- Agrega fn_log_cambios_planes_estudio y trigger para registrar cambios en cambios_plan, usando response_id (reemplaza interaccion_ia_id).
- Extiende planes_estudio con conversation_id (unique) y plan_hash; agrega asignatura_hash en asignaturas; corrige unaccent_immutable y añade extensión http.
- Actualiza seeds/backups (data_backup.sql / scheme_backup.sql) y ajusta script de diff (sql_para_local_como_remoto.sql), elimina el diff viejo y actualiza archivos auxiliares (deno.lock, CLI temp).
2026-02-05 15:52:56 -06:00

31 lines
1016 B
TypeScript

// scripts/db-diff.ts
/* Uso:
deno run -A scripts/sql_para_local_como_remoto.ts
*/
import { $ } from "@david/dax";
const OUT_FILE = "supabase/diffs/sql_para_local_como_remoto.sql";
console.log("🔍 Comparando base de datos local vs. remota...");
try {
// 1. Ejecutamos el comando y capturamos la salida como texto
// Esto evita que la terminal de Windows/Mac corrompa los acentos
const output = await $`dx supabase db diff --linked`.text();
if (!output.trim()) {
console.log(
"✅ No hay diferencias. Tu base de datos local está sincronizada.",
);
} else {
// 2. Escribimos el archivo usando Deno (UTF-8 garantizado)
await Deno.writeTextFile(OUT_FILE, output);
console.log(`⚠️ Diferencias encontradas.`);
console.log(`📄 Guardadas en: ${OUT_FILE}`);
console.log(`👉 Abre ese archivo en VS Code para revisar los cambios.`);
}
} catch (error) {
console.error("❌ Error al ejecutar db diff:", error);
}