What could be done to get better error messages for problems that happen outside contract calls?
Inside contracts things are pretty easy, since one can define their own error messages. But if I call an EOA or a contract and the call fails before that, the error message is useless: it just says "execution reverted".
My specific pain point is about calling a contract function with Ethers that doesn't accept Ethers. But there are many similar problems that probably(?) cause the same or similar vague error.
Which part of the system should get fixed? The node client? The protocol? The calling wallet?
And how could we do this fix? This is a super annoying problem and not user friendly at all.