qwen-code/packages/web-shell/client/e2e
Heyang Wang e46586782c
feat: support drag and drop img in web-shell (#8696)
* feat(web-shell): support image drag and drop

Allow Web Shell composers to ingest image files reliably while
preserving the existing multimodal prompt protocol.

- Share ordered image ingestion across desktop and mobile editors
- Support image-only prompts and BMP preview and provider-safe handling
- Preserve queued payloads across retries and uncertain outcomes
- Add lifecycle guards, user feedback, unit coverage, and browser tests

* fix(web-shell): harden image prompt admission recovery

Preserve complete prompt payloads and prevent duplicate or uncertain
delivery states when admission responses race with queue lifecycle
events.

- Correlate admission, queue, and terminal events by prompt ID
- Restore images and input annotations across retry and edit flows
- Bound image reader concurrency and encoded attachment memory
- Reconcile confirmed removals and explain ambiguous queue entries

* docs(web-shell): align image drag design with review fixes

Document the reviewed admission, recovery, and resource invariants.
Keep the design aligned with the hardened Web Shell implementation.

- Record bounded image ingestion and encoded-data budgeting
- Clarify prompt lifecycle correlation and confirmed removal behavior
- Describe annotation restoration and internal action boundaries
- Update focused validation evidence and acceptance criteria

* fix(web-shell): avoid duplicate restored attachments

Skip payload attachments when restoring text is a no-op because the
same prompt text already exists in the composer.

- Restore images and annotations only when their text is inserted
- Preserve image-only restoration regardless of the current draft
- Add regression coverage for duplicate text with attachments

---------

Co-authored-by: heyang.why <heyang.why@alibaba-inc.com>
2026-08-10 05:48:17 +00:00
..
utils fix(web-shell): keep mobile composer at chat pane bottom (#8601) 2026-08-07 16:57:00 +00:00
visuals feat(web-shell): add fullscreen view for the right artifact panel (#8614) 2026-08-09 12:41:48 +00:00
capture-git-mode-screenshots.ts feat(web-shell): add git mode selector for new session creation (#7471) 2026-07-24 03:48:43 +00:00
composer-layout-harness.html fix(web-shell): make composer height adaptive (#6872) 2026-07-14 11:38:29 +00:00
composer-layout-harness.tsx fix(web-shell): keep mobile composer at chat pane bottom (#8601) 2026-08-07 16:57:00 +00:00
web-shell.channels.spec.ts feat(channels): support group pairing (#8440) 2026-08-07 09:20:18 +00:00
web-shell.collapsed-groups-persist.spec.ts fix(web-shell): constrain session details and add copy action (#8127) 2026-07-31 02:25:44 +00:00
web-shell.composer.mobile.spec.ts fix(web-shell): keep mobile composer at chat pane bottom (#8601) 2026-08-07 16:57:00 +00:00
web-shell.git-mode.spec.ts fix(web-shell): keep git mode popover open when picking branch/worktree (#7668) 2026-07-24 12:36:34 +00:00
web-shell.github-prs.spec.ts feat(web-shell): add read-only GitHub pull requests panel (#7683) 2026-07-25 02:44:50 +00:00
web-shell.smoke.spec.ts feat: support drag and drop img in web-shell (#8696) 2026-08-10 05:48:17 +00:00
web-shell.split-persist.spec.ts feat(web-shell): persist the split view across refresh, per tab (#7136) 2026-07-18 08:29:23 +00:00
webui-tool-output-layout-harness.html fix(webui): make long tool output collapsible (#8251) 2026-08-01 14:57:55 +00:00
webui-tool-output-layout-harness.tsx fix(webui): make long tool output collapsible (#8251) 2026-08-01 14:57:55 +00:00
webui-tool-output-layout.spec.ts fix(webui): make long tool output collapsible (#8251) 2026-08-01 14:57:55 +00:00