Skip to main content
Möchtest du das nicht manuell einrichten? Füge einen Link zu dieser Seite in eine Devin-Sitzung ein und bitte Devin, alles für dich einzurichten.
1

Skill „Migrations-Checkliste“ erstellen

Ein Repository-Skill ist eine Markdown-Datei, die du in .agents/skills/<your-skill>/ in eines deiner Repositories committest. Devin erkennt alle Skills in allen verbundenen Repositories – du kannst sie manuell auslösen oder Devin kann sie automatisch auslösen, wenn eine relevante Situation erkannt wird. Dieser Skill weist Devin genau an, wie Datenbank-Migrationen vor dem Öffnen oder Aktualisieren eines Pull-Requests (PR) zu prüfen sind – und fängt dabei Fehler ab, die im Code-Review normalerweise übersehen werden.Committe .agents/skills/migration-checklist/migration-checklist.md in deinem Repository:
Sobald diese Datei committed ist, betrachtet Devin sie als verfügbare Fähigkeit. Immer wenn eine Sitzung in diesem Repository Migrationsdateien berührt, kann Devin die Checkliste automatisch ausführen – oder Sie können sie jederzeit manuell aufrufen.
2

Sehen Sie den Skill-Trigger in einer realen Migration

Wenn Devin an einer Aufgabe arbeitet, die eine Migrationsdatei hinzufügt oder ändert, liest es das Diff, erkennt den Migrations-Checklisten-Skill und folgt der Checkliste, bevor es den PR öffnet. So sieht das in der Praxis aus:
  1. Scannt das Diff — Devin erkennt eine neue Datei in db/migrate/ und aktiviert den Migrations-Checklisten-Skill
  2. Markiert eine destruktive Operation — Die Migration entfernt eine legacy_email-Spalte. Devin fügt einen PR-Kommentar hinzu:
    remove_column :users, :legacy_email ist eine destruktive Operation. Verifiziert: Die Migration enthält einen Datensicherungsschritt, der Werte vor der Entfernung nach user_archives kopiert.
  3. Fügt einen fehlenden Index hinzu — Die Migration fügt account_id zur invoices-Tabelle hinzu, hat aber keinen Index. Devin hängt add_index :invoices, :account_id an die Migrationsdatei an
  4. Führt Rollback aus — Devin führt bin/rails db:migrate:rollback STEP=1 auf der Testdatenbank aus. Der Befehl läuft erfolgreich durch
  5. Regeneriert das Schema — Devin führt bin/rails db:schema:dump aus, erkennt ein Diff in db/schema.rb und nimmt die aktualisierte Datei in den Commit auf
  6. Führt Model-Tests aus — Alle Model-Tests bestehen. Devin öffnet den PR mit einer Zusammenfassung jedes Checks
Die PR-Beschreibung enthält eine Checkliste, die zeigt, welche Checks bestanden wurden und was Devin behoben hat, sodass Reviewer sich auf die Business-Logik statt auf die Migrationsmechanik konzentrieren können.
3

Passen Sie den Skill an Ihr ORM und Ihren Stack an

Die obige Checkliste richtet sich an Rails, aber die gleiche Struktur funktioniert für jedes ORM. Bitte Devin, den Skill für deinen Stack neu zu schreiben:
4

Checkliste im Laufe der Zeit erweitern

Jeder Migrationsvorfall offenbart eine Lücke, die die Checkliste nicht abgedeckt hat. Nach jedem fügen Sie eine Regel hinzu – das ist ein Einzeilen-Commit in der Skill-Datei.Hier sind typische Ergänzungen, die Teams nach realen Vorfällen vornehmen:
Da sich die Skill-Datei in eurem Repo befindet, durchlaufen diese Regeln das Code-Review – euer gesamtes Team stimmt zu, was geprüft wird, und sie sind immer mit eurem Migrationstooling synchronisiert.