This is not such a huge issue in practice. It is often enough to step through the debugger and see exactly what is failing.
In conjunction with scope-capture, it is trivial to run that failing code again to have a closer look, and modify it to your liking till it runs as expected.
There are also conditional restart systems for Clojure that offer much more than this.