This also gets to the point of testing. No users cares if some active record's callback has the right logic in it. They care if they can log in and use the app.
System tests - or tests in a browser against the app - are the only way to test what a user does and observe the effects.
No/minimal system tests leads to the question of how do we know the software is working? Are we back to manual QA teams? That is a world of pain.
Longer read here: https://naildrivin5.com/blog/2022/09/06/actual-reasons-to-use-tdd.html
https://mastodon.cc/@jgarber/112559010556593050