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

Abierto Apto para principiantes
#33,962 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
72/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
node.js, typescript
Área
cli

Línea de trabajo

Lee apps/server/src/cli/connect.ts, especialmente formatStatus en las líneas indicadas en el informe, y compara su salida legible para las personas con los campos de estado JSON. Empieza comprobando cómo el formateador determina la exposición y maneja linkMode. Se considera terminado cuando el estado de solo publicación indica claramente que no hay ningún túnel administrado disponible y coincide con t3 status en que el acceso remoto está desactivado.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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.

Lenguaje dominante
TypeScript
Estrellas
24.8k
Forks
6.4k
Merge medio
13 h 9 min
PR fusionados (30 d)
187

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de pingdotgg/t3code

Todos los issues de pingdotgg/t3code

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.