Repository navigation
Description
Before submitting
- I searched existing issues and did not find a duplicate. Related reports are listed below.
- I included enough detail to reproduce or investigate the problem.
Area
apps/mobile
Steps to reproduce
Observed workflow, not a deterministic reproduction:
- Have previously configured T3 Connect remote environments and a separate direct/Tailscale environment in the native Android app.
- Open the app. In the reported episode, none of the three T3 Connect environments could connect.
- Open Settings → Environments: all three cloud environments have red indicators and connection errors, although their switches are enabled. The direct/Tailscale environment is green and says “Connected”.
- Open Settings: the “T3 Account” row is greyed out with status “Checking”.
- The reporter closed the Android application, waited for a while, and reopened it; connectivity then returned. The exact wait and whether this was an OS force-stop or ordinary app dismissal were not captured.
The initial trigger is unknown. No network disruption, account change, or background-duration condition was established.
Expected behavior
The Android client should finish account initialization and connect to saved T3 Connect environments, or show an actionable initialization error/retry state. A recoverable condition should not require closing the whole application and waiting before reopening it.
Actual behavior
- Screenshot of Settings: “T3 Account” is greyed out and displays “Checking”.
- Screenshot of Environments: one direct/Tailscale environment says “Connected”; all three T3 Connect environments are red with their switches enabled.
- Each visible error is truncated to “Connection failed. Reason: Your clo…”. The full error was not expanded/captured. This report does not assume it was the complete “Your cloud sign-in changed” error or diagnose authentication from the truncated string.
- The reporter could not connect to the T3 Connect environments until closing the app, waiting, and reopening it.
The Settings and Environments screenshots were captured separately. They are not a synchronized trace, and do not establish the duration of the “Checking” state. Direct connectivity at capture time does not prove that every cloud dependency was reachable.
Impact
Major degradation or frequent failure
Remote work through all configured T3 Connect environments was unavailable during the observed episode. The direct environment remained connected in the supplied screenshot. Recurrence frequency and exact outage duration are unknown.
Version or commit
Affected main remote server: v0.1.0, established during the preceding investigation. Android app version: 2.0.0, reported by the user. Build number: not yet captured. The exact versions of the other cloud environments were not rechecked for this report.
Environment
Native Android app. Three T3 Connect environments plus one direct HTTPS/Tailscale environment. Exact phone model, Android OS version, app build, network-transition history, and cloud-account initialization logs are not yet captured.
Logs or stack traces
No Android logs or cloud-auth/network stack trace was captured. No proof of a Clerk load failure, expired token, server outage, VPN fault, or schema mismatch is available.
Screenshots, recordings, or supporting files
GitHub-hosted copies of the reporter's actual screenshots. Private labels/hostnames are redacted. The PNG screenshots were losslessly converted to self-contained SVGs and independently rendered back to PNG for a pixel-for-pixel equality check; no UI content was generated.
Workaround
Close the Android application, wait for a while, then reopen it. This restored connectivity in the reported episode. The exact wait and dismissal/force-stop method are unknown; this is an observed recovery, not a guaranteed workaround. No sign-out, credential clearing, environment deletion, re-pairing, or server restart was reported as necessary.
Related reports and evidence limits
- [Bug]: Account controls and T3 Connect stay unavailable after Clerk UI load failure until Reload #15725: desktop/macOS account controls and T3 Connect unavailable after a confirmed Clerk UI load failure, recovered by Reload. Similar recovery pattern, but this Android case has no Clerk error log and should not inherit that diagnosis.
- [Bug]: T3 Connect reports "Your cloud sign-in changed" when the host is just overloaded #11004: a cloud sign-in error can be misleading; the full error here is not captured.
- [Bug]: Android t3 connect 2.0.0 cant connect to desktop v0.1.0 #21206: Android 2.0.0 / server v0.1.0 connection failure, but that report describes the connection option being unavailable, rather than existing enabled environments failing while the account is Checking.
This is separate from the report about an individual conversation not rendering after a provider switch. No shared root cause is established.
Prepared by GPT-6.1-Sol through Hermes Agent on behalf of the reporter. No credentials, private conversation contents, or private hostnames are included.
Activity
andybergon commentedon Oct 29, 2026
I hit this on Android too: T3 Account was disabled and stuck on “Checking”, and connecting to an environment showed “Waiting for the T3 Connect sign-in to load.”
Force-stopping T3 Code from Android Settings and reopening it restored connectivity.
MylesWardell commentedon Oct 30, 2026
Note
🤖 GPT-6.1-Sol responding on behalf of MylesWardell
Additional Android case on Pixel 8 Pro with T3 Code 2.2.0, versionCode 735, inspected over USB on October 30. A saved T3 Connect environment repeatedly failed, and the user reported grey “Checking” after five retries.
The expanded connection diagnostics provided the full error missing from the original report:
The headline instead said “T3 Code on [host] did not answer.” The diagnostic UI marked this device, T3 Connect, and the tunnel as passing, then marked the host application as failed. This directs troubleshooting toward the desktop even though the recorded error is a client sign-in initialization wait.
During the failure, desktop checks reported tunnel readiness HTTP 200 and four connections;
t3 connect statusalso passed with four QUIC connections. The public endpoint responded from the desktop. Those checks do not establish phone-side HTTPS reachability. Android reported validated Wi-Fi, and the phone and PC clocks were within a few seconds.The user confirmed recovery after being advised to force-stop/reopen the phone app, with sign-out/sign-in as a fallback. The exact step they used was not captured, so this is not a controlled force-stop-only recovery test. The initial trigger remains unknown, and no expired token or underlying Clerk/network failure was established.
This supports investigating both recovery from a persistently pending mobile sign-in and the misleading host-failure headline. It adds a 2.2.0 occurrence to this existing issue; it does not establish a shared underlying cause with the original report.
sasensi commentedon Oct 30, 2026
Additional report from October 30, 2026: mobile 2.2.0 connecting through T3 Connect to a Windows x64 desktop running T3 Code (Beta) 0.1.5. The same
session-pendingerror and misleading host-failure headline occurred. Posting here rather than opening a duplicate.Observed workflow and impact
Remote access from the phone was unavailable during this episode. The initial trigger, outage duration, recurrence rate, phone OS/model, and mobile build number were not established. This is an observed incident, not a deterministic reproduction recipe.
Complete phone diagnostics
Independent desktop checks during troubleshooting
0.1.5.127.0.0.1:3773./.well-known/t3/environmentreturned HTTP 200 in 575 ms. Server traces also contained successful HTTP 200 requests to that endpoint. These checks establish host-side reachability at the time of the checks, not the phone's end-to-end authorization or network reachability.cloudflaredclient was available, version2026.10.4.t3 connect status --jsonreturnedlinked: true,revoked: false,linkMode: "managed", and an available relay client, but alsodesired: false,authenticated: false, andreachability: null. That CLI result was inconclusive about the live desktop connection; the desktop UI independently showed sharing enabled and an active tunnel. It should not be presented as a successful CLI reachability check.No desktop restart, tunnel reset, account relink, firewall change, or installed-app modification was performed during this troubleshooting.
Recovery
The reporter was advised to fully close and reopen the phone app, then, if the error persisted, sign out of T3 Connect on the phone and sign back into the same account used on the desktop. The reporter confirmed that it worked afterward.
The exact recovery step used was not captured. This is therefore not proof that reopening alone or signing in again alone fixes the issue.
Source-level finding: the diagnostic points at the wrong component
Read-only inspection of source commit
6d450a4284852af137b2f3407fddd89eb76e7644found the exact error string:authorization/service.tsconstructs aConnectionTransientErrorwith reasonsession-pendingand detailWaiting for the T3 Connect sign-in to load.getDpopTokenreturns that error whencloudSession.identityis absent, before obtaining a bootstrap credential or performing remote authorization.connection/diagnosis.tshas no dedicatedsession-pendingdiagnosis. Its generic classification/headline path can label this as the server failing to answer, matching the captured phone output.This identifies the meaning of the recorded error and a diagnostic-classification problem. It does not establish why the mobile cloud identity stayed unavailable, prove an expired token or Clerk outage, or establish that the inspected source commit exactly matches the shipped mobile build.
Expected behavior
session-pendingshould be described as mobile sign-in initialization, rather than a desktop/server failure. Downstream checks should not imply that the desktop failed to answer when the authorization attempt has not reached that stage.Prepared by GPT-6.1-Sol through the Codex harness in T3 Code, on behalf of the reporter. No credentials or full private logs are attached.
alltomstales-dotcom commentedon Oct 31, 2026
Note
Written with Claude Code (Claude Opus 5.5) on behalf of the account owner, from the host's server logs and a read of the client source. The phone side was not instrumented.
Another occurrence, and this one has a repeatable trigger: the phone's screen locks or the phone sleeps, and on wake the T3 Connect environment never reconnects. It happened four times in one day (2026-10-30). Each time the phone app showed "T3 Code on did not answer · Retrying · attempt N". The host had stayed up throughout.
Setup
t30.1.5 running as a systemd user service. T3 Connect is linked, andt3 connect statuspasses ("Tunnel connected · 4 connections · QUIC") during every failure.What the host's trace shows (
server.trace.ndjson)A good connect (e.g. 00:50:57Z and 01:04:02Z) all happens within about 1 s over the direct Tailscale route:
After a wake (episodes starting about 11:20Z, 21:27Z, 00:59Z and 01:26Z), the phone only ever sends this, every 15–60 s:
POST /api/auth/websocket-ticket/rpc./api/t3-connect/mint-credentialor/oauth/tokenarrives through the tunnel either.So the route check succeeds. The attempt then stops inside the client before it makes any authenticated request. That points to the
session-pendingpath that @MylesWardell and @sasensi captured, not to the host or the tunnel.Where it seems to stick (from reading the source at dd14848; not verified on a device)
session-pendingis raised inpackages/client-runtime/src/authorization/service.ts(sessionPending) whencloudSession.identityisNoneat the start of an attempt.identityreadsmanagedRelaySessionAtom(apps/mobile/src/connection/platform.ts). OnlycloudAccountServicewrites that atom, throughactivate,deactivateanddetach, driven by Clerk'saddListeneremissions (packages/client-runtime/src/relay/cloudAccountService.ts).nullafter a wake and Clerk has nothing new to emit, every retry hitssession-pendinguntil the process restarts. That matches the "T3 Account · Checking" state in the original report.Two ways the atom could end up empty after a resume, both unconfirmed:
user: null.observetreats that as a sign-out and callsdeactivate. If no later emission restores the user, nothing reactivates the account.preparethrows during a re-activation. The state becomesFailed, andobserveretries only on the next emission for the same account.Possible direction
AppState→active), re-read the current Clerk user, afterisLoaded, and feed it throughobserve. That way a missed or transient emission can't leave the relay session empty until a cold start.session-pendingshould name the phone's sign-in, not "T3 Code on did not answer". That headline sent us debugging the host first.Workaround
t3 pairlink over Tailscale (a bearer route that does not depend on the cloud session).spsrohan commentedon Oct 31, 2026
Another Android occurrence on October 31, 2026. Exiting and reopening the phone app restored connectivity. An Android force-stop was not reported.
The phone had connected successfully to this desktop for over a day before it stopped working. It then reported that T3 Code on the desktop did not answer, with:
The phone’s T3 Account row was stuck on “Checking” and could not be selected.
On the desktop, Settings → Sharing & access showed the T3 Connect toggle off while reporting one of three tunnels in use. Enabling the toggle did not restore the phone connection. Exiting and reopening the Android app afterward did.
During troubleshooting, the desktop’s local server answered
/.well-known/t3/environmentand reported version 0.1.5. Server traces recorded successful managed tunnel activation and subsequent reachability checks. These checks do not establish phone-side connectivity.The desktop client identified itself in traces as Windows version 0.1.5, with the backend running under WSL2. The Android app version was not captured. The initial trigger is unknown, and no phone-side logs were collected, so the underlying cause remains unconfirmed.
Prepared with Codex in T3 Code. The exact model identifier was unavailable to the session.
imadtg commentedon Nov 3, 2026
Confirmed another occurrence on Android app 2.2.0, reported as the latest Play Store beta. Connecting worked the previous day.
Host: Linux, T3 Code 0.1.7-nightly.20261101.4016, running as a background service.
Phone diagnostics:
During investigation, the host answered locally and
t3 connect statusreported reachability with four QUIC connections. Force-stopping and reopening the Android app restored access. No host restart or configuration change was needed.The misleading host-failure message matches #29338, addressed by #29352. This occurrence also provides evidence of the underlying Android sign-in stall; its trigger remains unknown.
Prepared by GPT-6 through Codex on behalf of the reporter.
mrpbaum commentedon Nov 7, 2026
Hello human here. I'm using the PWA and constantly getting "Failed to reconnect, retrying...". Closing the app and reopening works sometimes, sometimes not. Eventually always works. Perhaps needs a longer pause for server side connection to close properly.
This sucks plz fix. I chose T3 for its mobile functionality and I'm sure I'm not alone.