Files
makelore/.project-docs/30-worklog/tasks/20260806-design-enter-send-b83f.md
brother7 4980894017 feat(AI设计): 支持输入框回车发送
需求:AI 设计输入框监听 Enter 并发送消息。

实现:复用现有发送链路,保留 Shift+Enter 换行并保护输入法组合状态;补充聚焦回归测试。
2026-08-06 16:46:19 +08:00

52 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Task: 支持 AI 设计输入框回车发送
## Identity
- Task ID: 20260806-design-enter-send-b83f
- Mode: Feature
- Branch: codex/design-enter-send-b83f
- Worktree: D:\Datas\OthersProjects\makelore-design-enter-send-b83f
- Base commit: 7b23cce67a1b9e61a48d89dedbd088d37b10ecd4
- Owner: codex
- Status: Completed
## Scope
- 让 AI 设计输入框在非输入法组合状态下按 Enter 直接发送。
- 保留 Shift+Enter 输入换行,并同步更新快捷键提示。
- 增加回车发送、换行和输入法保护的回归测试。
## Intent And Constraints
- 复用现有 `handleSend`不改变消息、Quote 确认与任务创建链路。
- 中文输入法候选确认期间的 Enter 不得误发消息。
- 改动仅限 AI 设计页及其聚焦测试,不触碰原主工作区中的未归属改动。
## Plan
1. 调整输入框键盘事件判定与可见快捷键提示。
2. 覆盖 Enter、Shift+Enter 和 IME composition 三种行为。
3. 执行聚焦测试、类型检查、Lint 与 Vite 构建。
## Outcome
- AI 设计输入框现在按 Enter 即可发送,继续复用既有消息与结构化 Quote 确认逻辑。
- Shift+Enter 保留多行输入;输入法组合状态下按 Enter 不会误发。
- 输入框下方提示已更新为 `Enter 发送 · Shift+Enter 换行`
## Verification
- `vitest run tests/unit/image-canvas-page.test.tsx`21 passed。
- `tsc --noEmit`:通过。
- `eslint src/pages/ImageCanvas/index.tsx tests/unit/image-canvas-page.test.tsx`:通过。
- `vite build`:通过,仅有既有动态导入与 chunk 体积警告。
- 全仓 `eslint .`:未通过,命中本任务之外的既有问题:`src/components/layout/MainLayout.tsx` effect 内同步 setState、`tests/unit/chat-command-dialogs.test.tsx` 未使用变量,以及 6 个既有 warning。
## Follow-ups
- 后续可单独清理全仓既有 Lint 基线问题,不阻塞本次交互修复。
## Promotion Candidates
- None recorded.