SQLite migration tracker and rollback system for grupo-dico and similar projects. Auto-generates versioned SQL migration files with UP/DOWN pairs, tracks applied migrations, supports rollback.
Module: lib/db-migrations/db-migrations.js
SKILL.md: ~/.openclaw/skills/db-migrations/SKILL.md
State: .db-migrations/_meta.json
Replaces manual ALTER TABLE patches in schema.js with versioned, trackable SQL migrations.
v001_2026-04-04_add_hora_evidencia.sql# Status
node lib/db-migrations/db-migrations.js status
# Create migration
node lib/db-migrations/db-migrations.js create "add_visits_fields" \
"ALTER TABLE visitas ADD COLUMN hora REAL;ALTER TABLE visitas ADD COLUMN evidencia TEXT" \
"ALTER TABLE visitas DROP COLUMN evidencia;ALTER TABLE visitas DROP COLUMN hora"
# Rollback
node lib/db-migrations/db-migrations.js rollback [steps]
const dbm = require('./db-migrations.js');
dbm.createMigration('name', ['SQL UP'], ['SQL DOWN']); // → { version, file }
dbm.status(); // → { currentVersion, ... }
dbm.rollback(1); // → { ok, rolledBack }
On project init, run db.schema.js to create base tables. All column additions go through migrations.