megatron-impact-mapper について
Megatron の変更を MindSpeed の実装対象に対応付け、移行パッチの生成前にブランチの対応関係を確認するスキルです。MindSpeed の移行を評価・計画する開発者向けです。
主な機能
- 01MindSpeed と Megatron のブランチ対応を解決
- 02ベースラインと対象変更を比較
- 03MindSpeed のモジュール、設定、テストを検索
- 04上流の実装単位をローカルの対象に対応付け
- 05確度付きの影響レポートを作成
活用シーン
- 01Megatron の変更が移行対象か評価
- 02更新が必要な MindSpeed の実装単位を特定
- 03ブランチ対応が不明な場合にパッチ生成を保留
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ ascend/ agent-skills --skill megatron-impact-mapperインストール後、Claude Code で/megatron-impact-mapperを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/branch-alignment.mdmindspeed-focus-areas.mdscripts/map_implementation_targets.pyresolve_branch_alignment.pyscan_mindspeed_paths.py詳細
Megatron Impact Mapper
適切な MindSpeed ブランチのコンテキストを特定し、関連する各 Megatron イベントを具体的な MindSpeed の実装対象に対応付けます。このスキルは、実装を目的とした移行生成のゲートキーパーです。
厳格なゲート
ブランチの整合性が明示されるまで、移行パッチを生成しないでください。
次のいずれかの整合性情報を使用します。
- ユーザーが提示した対応付け
- branch-alignment.md に記載された既知のルール
- 対応付けを明確に示す、リポジトリ内のドキュメントまたはコミット
いずれも利用できない場合は、影響レポートの作成にとどめてください。
基本ルール
- 厳格な移行モードでは、
MindSpeed branch <-> Megatron branchの対応付けを必須とします。 - 初回分析の信頼できる情報源として、公式リポジトリのみを使用します。
strict migration modeとexploration modeを区別します。megatron mainの場合、ユーザーが比較対象として互換性のある MindSpeed のベースラインを明示的に選択しない限り、探索モードを優先します。- 結果を次の3つに分けます。 すでに適用済み 適用可能と思われるが未対応 現時点では適用する価値がない
- 機能に移行する価値が明らかにある場合、「候補パス」の列挙だけで終わらせないでください。上流の実装単位に対応する実装対象に機能を分解してください。
ワークフロー
- MindSpeed のブランチを特定します。
- 対応する Megatron のベースラインブランチを特定します。
- ベースラインと対象の Megatron ブランチまたは変更セットを比較します。
- 関連する各 Megatron イベントについて、対応する MindSpeed のモジュール、ラッパー、設定、起動パス、テストを検索します。
- 上流の実装単位を、ローカルの実装対象に対応付けます。
- 信頼度、根拠、実装範囲を含む影響レポートを作成します。
- 信頼度の高い影響項目に限り、移行生成への引き継ぎを許可します。
必須の出力
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 に引き継いでください。
コメント
Markdown 対応