[Bug]: t3 connect status reports "Exposure: enabled" for publish-only links without a tunnel

Ouverte Adaptée aux débutants
#33,962 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
72/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
node.js, typescript
Domaine
cli

Piste de recherche

Lisez apps/server/src/cli/connect.ts, en particulier formatStatus aux lignes indiquées dans le rapport, et comparez sa sortie lisible par un humain aux champs d’état JSON. Commencez par vérifier comment le formateur détermine l’exposition et gère linkMode. Le travail est terminé lorsque l’état en mode publication seule indique clairement qu’aucun tunnel géré n’est disponible et concorde avec t3 status sur la désactivation de l’accès à distance.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

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

apps/server

Steps to reproduce
  1. Use a running CLI/background-service environment linked in publish-only mode. The CLI supports configuring this with t3 connect link --publish-only, followed by starting/restarting the server.
  2. Run t3 status --json.
  3. Run t3 connect status.
  4. Run t3 connect status --json.

Steps 2–4 were run against an existing affected environment. Fresh authorization and service restart were not repeated.

Expected behavior

The human-readable Connect status distinguishes activity publishing from a managed tunnel. For a publish-only link, it should explicitly say that remote access through T3 Connect is disabled and that reaching the environment requires a separate route.

It should agree with t3 status about whether Connect remote access is enabled.

Actual behavior

t3 status --json reports connect.enabled: false, but t3 connect status says Exposure: enabled and Environment link: provisioned. It does not display the publish-only mode or explain that there is no managed tunnel.

The JSON Connect status identifies the actual mode as publish_only with reachability: null.

This led us to investigate a supposed T3 Connect outage when a desktop client's saved Tailscale route stopped working with Tailscale disconnected. The requirement for a separate route in publish-only mode is expected; the misleading CLI status is the defect reported here.

Impact

Minor bug or occasional failure

Version or commit

Observed CLI/server: 0.1.8-nightly.20261109.4433.

The same formatting is present on main at 047d492736ef7ad6c46250b52afafbd0b731f32f; that checkout was inspected, not executed.

Environment

Host: Ubuntu 26.04 LTS, Linux x86_64, T3 background service. Client: Windows desktop, same T3 nightly version, using a saved Tailscale HTTPS route. No provider/model invocation is involved.

Logs or stack traces

Relevant output, with unrelated fields omitted:

$ t3 status --json
{
  "connect": {
    "enabled": false,
    "revoked": false
  }
}

$ t3 connect status
T3 Connect
  Exposure: enabled
  Authorization: stored credential
  Environment link: provisioned
  Relay: https://relay.t3.codes
  Publish agent activity: enabled
  Relay client: available via PATH
    Path: /usr/local/bin/cloudflared
    Version: 2026.7.3

$ t3 connect status --json
{
  "desired": true,
  "authenticated": true,
  "linked": true,
  "revoked": false,
  "linkMode": "publish_only",
  "reachability": null
}

Source inspection: formatStatus in apps/server/src/cli/connect.ts derives the exposure label solely from status.desired. The same formatter omits the entire reachability section when status.linkMode !== "managed", leaving no human-readable explanation of the missing tunnel.

Screenshots, recordings, or supporting files

CLI output is included above.

Workaround

Use t3 connect status --json to inspect linkMode, and t3 status to check whether Connect remote access is enabled. Keep the separate network route available for a publish-only environment.

No configuration changes or service restarts were performed during diagnosis. Enabling a managed tunnel with t3 up --connect was not tested as part of this report.

Related: #11899 concerns desktop detection/repair of a drifted relay link; #31534 concerns enabling iOS Live Activities over a publish-only link. This report concerns CLI status output for an intentionally publish-only environment.

Report prepared by GPT-6.1 Sol via the Codex harness in T3 Code.

Langage dominant
TypeScript
Étoiles
24.8k
Forks
6.4k
Merge moyen
13 h 9 min
PR mergées (30 j)
187

Préparer son environnement

Ouvrir dans Codespaces

Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de pingdotgg/t3code

Toutes les issues de pingdotgg/t3code

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.