[Bug]: PDF open in Browser panel becomes “Not Found”; reopening its original chat link restores it

Aperta
#36,202 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@juliusmarminge ci sta già lavorando.

Dal 13/11/2026.

  • #36205 di @juliusmarminge — aperta

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
30/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
typescript
Ambito
desktop

Direzione di ricerca

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.

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

Descrizione

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:

  1. Open a local PDF using a file link in an assistant response.
  2. Keep it open in the right-hand Browser panel while continuing the conversation.
  3. The preview eventually shows “Not Found”.
  4. Load earlier conversation history and click the original file link again.
  5. 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.

Lingua principale
TypeScript
Stelle
24.8k
Fork
6.4k
Merge medio
59m
PR unite (30g)
418

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.