Skip to content

[Bug]: CodeView duplicate-id crash on same-path type-change diffs still reproduces on Alpha 0.0.42 via remote T3 Connect session (post-#11074 fix) #13011

Description

@kpatel0170

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

Steps to reproduce

  1. In a Git repo, commit a regular tracked file, e.g. agents/foo.md, alongside another tracked file it can point to, e.g. agents/bar.md.
  2. Replace agents/foo.md with a relative symlink to agents/bar.md and commit:
    rm agents/foo.md
    ln -s bar.md agents/foo.md
    git add agents/foo.md
    git commit -m "swap to symlink"
    This is a same-path Git type change (100644 -> 120000), which git diff --no-renames represents as two blocks for the same path (delete regular file, add symlink).
  3. Connect to the environment through a remote/hosted T3 Connect session (not the local desktop app) and open the working-tree or commit diff for that path in CodeView.

Expected behavior

Per #11074 (closed as Completed 2026-09-18), CodeView should assign distinct ids to same-path type-change halves and render one type-change item, or at minimum not crash the thread.

Actual behavior

The renderer still throws and the thread shows "Something went wrong":

Error: CodeView.addItem: duplicate id "agents/foo.mdagents/foo.md"
    at e.appendItemsInternal (t3code://app/assets/diffFileContents-CFYwckRB.js:1:18149)
    at e.setItems (t3code://app/assets/diffFileContents-CFYwckRB.js:1:17760)

Note the asset hash diffFileContents-CFYwckRB.js differs from the one in #11074's report (diffFileContents-DyQONavv.js), and from #12244 (a different nightly build) — so this isn't a stale-cache repro of the old bug, it's a currently-shipping build.

Impact

Major degradation or frequent failure

Version or commit

T3 Code (Alpha) 0.0.42

Environment

Remote/hosted session via T3 Connect (not the desktop app directly). Same underlying crash class as #11074/#12244.

Logs or stack traces

T3 Code (Alpha) 0.0.42
Error: CodeView.addItem: duplicate id "agents/foo.mdagents/foo.md"
    at e.appendItemsInternal (t3code://app/assets/diffFileContents-CFYwckRB.js:1:18149)
    at e.setItems (t3code://app/assets/diffFileContents-CFYwckRB.js:1:17760)
    at t3code://app/assets/diffFileContents-CFYwckRB.js:1:49631

Workaround

Split the type change into two separate commits (delete the old path, then add the new path in a following commit) instead of a single same-path type-change commit. This avoids the collapsed same-path diff record entirely.

Related issues

Not a duplicate: both prior reports were against the desktop app and predate or coincide with the fix landing. This reproduces afterward, on 0.0.42, through a remote/hosted T3 Connect session specifically - which #11074's own investigation flagged as a separate code path ("the same collision would hit working-tree / branch diffs in the same panel") that may not have received the same fix.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething is broken or behaving incorrectly.duplicateThis issue or pull request already existsvia-triageFiled through npx t3 triage

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions