e5657d6b0f
- 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).
31 lines
1016 B
TypeScript
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);
|
|
}
|