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

[Bug]: Remote environments stay switched off after a protocol mismatch, even once the host is updated

Aperta Adatta ai principianti
#15,051 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@vitalyiegorov ci sta già lavorando.

Dal 3/10/2026.

  • #15052 di @vitalyiegorov — aperta

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
78/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
desktop

Direzione di ricerca

Inizia in packages/client-runtime/src/connection/registry.ts, su setCompatibility, quindi segui in che modo enabled e unsupportedReason influiscono sulla connessione e sulla riconnessione. Riproduci una mancata corrispondenza del protocollo seguita da un aggiornamento dell’host; il lavoro è completato quando la compatibilità blocca le connessioni solo a runtime, gli ambienti compatibili si riconnettono e gli ambienti disattivati intenzionalmente restano disattivati.

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

Descrizione

bug via-triage
Before submitting
  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.
Area

Not sure

Steps to reproduce
  1. Update the client to a release with a new orchestration protocol (here #2829, 0.0.46-nightly.20261003.2610). A saved T3 Connect host, switched on, is still on the old protocol. Its row shows Client not supported.
  2. Update the host to the same release.
  3. Look at Settings → Connections, with or without relaunching the client.
Expected behavior

The environment reconnects once its host is compatible. The user never switched it off.

Actual behavior

It stays Off (tooltip: Switched off), and its threads disappear until the user notices and turns it back on by hand.

Cause

setCompatibility in packages/client-runtime/src/connection/registry.ts writes an incompatible environment into the user's persisted switched-off list (registrations.setEnabled(id, false)). The reason (unsupportedReason) is kept only in memory. When a fresh check clears it, or after a relaunch, the entry is indistinguishable from one the user switched off, so nothing turns it back on.

Suggested fix

Treat compatibility as runtime state. Keep setting unsupportedReason and disconnecting, but stop changing enabled or the persisted list. Connect only when enabled && !unsupportedReason, and reconnect when the block clears. An environment the user switched off stays off. I can open the PR.

Impact

Major degradation or frequent failure

Version or commit

[email protected] (main 8283b481a3)

Environment

macOS desktop client. Hosts: macOS (launchd) and Linux (systemd) services over T3 Connect.

Screenshots, recordings, or supporting files

Both hosts updated to the same nightly with relay tunnels registered. The client still shows them switched off:

Both saved environments stuck at T3 Connect · Off after their hosts were updated

Workaround

Turn each environment back on in Settings → Connections.

Related
  • #14979: same symptom, and its reporter confirmed every host was on the same build. Its triage scoped that issue to switch contrast (#14984), so this failure is untracked.
  • #11990 introduced persisting the rejection as switched off.
Lingua principale
TypeScript
Stelle
24.8k
Fork
6.4k
Merge medio
8h 58m
PR unite (30g)
278

Preparare l'ambiente

Apri in Codespaces

Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.

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 pingdotgg/t3code

Tutte le issue di pingdotgg/t3code

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.