[Bug]: PDF open in Browser panel becomes “Not Found”; reopening its original chat link restores it
Los mantenedores suelen responder en 1 día
@juliusmarminge ya está trabajando en esto.
Desde el 13/11/2026.
- #36205 de @juliusmarminge — abierto
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 30/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- typescript
- Área
- desktop
Línea de trabajo
An open pull request (#36205) already targets this, so check its state before starting. Read apps/server/src/assets/AssetAccess.ts for the one-hour URL lifetime and apps/server/src/http.ts for the 404 on an expired signature, then compare the two client paths: apps/web/src/browser/openFileInPreview.ts, which requests a fresh URL on link click, and apps/desktop/src/preview/Manager.ts, which only reloads the existing one. The payload has no failed-request logs or reproduction, so first confirm an expired URL is actually what the panel is showing; done means an open preview either renews access or offers a reload that re-requests the asset.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Area
Desktop — integrated Browser panel / PDF preview
What happened
While using the macOS desktop app to ask questions about lecture notes, I kept a PDF open in the Browser panel on the right.
The PDF had opened successfully from a file link in an earlier assistant response. Later, the preview disappeared and showed “Not Found”.
I scrolled back through the conversation, clicked Load earlier turns to reach the original response, then clicked the PDF link again. The PDF opened successfully.
Expected behaviour
An open PDF remains readable while the conversation continues. If its temporary URL expires, the app renews access automatically or offers a way to reopen the file directly from the panel.
Observed sequence
Reported by the user; not independently reproduced:
- Open a local PDF using a file link in an assistant response.
- Keep it open in the right-hand Browser panel while continuing the conversation.
- The preview eventually shows “Not Found”.
- Load earlier conversation history and click the original file link again.
- The same PDF opens successfully.
The elapsed time and exact trigger for the failure were not captured.
Investigation
Read-only inspection of main at fa2f4ff2a2 found:
- File asset URLs have a one-hour lifetime (
apps/server/src/assets/AssetAccess.ts). - The asset endpoint returns HTTP 404 “Not Found” when a signed URL has expired (
AssetAccess.ts,apps/server/src/http.ts). - Clicking a file link requests a fresh asset URL (
apps/web/src/browser/openFileInPreview.ts). - Desktop Browser refresh reloads the existing URL (
apps/desktop/src/preview/Manager.ts).
An expired asset URL is a plausible explanation, not a confirmed diagnosis of this incident. The installed desktop version and failed request have not been inspected. Loading earlier history may simply have made the original link accessible again.
Environment
- T3 Code (Beta), macOS desktop app
- Local environment, served at
127.0.0.1:3773 - PDF displayed in the integrated Browser panel
- Exact app version not captured
Impact and workaround
Interrupts reading a document alongside an ongoing conversation. Recovery required finding the original file link in older chat history and clicking it again.
Related issue
#27681 concerns file previews reloading and losing their position after agent commands. This report concerns an already-open PDF becoming “Not Found”; a shared cause has not been established.
Evidence
No failed-request logs were captured. No screenshots are attached.
Drafted with GPT-6.1-Sol through Codex in T3 Code.
- Lenguaje dominante
- TypeScript
- Estrellas
- 24.8k
- Forks
- 6.4k
- Merge medio
- 59 min
- PR fusionados (30 d)
- 418
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de pingdotgg/t3code
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 1 día
-
via-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
[Bug]: MCP App inline frames never go below 80px, so compact apps get blank space under themAbierto
Dificultad 2/5 Medio día Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Question card options show LaTeX as raw source, though the question text renders itPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
[Bug]: Settings inheritance popover shows raw slugs for branch naming, default permissions and response streamingPosiblemente ocupada @juliusmarminge la tomó hace 1 día. Abiertovouch:denounced
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
Todos los issues de pingdotgg/t3code
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
nikoheikkila/nikoheikkila.fi#1131 ·
Los mantenedores suelen responder en 1 día
-
Resources: Update work of urumqiPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
railmapgen/rmp-gallery#4176 ·
Los mantenedores suelen responder en 2 días
-
GraphQL custom headers duplicate differently cased default headersPosiblemente ocupada @yxr-2025 la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
elie222/rakazo#4625 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
[New Project]: PacaAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
github/forgoodfirstissue#574 ·