feat(bichat): always-visible message actions + Fast/Deep regenerate picker#25
feat(bichat): always-visible message actions + Fast/Deep regenerate picker#25diyor28 wants to merge 2 commits into
Conversation
… picker - Drop hover-gated opacity on assistant/user message action buttons so copy/regenerate/edit are always visible (touch + a11y friendly). - Clicking the regenerate (↻) button on the last assistant message now opens a small popover with the available models (Fast / Deep) sourced from `extensions.llm.models`. Selecting one updates the session model via setModel and triggers regeneration with that model. Falls back to immediate regeneration when fewer than 2 models are configured. - ChatMachine.handleRegenerate now accepts an optional model id and applies it via _setModel before delegating to _sendMessageDirect, so ModelSelector and the active session stay in sync. - Outside-click handler uses event.composedPath() so it works correctly inside the BiChat shadow root (event retargeting otherwise made every click look "outside" and unmounted the menu before its onClick fired).
|
Warning Rate limit exceeded
To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (8)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Review rate limit: 0/1 reviews remaining, refill in 51 minutes and 39 seconds.Comment |
Pulled in by `go install ./cmd/applet` against the latest module graph (golang.org/x/text v0.34.0, golang.org/x/sys v0.41.0, etc). No code or behaviour change — just keeps go.mod / go.sum in sync.
|
Consumed by eai: https://github.com/iota-uz/eai/pull/2524 |
Summary
extensions.llm.models). Picking a model updates the session model viasetModeland re-runs the turn with that model. When fewer than 2 models are configured the previous immediate-regenerate behaviour is preserved.AssistantMessage's outside-click handler now usesevent.composedPath(). BiChat is mounted inside a shadow root (applet-host/react-element.ts); without this the retargetede.targetmade every click look "outside", unmounting the menu before itsonClickcould fire — i.e. clicking Fast/Deep did nothing.Changes
ChatMachine._handleRegenerate(turnId, model?)and the publichandleRegeneratesignature now accept an optional model id and apply it via_setModelbefore delegating to_sendMessageDirect, keepingModelSelectorin sync.RegenerateModelOptiontype andregenerateModelsprop onAssistantMessage.AssistantTurnViewreads models fromuseIotaContext()and passes them through.MessagingSnapshot.handleRegenerateandmachine/types.tsupdated.Test plan
ModelSelector).ModelSelectorreflects the change.