Skip to content

Commit 9797ae3

Browse files
committed
fix(cron): polish wake-now retry PR
1 parent 8db83f2 commit 9797ae3

2 files changed

Lines changed: 2 additions & 6 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ Docs: https://docs.openclaw.ai
3333

3434
### Fixes
3535

36-
- Cron: retry recurring wake-now main-session jobs through temporary heartbeat busy skips before recording success, so queued cron events no longer appear as ok ghost runs while the main lane is still busy. Fixes #75964.
36+
- Cron: retry recurring wake-now main-session jobs through temporary heartbeat busy skips before recording success, so queued cron events no longer appear as ok ghost runs while the main lane is still busy. Fixes #75964. Thanks @kshetrajna12 and @xuruiray.
3737
- Control UI: contain the standalone iOS PWA viewport with safe-area-aware document locking, so Add-to-Home-Screen launches cannot scroll past the device bounds. Refs #76072. Thanks @kvncrw.
3838
- Agents/restart recovery: match cleaned transcript locks by exact transcript lock paths plus the canonical session fallback, so interrupted main sessions using topic-suffixed transcripts resume after gateway restart. Refs #76052. Thanks @anyech.
3939
- Agents/runtime: cache the stable system-prompt prefix and reuse prompt-report tool schema stats during dispatch prep, reducing repeated CPU work before streaming starts. Fixes #75999; supersedes #76061. Thanks @zackchiutw and @STLI69.

src/cron/service/timer.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1396,11 +1396,7 @@ async function executeMainSessionCronJob(
13961396
break;
13971397
}
13981398
if (heartbeatResult.reason === HEARTBEAT_SKIP_CRON_IN_PROGRESS) {
1399-
// A cron-in-progress skip is caused by this job's own active marker, so
1400-
// direct wake-now cannot succeed until the cron job returns and clears
1401-
// it (#50773). Other retryable busy reasons can clear while this job is
1402-
// still active, so let the bounded retry loop observe a real heartbeat
1403-
// run before recording recurring jobs as successful (#75964).
1399+
// The active cron marker blocks direct wake-now until this job returns.
14041400
state.deps.requestHeartbeatNow({
14051401
reason,
14061402
agentId: job.agentId,

0 commit comments

Comments
 (0)