diff --git a/CHANGELOG.md b/CHANGELOG.md index d7714ea15..8e82e1b2b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ - **Fixes** - fix inpaint image metadata - fix processing image save loop + - fix api progress reporting endpoint ## Update for 2025-07-29 diff --git a/modules/api/server.py b/modules/api/server.py index d495c1e3b..b9a471fc7 100644 --- a/modules/api/server.py +++ b/modules/api/server.py @@ -85,7 +85,7 @@ def get_history(req: models.ReqHistory = Depends()): return res def get_progress(req: models.ReqProgress = Depends()): - if shared.state.job_count == 0: + if shared.state.job_count == 0: # idle state return models.ResProgress(id=shared.state.id, progress=0, eta_relative=0, state=shared.state.dict(), textinfo=shared.state.textinfo) shared.state.do_set_current_image() current_image = None @@ -100,6 +100,7 @@ def get_progress(req: models.ReqProgress = Depends()): progress = min((current / total) if current > 0 and total > 0 else 0, 1) time_since_start = time.time() - shared.state.time_start eta_relative = (time_since_start / progress) - time_since_start if progress > 0 else 0 + # shared.log.critical(f'get_progress: batch {batch_x}/{batch_y} step {step_x}/{step_y} current {current}/{total} time={time_since_start} eta={eta_relative}') res = models.ResProgress(id=shared.state.id, progress=round(progress, 2), eta_relative=round(eta_relative, 2), current_image=current_image, textinfo=shared.state.textinfo, state=shared.state.dict(), ) return res diff --git a/modules/shared_state.py b/modules/shared_state.py index 0d03ebb17..b9f975d1a 100644 --- a/modules/shared_state.py +++ b/modules/shared_state.py @@ -178,7 +178,7 @@ class State: self.results = [] self.id = self.get_id(task_id) self.job = title - self.job_count = 0 + self.job_count = 1 # cannot be less than 1 on new job self.frame_count = 0 self.batch_no = 0 self.batch_count = 0