The tl;dr of this long read https://naildrivin5.com/blog/2022/09/06/actual-reasons-to-use-tdd.html is
• As devs, software we ship should do what we expect it do
• Thus, you have to check it
• Manually checking does not scale
• Automation helps scale checking
• The automation must be tested
• Best way to test the automation by watching it fail and thus prove it checks what you think it checks
• Writing tests first is a great way to watch the automation fail. Probably the best way
• This is all a tool in a toolbox, not a moral code.