Time: 0:00
This is a logic errors bug
The wrong operator, an inverted condition, a formula the right way round but backwards.
The in operator on a dictionary checks its keys, never its values. "asha" is a value here, so the test fails, while is_registered(users, "u1") would surprisingly return True. That is a deliberate design: key lookups are instant, and searching values means scanning everything. Use users.values() to search values. If you look names up often, the better fix is to key the dictionary by the thing you search for.
The pattern behind it: logic 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/6145d390-95f3-4ae3-ada2-7192bcac9dcd" title="Debugging challenge: Login says a registered user doesn't exist" 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/6145d390-95f3-4ae3-ada2-7192bcac9dcd">BugHunt</a></p>