-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Remove loading state blocks input, Add "Retry failed messages" button #9513
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Remove loading state blocks input, Add "Retry failed messages" button #9513
Conversation
|
已经在输入设置里针对重新生成和删除消息分别加入了设置项,默认启用确认对话框 af1465d ![]()
目前的实现是,即便在AI响应生成中发送新消息,系统也会采用本次正在生成之前的对话历史作为上下文。因此,新消息的上下文是准确的,不会包含正在流式输出的不完整内容。 ![]()
感谢指出,已经加入了这个判断 3c804c0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
基本ok,只有一点小问题。允许对生成中的消息进行操作存在潜在风险,但目前没发现什么问题,后面有bug可以再修。
还有冲突 |
3014c75
to
8fe6067
Compare
- Inputbar: drop loading check; keep Send clickable; right-click to pause - Message/MessageMenubar: render menubar even while streaming - Minor cleanup of unused imports and lints
…context fallback - MessageMenubar: remove Popconfirm; click to regenerate - ApiService: ensure last user message is included if filters empty (avoid messages=[]) - Minor cleanup
…g streaming - MessageGroupMenuBar: add “Retry all” (ReloadOutlined) to retry errored/empty/no-block replies; tooltip via i18n - Context fallback: always include last user message in both messageThunk and ApiService - i18n: add message.group.retry_failed (zh-CN, en-US, ja-JP, ru-RU, zh-TW) - Cleanup: remove unused imports; fix lints
- Add "Confirm before deleting message" and "Confirm before regenerating message" options to the settings page, allowing users to customize action confirmations. - Update internationalization files to support multi-language prompt messages. - Modify the message menu bar to integrate the confirmation logic, enhancing the user experience.
Previously, the "Regenerate" action on user messages would trigger immediately, bypassing the `confirmRegenerateMessage` setting. This behavior was inconsistent with the regeneration logic for assistant messages, which correctly showed a confirmation dialog. This commit wraps the user message's regenerate button in a `Popconfirm` component, conditioned on the `confirmRegenerateMessage` setting. This aligns its behavior with the existing logic for assistant messages. Now, all regeneration actions are uniformly governed by the user's confirmation preference, creating a more consistent and predictable user experience.
fix(ui): Conditionally render the 'Retry failed' button The 'Retry failed messages' button in the message group menu bar was previously always visible, even when no messages had failed. - The 'Retry failed' button is now conditionally rendered and will only appear if one or more messages in the group meet the failure criteria.
Replaced the undiscoverable right-click-to-pause functionality on the send button with a dedicated, visible "Pause" button. This new button only appears during message generation, making the action intuitive and accessible. - Removed `onPause` and context menu logic from `SendMessageButton`. - Added a conditional `CirclePause` button to the `Inputbar` when loading.
…sers - Add migration 138 to default confirmDeleteMessage/confirmRegenerateMessage - No behavior change for fresh installs (uses initialState) fix(format): correct indentation in MessageMenubar fix(settings/migrate): fix persistedReducer verison
- Remove unnecessary `topic.prompt` dependencies from Message components - Remove `loading` dependency from Inputbar useCallback Resolves ESLint exhaustive-deps warnings.
25b3a19
to
a9b7421
Compare
What this PR does
This PR introduces several significant UX improvements, new features, and bug fixes aimed at creating a more fluid and responsive user experience.
Before this PR:
After this PR:
Fixes
Why we need it and why it was done in this way
The primary goal of these changes is to enhance user efficiency and streamline the application's core chat experience.
Breaking changes
Special notes for your reviewer
Please pay close attention to the UX changes:
Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.
Release note