Extensions fork once per session instead of being shared
- 主要言語
- 言語のデータがありません
- スター
- 2.1k
- フォーク
- 153
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
### Short summary
Every open session forks its own copy of all installed extensions, so memory scales with sessions x extensions.
### Affected version or release
App 1.0.26 (CLI 1.0.75), Windows 11
### Installation context
13 user extensions in `~/.copilot/extensions`, 4 sessions open
### What happened?
Each session starts a separate OS process for every installed extension, whether or not the extension is ever used. Nothing is shared between sessions and nothing is lazy.
With 13 extensions and 4 sessions open: 53 extension processes, 13.5 GB.
Almost all of that is runtime overhead, not extension code.
### Steps to reproduce
1. Install several extensions.
2. Open 4 sessions.
3. Count `copilot.exe` processes with `extension_bootstrap` in the command line.
### Expected behavior
Extensions start when first used, or one extension host is shared across sessions. Memory should not multiply by session count.
コントリビューションガイド
調査の方向性
Windows 11 で複数の拡張機能をインストールし、4 つのセッションを開いた状態で問題を再現し、その後 extension_bootstrap を含む copilot.exe プロセスを数えます。観測されたプロセス数とメモリのスケーリングを、遅延起動または共有 extension-host の想定される動作と比較します。拡張機能のプロセスがセッション間で不必要に増殖せず、未使用の拡張機能が eager に起動されなくなれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 領域
- desktop, performance
- issue の種類
- バグ
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100