An entry delivered to a consumer and never acknowledged stays in the pending list indefinitely, which is what makes recovery possible and what leaks if nothing sweeps it.
# everything outstanding, which on a busy stream is a lot
> XPENDING orders workers
# only what has been idle for a minute, which is actionable
> XPENDING orders workers IDLE 60000 - + 10
# and taking it over
> XCLAIM orders workers worker-2 60000 1594819200123-0
The IDLE filter makes the sweep cheap — without it you fetch everything pending and filter in the client. Sixty seconds is a threshold to choose rather than copy: too short and a slow but healthy consumer has its work stolen and done twice, which is only safe because handlers are idempotent. XAUTOCLAIM arrives in 6.2 and collapses this into one command.