import { readdir, readFile } from 'node:fs/promises' const files = (await readdir(new URL('../migrations/', import.meta.url))) .filter((name) => /^\d{3}_.+\.sql$/.test(name)) .sort() if (files.length === 0) throw new Error('No migrations found') for (const file of files) { const sql = await readFile(new URL(`../migrations/${file}`, import.meta.url), 'utf8') if (!sql.trim()) throw new Error(`${file} is empty`) if (/\bDROP\s+(DATABASE|SCHEMA)\b/i.test(sql)) { throw new Error(`${file} contains destructive database/schema DDL`) } } console.log(JSON.stringify({ ok: true, migrations: files }))