Open JaredCorduan opened 2 years ago
I agree that this is a problem. We've bumped into issues / warts / frustrations related to this when implementing testing tools for Plutus contracts. For example over at https://github.com/input-output-hk/plutus/pull/4023.
As for solutions I don't know what's best but the information that's needed by downstream code is at least:
We unfortunately cannot run Plutus scripts in verbose mode inside the node, but there will soon be two ways to see the verbose logs.
show e
that is inside the Text
, there is debug information in the ByteString
. I believe our plan is to make using the debug information to retrieve the verbose logs available from the CLI. This is just a matter of running debugPutus with the information from the predicate failure.
It would be helpful to downstream libraries if the plutus script predicate returned the actual plutus error instead of a string:
https://github.com/input-output-hk/cardano-ledger-specs/blob/8ef01f28e31789503879f1391b230aa1e50c6ab2/eras/alonzo/impl/src/Cardano/Ledger/Alonzo/TxInfo.hs#L632