From aa6b531a423067d8a71c2a57b41185bff17036be Mon Sep 17 00:00:00 2001 From: akbash Date: Sun, 13 Sep 2026 03:04:27 +0300 Subject: fix: update grok session after new (#2683) * fix: update grok session after new refs #2681 * fix: avoid powershell args shadowing refs #2681 --------- Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> --- tests/cli/hooks.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'tests/cli') diff --git a/tests/cli/hooks.rs b/tests/cli/hooks.rs index de2bb271..31978a03 100644 --- a/tests/cli/hooks.rs +++ b/tests/cli/hooks.rs @@ -37,6 +37,15 @@ fn run_devin_hook( ) } +fn run_grok_hook(hook_input: &str, envs: &[(&str, &str)]) -> Option { + run_shell_hook_with_env( + "src/integration/assets/grok/herdr-agent-state.sh", + &["session"], + hook_input, + envs, + ) +} + fn run_shell_hook(asset_path: &str, args: &[&str], hook_input: &str) -> Option { run_shell_hook_with_env(asset_path, args, hook_input, &[]) } @@ -237,6 +246,19 @@ fn copilot_hook_reports_session_id_from_stdin() { assert!(camel["params"].get("state").is_none()); } +#[test] +fn grok_hook_reports_new_session_source() { + let request = run_grok_hook( + r#"{"hook_event_name":"session_start","source":"new","session_id":"new-session"}"#, + &[("GROK_SESSION_ID", "new-session")], + ) + .expect("grok session start should report session identity"); + + assert_eq!(request["method"], "pane.report_agent_session"); + assert_eq!(request["params"]["agent_session_id"], "new-session"); + assert_eq!(request["params"]["session_start_source"], "new"); +} + #[test] fn copilot_hook_does_not_report_lifecycle_state() { for payload in [ -- cgit v1.2.3