Thanks for bringing out those points.
Yeah, I will agree, if code is difficult to debug, it's quite the pain. If the code is only readable, but not debuggable, that's a problem. Readable code does make things easier to debug and maintain though. So I think the goal should be all three.
I'm not against closures, but when having to read code with lots of nested closures, it can get quite cumbersome.
You do bring up a very good point about third party libraries. Do you find that Combine is easier to debug than RxSwift?