diff --git a/server/src/agents/pool.rs b/server/src/agents/pool.rs index 46b1366..3986cbc 100644 --- a/server/src/agents/pool.rs +++ b/server/src/agents/pool.rs @@ -1188,6 +1188,7 @@ impl AgentPool { tokio::spawn(async move { let report = pool.run_merge_pipeline(&root, &sid).await; + let failed = report.is_err(); let status = match report { Ok(r) => super::merge::MergeJobStatus::Completed(r), Err(e) => super::merge::MergeJobStatus::Failed(e), @@ -1197,6 +1198,9 @@ impl AgentPool { { job.status = status; } + if failed { + pool.auto_assign_available_work(&root).await; + } }); Ok(())