I found this "best practice" curious to read: > The standard net/http server violates this advice and recovers panics from request handlers. Consensus among experienced Go engineers is that this was a historical mistake. If you sample server logs from application servers in other languages, it is common to find large stacktraces that are left unhandled. Avoid this pitfall in your servers. I don't think I've ever seen…
There is one advantage to not having a top-level catch: if it fails in testing, it's very obvious immediately.
Though I do agree with you - and this can be done with a feature flag for dev/prod servers.