[Bug]: TypeScript compiler locations lose line and column in terminal links
Les mainteneurs répondent en général sous 1 jour
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 30/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- À l'abandon
- Stack technique
- typescript
Piste de recherche
The bug is in the terminal link parser and resolver in apps/web, which desktop shares, and the report shows that path(line,col) diagnostics lose their coordinates before shell.openInEditor is called. Start by reproducing with tsc --pretty false output and comparing it with the working path:line:col form. Done means relative and absolute parenthesized locations open at the correct line and column with the link range excluding the trailing colon. Open PR #36174 already targets this, so coordinate with it before writing a competing fix.
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/web (also used by desktop's integrated terminal)
Steps to reproduce
- From a T3 Code repository checkout with dependencies installed, create a disposable reproduction project:
(
demo=$(mktemp -d)
mkdir -p "$demo/src"
ln -s "$PWD/apps/marketing/node_modules/typescript/bin/tsc" "$demo/tsc"
{
printf '\n%.0s' {1..41}
printf 'const answer: number = "no";\n'
} > "$demo/src/main.ts"
printf 'Reproduction project: %s\n' "$demo"
)
- Add the printed directory as a project in T3 Code, create a thread, and open its integrated terminal. This makes the terminal link base match the compiler's project root.
- In that terminal, run:
./tsc --pretty false --noEmit src/main.ts
The actual compiler output begins:
src/main.ts(42,7): error TS2322: Type 'string' is not assignable to type 'number'.
Hover and Ctrl-click the diagnostic filename (Cmd-click on macOS).
Expected behavior
The editor opens src/main.ts at line 42, column 7. The link range includes the parenthesized location and excludes the trailing colon.
Actual behavior
Only src/main.ts is linked for this relative diagnostic. Clicking opens the file without the location. Capturing the real integrated client's shell.openInEditor request confirms that its target contains the path with no line or column. Absolute parenthesized diagnostic paths also are not understood by the terminal resolver and are treated as literal filenames; that absolute-form failure was verified at the parser/resolver layer.
Impact
Minor bug or occasional failure. Navigation to the diagnostic location is lost, although the relative-path case still opens the correct file.
Version or commit
Verified in the published nightly 0.1.10-nightly.20261113.4630, release commit 7e1a05808aaf5df39fe9d20cc5c3603f3978696a, using the unmodified released Linux x64 server and its bundled web client. Also reproduced on upstream main at 2d8a843e6be9.
Environment
Linux, published nightly server and bundled web client, TypeScript 6.0.3, isolated T3 base directory. The web parser is shared with desktop. No agent turn or source build of T3 Code was used for the nightly verification.
Verified reproduction in the published nightly
Release: v0.1.10-nightly.20261113.4630. The downloaded Linux x64 archive matched the release's SHA256SUMS, and the running server reported serverVersion: 0.1.10-nightly.20261113.4630. No T3 Code source changes or fixture RPC responses were used.
- Follow the setup above to create the disposable directory containing
src/main.tsand the TypeScript compiler symlink. - Add that directory itself as a project in the installed/nightly T3 Code app. Select the project's current checkout, start a new thread, and open its integrated terminal. Merely changing directories in a terminal belonging to another project is insufficient: links resolve against T3's project root.
- Run
./tsc --pretty false. This executes TypeScript 6.0.3 and prints the realsrc/main.ts(42,7): error TS2322: ...diagnostic. - Hover and Ctrl-click the filename. The underline stops at
src/main.ts, and the real editor-opening request omits both coordinates:
{
"cwd": "/tmp/t3-nightly-terminal-repro/src/main.ts",
"editor": "vscode",
"projectRoot": "/tmp/t3-nightly-terminal-repro"
}
- Control: run
./tsc --pretty trueand Ctrl-click itssrc/main.ts:42:7location. The same released client now sends:
{
"cwd": "/tmp/t3-nightly-terminal-repro/src/main.ts:42:7",
"editor": "vscode",
"projectRoot": "/tmp/t3-nightly-terminal-repro"
}
The screenshot below is from the actual published nightly, after running the compiler and hovering the affected link. The two requests above were captured from real clicks, not inferred from the underline. Use Cmd-click instead on macOS.
Open the nightly reproduction screenshot (PNG).

Supporting evidence
Real integrated-client hover and click evidence is included in the linked fix PR: https://github.com/pingdotgg/t3code/pull/36174.
Workaround
Use --pretty true where practical: its src/main.ts:42:7 format is already supported. This report concerns TypeScript's non-pretty parenthesized diagnostic locations.
- Langage dominant
- TypeScript
- Étoiles
- 24.8k
- Forks
- 6.4k
- Merge moyen
- 59 min
- PR mergées (30 j)
- 418
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de pingdotgg/t3code
-
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
Les mainteneurs répondent en général sous 1 jour
-
via-triage
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
[Bug]: MCP App inline frames never go below 80px, so compact apps get blank space under themOuverte
Difficulté 2/5 Une demi-journée Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 1 jour
-
Question card options show LaTeX as raw source, though the question text renders itPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 1 jour
-
[Bug]: Settings inheritance popover shows raw slugs for branch naming, default permissions and response streamingPeut-être pris @juliusmarminge l’a pris il y a 1 jour. Ouvertevouch:denounced
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de pingdotgg/t3code
Issues similaires
-
skill fork: kickoff message "Run the X skill now" makes the child call the skill tool on itselfOuvertearea: skills bug priority: medium
Difficulté 1/5 Moins d'une heure Accessibilité débutants 68/100
griffinwork40/agent-afk#4874 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
paperclipai/paperclip#21503 ·
Les mainteneurs répondent en général sous 1 jour
-
[Bug] List: the reorder hint's Move up stays enabled on the first row, and Move down on the lastOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
-
Blocklist addition requestOuverteblocklist addition
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
MetaMask/eth-phishing-detect#312343 ·
Les mainteneurs répondent en général sous 1 jour
-
packages:player
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
Les mainteneurs répondent en général sous 1 jour