Synced from monorepo
Changes: - Non-blocking coding-data sharing upsell banner - Consolidate remediation in Doctor - Auto mode defers fail-closed gate asks to the classifier - Coalesce marketplace list fetches - Allow removing a marketplace source by name - Contain hung git marketplace sources (timeouts, non-blocking refresh, unbrick modal) - Label failed workspace RPCs with error_kind - Drop redundant explicit tonic/prost deps from xai-grok-shell - Report real exit codes for completed background shells - Narrow the date-rollover reminder to date-bearing templates - Wire toolOverrides through the session and agent - Security: Bash(git:*) allowlist matches whole command chain by prefix - Split prompt-trigger telemetry and record classifier provenance - Raise connectors-manager timeout to 60s - Auto classifier honors recorded approvals for repeat actions - Apply doctor fixes in the TUI - Auto-mode classifier timeouts prompt instead of silently denying - Scope subagent completion drains to the owning session - Add the toolOverrides wire types - Set client_identifier=grok-agent-sdk - Accept both spellings of the workspace-teleport kill switch - Persist one-shot occurrence journal - Stop turns that poll the exact same tool call 16x in a row - Copy compaction checkpoint files when forking sessions - Auto-focus permission prompt from scrollback - Esc cancels the running turn in non-vim and minimal modes - List Ctrl+Z undo and redo in keyboard shortcuts - Out-of-process macOS mic capture - Show active auth mode on session-info - Install the npm binary under $GROK_HOME - Remove hover/click dead zones between dashboard items - Route startup warnings to doctor - Document [feedback.user] author identity config - Extend bang command timeout - Close combine-queued edit-hold race - Integrate relocation recovery - Expose privacy notice rollout flag - Break harness discovery ref cycle so connections can idle-evict - Shift/Alt+Enter inserts newline when editing a queued prompt - Gate project Claude permissions on folder trust - Echo response.create.event_id on response.created - Toast when session creation fails from disk full - Add shared test process lifecycle - Enable dynamic workflows by default - Add relocation transaction state machine - Add shared test sandbox - Surface auth failures on model-switch compact - Persist durable scheduler expiry - Confirm before removing extensions-modal items - Re-run compact and prompt after login when compact hit expired auth - Recap sends hosted tools under backend search
This commit is contained in:
parent
3af4d5d398
commit
a5727c5960
482 changed files with 37627 additions and 13402 deletions
|
|
@ -146,9 +146,7 @@ impl AgentView {
|
|||
{
|
||||
let plugin_id = name.clone();
|
||||
if let Err(e) = xai_grok_shell::config::add_dismissed_plugin_cta(&plugin_id) {
|
||||
tracing::warn!(
|
||||
error = % e, "couldn't persist plugin CTA dismissal"
|
||||
);
|
||||
tracing::warn!(error = %e, "couldn't persist plugin CTA dismissal");
|
||||
}
|
||||
self.plugin_cta.dismissed.insert(plugin_id.clone());
|
||||
xai_grok_telemetry::session_ctx::log_event(
|
||||
|
|
@ -667,12 +665,15 @@ impl AgentView {
|
|||
self.last_permission_click = None;
|
||||
self.pending_scrollback_click = Some((mouse.column, mouse.row));
|
||||
tracing::debug!(
|
||||
event = "scrollback_mouse_down", col = mouse.column, row =
|
||||
mouse.row, area = ? self.pane_areas.scrollback, content_area
|
||||
= ? self.last_scrollback_selection_model.content_area, ranges
|
||||
= self.last_scrollback_selection_model.ranges.len(), blocks =
|
||||
self.last_scrollback_selection_model.visible_blocks.len(),
|
||||
hovered_entry = ? self.hovered_entry, "scrollback mouse down"
|
||||
event = "scrollback_mouse_down",
|
||||
col = mouse.column,
|
||||
row = mouse.row,
|
||||
area = ?self.pane_areas.scrollback,
|
||||
content_area = ?self.last_scrollback_selection_model.content_area,
|
||||
ranges = self.last_scrollback_selection_model.ranges.len(),
|
||||
blocks = self.last_scrollback_selection_model.visible_blocks.len(),
|
||||
hovered_entry = ?self.hovered_entry,
|
||||
"scrollback mouse down"
|
||||
);
|
||||
if self.begin_pending_text_drag(mouse) {
|
||||
return InputOutcome::Changed;
|
||||
|
|
@ -704,8 +705,11 @@ impl AgentView {
|
|||
MouseEventKind::Drag(MouseButton::Left) => {
|
||||
self.pending_link_click = None;
|
||||
tracing::debug!(
|
||||
event = "scrollback_mouse_drag", col = mouse.column, row = mouse.row,
|
||||
pending = ? self.pending_text_drag, active = ? self.drag_selection,
|
||||
event = "scrollback_mouse_drag",
|
||||
col = mouse.column,
|
||||
row = mouse.row,
|
||||
pending = ?self.pending_text_drag,
|
||||
active = ?self.drag_selection,
|
||||
"scrollback mouse drag"
|
||||
);
|
||||
self.handle_scrollback_drag_motion(mouse)
|
||||
|
|
@ -713,8 +717,11 @@ impl AgentView {
|
|||
MouseEventKind::Up(MouseButton::Left) => {
|
||||
self.left_mouse_down = false;
|
||||
tracing::debug!(
|
||||
event = "scrollback_mouse_up", col = mouse.column, row = mouse.row,
|
||||
pending = ? self.pending_text_drag, active = ? self.drag_selection,
|
||||
event = "scrollback_mouse_up",
|
||||
col = mouse.column,
|
||||
row = mouse.row,
|
||||
pending = ?self.pending_text_drag,
|
||||
active = ?self.drag_selection,
|
||||
"scrollback mouse up"
|
||||
);
|
||||
if self.scrollbar_dragging {
|
||||
|
|
@ -908,9 +915,12 @@ impl AgentView {
|
|||
}
|
||||
MouseEventKind::Moved => {
|
||||
tracing::debug!(
|
||||
event = "scrollback_mouse_moved", col = mouse.column, row = mouse
|
||||
.row, pending = ? self.pending_text_drag, active = ? self
|
||||
.drag_selection, left_mouse_down = self.left_mouse_down,
|
||||
event = "scrollback_mouse_moved",
|
||||
col = mouse.column,
|
||||
row = mouse.row,
|
||||
pending = ?self.pending_text_drag,
|
||||
active = ?self.drag_selection,
|
||||
left_mouse_down = self.left_mouse_down,
|
||||
"scrollback mouse moved"
|
||||
);
|
||||
if self.left_mouse_down
|
||||
|
|
|
|||
Loading…
Reference in a new issue