## 何を見つけたか プラグインの置き場を、プラグインの名前で決め打っている。`ndf` と `playwright-kit` だけを `plugins/<名前>/`、それ以外を `plugins/mcp/<名前>/` とみなす。 - `plugins/ndf/scripts/lib/step_result.py` の `plugin_dir`(333〜337 行) - `plugins/ndf/scripts/release-steps.py` の `other_plugins`(279〜293 行。`cmd_changed_plugins`(296 行)が呼ぶ)。差分のパスを正規表現 `plugins/(?:mcp/)?([^/]+)/` でプラグインへ対応付け、置き場を `plugin_dir` と同じ名前の決め打ちで組み直す(287 行) 同じ決め打ちが `plugin_dir` と `other_plugins` の 2 か所に分かれて重複している。 配布の形 `package-plugin` を使う別のリポジトリで `plugins/<名前>/` にプラグインを置くと、`plugins/mcp/<名前>/` を探して「プラグインが無い」で止まる(`plugin_dir`)か、変更のあったプラグインを `already` にも載せず「0 件」で黙って落とす(`changed-plugins`)。 ## どこで見つけたか issue #1752 の設計で `changed-plugins` を読んだとき。 ## なぜこの変更の範囲外なのか #1752 は他のプラグインの範囲の決め方を変えない(要求の前提 1)。置き場の解決は `bump`・`changelog`・`notes` も使う共通の処理で、直す場所は `plugin_dir` と配布の宣言の側である。根拠: Value 5 / Value 6(MVV 版 2) ## 直さないと何が起きるか ai-plugins 以外のリポジトリで、`package-plugin` の配布の決まった手順が使えない。 ## 直す場所 - 現象レイヤー: 他のリポジトリで release の `bump`・`changed-plugins`(`package-plugin` の手順)が止まる/黙って 0 件になる - 修正レイヤー: プラグインの置き場の解決。`.claude-plugin/marketplace.json` の `source` (例 `./plugins/mcp/mcp-playwright` )を引く 1 つの関数を、`plugin_dir` と `other_plugins` が共有する - 修正方針: 統合と向きの修正。`plugin_dir`(`lib/step_result.py` )を `marketplace.json` の `source` から引く 1 つの関数にし、`other_plugins` が差分のパスをプラグインへ対応付けるときも同じ表を使って 2 か所の決め打ちを 1 つにする。表が無いリポジトリでは今の規則を既定として残す ## 由来 issue #1752 ## 再確認(ndf 10.17.69、2026-10-10) - `plugins/<名前>/` に置いた仮のリポジトリで、`bump --plugin foo` は exit 3(「プラグインが無い: foo(plugins/mcp/foo/…)」)で止まる。`changed-plugins` は変更のあった bar を `already` にも載せず、「0 件」で黙って落とす - 決め打ちは `lib/step_result.py` の `plugin_dir`、`release-steps.py` の `other_plugins`(`changed-plugins` が呼ぶ)の正規表現 `plugins/(?:mcp/)?` とその直後の置き場の組み立てにある。`plugin_dir` は `release_lib/bump.py` と `release-verification-steps.py` (verify-install)からも呼ばれる - 関連: #1889(verify-install の Kiro が `--plugins` を見ない) ## Value 6 の棚卸しから足す範囲(#2624) リリースの形 package-plugin の部品に、プラグインの置き場の決め打ちのほかにも ai-plugins の配置が入っている。別の配置のプラグインのリポジトリで版上げが止まるか、前のタグを見つけられない。 | 中身 | 場所 | | --- | --- | | README とマーケットプレイスの書き換え(`/plugins/cache/ai-plugins/ndf/`・`ndf@ai-plugins`) | `plugins/ndf/scripts/release-steps.py:192`・`:193` | | タグの形 `<プラグイン>--v<版>` | `plugins/ndf/scripts/release-steps.py`・`plugins/ndf/scripts/release_lib/bump.py` | | 根の `CHANGELOG.md`・`docs/versioning-and-distribution.md` | `plugins/ndf/scripts/release-steps.py`・`plugins/ndf/scripts/release_lib/bump.py` | リポジトリ前提の検査の例外リスト `scripts/repo-assumptions-allow/` は、この課題を行き先に書いた項目を持つ。直したら同じ変更で項目を消す。
Activity
Fix: #2510・#2624 と組み合わせて落ちた構造と対象リポジトリの検査を通す(#2623)