Skip to content

docs: release does not reach a running client until the local npx process restarts #247

Description

@liplus-lin-lay

目的

リリースの配送鎖が npm publish で終わっていると誤認しやすい。実際にはその先に 利用側プロセスの再起動 という段があり、これがどこにも書かれていない。v0.11.9 のリリース直後に実測で踏んだため記録する。

観測(2026-08-03、v0.11.9 リリース直後)

mark_processed のバッチ形(#245)は MCP proxy の静的スキーマ変更を伴うため、npm 再公開が必要と #245 本文に明記されていた。v0.11.9 で CD の npm-publish ジョブが success となり、registry の latest は 0.11.9 になった。

しかしこの時点で 利用側にはまだ何も届いていない。同一マシンで確認した事実:

観測点
registry latest--prefer-online 0.11.9
npx キャッシュ内の実体(3 ディレクトリすべて) 0.11.8
再起動後の npx キャッシュ 当該 spec のキャッシュディレクトリがその場で 0.11.9 に更新され、server/index.jsevent_ids が存在(新規ディレクトリは作られていない)

claude_desktop_config.json の起動指定は npx -y github-webhook-mcp@latest@latest を指定していても、すでに起動しているプロセスは 0.11.8 を保持したままであり、registry がどう変わろうと差し替わらない。

加えてリリース作業中、CD が green になった後の npm view github-webhook-mcp version が 0.11.8 を返した。--prefer-online を付けると 0.11.9 が返る。npm CLI 側のメタデータキャッシュであり publish 失敗ではなかったが、「registry を確認した」だけでは配送の確認にならないことを示している。

配送鎖の実態

merge → gh release create → CD (npm-publish) → registry latest 更新
      → 【未記載】利用側 Claude Desktop の再起動 → npx が新版を解決 → 利用側に到達

最後の 2 段は CD の外側にあり、リポジトリ側からは実行できない。

影響

検討の材料

  • README.md / mcp-server/README.md の導線に「新版の反映には Claude Desktop の再起動が要る」旨を追記する
  • リリース手順側(docs/)に配送鎖の最終段として再起動を明記する
  • 確認コマンドとして npm view --prefer-online を推奨する(キャッシュ由来の誤読を防ぐ)

制約

  • npx キャッシュの解決挙動そのものはこのリポジトリの管理外。書けるのは「再起動が要る」という事実と確認手段まで。

受け入れ条件

  • 配送鎖の最終段(利用側再起動)がドキュメントに書かれている
  • リリース完了の判定基準が「registry 更新」で止まらないことが読み取れる

Metadata

Metadata

Assignees

No one assigned

    Labels

    docsdocumentation changedone完了・マージ済み。追跡用に保持readybody converged for implementation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions