github / github/app

Extensions fork once per session instead of being shared

Aperta
#2,321 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Bugs
Lingua principale
Nessun dato sulla lingua
Stelle
2.1k
Fork
153
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### 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.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Riproduci il problema con diverse estensioni installate e quattro sessioni aperte su Windows 11, quindi conta i processi copilot.exe contenenti extension_bootstrap. Confronta la scalabilità osservata dei processi e della memoria con il comportamento previsto di un avvio lazy o di un extension-host condiviso. Il lavoro è completato quando i processi delle estensioni non si moltiplicano più inutilmente tra le sessioni e le estensioni non utilizzate non vengono più avviate eager.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Ambito
desktop, performance
Tipo di issue
Bug
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.