[Bug] Windows repository cloning fails while creating an existing drive root
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 73/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- electron, node.js, typescript
Direzione di ricerca
Leggi apps/server/src/sourceControl/SourceControlRepositoryService.ts, in particolare prepareDestination alle righe 221–247. Riproduci il problema su Windows con una nuova destinazione direttamente sotto la radice di un’unità esistente e verifica come la preparazione della directory padre gestisce tale radice. Il lavoro è completato quando la destinazione è preparata e la clonazione procede senza l’errore EPERM.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What happened
T3 Code's desktop app on Windows could not clone https://github.com/xMrAfonso/comark-loops. The user reported: "For some reason it doesn't clone projects from my github."
Diagnosis
The latest failed attempt stops in destination preparation, before Git starts cloning. The server attempts a recursive directory creation at the drive root, and Windows returns EPERM: operation not permitted, mkdir 'C:\'.
In SourceControlRepositoryService.prepareDestination, a destination that does not exist causes an unconditional fileSystem.makeDirectory(path.dirname(normalizedDestination), { recursive: true }). For a new folder directly under C:\, its parent is the existing drive root. The code does not first check whether that parent already exists.
Source inspected: https://github.com/pingdotgg/t3code/blob/4f63275ac7885281d245022e65f1e9e8816b1382/apps/server/src/sourceControl/SourceControlRepositoryService.ts#L221-L247
The same failure occurred three times in the local trace. Git access to the repository was verified independently, and a manual clone into a nested directory succeeded. This supports a destination-preparation failure for these attempts, rather than a repository access failure.
A possible fix is to avoid creating an already-existing parent directory, including a Windows drive root. This has not been implemented or tested during triage.
Steps to reproduce
The following minimal reproduction is inferred from the trace and source, and has not been independently repeated in the UI. The original destination input was not captured.
- Run the Windows desktop app.
- Open Add project and choose to clone a GitHub repository.
- Use
https://github.com/xMrAfonso/comark-loops. - Choose a new destination directly under the drive root, for example
C:\comark-loops. - Start the clone.
Expected: the repository is cloned into the new destination.
Observed in the user's trace: preparation fails while attempting mkdir 'C:\', before Git clone runs. The client receives the generic message: Source control repository operation cloneRepository failed for unknown: The source control operation could not be completed.
Version
- Desktop renderer reports:
0.0.46-nightly.20261010.2935. - Separately invoked triage CLI:
0.0.46-nightly.20261010.2948(npx t3@nightly triage). - Diagnosis source checkout: tag
v0.0.46-nightly.20261010.2948, commit4f63275ac7885281d245022e65f1e9e8816b1382; the destination-preparation code above is still present there.
Environment
Windows x64, version 10.0.26200; Node v26.8.2 in the triage context. Electron desktop app with a running local backend.
Evidence
Relevant server trace entries (UTC), with filesystem and provider wrappers summarized and personal paths omitted:
2026-10-10T17:51:19.915Z SourceControlRepositoryService.prepareDestination: Failure
2026-10-10T17:51:29.714Z SourceControlRepositoryService.prepareDestination: Failure
2026-10-10T21:40:08.524Z SourceControlRepositoryService.prepareDestination: Failure
PlatformError: Unknown: FileSystem.makeDirectory (C:\)
[cause]: Error: EPERM: operation not permitted, mkdir 'C:\'
Failure propagates through:
SourceControlRepositoryService.prepareClone
ProjectCloneTracker.start
ws.rpc.projectClone.start
Independent Git check:
git ls-remote https://github.com/xMrAfonso/comark-loops.git HEAD
b8f501e40534e81d4026b28d686a7b9f2ac1173b HEAD
Related issues
No matching issue was found in searches for clone failures involving Windows, EPERM, mkdir, or prepareDestination. This report concerns preparation of the clone destination before Git executes.
Fix applied or workaround
Ran:
git clone https://github.com/xMrAfonso/comark-loops.git C:\Central\VSC\comark-loops
The clone succeeded, with a clean checkout tracking origin/master at b8f501e40534e81d4026b28d686a7b9f2ac1173b. The user was instructed to add that checkout through Add project -> Local folder; that UI step has not been verified. No T3 source, configuration, or database was modified.
Filed by
Codex (GPT-6.1 Sol) via T3 Code triage.
- Lingua principale
- TypeScript
- Stelle
- 24.8k
- Fork
- 6.4k
- Merge medio
- 12h 40m
- PR unite (30g)
- 322
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Ha un 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 pingdotgg/t3code
-
needs more info via-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
pingdotgg/t3code#18117 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: Server git tests sign fixture commits with the developer's key when run from the repo rootForse già presa @Mnigos l’ha presa 1 giorno fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di pingdotgg/t3code
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
Agenta-AI/agenta#7542 · 1 commento · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
code quality security
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
-
feat(icons): add [solidping]Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
homarr-labs/dashboard-icons#2939 ·
I maintainer di solito rispondono entro 1 giorno