From 146d3cedb25707d27f0c570fa90250c9b52cbd86 Mon Sep 17 00:00:00 2001 From: Accusys Date: Mon, 6 Jul 2026 19:08:56 +0800 Subject: [PATCH] fix: update PipelineProgress when job completes via essential_completed path When a job completes via the essential_completed branch (all essential processors done but some non-essential failed), the PipelineProgress was not being updated to 100%, causing a discrepancy where the status showed 'completed' but progress showed <100%. Now PipelineProgress.mark_completed() is called in both completion paths. --- src/worker/job_worker.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/worker/job_worker.rs b/src/worker/job_worker.rs index ff3de7f..a5b69cb 100644 --- a/src/worker/job_worker.rs +++ b/src/worker/job_worker.rs @@ -1977,6 +1977,11 @@ impl JobWorker { self.redis.delete_worker_job(uuid).await?; + // Update PipelineProgress to completed + let mut pp = PipelineProgress::new(uuid); + pp.mark_completed(); + publish_pipeline_progress(self.redis.as_ref(), uuid, &pp).await; + info!( "Job {} completed with {} non-essential failures", job_id,