Aplicar una lista de verificación de migración en cada PR
Crea una skill de repositorio que haga que Devin detecte operaciones destructivas, verifique la seguridad del rollback y valide los cambios de esquema siempre que un PR incluya migraciones de base de datos.Crea la habilidad de lista de comprobación para la migración
Una skill de repositorio es un archivo markdown que haces commit en Una vez que se haya confirmado este archivo, Devin lo considera una habilidad disponible. Cada vez que una sesión interactúe con archivos de migración en este repositorio, Devin puede activar la lista de verificación automáticamente, o puedes invocarla manualmente en cualquier momento.
.agents/skills/<your-skill>/ en cualquiera de tus repositorios. Devin ve todas las skills en todos los repositorios conectados: puedes activarlas manualmente o Devin puede decidir activarlas automáticamente cuando detecta una situación relevante. Esta skill le indica a Devin exactamente cómo revisar las migraciones de base de datos antes de abrir o actualizar una solicitud de extracción de código (pull request, PR), detectando los errores que la revisión de código suele pasar por alto.Haz commit de .agents/skills/migration-checklist/migration-checklist.md en tu repositorio:Vea el disparador de la habilidad en una migración real
Cuando Devin trabaja en una tarea que agrega o modifica un archivo de migración, lee el diff, detecta la habilidad de lista de verificación de migraciones y sigue la lista antes de abrir la PR. Así es como se ve en la práctica:
- Escanea el diff — Devin ve un archivo nuevo en
db/migrate/y activa la habilidad de lista de verificación de migraciones - Marca una operación destructiva — La migración elimina una columna
legacy_email. Devin agrega un comentario en la PR:remove_column :users, :legacy_emailes una operación destructiva. Verificado: la migración incluye un paso de copia de seguridad de datos que copia los valores auser_archivesantes de la eliminación. - Agrega un índice faltante — La migración agrega
account_ida la tablainvoicespero no tiene índice. Devin agregaadd_index :invoices, :account_idal archivo de migración - Ejecuta el rollback — Devin ejecuta
bin/rails db:migrate:rollback STEP=1contra la base de datos de pruebas. Se ejecuta correctamente - Regenera el esquema — Devin ejecuta
bin/rails db:schema:dump, detecta un diff endb/schema.rbe incluye el archivo actualizado en el commit - Ejecuta las pruebas de modelos — Todas las pruebas de modelos pasan. Devin abre la PR con un resumen de cada verificación
Adapta la skill a tu ORM y a tu stack
La lista de verificación anterior está orientada a Rails, pero la misma estructura funciona para cualquier ORM. Pídele a Devin que reescriba la skill para tu stack:
Ve ampliando la lista de comprobación con el tiempo
Cada incidente de migración revela una brecha que la checklist no cubrió. Después de cada uno, agrega una regla: es un commit de una sola línea en el archivo de skill.Estas son incorporaciones habituales que los equipos hacen después de incidentes reales:Como el archivo de skill está en tu repositorio, estas reglas pasan por revisión de código: todo tu equipo está de acuerdo sobre qué se comprueba y siempre están sincronizadas con tus herramientas de migración.
