Time: 0:00
This is an off-by-one errors bug
The loop that runs one time too many, the slice that drops the last item, the index that starts in the wrong place.
range() always stops before its end value, in both directions. range(n, 0, -1) counts down to 1 and stops, because 0 is the end and the end is excluded. Counting up you are used to writing range(0, n + 1) to include n; counting down, the same rule means the end must be one past the last value you want, which is -1. When a loop is missing its last value, check whether the end of the range is exclusive.
The pattern behind it: off-by-one errors.
Paste this into any web page or blog post. Visitors fix the bug right there, in their browser.
<iframe src="https://trybughunt.com/embed/b579f8f5-8889-4cd9-83ef-f4d7d8b559ec" title="Debugging challenge: Countdown never reaches zero" width="100%" height="580" loading="lazy" style="border:1px solid #d4d4d8;border-radius:12px;max-width:760px"></iframe>
<p style="font-size:14px">Debugging challenge from <a href="https://trybughunt.com/challenges/b579f8f5-8889-4cd9-83ef-f4d7d8b559ec">BugHunt</a></p>