Reuse one GitService per project instead of building one per IPC call
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 51/100
- Tipo di issue
- Refactoring
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- electron, git, typescript
- Ambito
- desktop, performance
Direzione di ricerca
Start with src/main/index.ts:117-121 and trace how git() creates GitService and how status refreshes are triggered. Then inspect GitService and its filter-list loading; the proposal is to reuse a service per project path and refresh filters when .git/config changes or periodically. Done means repeated IPC calls reuse the service without leaving filter data stale.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Suggestion from the 2026-10-07 code review (not a bug).
git() in src/main/index.ts:117-121 creates a new GitService for every IPC call. Each one runs an extra git config to list the repository's filter drivers, and a single status() spawns 4–6 git processes. The status refreshes on project open, after every agent run and on panel actions.
Proposal
Cache the service per project path and refresh the filter list when .git/config changes (mtime check), or at most every few seconds.
- Lingua principale
- TypeScript
- Stelle
- 2
- Fork
- 2
- Merge medio
- 5h 52m
- PR unite (30g)
- 18
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di PierrunoYT/patch
-
Renderer h() sets any known DOM property from props; restrict it before a dynamic key appearsApertaenhancement priority: low security severity: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
PierrunoYT/patch#208 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement platform: windows priority: low severity: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
PierrunoYT/patch#198 ·
I maintainer di solito rispondono entro 1 giorno
-
bug priority: low severity: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
PierrunoYT/patch#190 ·
I maintainer di solito rispondono entro 1 giorno
-
Unbounded waits: revokeProjectGrant has no timeout, and timed-out browser waiters are never removedApertabug priority: low severity: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
PierrunoYT/patch#188 ·
I maintainer di solito rispondono entro 1 giorno
-
bug priority: medium severity: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
PierrunoYT/patch#179 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di PierrunoYT/patch
Issue simili
-
[bug] diagnostics.dumpBody:Buffer 形态请求(透传 lane)跳过 dumps/ 落盘,仅留 raw/-unknown-Forse già presa @ranxianglei l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
ranxianglei/billion-context#2421 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
platformatic/mcp#216 ·
I maintainer di solito rispondono entro 1 giorno
-
pending triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
nuxt/test-utils#1842 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
MoonshotAI/kimi-code#4146 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
farbenmeer/tapi#531 ·