Synced from monorepo

Synced from monorepo

Changes:
- Workspace server: report `/ready` as failed with dwell on hub connect failure
- Refresh OIDC token for the Grok agent in the shell
- ACP terminal output recorder
- Cross-platform provider auth commands in the shell
- Default `/resume` to Grok sessions with a hint for hidden external sessions
- Resume sessions by title with `--resume`
- Limit app-builder archive size
- Data-driven tag labels for slash commands
- Doctor fixes for tmux
- Custom provider gateways and subprocess environment policy in the shell
- `/tutorial` — opt-in onboarding tour of Grok Build
- Soft and required CLI version checks in the shell
- Privacy banner env overrides survive live settings updates
- Add remote flag to override the image-edit model
- Return profile fields from auth info even when the access token is expired
- Add edit control on queued prompt rows
- Keep fail-closed policy when clearing orphans with no team
- Setting to disable the Ctrl+Space/F8 voice shortcut
- Pass `--raw` to pw-record so Linux dictation works on older PipeWire
- Validate git URLs when adding marketplace entries
- Stop shipping stale tool-doc parameter and tool names
- Re-point dashboard attach after `/fork` only when the parent was attached
- Surface Grok Computer media-generation results as file-path chunks
- Clear web background-task tray on kill and keep the task description
- Show privacy upsell banner in agent view until acted on
- Add tools-server client callback surface
- Protect persistent global hook sources

Source-Revision: 95d84f443eddcbed6cbfd6eed22e2eafe6b3939d
This commit is contained in:
grokkybara[bot] 2026-07-23 17:12:33 +00:00
commit 69f0ba880a
286 changed files with 22939 additions and 9624 deletions

View file

@ -64,6 +64,7 @@ const ALL_SETTINGS_EXERCISED: &[&str] = &[
"collapsed_edit_blocks",
"respect_manual_folds",
"hunk_tracker_mode",
"voice_keybind_enabled",
"voice_capture_mode",
"voice_stt_language",
// Contextual-hints group + its per-tip child toggles (exercised via the
@ -235,6 +236,12 @@ fn assert_set_bool_action(outcome: SettingsKeyOutcome, key: &str, expected: bool
"SetRememberToolApprovals value differs from expected"
)
}
("voice_keybind_enabled", Action::SetVoiceKeybindEnabled(b)) => {
assert_eq!(
b, expected,
"SetVoiceKeybindEnabled value differs from expected"
)
}
(
"toolset.ask_user_question.timeout_enabled",
Action::SetAskUserQuestionTimeoutEnabled(b),
@ -1797,6 +1804,7 @@ fn registry_kind_membership_through_pr_14() {
"toolset.ask_user_question.timeout_enabled",
"auto_update",
"show_tips",
"voice_keybind_enabled",
// Per-tip contextual-hint children (hidden from the top-level list,
// toggled inside the group sub-sheet) are still Bool settings.
"contextual_hints.undo",
@ -1961,6 +1969,7 @@ fn defaults_round_trip_through_registry() {
"coding_data_sharing" => SettingValue::Enum("opt-out"),
"default_selected_permission" => SettingValue::Enum("always_allow_all_sessions"),
"hunk_tracker_mode" => SettingValue::Enum("agent_only"),
"voice_keybind_enabled" => SettingValue::Bool(true),
"voice_capture_mode" => SettingValue::Enum("hold"),
"voice_stt_language" => SettingValue::Enum("en"),
"plan_mode" => SettingValue::Enum("off"),
@ -2052,7 +2061,8 @@ fn settings_value_payload_matches_kind() {
| SettingsKeyOutcome::Action(Action::SetGroupToolVerbs(_))
| SettingsKeyOutcome::Action(Action::SetCollapsedEditBlocks(_))
| SettingsKeyOutcome::Action(Action::SetInvertScroll(_))
| SettingsKeyOutcome::Action(Action::SetDisplayRefreshAutoCadence(_)) => {}
| SettingsKeyOutcome::Action(Action::SetDisplayRefreshAutoCadence(_))
| SettingsKeyOutcome::Action(Action::SetVoiceKeybindEnabled(_)) => {}
other => panic!(
"expected a typed bool setter for `{}`, got {:?}",
meta.key, other
@ -6277,6 +6287,31 @@ fn voice_stt_language_picker_enter_dispatches_set_commit() {
);
}
/// Space-toggle on `voice_keybind_enabled` dispatches the typed setter.
/// Default is ON (the chord works out of the box), so toggling flips it off.
#[test]
fn space_on_voice_keybind_enabled_dispatches_typed_setter() {
let mut s = make_state();
navigate_to(&mut s, "voice_keybind_enabled");
let outcome = handle_settings_key(&mut s, &press(KeyCode::Char(' ')));
assert_set_bool_action(outcome, "voice_keybind_enabled", false);
}
/// Value-column click toggles `voice_keybind_enabled` in one click.
#[test]
fn mouse_click_on_voice_keybind_enabled_indicator_toggles_in_one_click() {
let mut s = make_state();
synth_rects(&mut s);
let row_y = row_idx_for(&s, "voice_keybind_enabled") as u16;
let outcome = handle_settings_mouse(
&mut s,
MouseEventKind::Down(crossterm::event::MouseButton::Left),
72,
row_y,
);
assert_set_bool_action(outcome, "voice_keybind_enabled", false);
}
/// Value-column click on the voice_stt_language row opens the picker in ONE
/// click (mouse ↔ keyboard parity).
#[test]