mcpField
M
migrate-validate

migrate-validate

github.com/ruvnetテスト・品質80.0k728 回インストール今日更新
リポジトリ

migrate-validate について

migrate-validateは、データベースに適用する前の保留中マイグレーションを検証するスキルです。スキーマ参照、ロールバック、破壊的操作、冪等性、命名を確認し、問題を重要度と場所とともに報告します。

主な機能

  1. 01保留中のマイグレーションファイルの特定
  2. 02外部キーと列のデフォルト値の確認
  3. 03ロールバックの網羅性確認
  4. 04破壊的操作の警告
  5. 05冪等性と命名規則の確認
  6. 06重要度と場所を添えた問題報告

活用シーン

  1. 01適用前のマイグレーション確認
  2. 02ロールバック文の不足検出
  3. 03安全でないスキーマ変更の特定

MCP 対応

RufloのMCP memoryツールで適用済みの履歴を調べ、検証パターンや結果を保存します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/ruvnet/ruflo --skill migrate-validate

インストール後、Claude Code で/migrate-validateを入力して読み込まれたか確認します。

詳細

移行の検証

保留中のデータベース移行をすべて検証し、正確性、安全性、ベストプラクティスへの準拠を確認します。

使用する場面

移行を適用する前に、問題を早期に発見するために使用します。たとえば、存在しないテーブルへの外部キー参照、ロールバック SQL の不足、安全策のない破壊的操作、命名規則違反などです。

手順

  1. 保留中の移行を探す -- Glob を使ってすべての移行ファイルを一覧表示し、mcp__plugin_ruflo-core_ruflo__memory_search --namespace migrations(または memory_list)で適用済み履歴と照合して、保留中のものを特定します。memory_* ツールファミリーは名前空間に基づいてルーティングされます。agentdb_hierarchical-* はそうではなく、階層に基づいてルーティングされるため、ここでは memory_* を使用してください。
  2. SQL を解析する -- Read を使って、保留中の各 .up.sql ファイルと .down.sql ファイルを読み込み、SQL ステートメントを解析します。
  3. 外部キーを確認する -- すべての REFERENCES の参照先が、現在のスキーマまたは過去の移行(適用済みと保留中の両方)に存在することを確認します。
  4. NOT NULL のデフォルト値を確認する -- NOT NULL を指定する ADD COLUMN に DEFAULT 値があることを確認します。
  5. ロールバックの完全性を確認する -- UP ファイルのすべての CREATE/ALTER に対応する DROP/ALTER が DOWN ファイルにあることを確認します。
  6. 破壊的な操作に警告する -- 明示的な確認がない場合は、DROP TABLE、DROP COLUMN、TRUNCATE に警告します。
  7. 冪等性を確認する -- 安全のため、IF EXISTS/IF NOT EXISTS が使われていることを確認します。
  8. 命名を確認する -- テーブル名が複数形であること、カラム名が snake_case であること、インデックス名が idx_table_column の規則に従っていることを確認します。
  9. 検証パターンを保存する -- ruflo-cost-tracker ADR-0001 のデュアルパスパターンに沿った 2 つの方法があります。
    • パターンストア(型指定あり、推奨):type: 'migration-validation' を指定して mcp__plugin_ruflo-core_ruflo__agentdb_pattern-store を使用します。名前空間の引数は不要です。ReasoningBank がルーティングします。
    • プレーンストア(名前空間でルーティング可能):特定の移行番号に関連付けた検証結果には、mcp__plugin_ruflo-core_ruflo__memory_store --namespace migrations を使用します。
  10. 報告する -- 各問題についてファイルパスと行番号を添えて、エラー(修正必須)、警告(修正推奨)、情報(提案)を表示します。

CLI の代替方法

npx @claude-flow/cli@latest memory search --query "migration validation results" --namespace migrations

コメント