remove redundant unlock check from stake policy
This commit is contained in:
parent
044fba702b
commit
6742e52030
2 changed files with 10 additions and 21 deletions
|
|
@ -123,7 +123,7 @@ specs =
|
|||
, Destroy.mkTestTree
|
||||
"Destroy locked stakes"
|
||||
Destroy.lockedStakes
|
||||
(Destroy.Validity (Just False) False)
|
||||
(Destroy.Validity (Just True) False)
|
||||
, Destroy.mkTestTree
|
||||
"not authorized by owner"
|
||||
Destroy.notAuthorized
|
||||
|
|
|
|||
|
|
@ -43,7 +43,6 @@ import Agora.Stake (
|
|||
PStakeRedeemerHandlerContext
|
||||
),
|
||||
StakeRedeemerImpl (..),
|
||||
pstakeLocked,
|
||||
)
|
||||
import Agora.Stake.Redeemers (
|
||||
pclearDelegate,
|
||||
|
|
@ -151,26 +150,16 @@ stakePolicy =
|
|||
pto $
|
||||
pfoldMap @_ @_ @(PSum PInteger)
|
||||
# plam
|
||||
( \((pfield @"resolved" #) -> txOut) -> unTermCont $ do
|
||||
txOutF <- pletFieldsC @'["value", "datum"] txOut
|
||||
|
||||
( \((pfield @"resolved" #) -> txOut) ->
|
||||
let isStakeUTxO =
|
||||
psymbolValueOf # ownSymbol # txOutF.value #== 1
|
||||
|
||||
pmatchC isStakeUTxO
|
||||
>>= \case
|
||||
PTrue -> do
|
||||
let datum =
|
||||
pfromData $
|
||||
pfromOutputDatum @(PAsData PStakeDatum)
|
||||
# txOutF.datum
|
||||
# txInfoF.datums
|
||||
|
||||
pguardC "Stake is unlocked" $
|
||||
pnot # (pstakeLocked # datum)
|
||||
|
||||
pure $ pcon $ PSum 1
|
||||
PFalse -> pure mempty
|
||||
psymbolValueOf
|
||||
# ownSymbol
|
||||
# (pfield @"value" # txOut)
|
||||
#== 1
|
||||
in pif
|
||||
isStakeUTxO
|
||||
(pcon $ PSum 1)
|
||||
mempty
|
||||
)
|
||||
# pfromData txInfoF.inputs
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue