Delay first timer heartbeat until interval elapses

This commit is contained in:
Dotta
2026-03-03 13:39:03 -06:00
parent 510a5ee1a7
commit e3f0f9981b

View File

@@ -2039,9 +2039,9 @@ export function heartbeatService(db: Db) {
if (!policy.enabled || policy.intervalSec <= 0) continue; if (!policy.enabled || policy.intervalSec <= 0) continue;
checked += 1; checked += 1;
const last = agent.lastHeartbeatAt ? new Date(agent.lastHeartbeatAt).getTime() : 0; const baseline = new Date(agent.lastHeartbeatAt ?? agent.createdAt).getTime();
const elapsedMs = now.getTime() - last; const elapsedMs = now.getTime() - baseline;
if (last && elapsedMs < policy.intervalSec * 1000) continue; if (elapsedMs < policy.intervalSec * 1000) continue;
const run = await enqueueWakeup(agent.id, { const run = await enqueueWakeup(agent.id, {
source: "timer", source: "timer",