Merge pull request #233 from Liqwid-Labs/emiflake/fix-datum-lookup-bug

fix datum lookup bug affecting inputs and outputs
This commit is contained in:
SeungheonOh 2023-03-14 20:24:30 -05:00 committed by GitHub
commit f08bd64565

View file

@ -50,7 +50,7 @@ import Plutarch.Api.V2 (PDatum, PMintingPolicy, PScriptHash, PScriptPurpose (PMi
import Plutarch.Api.V2.Tx (POutputDatum (..)) import Plutarch.Api.V2.Tx (POutputDatum (..))
import Plutarch.Extra.AssetClass (PAssetClassData, passetClass) import Plutarch.Extra.AssetClass (PAssetClassData, passetClass)
import Plutarch.Extra.Field (pletAll, pletAllC) import Plutarch.Extra.Field (pletAll, pletAllC)
import Plutarch.Extra.Maybe (passertPJust, pfromJust, pjust, pmaybeData, pnothing) import Plutarch.Extra.Maybe (passertPJust, pfromMaybe, pjust, pmaybeData, pnothing)
import Plutarch.Extra.Ord (POrdering (..), pcompareBy, pfromOrd, psort) import Plutarch.Extra.Ord (POrdering (..), pcompareBy, pfromOrd, psort)
import Plutarch.Extra.Record (mkRecordConstr, (.&), (.=)) import Plutarch.Extra.Record (mkRecordConstr, (.&), (.=))
import Plutarch.Extra.ScriptContext ( import Plutarch.Extra.ScriptContext (
@ -342,12 +342,12 @@ governorValidator =
plam $ plam $
flip (pletFields @'["value", "datum", "address"]) $ \txOutF -> flip (pletFields @'["value", "datum", "address"]) $ \txOutF ->
let isProposalUTxO = let isProposalUTxO =
(pfromJust #$ pscriptHashFromAddress # pfromData txOutF.address) passetClassValueOf
#== pfromData proposalScriptHash
#&& passetClassValueOf
# pstClass # pstClass
# txOutF.value # txOutF.value
#== 1 #== 1
#&& (pfromMaybe # pconstant "" #$ pscriptHashFromAddress # pfromData txOutF.address)
#== pfromData proposalScriptHash
proposalDatum = proposalDatum =
ptrace "Resolve proposal output datum" $ ptrace "Resolve proposal output datum" $