Skip to content

[Bug]: Dropped folders become failed file uploads #11961

Description

@caiopizzol

Before submitting

  • I searched existing issues. Related reports are linked below.
  • I included reproduction steps and supporting evidence.

Area

apps/web — shared by web and desktop. Observed on desktop and reproduced in the browser.

Steps to reproduce

  1. Open a chat in T3 Code.
  2. Drag any folder from your computer into the message composer.

Expected behavior

I expect a folder reference or path, as Codex desktop displays. If the selected client or environment cannot support that, explain the limitation without creating a failed attachment.

Actual behavior

T3 treats the folder as a file attachment and shows upload failed. Send becomes disabled with the label Retry or remove the failed attachment.

Dropping an ordinary text file into the same composer uploads successfully.

Impact

Minor bug or occasional failure. Sending is blocked until the failed attachment is removed.

Version or commit

Browser reproduction: main at 3efdcc529, package version 0.0.40. Original desktop version not recorded.

Environment

Ubuntu 26.04 LTS, Chromium 143.0.7499.4, Node.js 24.18.0; local T3 server. Browser reproduction used Playwright 1.61.1 and Chromium's native drag API with a real filesystem folder.

Logs or stack traces

Regular file: upload HTTP 204; Send enabled
Folder: isDirectory=true; upload net::ERR_FILE_NOT_FOUND; Send disabled

The browser identifies the dropped item as a directory, but the shared drop handler forwards it to the attachment uploader without checking directory entries.

Screenshots, recordings, or supporting files

Screenshots collected for this report:

  • failed folder upload on desktop
Image
  • successful file upload beside the failed folder upload
Image
  • the folder appears as a Folder reference in Codex desktop; version not recorded.
Image

Codex CLI 0.154.0 and Claude Code 2.1.269 also accept pasted folder paths as editable text. These were paste checks, not drag-and-drop tests. Claude Desktop was not tested.

Workaround

Remove the failed attachment and paste the folder path as text. This re-enabled Send in the browser test. The path must be accessible to the selected environment.

Related reports

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

    acceptedfeature request acceptedbugSomething is broken or behaving incorrectly.via-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