From 075992bcbb92da7ea389201ec05a2617d87ae5f2 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Tue, 18 Jan 2022 11:47:31 +0100 Subject: [PATCH] Try some on-chain debugging, which does not work but almost. --- hydra-plutus/src/Hydra/Contract/Head.hs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/hydra-plutus/src/Hydra/Contract/Head.hs b/hydra-plutus/src/Hydra/Contract/Head.hs index 700a084b674..f6c2841b7c8 100644 --- a/hydra-plutus/src/Hydra/Contract/Head.hs +++ b/hydra-plutus/src/Hydra/Contract/Head.hs @@ -118,8 +118,20 @@ headValidator _ commitAddress oldState input context = traceIfFalse "committed value is not preserved in head" $ headOutputValue == collectedValue <> headInputValue + checkOutputDatumError = + "unexpected output datum in collectCom, expected utxo hash: " + `appendByteString` utxoHash + `appendByteString` ", actual utxo hash: " + `appendByteString` actualUtxoHash + + actualUtxoHash = fromMaybe "couldn't find actual hash?" $ do + headOutputDatumHash <- txOutDatumHash headOutput + actualDatum <- findDatum headOutputDatumHash txInfo + Open{utxoHash = actual} <- fromBuiltinData (getDatum actualDatum) + pure actual + checkOutputDatum = - traceIfFalse "unexpected output datum in collectCom" $ + traceIfFalse (decodeUtf8 checkOutputDatumError) $ fromMaybe False $ do headOutputDatumHash <- txOutDatumHash headOutput actualDatum <- findDatum headOutputDatumHash txInfo