@@ -15,11 +15,9 @@ const TICKET_HEARTBEAT_TTL_SECONDS = 30
1515export const HEARTBEAT_REFRESH_INTERVAL_MS = 10_000
1616
1717/**
18- * TTL on the queue list itself. Set on every enqueue and re-extended by the head's
19- * heartbeat while it actively waits, so a long-waiting head (whose budget can exceed
20- * this TTL for enterprise async runs) never lets the list expire out from under the
21- * waiters behind it. Prevents abandoned queues (whole workspace went silent) from
22- * sticking around forever in Redis.
18+ * TTL on the queue list itself. Set on enqueue and re-extended by the head's heartbeat,
19+ * so a long-waiting head can't let the list expire out from under the waiters behind it.
20+ * Prevents abandoned queues from sticking around forever in Redis.
2321 */
2422const QUEUE_LIST_TTL_SECONDS = 600
2523
@@ -150,12 +148,9 @@ export class HostedKeyQueue {
150148 }
151149
152150 /**
153- * Refresh the ticket's heartbeat. Called periodically by the head while it's
154- * waiting on the bucket so it doesn't get reaped as dead. Also re-extends the
155- * queue list TTL: a head whose wait outlives {@link QUEUE_LIST_TTL_SECONDS}
156- * (possible for long enterprise async budgets) would otherwise let the list
157- * expire with no new enqueue to refresh it, dropping every waiter to "missing"
158- * and collapsing FIFO ordering into concurrent bucket racing.
151+ * Refresh the ticket's heartbeat so the head isn't reaped as dead while waiting on the
152+ * bucket. Also re-extends the queue list TTL so a wait outliving {@link QUEUE_LIST_TTL_SECONDS}
153+ * doesn't let the list expire and collapse FIFO ordering.
159154 */
160155 async refreshHeartbeat (
161156 provider : string ,
0 commit comments