{-# LANGUAGE AllowAmbiguousTypes #-}
{-# LANGUAGE ConstraintKinds #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE EmptyDataDeriving #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE UndecidableSuperClasses #-}
{-# OPTIONS_GHC -Wno-orphans #-}
module Cardano.Ledger.Dijkstra.Rules.Gov (
DijkstraGOV,
DijkstraGovPredFailure (..),
conwayToDijkstraGovPredFailure,
) where
import Cardano.Ledger.Address (RewardAccount)
import Cardano.Ledger.BaseTypes (
EpochNo (..),
Mismatch (..),
Network,
ProtVer,
Relation (..),
ShelleyBase,
StrictMaybe,
)
import Cardano.Ledger.Binary (
DecCBOR (..),
EncCBOR (..),
FromCBOR (..),
ToCBOR (..),
)
import Cardano.Ledger.Binary.Coders (
Decode (..),
Encode (..),
decode,
encode,
(!>),
(<!),
)
import Cardano.Ledger.Coin (Coin (..))
import Cardano.Ledger.Conway.Governance (
ConwayEraGov,
GovAction (..),
GovActionId (..),
GovActionPurpose (..),
GovPurposeId (..),
ProposalProcedure (..),
Proposals,
Voter (..),
)
import Cardano.Ledger.Conway.Rules (
ConwayGovEvent,
ConwayGovPredFailure,
GovEnv,
GovSignal,
conwayGovTransition,
)
import qualified Cardano.Ledger.Conway.Rules as Conway
import Cardano.Ledger.Conway.State
import Cardano.Ledger.Credential (Credential)
import Cardano.Ledger.Dijkstra.Core
import Cardano.Ledger.Dijkstra.Era (DijkstraEra, DijkstraGOV)
import Control.DeepSeq (NFData)
import Control.State.Transition.Extended (
STS (..),
)
import Data.List.NonEmpty (NonEmpty (..))
import qualified Data.Map.Strict as Map
import qualified Data.Set as Set
import GHC.Generics (Generic)
import NoThunks.Class (NoThunks (..))
data DijkstraGovPredFailure era
= GovActionsDoNotExist (NonEmpty GovActionId)
| MalformedProposal (GovAction era)
| ProposalProcedureNetworkIdMismatch RewardAccount Network
| TreasuryWithdrawalsNetworkIdMismatch (Set.Set RewardAccount) Network
| ProposalDepositIncorrect (Mismatch RelEQ Coin)
|
DisallowedVoters (NonEmpty (Voter, GovActionId))
| ConflictingCommitteeUpdate
(Set.Set (Credential ColdCommitteeRole))
| ExpirationEpochTooSmall
(Map.Map (Credential ColdCommitteeRole) EpochNo)
| InvalidPrevGovActionId (ProposalProcedure era)
| VotingOnExpiredGovAction (NonEmpty (Voter, GovActionId))
| ProposalCantFollow
(StrictMaybe (GovPurposeId 'HardForkPurpose))
(Mismatch RelGT ProtVer)
| InvalidPolicyHash
(StrictMaybe ScriptHash)
(StrictMaybe ScriptHash)
| DisallowedProposalDuringBootstrap (ProposalProcedure era)
| DisallowedVotesDuringBootstrap
(NonEmpty (Voter, GovActionId))
|
VotersDoNotExist (NonEmpty Voter)
|
ZeroTreasuryWithdrawals (GovAction era)
|
ProposalReturnAccountDoesNotExist RewardAccount
|
TreasuryWithdrawalReturnAccountsDoNotExist (NonEmpty RewardAccount)
|
UnelectedCommitteeVoters (NonEmpty (Credential HotCommitteeRole))
deriving (DijkstraGovPredFailure era -> DijkstraGovPredFailure era -> Bool
(DijkstraGovPredFailure era -> DijkstraGovPredFailure era -> Bool)
-> (DijkstraGovPredFailure era
-> DijkstraGovPredFailure era -> Bool)
-> Eq (DijkstraGovPredFailure era)
forall era.
EraPParams era =>
DijkstraGovPredFailure era -> DijkstraGovPredFailure era -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: forall era.
EraPParams era =>
DijkstraGovPredFailure era -> DijkstraGovPredFailure era -> Bool
== :: DijkstraGovPredFailure era -> DijkstraGovPredFailure era -> Bool
$c/= :: forall era.
EraPParams era =>
DijkstraGovPredFailure era -> DijkstraGovPredFailure era -> Bool
/= :: DijkstraGovPredFailure era -> DijkstraGovPredFailure era -> Bool
Eq, Int -> DijkstraGovPredFailure era -> ShowS
[DijkstraGovPredFailure era] -> ShowS
DijkstraGovPredFailure era -> String
(Int -> DijkstraGovPredFailure era -> ShowS)
-> (DijkstraGovPredFailure era -> String)
-> ([DijkstraGovPredFailure era] -> ShowS)
-> Show (DijkstraGovPredFailure era)
forall era.
EraPParams era =>
Int -> DijkstraGovPredFailure era -> ShowS
forall era. EraPParams era => [DijkstraGovPredFailure era] -> ShowS
forall era. EraPParams era => DijkstraGovPredFailure era -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: forall era.
EraPParams era =>
Int -> DijkstraGovPredFailure era -> ShowS
showsPrec :: Int -> DijkstraGovPredFailure era -> ShowS
$cshow :: forall era. EraPParams era => DijkstraGovPredFailure era -> String
show :: DijkstraGovPredFailure era -> String
$cshowList :: forall era. EraPParams era => [DijkstraGovPredFailure era] -> ShowS
showList :: [DijkstraGovPredFailure era] -> ShowS
Show, (forall x.
DijkstraGovPredFailure era -> Rep (DijkstraGovPredFailure era) x)
-> (forall x.
Rep (DijkstraGovPredFailure era) x -> DijkstraGovPredFailure era)
-> Generic (DijkstraGovPredFailure era)
forall x.
Rep (DijkstraGovPredFailure era) x -> DijkstraGovPredFailure era
forall x.
DijkstraGovPredFailure era -> Rep (DijkstraGovPredFailure era) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall era x.
Rep (DijkstraGovPredFailure era) x -> DijkstraGovPredFailure era
forall era x.
DijkstraGovPredFailure era -> Rep (DijkstraGovPredFailure era) x
$cfrom :: forall era x.
DijkstraGovPredFailure era -> Rep (DijkstraGovPredFailure era) x
from :: forall x.
DijkstraGovPredFailure era -> Rep (DijkstraGovPredFailure era) x
$cto :: forall era x.
Rep (DijkstraGovPredFailure era) x -> DijkstraGovPredFailure era
to :: forall x.
Rep (DijkstraGovPredFailure era) x -> DijkstraGovPredFailure era
Generic)
type instance EraRuleFailure "GOV" DijkstraEra = DijkstraGovPredFailure DijkstraEra
type instance EraRuleEvent "GOV" DijkstraEra = ConwayGovEvent DijkstraEra
instance InjectRuleFailure "GOV" DijkstraGovPredFailure DijkstraEra
instance InjectRuleFailure "GOV" ConwayGovPredFailure DijkstraEra where
injectFailure :: ConwayGovPredFailure DijkstraEra
-> EraRuleFailure "GOV" DijkstraEra
injectFailure = ConwayGovPredFailure DijkstraEra
-> EraRuleFailure "GOV" DijkstraEra
ConwayGovPredFailure DijkstraEra
-> DijkstraGovPredFailure DijkstraEra
forall era. ConwayGovPredFailure era -> DijkstraGovPredFailure era
conwayToDijkstraGovPredFailure
instance EraPParams era => NFData (DijkstraGovPredFailure era)
instance EraPParams era => NoThunks (DijkstraGovPredFailure era)
instance EraPParams era => DecCBOR (DijkstraGovPredFailure era) where
decCBOR :: forall s. Decoder s (DijkstraGovPredFailure era)
decCBOR = Decode (Closed Dense) (DijkstraGovPredFailure era)
-> Decoder s (DijkstraGovPredFailure era)
forall t (w :: Wrapped) s. Typeable t => Decode w t -> Decoder s t
decode (Decode (Closed Dense) (DijkstraGovPredFailure era)
-> Decoder s (DijkstraGovPredFailure era))
-> Decode (Closed Dense) (DijkstraGovPredFailure era)
-> Decoder s (DijkstraGovPredFailure era)
forall a b. (a -> b) -> a -> b
$ Text
-> (Word -> Decode Open (DijkstraGovPredFailure era))
-> Decode (Closed Dense) (DijkstraGovPredFailure era)
forall t.
Text -> (Word -> Decode Open t) -> Decode (Closed Dense) t
Summands Text
"DijkstraGovPredFailure" ((Word -> Decode Open (DijkstraGovPredFailure era))
-> Decode (Closed Dense) (DijkstraGovPredFailure era))
-> (Word -> Decode Open (DijkstraGovPredFailure era))
-> Decode (Closed Dense) (DijkstraGovPredFailure era)
forall a b. (a -> b) -> a -> b
$ \case
Word
0 -> (NonEmpty GovActionId -> DijkstraGovPredFailure era)
-> Decode Open (NonEmpty GovActionId -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD NonEmpty GovActionId -> DijkstraGovPredFailure era
forall era. NonEmpty GovActionId -> DijkstraGovPredFailure era
GovActionsDoNotExist Decode Open (NonEmpty GovActionId -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 0)) (NonEmpty GovActionId)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 0)) (NonEmpty GovActionId)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
1 -> (GovAction era -> DijkstraGovPredFailure era)
-> Decode Open (GovAction era -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD GovAction era -> DijkstraGovPredFailure era
forall era. GovAction era -> DijkstraGovPredFailure era
MalformedProposal Decode Open (GovAction era -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 1)) (GovAction era)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 1)) (GovAction era)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
2 -> (RewardAccount -> Network -> DijkstraGovPredFailure era)
-> Decode
Open (RewardAccount -> Network -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD RewardAccount -> Network -> DijkstraGovPredFailure era
forall era. RewardAccount -> Network -> DijkstraGovPredFailure era
ProposalProcedureNetworkIdMismatch Decode
Open (RewardAccount -> Network -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 3)) RewardAccount
-> Decode Open (Network -> DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 3)) RewardAccount
forall t (w :: Wrapped). DecCBOR t => Decode w t
From Decode Open (Network -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 2)) Network
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 2)) Network
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
3 -> (Set RewardAccount -> Network -> DijkstraGovPredFailure era)
-> Decode
Open (Set RewardAccount -> Network -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD Set RewardAccount -> Network -> DijkstraGovPredFailure era
forall era.
Set RewardAccount -> Network -> DijkstraGovPredFailure era
TreasuryWithdrawalsNetworkIdMismatch Decode
Open (Set RewardAccount -> Network -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 5)) (Set RewardAccount)
-> Decode Open (Network -> DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 5)) (Set RewardAccount)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From Decode Open (Network -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 4)) Network
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 4)) Network
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
4 -> (Mismatch RelEQ Coin -> DijkstraGovPredFailure era)
-> Decode Open (Mismatch RelEQ Coin -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD Mismatch RelEQ Coin -> DijkstraGovPredFailure era
forall era. Mismatch RelEQ Coin -> DijkstraGovPredFailure era
ProposalDepositIncorrect Decode Open (Mismatch RelEQ Coin -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 6)) (Mismatch RelEQ Coin)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 6)) (Mismatch RelEQ Coin)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
5 -> (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Decode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
forall era.
NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
DisallowedVoters Decode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 7)) (NonEmpty (Voter, GovActionId))
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 7)) (NonEmpty (Voter, GovActionId))
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
6 -> (Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era)
-> Decode
Open
(Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era
forall era.
Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era
ConflictingCommitteeUpdate Decode
Open
(Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 8)) (Set (Credential ColdCommitteeRole))
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 8)) (Set (Credential ColdCommitteeRole))
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
7 -> (Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era)
-> Decode
Open
(Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era
forall era.
Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era
ExpirationEpochTooSmall Decode
Open
(Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era)
-> Decode
(Closed (ZonkAny 9)) (Map (Credential ColdCommitteeRole) EpochNo)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode
(Closed (ZonkAny 9)) (Map (Credential ColdCommitteeRole) EpochNo)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
8 -> (ProposalProcedure era -> DijkstraGovPredFailure era)
-> Decode
Open (ProposalProcedure era -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD ProposalProcedure era -> DijkstraGovPredFailure era
forall era. ProposalProcedure era -> DijkstraGovPredFailure era
InvalidPrevGovActionId Decode Open (ProposalProcedure era -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 10)) (ProposalProcedure era)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 10)) (ProposalProcedure era)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
9 -> (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Decode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
forall era.
NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
VotingOnExpiredGovAction Decode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 11)) (NonEmpty (Voter, GovActionId))
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 11)) (NonEmpty (Voter, GovActionId))
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
10 -> (StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
-> Decode
Open
(StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era
forall era.
StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era
ProposalCantFollow Decode
Open
(StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
-> Decode
(Closed (ZonkAny 13)) (StrictMaybe (GovPurposeId 'HardForkPurpose))
-> Decode
Open (Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode
(Closed (ZonkAny 13)) (StrictMaybe (GovPurposeId 'HardForkPurpose))
forall t (w :: Wrapped). DecCBOR t => Decode w t
From Decode Open (Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 12)) (Mismatch RelGT ProtVer)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 12)) (Mismatch RelGT ProtVer)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
11 -> (StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
-> Decode
Open
(StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era
forall era.
StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era
InvalidPolicyHash Decode
Open
(StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 15)) (StrictMaybe ScriptHash)
-> Decode
Open (StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 15)) (StrictMaybe ScriptHash)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From Decode Open (StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 14)) (StrictMaybe ScriptHash)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 14)) (StrictMaybe ScriptHash)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
12 -> (ProposalProcedure era -> DijkstraGovPredFailure era)
-> Decode
Open (ProposalProcedure era -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD ProposalProcedure era -> DijkstraGovPredFailure era
forall era. ProposalProcedure era -> DijkstraGovPredFailure era
DisallowedProposalDuringBootstrap Decode Open (ProposalProcedure era -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 16)) (ProposalProcedure era)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 16)) (ProposalProcedure era)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
13 -> (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Decode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
forall era.
NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
DisallowedVotesDuringBootstrap Decode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 17)) (NonEmpty (Voter, GovActionId))
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 17)) (NonEmpty (Voter, GovActionId))
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
14 -> (NonEmpty Voter -> DijkstraGovPredFailure era)
-> Decode Open (NonEmpty Voter -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD NonEmpty Voter -> DijkstraGovPredFailure era
forall era. NonEmpty Voter -> DijkstraGovPredFailure era
VotersDoNotExist Decode Open (NonEmpty Voter -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 18)) (NonEmpty Voter)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 18)) (NonEmpty Voter)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
15 -> (GovAction era -> DijkstraGovPredFailure era)
-> Decode Open (GovAction era -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD GovAction era -> DijkstraGovPredFailure era
forall era. GovAction era -> DijkstraGovPredFailure era
ZeroTreasuryWithdrawals Decode Open (GovAction era -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 19)) (GovAction era)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 19)) (GovAction era)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
16 -> (RewardAccount -> DijkstraGovPredFailure era)
-> Decode Open (RewardAccount -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD RewardAccount -> DijkstraGovPredFailure era
forall era. RewardAccount -> DijkstraGovPredFailure era
ProposalReturnAccountDoesNotExist Decode Open (RewardAccount -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 20)) RewardAccount
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 20)) RewardAccount
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
17 -> (NonEmpty RewardAccount -> DijkstraGovPredFailure era)
-> Decode
Open (NonEmpty RewardAccount -> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD NonEmpty RewardAccount -> DijkstraGovPredFailure era
forall era. NonEmpty RewardAccount -> DijkstraGovPredFailure era
TreasuryWithdrawalReturnAccountsDoNotExist Decode Open (NonEmpty RewardAccount -> DijkstraGovPredFailure era)
-> Decode (Closed (ZonkAny 21)) (NonEmpty RewardAccount)
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode (Closed (ZonkAny 21)) (NonEmpty RewardAccount)
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
18 -> (NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era)
-> Decode
Open
(NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era)
forall t. t -> Decode Open t
SumD NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era
forall era.
NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era
UnelectedCommitteeVoters Decode
Open
(NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era)
-> Decode
(Closed (ZonkAny 22)) (NonEmpty (Credential HotCommitteeRole))
-> Decode Open (DijkstraGovPredFailure era)
forall a (w1 :: Wrapped) t (w :: Density).
Typeable a =>
Decode w1 (a -> t) -> Decode (Closed w) a -> Decode w1 t
<! Decode
(Closed (ZonkAny 22)) (NonEmpty (Credential HotCommitteeRole))
forall t (w :: Wrapped). DecCBOR t => Decode w t
From
Word
k -> Word -> Decode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) t. Word -> Decode w t
Invalid Word
k
instance EraPParams era => EncCBOR (DijkstraGovPredFailure era) where
encCBOR :: DijkstraGovPredFailure era -> Encoding
encCBOR =
Encode Open (DijkstraGovPredFailure era) -> Encoding
forall (w :: Wrapped) t. Encode w t -> Encoding
encode (Encode Open (DijkstraGovPredFailure era) -> Encoding)
-> (DijkstraGovPredFailure era
-> Encode Open (DijkstraGovPredFailure era))
-> DijkstraGovPredFailure era
-> Encoding
forall b c a. (b -> c) -> (a -> b) -> a -> c
. \case
GovActionsDoNotExist NonEmpty GovActionId
gid ->
(NonEmpty GovActionId -> DijkstraGovPredFailure era)
-> Word
-> Encode Open (NonEmpty GovActionId -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum NonEmpty GovActionId -> DijkstraGovPredFailure era
forall era. NonEmpty GovActionId -> DijkstraGovPredFailure era
GovActionsDoNotExist Word
0 Encode Open (NonEmpty GovActionId -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (NonEmpty GovActionId)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> NonEmpty GovActionId
-> Encode (Closed Dense) (NonEmpty GovActionId)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To NonEmpty GovActionId
gid
MalformedProposal GovAction era
ga ->
(GovAction era -> DijkstraGovPredFailure era)
-> Word
-> Encode Open (GovAction era -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum GovAction era -> DijkstraGovPredFailure era
forall era. GovAction era -> DijkstraGovPredFailure era
MalformedProposal Word
1 Encode Open (GovAction era -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (GovAction era)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> GovAction era -> Encode (Closed Dense) (GovAction era)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To GovAction era
ga
ProposalProcedureNetworkIdMismatch RewardAccount
acnt Network
nid ->
(RewardAccount -> Network -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open (RewardAccount -> Network -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum RewardAccount -> Network -> DijkstraGovPredFailure era
forall era. RewardAccount -> Network -> DijkstraGovPredFailure era
ProposalProcedureNetworkIdMismatch Word
2 Encode
Open (RewardAccount -> Network -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) RewardAccount
-> Encode Open (Network -> DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> RewardAccount -> Encode (Closed Dense) RewardAccount
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To RewardAccount
acnt Encode Open (Network -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) Network
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> Network -> Encode (Closed Dense) Network
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To Network
nid
TreasuryWithdrawalsNetworkIdMismatch Set RewardAccount
acnts Network
nid ->
(Set RewardAccount -> Network -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open (Set RewardAccount -> Network -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum Set RewardAccount -> Network -> DijkstraGovPredFailure era
forall era.
Set RewardAccount -> Network -> DijkstraGovPredFailure era
TreasuryWithdrawalsNetworkIdMismatch Word
3 Encode
Open (Set RewardAccount -> Network -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (Set RewardAccount)
-> Encode Open (Network -> DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> Set RewardAccount -> Encode (Closed Dense) (Set RewardAccount)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To Set RewardAccount
acnts Encode Open (Network -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) Network
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> Network -> Encode (Closed Dense) Network
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To Network
nid
ProposalDepositIncorrect Mismatch RelEQ Coin
mm ->
(Mismatch RelEQ Coin -> DijkstraGovPredFailure era)
-> Word
-> Encode Open (Mismatch RelEQ Coin -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum Mismatch RelEQ Coin -> DijkstraGovPredFailure era
forall era. Mismatch RelEQ Coin -> DijkstraGovPredFailure era
ProposalDepositIncorrect Word
4 Encode Open (Mismatch RelEQ Coin -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (Mismatch RelEQ Coin)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> Mismatch RelEQ Coin -> Encode (Closed Dense) (Mismatch RelEQ Coin)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To Mismatch RelEQ Coin
mm
DisallowedVoters NonEmpty (Voter, GovActionId)
votes ->
(NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
forall era.
NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
DisallowedVoters Word
5 Encode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (NonEmpty (Voter, GovActionId))
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> NonEmpty (Voter, GovActionId)
-> Encode (Closed Dense) (NonEmpty (Voter, GovActionId))
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To NonEmpty (Voter, GovActionId)
votes
ConflictingCommitteeUpdate Set (Credential ColdCommitteeRole)
members ->
(Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open
(Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era
forall era.
Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era
ConflictingCommitteeUpdate Word
6 Encode
Open
(Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (Set (Credential ColdCommitteeRole))
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> Set (Credential ColdCommitteeRole)
-> Encode (Closed Dense) (Set (Credential ColdCommitteeRole))
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To Set (Credential ColdCommitteeRole)
members
ExpirationEpochTooSmall Map (Credential ColdCommitteeRole) EpochNo
members ->
(Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era)
-> Word
-> Encode
Open
(Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era
forall era.
Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era
ExpirationEpochTooSmall Word
7 Encode
Open
(Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era)
-> Encode
(Closed Dense) (Map (Credential ColdCommitteeRole) EpochNo)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> Map (Credential ColdCommitteeRole) EpochNo
-> Encode
(Closed Dense) (Map (Credential ColdCommitteeRole) EpochNo)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To Map (Credential ColdCommitteeRole) EpochNo
members
InvalidPrevGovActionId ProposalProcedure era
proposal ->
(ProposalProcedure era -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open (ProposalProcedure era -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum ProposalProcedure era -> DijkstraGovPredFailure era
forall era. ProposalProcedure era -> DijkstraGovPredFailure era
InvalidPrevGovActionId Word
8 Encode Open (ProposalProcedure era -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (ProposalProcedure era)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> ProposalProcedure era
-> Encode (Closed Dense) (ProposalProcedure era)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To ProposalProcedure era
proposal
VotingOnExpiredGovAction NonEmpty (Voter, GovActionId)
ga ->
(NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
forall era.
NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
VotingOnExpiredGovAction Word
9 Encode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (NonEmpty (Voter, GovActionId))
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> NonEmpty (Voter, GovActionId)
-> Encode (Closed Dense) (NonEmpty (Voter, GovActionId))
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To NonEmpty (Voter, GovActionId)
ga
ProposalCantFollow StrictMaybe (GovPurposeId 'HardForkPurpose)
prevgaid Mismatch RelGT ProtVer
mm ->
(StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open
(StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era
forall era.
StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era
ProposalCantFollow Word
10 Encode
Open
(StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
-> Encode
(Closed Dense) (StrictMaybe (GovPurposeId 'HardForkPurpose))
-> Encode
Open (Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Encode
(Closed Dense) (StrictMaybe (GovPurposeId 'HardForkPurpose))
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To StrictMaybe (GovPurposeId 'HardForkPurpose)
prevgaid Encode Open (Mismatch RelGT ProtVer -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (Mismatch RelGT ProtVer)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> Mismatch RelGT ProtVer
-> Encode (Closed Dense) (Mismatch RelGT ProtVer)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To Mismatch RelGT ProtVer
mm
InvalidPolicyHash StrictMaybe ScriptHash
got StrictMaybe ScriptHash
expected ->
(StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open
(StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era
forall era.
StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era
InvalidPolicyHash Word
11 Encode
Open
(StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (StrictMaybe ScriptHash)
-> Encode
Open (StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> StrictMaybe ScriptHash
-> Encode (Closed Dense) (StrictMaybe ScriptHash)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To StrictMaybe ScriptHash
got Encode Open (StrictMaybe ScriptHash -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (StrictMaybe ScriptHash)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> StrictMaybe ScriptHash
-> Encode (Closed Dense) (StrictMaybe ScriptHash)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To StrictMaybe ScriptHash
expected
DisallowedProposalDuringBootstrap ProposalProcedure era
proposal ->
(ProposalProcedure era -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open (ProposalProcedure era -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum ProposalProcedure era -> DijkstraGovPredFailure era
forall era. ProposalProcedure era -> DijkstraGovPredFailure era
DisallowedProposalDuringBootstrap Word
12 Encode Open (ProposalProcedure era -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (ProposalProcedure era)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> ProposalProcedure era
-> Encode (Closed Dense) (ProposalProcedure era)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To ProposalProcedure era
proposal
DisallowedVotesDuringBootstrap NonEmpty (Voter, GovActionId)
votes ->
(NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
forall era.
NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
DisallowedVotesDuringBootstrap Word
13 Encode
Open (NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (NonEmpty (Voter, GovActionId))
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> NonEmpty (Voter, GovActionId)
-> Encode (Closed Dense) (NonEmpty (Voter, GovActionId))
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To NonEmpty (Voter, GovActionId)
votes
VotersDoNotExist NonEmpty Voter
voters ->
(NonEmpty Voter -> DijkstraGovPredFailure era)
-> Word
-> Encode Open (NonEmpty Voter -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum NonEmpty Voter -> DijkstraGovPredFailure era
forall era. NonEmpty Voter -> DijkstraGovPredFailure era
VotersDoNotExist Word
14 Encode Open (NonEmpty Voter -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (NonEmpty Voter)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> NonEmpty Voter -> Encode (Closed Dense) (NonEmpty Voter)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To NonEmpty Voter
voters
ZeroTreasuryWithdrawals GovAction era
ga ->
(GovAction era -> DijkstraGovPredFailure era)
-> Word
-> Encode Open (GovAction era -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum GovAction era -> DijkstraGovPredFailure era
forall era. GovAction era -> DijkstraGovPredFailure era
ZeroTreasuryWithdrawals Word
15 Encode Open (GovAction era -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (GovAction era)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> GovAction era -> Encode (Closed Dense) (GovAction era)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To GovAction era
ga
ProposalReturnAccountDoesNotExist RewardAccount
returnAccount ->
(RewardAccount -> DijkstraGovPredFailure era)
-> Word
-> Encode Open (RewardAccount -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum RewardAccount -> DijkstraGovPredFailure era
forall era. RewardAccount -> DijkstraGovPredFailure era
ProposalReturnAccountDoesNotExist Word
16 Encode Open (RewardAccount -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) RewardAccount
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> RewardAccount -> Encode (Closed Dense) RewardAccount
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To RewardAccount
returnAccount
TreasuryWithdrawalReturnAccountsDoNotExist NonEmpty RewardAccount
accounts ->
(NonEmpty RewardAccount -> DijkstraGovPredFailure era)
-> Word
-> Encode
Open (NonEmpty RewardAccount -> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum NonEmpty RewardAccount -> DijkstraGovPredFailure era
forall era. NonEmpty RewardAccount -> DijkstraGovPredFailure era
TreasuryWithdrawalReturnAccountsDoNotExist Word
17 Encode Open (NonEmpty RewardAccount -> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (NonEmpty RewardAccount)
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> NonEmpty RewardAccount
-> Encode (Closed Dense) (NonEmpty RewardAccount)
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To NonEmpty RewardAccount
accounts
UnelectedCommitteeVoters NonEmpty (Credential HotCommitteeRole)
committee ->
(NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era)
-> Word
-> Encode
Open
(NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era)
forall t. t -> Word -> Encode Open t
Sum NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era
forall era.
NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era
UnelectedCommitteeVoters Word
18 Encode
Open
(NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era)
-> Encode (Closed Dense) (NonEmpty (Credential HotCommitteeRole))
-> Encode Open (DijkstraGovPredFailure era)
forall (w :: Wrapped) a t (r :: Density).
Encode w (a -> t) -> Encode (Closed r) a -> Encode w t
!> NonEmpty (Credential HotCommitteeRole)
-> Encode (Closed Dense) (NonEmpty (Credential HotCommitteeRole))
forall t. EncCBOR t => t -> Encode (Closed Dense) t
To NonEmpty (Credential HotCommitteeRole)
committee
instance EraPParams era => ToCBOR (DijkstraGovPredFailure era) where
toCBOR :: DijkstraGovPredFailure era -> Encoding
toCBOR = forall era t. (Era era, EncCBOR t) => t -> Encoding
toEraCBOR @era
instance EraPParams era => FromCBOR (DijkstraGovPredFailure era) where
fromCBOR :: forall s. Decoder s (DijkstraGovPredFailure era)
fromCBOR = forall era t s. (Era era, DecCBOR t) => Decoder s t
fromEraCBOR @era
instance
( ConwayEraTxCert era
, ConwayEraPParams era
, ConwayEraGov era
, EraRule "GOV" era ~ DijkstraGOV era
, InjectRuleFailure "GOV" ConwayGovPredFailure era
, EraCertState era
, ConwayEraCertState era
) =>
STS (DijkstraGOV era)
where
type State (DijkstraGOV era) = Proposals era
type Signal (DijkstraGOV era) = GovSignal era
type Environment (DijkstraGOV era) = GovEnv era
type BaseM (DijkstraGOV era) = ShelleyBase
type PredicateFailure (DijkstraGOV era) = DijkstraGovPredFailure era
type Event (DijkstraGOV era) = ConwayGovEvent era
initialRules :: [InitialRule (DijkstraGOV era)]
initialRules = []
transitionRules :: [TransitionRule (DijkstraGOV era)]
transitionRules = [forall era.
(ConwayEraTxCert era, ConwayEraPParams era, ConwayEraGov era,
STS (EraRule "GOV" era),
Event (EraRule "GOV" era) ~ ConwayGovEvent era,
Signal (EraRule "GOV" era) ~ GovSignal era,
BaseM (EraRule "GOV" era) ~ ShelleyBase,
Environment (EraRule "GOV" era) ~ GovEnv era,
State (EraRule "GOV" era) ~ Proposals era,
InjectRuleFailure "GOV" ConwayGovPredFailure era,
ConwayEraCertState era) =>
TransitionRule (EraRule "GOV" era)
conwayGovTransition @era]
conwayToDijkstraGovPredFailure :: forall era. ConwayGovPredFailure era -> DijkstraGovPredFailure era
conwayToDijkstraGovPredFailure :: forall era. ConwayGovPredFailure era -> DijkstraGovPredFailure era
conwayToDijkstraGovPredFailure = \case
Conway.GovActionsDoNotExist NonEmpty GovActionId
gaId -> NonEmpty GovActionId -> DijkstraGovPredFailure era
forall era. NonEmpty GovActionId -> DijkstraGovPredFailure era
GovActionsDoNotExist NonEmpty GovActionId
gaId
Conway.MalformedProposal GovAction era
ga -> GovAction era -> DijkstraGovPredFailure era
forall era. GovAction era -> DijkstraGovPredFailure era
MalformedProposal GovAction era
ga
Conway.ProposalProcedureNetworkIdMismatch RewardAccount
ras Network
n -> RewardAccount -> Network -> DijkstraGovPredFailure era
forall era. RewardAccount -> Network -> DijkstraGovPredFailure era
ProposalProcedureNetworkIdMismatch RewardAccount
ras Network
n
Conway.TreasuryWithdrawalsNetworkIdMismatch Set RewardAccount
ras Network
n -> Set RewardAccount -> Network -> DijkstraGovPredFailure era
forall era.
Set RewardAccount -> Network -> DijkstraGovPredFailure era
TreasuryWithdrawalsNetworkIdMismatch Set RewardAccount
ras Network
n
Conway.ProposalDepositIncorrect Mismatch RelEQ Coin
mm -> Mismatch RelEQ Coin -> DijkstraGovPredFailure era
forall era. Mismatch RelEQ Coin -> DijkstraGovPredFailure era
ProposalDepositIncorrect Mismatch RelEQ Coin
mm
Conway.DisallowedVoters NonEmpty (Voter, GovActionId)
vs -> NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
forall era.
NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
DisallowedVoters NonEmpty (Voter, GovActionId)
vs
Conway.ConflictingCommitteeUpdate Set (Credential ColdCommitteeRole)
ccrs -> Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era
forall era.
Set (Credential ColdCommitteeRole) -> DijkstraGovPredFailure era
ConflictingCommitteeUpdate Set (Credential ColdCommitteeRole)
ccrs
Conway.ExpirationEpochTooSmall Map (Credential ColdCommitteeRole) EpochNo
ccrs -> Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era
forall era.
Map (Credential ColdCommitteeRole) EpochNo
-> DijkstraGovPredFailure era
ExpirationEpochTooSmall Map (Credential ColdCommitteeRole) EpochNo
ccrs
Conway.InvalidPrevGovActionId ProposalProcedure era
pp -> ProposalProcedure era -> DijkstraGovPredFailure era
forall era. ProposalProcedure era -> DijkstraGovPredFailure era
InvalidPrevGovActionId ProposalProcedure era
pp
Conway.VotingOnExpiredGovAction NonEmpty (Voter, GovActionId)
ga -> NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
forall era.
NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
VotingOnExpiredGovAction NonEmpty (Voter, GovActionId)
ga
Conway.ProposalCantFollow StrictMaybe (GovPurposeId 'HardForkPurpose)
gpId Mismatch RelGT ProtVer
mm -> StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era
forall era.
StrictMaybe (GovPurposeId 'HardForkPurpose)
-> Mismatch RelGT ProtVer -> DijkstraGovPredFailure era
ProposalCantFollow StrictMaybe (GovPurposeId 'HardForkPurpose)
gpId Mismatch RelGT ProtVer
mm
Conway.InvalidPolicyHash StrictMaybe ScriptHash
sh1 StrictMaybe ScriptHash
sh2 -> StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era
forall era.
StrictMaybe ScriptHash
-> StrictMaybe ScriptHash -> DijkstraGovPredFailure era
InvalidPolicyHash StrictMaybe ScriptHash
sh1 StrictMaybe ScriptHash
sh2
Conway.DisallowedProposalDuringBootstrap ProposalProcedure era
pp -> ProposalProcedure era -> DijkstraGovPredFailure era
forall era. ProposalProcedure era -> DijkstraGovPredFailure era
DisallowedProposalDuringBootstrap ProposalProcedure era
pp
Conway.DisallowedVotesDuringBootstrap NonEmpty (Voter, GovActionId)
vs -> NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
forall era.
NonEmpty (Voter, GovActionId) -> DijkstraGovPredFailure era
DisallowedVotesDuringBootstrap NonEmpty (Voter, GovActionId)
vs
Conway.VotersDoNotExist NonEmpty Voter
vs -> NonEmpty Voter -> DijkstraGovPredFailure era
forall era. NonEmpty Voter -> DijkstraGovPredFailure era
VotersDoNotExist NonEmpty Voter
vs
Conway.ZeroTreasuryWithdrawals GovAction era
ga -> GovAction era -> DijkstraGovPredFailure era
forall era. GovAction era -> DijkstraGovPredFailure era
ZeroTreasuryWithdrawals GovAction era
ga
Conway.ProposalReturnAccountDoesNotExist RewardAccount
ra -> RewardAccount -> DijkstraGovPredFailure era
forall era. RewardAccount -> DijkstraGovPredFailure era
ProposalReturnAccountDoesNotExist RewardAccount
ra
Conway.TreasuryWithdrawalReturnAccountsDoNotExist NonEmpty RewardAccount
ra -> NonEmpty RewardAccount -> DijkstraGovPredFailure era
forall era. NonEmpty RewardAccount -> DijkstraGovPredFailure era
TreasuryWithdrawalReturnAccountsDoNotExist NonEmpty RewardAccount
ra
Conway.UnelectedCommitteeVoters NonEmpty (Credential HotCommitteeRole)
vs -> NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era
forall era.
NonEmpty (Credential HotCommitteeRole)
-> DijkstraGovPredFailure era
UnelectedCommitteeVoters NonEmpty (Credential HotCommitteeRole)
vs