mcpField
M
megatron-impact-mapper

megatron-impact-mapper

github.com/ascend開発52127 回インストール25 週間前に更新
リポジトリ

megatron-impact-mapper について

Megatron の変更を MindSpeed の実装対象に対応付け、移行パッチの生成前にブランチの対応関係を確認するスキルです。MindSpeed の移行を評価・計画する開発者向けです。

主な機能

  1. 01MindSpeed と Megatron のブランチ対応を解決
  2. 02ベースラインと対象変更を比較
  3. 03MindSpeed のモジュール、設定、テストを検索
  4. 04上流の実装単位をローカルの対象に対応付け
  5. 05確度付きの影響レポートを作成

活用シーン

  1. 01Megatron の変更が移行対象か評価
  2. 02更新が必要な MindSpeed の実装単位を特定
  3. 03ブランチ対応が不明な場合にパッチ生成を保留

インストール

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

$npx skills add https://github.com/ascend/agent-skills --skill megatron-impact-mapper

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
references/
branch-alignment.md
mindspeed-focus-areas.md
scripts/
map_implementation_targets.py
resolve_branch_alignment.py
scan_mindspeed_paths.py

詳細

Megatron Impact Mapper

適切な MindSpeed ブランチのコンテキストを特定し、関連する各 Megatron イベントを具体的な MindSpeed の実装対象に対応付けます。このスキルは、実装を目的とした移行生成のゲートキーパーです。

厳格なゲート

ブランチの整合性が明示されるまで、移行パッチを生成しないでください。

次のいずれかの整合性情報を使用します。

  1. ユーザーが提示した対応付け
  2. branch-alignment.md に記載された既知のルール
  3. 対応付けを明確に示す、リポジトリ内のドキュメントまたはコミット

いずれも利用できない場合は、影響レポートの作成にとどめてください。

基本ルール

  • 厳格な移行モードでは、MindSpeed branch <-> Megatron branch の対応付けを必須とします。
  • 初回分析の信頼できる情報源として、公式リポジトリのみを使用します。
  • strict migration mode と exploration mode を区別します。
  • megatron main の場合、ユーザーが比較対象として互換性のある MindSpeed のベースラインを明示的に選択しない限り、探索モードを優先します。
  • 結果を次の3つに分けます。 すでに適用済み 適用可能と思われるが未対応 現時点では適用する価値がない
  • 機能に移行する価値が明らかにある場合、「候補パス」の列挙だけで終わらせないでください。上流の実装単位に対応する実装対象に機能を分解してください。

ワークフロー

  1. MindSpeed のブランチを特定します。
  2. 対応する Megatron のベースラインブランチを特定します。
  3. ベースラインと対象の Megatron ブランチまたは変更セットを比較します。
  4. 関連する各 Megatron イベントについて、対応する MindSpeed のモジュール、ラッパー、設定、起動パス、テストを検索します。
  5. 上流の実装単位を、ローカルの実装対象に対応付けます。
  6. 信頼度、根拠、実装範囲を含む影響レポートを作成します。
  7. 信頼度の高い影響項目に限り、移行生成への引き継ぎを許可します。

必須の出力

impact_report を次の内容で作成します。

{
  "mindspeed_branch": "master",
  "megatron_base_branch": "core_v0.12.1",
  "megatron_target_branch": "core_v0.15.3",
  "mode": "strict",
  "items": [
    {
      "event_title": "Add feature X",
      "status": "likely_missing",
      "confidence": 0.78,
      "candidate_paths": ["mindspeed/path_a.py", "mindspeed/path_b.py"],
      "reason": "Short factual rationale",
      "primary_commit": "sha1",
      "upstream_changed_files": ["megatron/path_a.py", "megatron/path_b.py"],
      "implementation_targets": [
        {
          "name": "Expose config on MindSpeed side",
          "source_unit": "Expose new config flag",
          "candidate_paths": ["mindspeed/arguments.py"],
          "required_change": "Add argument or YAML surface",
          "confidence": 0.82
        },
        {
          "name": "Port runtime behavior",
          "source_unit": "Add runtime behavior",
          "candidate_paths": ["mindspeed/training.py", "mindspeed/core/training.py"],
          "required_change": "Recreate the training shutdown logic locally",
          "confidence": 0.67
        }
      ],
      "covered_units": ["Expose config on MindSpeed side"],
      "missing_units": ["Port runtime behavior"]
    }
  ]
}

判断ルール

  • 整合性が解決されていない場合:レポートのみを作成します。
  • 整合性は解決されているものの、実装対象の根拠が弱い場合:レポートと実装計画を作成し、直接編集は行いません。
  • 整合性と実装対象の両方の信頼度が高い場合:移行パッチの生成を許可します。
  • 変更されたローカルファイルが1つだけでも、上流のイベントが複数の実装単位に明らかにまたがる場合は、機能全体が対応付けられたかのように扱わず、未対応の単位を明示します。

参考資料

  • 厳格な移行作業を行う前に、branch-alignment.md を読んでください。
  • 適用候補となるパスを検索する際は、mindspeed-focus-areas.md を読んでください。
  • resolve_branch_alignment.py を実行し、ブランチの組み合わせを strict、exploration、または unresolved に決定論的に分類してください。
  • scan_mindspeed_paths.py を実行し、機能名、ファイル名、シンボル、または設定キーを使って、特定のブランチにある公式 MindSpeed リポジトリ内の適用候補箇所を検索してください。
  • map_implementation_targets.py を実行し、パッチを生成する前に、上流の実装単位をローカルの MindSpeed 実装対象に変換してください。
  • 承認済みの項目のみ、$megatron-migration-generator に引き継いでください。

コメント