xai-org/grok-build · error
snapshot_subagent_worktree task failed: {e}
Error message
snapshot_subagent_worktree task failed: {e} What it means
Error "snapshot_subagent_worktree task failed: {e}" thrown in xai-org/grok-build.
Source
Thrown at crates/codegen/xai-grok-workspace/src/worktree/mod.rs:1517
/// thread.
pub async fn snapshot_subagent_worktree(
worktree_path: &Path,
source_repo: &Path,
ref_name: &str,
) -> Result<String> {
let worktree_path = worktree_path.to_path_buf();
let source_repo = source_repo.to_path_buf();
let ref_name = ref_name.to_string();
tokio::task::spawn_blocking(move || -> Result<String> {
let message = format!("subagent worktree snapshot {ref_name}");
// Capture into the worktree's git, then make it durable in the source
// repo (and verify) so it survives the worktree's deletion.
xai_fast_worktree::snapshot_worktree_to_ref(&worktree_path, &ref_name, &message)?;
xai_fast_worktree::transfer_snapshot_to_repo(&worktree_path, &source_repo, &ref_name)?;
Ok(ref_name)
})
.await
.map_err(|e| anyhow::anyhow!("snapshot_subagent_worktree task failed: {e}"))?
}
/// Remove a subagent worktree directory. Call only AFTER
/// [`snapshot_subagent_worktree`] succeeded and its ref was persisted, so a
/// removal failure is safe to treat as best-effort (the durable ref already
/// backs resume). The blocking fast-worktree work runs on a blocking thread.
pub async fn remove_subagent_worktree(worktree_path: &Path) -> Result<()> {
let worktree_path = worktree_path.to_path_buf();
// On rootless hosts the snapshot delete needs the privileged helper; without
// the delegate the btrfs delete hits EPERM and the snapshot leaks.
let delegate = btrfs_delegate_from_env();
tokio::task::spawn_blocking(move || {
xai_fast_worktree::remove_worktree_with_delegate(&worktree_path, delegate)
})
.await
.map_err(|e| anyhow::anyhow!("remove_subagent_worktree task failed: {e}"))??;
Ok(())
}View on GitHub (pinned to bc7f02eddd)
When it happens
Trigger: Thrown at crates/codegen/xai-grok-workspace/src/worktree/mod.rs:1517 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of xai-org/grok-build@bc7f02eddd (2026-08-31).
Data as JSON: /api/errors/aeded1c1142c997c.
Report an issue: GitHub.