Fix uploading files to codebase in local agent mode (#2210)
<!-- CURSOR_SUMMARY -->
> [!NOTE]
> Fixes upload-to-codebase in local-agent by resolving attachment IDs to
real file bytes and adds e2e coverage.
>
> - **Core fix**: New `file_upload_utils.resolveFileUploadContent` maps
`DYAD_ATTACHMENT_X` IDs to uploaded file contents via
`FileUploadsState`.
> - **Tool update**: `write_file` now writes resolved bytes (supports
binary) instead of raw ID strings.
> - **Stream handling**: Clear stale uploads for the chat at stream
start in `chat_stream_handlers`.
> - **Tests**: Playwright test, fixture, and snapshot verify uploading
`logo.png` to `assets/uploaded-file.png` and content parity.
>
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
220b0eaae361fee015e5146b9fffd217e7bf7626. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Fixes uploading files to the codebase in local-agent mode by resolving
attachment IDs (e.g., DYAD_ATTACHMENT_0) to real file bytes before
writing. Adds e2e coverage to prevent regressions.
- **Bug Fixes**
- Added resolver to map upload IDs to file content using
FileUploadsState.
- Updated write_file to use the resolver and write the resolved bytes.
- Cleared file uploads state at chat start to avoid stale IDs from
previous requests.
- Added Playwright test and fixture that upload logo.png and verify the
written file and snapshot.
<sup>Written for commit 220b0eaae361fee015e5146b9fffd217e7bf7626.
Summary will update on new commits.</sup>
<!-- End of auto-generated description by cubic. -->
正在显示
请
注册
或者
登录
后发表评论