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:
parent
a5727c5960
commit
69f0ba880a
286 changed files with 22939 additions and 9624 deletions
|
|
@ -277,6 +277,7 @@ async fn tasks_snapshot(toolset: &FinalizedToolset) -> TasksSnapshotResponse {
|
|||
TaskKind::Monitor => "monitor".to_owned(),
|
||||
},
|
||||
started_at: DateTime::<Utc>::from(t.start_time).to_rfc3339(),
|
||||
description: t.description,
|
||||
}
|
||||
})
|
||||
.collect(),
|
||||
|
|
@ -1440,6 +1441,11 @@ mod tests {
|
|||
let task = &snap.background_tasks[0];
|
||||
assert_eq!(task.task_id, bg.task_id);
|
||||
assert_eq!(task.kind, "bash");
|
||||
assert!(
|
||||
task.description.is_none(),
|
||||
"start_background_sleep does not set description: {:?}",
|
||||
task.description
|
||||
);
|
||||
assert!(
|
||||
DateTime::parse_from_rfc3339(&task.started_at).is_ok(),
|
||||
"started_at must be RFC3339: {}",
|
||||
|
|
@ -1450,6 +1456,24 @@ mod tests {
|
|||
"no scheduler resource in this toolset: {:?}",
|
||||
snap.scheduled_tasks
|
||||
);
|
||||
{
|
||||
use crate::handle::tests::terminal_run_request;
|
||||
let mut req = terminal_run_request("sleep 30", out_dir.path(), "snap-desc-task");
|
||||
req.description = Some("build frontend".into());
|
||||
let desc_bg = session
|
||||
.terminal_backend()
|
||||
.run_background(req)
|
||||
.await
|
||||
.expect("start described background task");
|
||||
let snap = snapshot(&handler).await;
|
||||
let described = snap
|
||||
.background_tasks
|
||||
.iter()
|
||||
.find(|t| t.task_id == desc_bg.task_id)
|
||||
.expect("described task in snapshot");
|
||||
assert_eq!(described.description.as_deref(), Some("build frontend"));
|
||||
session.terminal_backend().kill_task(&desc_bg.task_id).await;
|
||||
}
|
||||
session.terminal_backend().kill_task(&bg.task_id).await;
|
||||
let snap = snapshot(&handler).await;
|
||||
assert!(
|
||||
|
|
|
|||
Loading…
Reference in a new issue