Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Tests: telemetry probes can exceed their 15s execFile timeout on Windows (cold tsx transpile + AV scanning)

Aperta Adatta ai principianti
#176 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@sean0407 ci sta già lavorando.

Dal 10/10/2026.

  • #177 di @sean0407 — aperta

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
62/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
node.js, typescript
Ambito
testing

Direzione di ricerca

Il timeout si trova in captureRuntime in tests/telemetry.test.ts, dove execFile viene chiamato con timeout: 15000 alla riga 54. Leggi questo helper e i tre test di telemetria. Poi esegui pnpm test su una macchina in cui le probe sono lente, oppure ragiona a partire dai tempi riportati nell'issue. È completato quando i due test di telemetria indicati passano in un'esecuzione completa in parallelo senza modificare il comportamento della CI. Il fallimento symlink EPERM è un problema separato di Windows ed è fuori dall'ambito di questa modifica.

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

Descrizione

What happens

On Windows, pnpm test reports both telemetry tests as failures:

  • runtime telemetry carries OpenMuse attribution and the CLI-issued project identity (≈15.4s)
  • each SDK opt-out prevents telemetry with a configured project identity (≈15.2s)

Both die the same way: the probe child process is killed by the execFile timeout: 15000 at tests/telemetry.test.ts:54 with stdout: '', stderr: '', signal: 'SIGTERM' — it never reaches its console.log.

Environment
  • Windows 10 (10.0.18363), Node 24.20.0, pnpm 11.19.0, tsx 4.23.13
  • Reproduces on a clean clone with no local changes; the 149 other tests pass
Diagnosis

Each probe spawns a fresh node --import <tsx loader> --eval that re-transpiles the whole server dependency graph on the fly. Measured on this machine:

Scenario Result
telemetry file alone all 3 pass (7.2s / 32.9s / 7.8s per test)
staged probe from a temp cwd, alone app.ts import ≈5.9–6.4s, full probe ≈8.3s, exits cleanly
same probe inside full pnpm test (parallel files) child killed at the 15s limit, empty output

So the probes are correct; the 15s budget is just too tight once tsx's cold transpile is slowed by Windows Defender real-time scanning over node_modules/.pnpm and by the rest of the suite running in parallel. One solo run already took ~33s wall for its two probes, so headroom is thin on Windows even without load. CI (ubuntu, no AV, warm cache) is unaffected.

Suggested directions

Happy to send a PR for whichever fits:

  1. Raise the execFile timeout in captureRuntime from 15_000 to e.g. 60_000 (CI timing unchanged in practice; Windows stops flaking).
  2. Optionally add a CONTRIBUTING note for Windows contributors about Defender exclusions for the repo directory.
Related Windows observation

worker recovery preserves downloads when metadata cannot be inspected also fails on this machine with EPERM: operation not permitted, symlink ... — non-admin Windows can't create symlinks without Developer Mode. I can file that separately, or fold both into a short CONTRIBUTING "Windows notes" paragraph — maintainer preference welcome.

AI-use note: the failure was reproduced, timed and root-caused with an AI assistant's help; the numbers above are from runs on my machine.

Lingua principale
TypeScript
Stelle
5.2k
Fork
730
Merge medio
3g 20h
PR unite (30g)
96

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di CopilotKit/openmuse

Tutte le issue di CopilotKit/openmuse

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.