Schema workflow
The schema/*.dbml files are the database schema source of truth.
Generate SQL migrations
Run:
make generate-migrations
This uses relspec to convert the DBML files into PostgreSQL SQL and writes the generated schema migration to:
migrations/020_generated_schema.sql
Check schema drift
Run:
make check-schema-drift
This regenerates the SQL from schema/*.dbml and compares it with migrations/020_generated_schema.sql.
If the generated output differs, the command fails so CI can catch schema drift.
Workflow
- Update the DBML files in
schema/ - Run
make generate-migrations - Review the generated SQL
- Commit both the DBML changes and the generated migration
Existing handwritten migrations stay in place. Going forward, update the DBML first and regenerate the SQL from there.