InstantStake
#4906
Draft
InstantStake
#4906
IOG Hydra / ci/hydra-build:x86_64-darwin.checks.cardano-ledger-shelley-test:test:cardano-ledger-shelley-test
failed
Feb 22, 2025 in 26m 43s
Build failed
1 failed steps
Details
Failed Steps
Step 1
Derivation
/nix/store/w42r6a0yq135b2gdrmswsfxq8qxsjaam-cardano-ledger-shelley-test-test-cardano-ledger-shelley-test-1.6.0.0-check.drv
Log
Running phase: unpackPhase
unpacking source archive /nix/store/4c8mfcvrpadxjzhzf6nkz1hj96h5swpf-source-eras-shelley-test-suite-test-cardano-ledger-shelley-test-root
source root is source-eras-shelley-test-suite-test-cardano-ledger-shelley-test-root
Running phase: patchPhase
Running phase: buildPhase
/nix/store/h3cnb3ysfahv3wi8j889ppcb8fan827g-cardano-ledger-shelley-test-test-cardano-ledger-shelley-test-1.6.0.0/bin:
patching script interpreter paths in /private/tmp/nix-build-cardano-ledger-shelley-test-test-cardano-ledger-shelley-test-1.6.0.0-check.drv-0/tmp.TwabyWtxP7/bin
Shelley tests
Deposit Invariants
Non negative deposits: OK (8.80s)
+++ OK, passed 100 tests.
Deposits = KeyDeposits + PoolDeposits: OK (8.69s)
+++ OK, passed 100 tests.
Reward domain = Deposit domain: OK (8.02s)
+++ OK, passed 100 tests.
Chain and Ledger traces cover the relevant cases: OK (99.49s)
+++ OK, passed 100 tests:
99% at least 10% of TxOuts are scripts
99% there is at least 1 Delegation certificate for every 10 transactions
99% there is at least 1 Genesis Delegation certificate for every 20 transactions
99% there is at least 1 RegKey certificate for every 10 transactions
99% there is at least 1 RegPool certificate for every 10 transactions
99% there is at least 1 certificate for every 2 transactions
98% at least 1 in 10 transactions have a reward withdrawal
98% at least 1 in 20 transactions have metadata
98% at least 1 in 20 transactions have non-trivial protocol param updates
97% at least 10% of `ShelleyTxCertDeleg` certificates have script credentials
97% there is at least 1 DeRegKey certificate for every 20 transactions
91% there is at least 1 RetirePool certificate for every 10 transactions
76% there is at least 1 MIR certificate (spending Reserves) for every 60 transactions
74% there is at least 1 MIR certificate (spending Treasury) for every 60 transactions
49% at least 5 epochs in a trace, 20% of the time
total amount of Ada is preserved (Chain): OK (550.35s)
+++ OK, passed 100 tests.
Only valid CHAIN STS signals are generated: OK (104.84s)
+++ OK, passed 100 tests; 1 discarded.
WitVKey does not brake containers due to invalid Ord: OK
+++ OK, passed 100 tests.
Reward Tests
Sum of rewards is bounded by reward pot: OK (29.48s)
+++ OK, passed 500 tests.
compare with reference impl, no provenance, v3: OK (248.67s)
+++ OK, passed 100 tests.
compare with reference impl, no provenance, v7: OK (234.59s)
+++ OK, passed 100 tests.
compare with reference impl, with provenance: OK (256.20s)
+++ OK, passed 100 tests.
delta events mirror reward updates: OK (23.35s)
+++ OK, passed 10 tests.
Serialisation tests
Address golden tests
MockCrypto golden tests
keyHash: OK
scriptHash: OK
ptr: OK
addrBaseKK: OK
addrBaseSK: OK
addrBaseKS: OK
addrBaseSS: OK
addrPtrK: OK
addrPtrS: OK
addrEnterpriseK: OK
addrEnterpriseS: OK
rewardAcntK: OK
rewardAcntS: OK
ShelleyCrypto golden tests
addrEnterpriseK for network id = 0: OK
addrBaseKK for network id = 0: OK
addrPtrK for network id = 0: OK
addrEnterpriseK for network id = 1: OK
addrBaseKK for network id = 1: OK
addrPtrK for network id = 1: OK
rewardAcntK: OK
bootstrapAddr for network id = 1: OK
CBOR Serialization Tests (Encoding)
golden_serialize_list (Byron): OK
golden_serialize_list (Shelley): OK
golden_serialize_set (Byron): OK
golden_serialize_set (Shelley): OK
golden_serialize_map: OK
golden_serialize_coin: OK
golden_serialize_rational: OK
golden_serialize_slot: OK
golden_serialize_neutral_nonce: OK
golden_serialize_nonce: OK
golden_serialize_key_hash: OK
golden_serialize_credential_key_hash: OK
golden_serialize_txin: OK
golden_serialize_txout: OK
with and without Annotator
golden_serialize_vkey_witnesses: OK
golden_serialize_vkey_witnesses: OK
golden_serialize_script_hash_to_scripts: OK
golden_serialize_withdrawal: OK
golden_serialize_withdrawal: OK
golden_serialize_register_stake_reference: OK
golden_serialize_deregister_stake_reference: OK
golden_serialize_stake_delegation: OK
golden_serialize_register_pool: OK
golden_serialize_retire_pool: OK
golden_serialize_genesis_delegation: OK
golden_serialize_mir: OK
golden_serialize_pparams_update_key_deposit_only: OK
golden_serialize_pparams_update_all: OK
golden_serialize_full_update: OK
with and without Annotator
golden_serialize_txbody: OK
golden_serialize_txbody: OK
with and without Annotator
golden_serialize_txbody_partial: OK
golden_serialize_txbody_partial: OK
with and without Annotator
golden_serialize_txbody_full: OK
golden_serialize_txbody_full: OK
with and without Annotator
golden_serialize_tx_min: OK
golden_serialize_tx_min: OK
with and without Annotator
golden_serialize_tx_full: OK
golden_serialize_tx_full: OK
golden_serialize_block_header_body: OK
golden_serialize_operational_cert: OK
with and without Annotator
golden_serialize_block_header: OK
golden_serialize_block_header: OK
with and without Annotator
golden_serialize_empty_block: OK
golden_serialize_empty_block: OK
with and without Annotator
golden_serialize_rich_block: OK
golden_serialize_rich_block: OK
ledger state golden test: OK
Shelley Genesis golden tests
ShelleyGenesis JSON golden test: OK
ShelleyGenesis CBOR golden test: OK
Serialisation roundtrip Property Tests
Block (Annotator): OK (10.24s)
+++ OK, passed 100 tests.
Block: OK (8.39s)
+++ OK, passed 100 tests.
LEDGER Predicate Failures: OK (1.68s)
+++ OK, passed 100 tests.
Core Types
Header (Annotator): OK (0.74s)
+++ OK, passed 100 tests.
Header: OK (0.75s)
+++ OK, passed 100 tests.
Block Header Hash: OK
+++ OK, passed 100 tests.
Protocol State: OK (0.05s)
+++ OK, passed 100 tests.
Shelley Genesis
Genesis roundtrip: OK (1.96s)
+++ OK, passed 100 tests.
Coin roundtrip: OK
+++ OK, passed 100 tests.
Address roundtrip: OK
+++ OK, passed 100 tests.
Genesis KeyHash : OK
+++ OK, passed 100 tests.
GenDelegPair roundtrip: OK
+++ OK, passed 100 tests.
CHAIN examples
empty block: OK
pool lifetime
initial registrations: OK
delegate stake and create reward update: OK
new epoch changes: OK
second reward update: OK
nonempty pool distr: OK
decentralized block: OK
prelude to the first nontrivial rewards: OK
create a nontrivial rewards: OK
apply a nontrivial rewards: OK
drain reward account and deregister: OK
stage stake pool retirement: OK
reap stake pool: OK
two pools
create non-aggregated pulser: OK
non-aggregated pulser is correct: OK
aggregated pulser is correct: OK
create aggregated pulser: OK
create legacy aggregatedRewards: OK
create new aggregatedRewards: OK
pool rereg
initial pool registration: OK
early epoch re-registration: OK
late epoch re-registration: OK
adopt new pool parameters: OK
protocol parameter updates
get 3/7 votes for a pparam update: OK
get 5/7 votes for a pparam update: OK
votes for the next epoch: OK
processes a pparam update: OK
genesis delegation
stage genesis key delegation: OK
adopt genesis key delegation: OK
move inst rewards
create MIR cert - reserves: OK
create MIR cert - treasury: OK
insufficient MIR witnesses, reserves: OK
insufficient MIR witnesses, treasury: OK
insufficient MIR funds, reserves: OK
insufficient MIR funds, treasury: OK
end of epoch after MIR - reserves: OK
end of epoch after MIR - treasury: OK
apply MIR - reserves: FAIL
test/Test/Cardano/Ledger/Shelley/Examples/Mir.hs:333:
Check trace with (.->>) fails
ChainState {
chainNes = NewEpochState {
nesEL = EpochNo 1,
nesBprev = BlocksMade (Map.fromList []),
nesBcur = BlocksMade (Map.fromList []),
nesEs = EpochState {
esAccountState = AccountState {
asTreasury = Coin 1000,
asReserves = Coin 33999999999998900},
esLState = LedgerState {
lsUTxOState = UTxOState {
utxosUtxo = UTxO
(Map.fromList
[
_×_
(TxIn
(TxId
(SafeHash
"03170a2e7597b7b7e3d84c05391d139a62b157e78786d8c082f29dcf4c111314"))
(TxIx 1))
(ShelleyTxOut
(Addr
Testnet
(KeyHashObj
(KeyHash
"733aea10df2a2bb1d3019a7337b240ad64a174c919fc034fb372fdc9"))
(StakeRefBase
(KeyHashObj
(KeyHash
"7ec0f833987c8ce3843573b1cd0d139f83e7efe18d81c473e4231405"))))
(Coin 1000000000000000)),
_×_
(TxIn
(TxId
(SafeHash
"68670df66f55d0ba03208bbc40960a1af19631132d29b43cc12a069ad4ac484a"))
(TxIx 0))
(ShelleyTxOut
(Addr
Testnet
(KeyHashObj
(KeyHash
"e9686d801fa32aeb4390c2f2a53bb0314a9c744c46a2cada394a371f"))
(StakeRefBase
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))))
(Coin 9999999999999992))]),
utxosDeposited = Coin 7,
utxosFees = Coin 1,
utxosGovState = ShelleyGovState {
sgsCurProposals = ProposedPPUpdates (Map.fromList []),
sgsFutureProposals = ProposedPPUpdates (Map.fromList []),
sgsCurPParams = ShelleyPParams {
sppMinFeeA = Coin 0,
sppMinFeeB = Coin 0,
sppMaxBBSize = 50000,
sppMaxTxSize = 10000,
sppMaxBHSize = 10000,
sppKeyDeposit = Coin 7,
sppPoolDeposit = Coin 250,
sppEMax = EpochInterval 10000,
sppNOpt = 100,
sppA0 = _%_ 0 1,
sppRho = _%_ 21 10000,
sppTau = _%_ 1 5,
sppD = _%_ 1 2,
sppExtraEntropy = NeutralNonce,
sppProtocolVersion = ProtVer {pvMajor = Version 2, pvMinor = 0},
sppMinUTxOValue = Coin 100,
sppMinPoolCost = Coin 0},
sgsPrevPParams = ShelleyPParams {
sppMinFeeA = Coin 0,
sppMinFeeB = Coin 0,
sppMaxBBSize = 50000,
sppMaxTxSize = 10000,
sppMaxBHSize = 10000,
sppKeyDeposit = Coin 7,
sppPoolDeposit = Coin 250,
sppEMax = EpochInterval 10000,
sppNOpt = 100,
sppA0 = _%_ 0 1,
sppRho = _%_ 21 10000,
sppTau = _%_ 1 5,
sppD = _%_ 1 2,
sppExtraEntropy = NeutralNonce,
sppProtocolVersion = ProtVer {pvMajor = Version 2, pvMinor = 0},
sppMinUTxOValue = Coin 100,
sppMinPoolCost = Coin 0},
sgsFuturePParams = PotentialPParamsUpdate Nothing},
utxosInstantStake = ShelleyInstantStake {
sisCredentialStake = Map.fromList
[
_×_
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))
(Coin 9999999999999992),
_×_
(KeyHashObj
(KeyHash
"7ec0f833987c8ce3843573b1cd0d139f83e7efe18d81c473e4231405"))
(Coin 1000000000000000)],
sisPtrStake = Map.fromList []},
utxosDonation = Coin 0},
lsCertState = ShelleyCertState {
shelleyCertVState = VState {
vsDReps = Map.fromList [],
vsCommitteeState = CommitteeState (Map.fromList []),
vsNumDormantEpochs = EpochNo 0},
shelleyCertPState = PState {
psStakePoolParams = Map.fromList [],
psFutureStakePoolParams = Map.fromList [],
psRetiring = Map.fromList [],
psDeposits = Map.fromList []},
shelleyCertDState = DState {
dsUnified = UMap {
umElems = Map.fromList
[
_×_
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))
(TFFEE
RDPair {rdReward = Coin 100, rdDeposit = Coin 7}
(Set.fromList [Ptr 10 (TxIx 0) (CertIx 1)]))],
umPtrs = Map.fromList
[
_×_
(Ptr 10 (TxIx 0) (CertIx 1))
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))]},
dsFutureGenDelegs = Map.fromList [],
dsGenDelegs = GenDelegs
(Map.fromList
[
_×_
(KeyHash
"0a6225d0d6ffe9fe1b02aff1e4adfe64b3da0a5c0ddaf296070a2452")
GenDelegPair {
genDelegKeyHash = KeyHash
"467a66200ffc8ac8a81f745072c9777a72b719c9f5700c910daa8708",
genDelegVrfHash = VRFVerKeyHash
"6c80bdb6b32ec9c928343647d8db55ee2ced499ceaf1c4217dcd0af9787facfa"},
_×_
(KeyHash
"1d8c963c8e59d5aad4d67bdfab426b5406cecf673f42d513d6f41ef9")
GenDelegPair {
genDelegKeyHash = KeyHash
"fd1f2340be2773c348f6af2aaaf222e44f4214d40acd8f6095e60193",
genDelegVrfHash = VRFVerKeyHash
"dfec18688a231f71641d9a3cba9fd8ed50945f540a71398d54ab142a4d7de22e"},
_×_
(KeyHash
"4518f73085f875053f5e0cea73a16908c0dd5c5c8de99f59a26b244d")
GenDelegPair {
genDelegKeyHash = KeyHash
"d2f63f5bd5fd024047ace2c0ce29b9f1a1f25a0ed51167c6e5201f24",
genDelegVrfHash = VRFVerKeyHash
"aff8611f9d1a12059a5427aeeff5c7c7d4d16a999a653b8c47c5bed094d9b738"},
_×_
(KeyHash
"67532b4ccbda57904308a4d84cee40c3f06bbdbba3809f509262a182")
GenDelegPair {
genDelegKeyHash = KeyHash
"9e2824776c1c532271d73ee36c7a4035f47c24a93d6eeeb61d477ec2",
genDelegVrfHash = VRFVerKeyHash
"10ceb136a9fc5d3ee9b2182f8cc3718e0832e442285a0bd33e7d88393e99908e"},
_×_
(KeyHash
"6e293605f5e3d13825837aa4258711997b9f1a6c3975a724b3b97582")
GenDelegPair {
genDelegKeyHash = KeyHash
"5e7c1fc4bda44efdbb0c90d3b30b8552fdc967a5763b79ced56db579",
genDelegVrfHash = VRFVerKeyHash
"1af70896db71282ad090c1ee61c021079f70b924928a5e463edf5667c6d88a5d"},
_×_
(KeyHash
"96bad2f4017c4d03cb2abf46f1c00c13639d4e5c69173612af86b1ce")
GenDelegPair {
genDelegKeyHash = KeyHash
"78e051bf88ab63cfd6a9e030a72a7652d36390ee905e265777caab32",
genDelegVrfHash = VRFVerKeyHash
"db231499d1fdd8ed6ffba950d1efd8677b8d2ed6f586254fd875230c9f78b7df"},
_×_
(KeyHash
"b3d9329a57721a7c8341733b197cf87bca93e1e4eaf41077b652fc8a")
GenDelegPair {
genDelegKeyHash = KeyHash
"b48819abbdcd67b3f7045dc2ad6ef54f8c99705e4259570dba4ed6fe",
genDelegVrfHash = VRFVerKeyHash
"b292e74b1b284645349f8c926cf195c3485d09c33fb95866c30fa904ec088aa5"}]),
dsIRewards = InstantaneousRewards {
iRReserves = Map.fromList [],
iRTreasury = Map.fromList [],
deltaReserves = DeltaCoin 0,
deltaTreasury = DeltaCoin 0}}}},
esSnapshots = SnapShots {
ssStakeMark = SnapShot {
ssStake = Map.fromList
[
+_×_
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))
(Coin 9999999999999992)],
ssDelegations = Map.fromList [],
ssPoolParams = Map.fromList []},
ssStakeMarkPoolDistr = PoolDistr {
unPoolDistr = Map.fromList [],
pdTotalActiveStake = Coin -1 +9999999999999992},
ssStakeSet = SnapShot {
ssStake = Map.fromList [],
ssDelegations = Map.fromList [],
ssPoolParams = Map.fromList []},
ssStakeGo = SnapShot {
ssStake = Map.fromList [],
ssDelegations = Map.fromList [],
ssPoolParams = Map.fromList []},
ssFee = Coin 1},
esNonMyopic = NonMyopic {
likelihoodsNM = Map.fromList [],
rewardPotNM = Coin 0}},
nesRu = SNothing,
nesPd = PoolDistr {
unPoolDistr = Map.fromList [],
pdTotalActiveStake = Coin 0},
stashedAVVMAddresses = UTxO (Map.fromList [])},
chainOCertIssue = Map.fromList
[
_×_
(KeyHash "467a66200ffc8ac8a81f745072c9777a72b719c9f5700c910daa8708")
0,
_×_
(KeyHash "5e7c1fc4bda44efdbb0c90d3b30b8552fdc967a5763b79ced56db579")
0,
_×_
(KeyHash "78e051bf88ab63cfd6a9e030a72a7652d36390ee905e265777caab32")
0,
_×_
(KeyHash "9e2824776c1c532271d73ee36c7a4035f47c24a93d6eeeb61d477ec2")
0,
_×_
(KeyHash "b48819abbdcd67b3f7045dc2ad6ef54f8c99705e4259570dba4ed6fe")
0,
_×_
(KeyHash "d2f63f5bd5fd024047ace2c0ce29b9f1a1f25a0ed51167c6e5201f24")
0,
_×_
(KeyHash "fd1f2340be2773c348f6af2aaaf222e44f4214d40acd8f6095e60193")
0],
chainEpochNonce = Nonce
"848f78ab80f57d31d0b9b02279eca1b0d1fcb2e1ec0f581df251b9f63f75e7ba",
chainEvolvingNonce = Nonce
"597937b2f6f3293948367cb692402891e050d2a6af2c831153577afafbaee309",
chainCandidateNonce = Nonce
"597937b2f6f3293948367cb692402891e050d2a6af2c831153577afafbaee309",
chainPrevEpochNonce = Nonce
"aa3bb5645e71e17b9857f26fbb5ff7ee4167b628fb37c7f6145c5c88657e5059",
chainLastAppliedBlock = At
LastAppliedBlock {
labBlockNo = BlockNo 3,
labSlotNo = SlotNo 110,
labHash =
`HashHeader {unHashHeader = "3bc474d6e7f722f99f059fca56e25bb79ef2e01dd10ec09438e8e924a135c555"}`}}
Use -p '/apply MIR - reserves/' to rerun this test only.
apply MIR - treasury: FAIL
test/Test/Cardano/Ledger/Shelley/Examples/Mir.hs:334:
Check trace with (.->>) fails
ChainState {
chainNes = NewEpochState {
nesEL = EpochNo 1,
nesBprev = BlocksMade (Map.fromList []),
nesBcur = BlocksMade (Map.fromList []),
nesEs = EpochState {
esAccountState = AccountState {
asTreasury = Coin 900,
asReserves = Coin 33999999999999000},
esLState = LedgerState {
lsUTxOState = UTxOState {
utxosUtxo = UTxO
(Map.fromList
[
_×_
(TxIn
(TxId
(SafeHash
"03170a2e7597b7b7e3d84c05391d139a62b157e78786d8c082f29dcf4c111314"))
(TxIx 1))
(ShelleyTxOut
(Addr
Testnet
(KeyHashObj
(KeyHash
"733aea10df2a2bb1d3019a7337b240ad64a174c919fc034fb372fdc9"))
(StakeRefBase
(KeyHashObj
(KeyHash
"7ec0f833987c8ce3843573b1cd0d139f83e7efe18d81c473e4231405"))))
(Coin 1000000000000000)),
_×_
(TxIn
(TxId
(SafeHash
"e95bc61e91a2b2352d72c1e417057e16562d65071a14634df4d484e5daec8716"))
(TxIx 0))
(ShelleyTxOut
(Addr
Testnet
(KeyHashObj
(KeyHash
"e9686d801fa32aeb4390c2f2a53bb0314a9c744c46a2cada394a371f"))
(StakeRefBase
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))))
(Coin 9999999999999992))]),
utxosDeposited = Coin 7,
utxosFees = Coin 1,
utxosGovState = ShelleyGovState {
sgsCurProposals = ProposedPPUpdates (Map.fromList []),
sgsFutureProposals = ProposedPPUpdates (Map.fromList []),
sgsCurPParams = ShelleyPParams {
sppMinFeeA = Coin 0,
sppMinFeeB = Coin 0,
sppMaxBBSize = 50000,
sppMaxTxSize = 10000,
sppMaxBHSize = 10000,
sppKeyDeposit = Coin 7,
sppPoolDeposit = Coin 250,
sppEMax = EpochInterval 10000,
sppNOpt = 100,
sppA0 = _%_ 0 1,
sppRho = _%_ 21 10000,
sppTau = _%_ 1 5,
sppD = _%_ 1 2,
sppExtraEntropy = NeutralNonce,
sppProtocolVersion = ProtVer {pvMajor = Version 2, pvMinor = 0},
sppMinUTxOValue = Coin 100,
sppMinPoolCost = Coin 0},
sgsPrevPParams = ShelleyPParams {
sppMinFeeA = Coin 0,
sppMinFeeB = Coin 0,
sppMaxBBSize = 50000,
sppMaxTxSize = 10000,
sppMaxBHSize = 10000,
sppKeyDeposit = Coin 7,
sppPoolDeposit = Coin 250,
sppEMax = EpochInterval 10000,
sppNOpt = 100,
sppA0 = _%_ 0 1,
sppRho = _%_ 21 10000,
sppTau = _%_ 1 5,
sppD = _%_ 1 2,
sppExtraEntropy = NeutralNonce,
sppProtocolVersion = ProtVer {pvMajor = Version 2, pvMinor = 0},
sppMinUTxOValue = Coin 100,
sppMinPoolCost = Coin 0},
sgsFuturePParams = PotentialPParamsUpdate Nothing},
utxosInstantStake = ShelleyInstantStake {
sisCredentialStake = Map.fromList
[
_×_
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))
(Coin 9999999999999992),
_×_
(KeyHashObj
(KeyHash
"7ec0f833987c8ce3843573b1cd0d139f83e7efe18d81c473e4231405"))
(Coin 1000000000000000)],
sisPtrStake = Map.fromList []},
utxosDonation = Coin 0},
lsCertState = ShelleyCertState {
shelleyCertVState = VState {
vsDReps = Map.fromList [],
vsCommitteeState = CommitteeState (Map.fromList []),
vsNumDormantEpochs = EpochNo 0},
shelleyCertPState = PState {
psStakePoolParams = Map.fromList [],
psFutureStakePoolParams = Map.fromList [],
psRetiring = Map.fromList [],
psDeposits = Map.fromList []},
shelleyCertDState = DState {
dsUnified = UMap {
umElems = Map.fromList
[
_×_
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))
(TFFEE
RDPair {rdReward = Coin 100, rdDeposit = Coin 7}
(Set.fromList [Ptr 10 (TxIx 0) (CertIx 1)]))],
umPtrs = Map.fromList
[
_×_
(Ptr 10 (TxIx 0) (CertIx 1))
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))]},
dsFutureGenDelegs = Map.fromList [],
dsGenDelegs = GenDelegs
(Map.fromList
[
_×_
(KeyHash
"0a6225d0d6ffe9fe1b02aff1e4adfe64b3da0a5c0ddaf296070a2452")
GenDelegPair {
genDelegKeyHash = KeyHash
"467a66200ffc8ac8a81f745072c9777a72b719c9f5700c910daa8708",
genDelegVrfHash = VRFVerKeyHash
"6c80bdb6b32ec9c928343647d8db55ee2ced499ceaf1c4217dcd0af9787facfa"},
_×_
(KeyHash
"1d8c963c8e59d5aad4d67bdfab426b5406cecf673f42d513d6f41ef9")
GenDelegPair {
genDelegKeyHash = KeyHash
"fd1f2340be2773c348f6af2aaaf222e44f4214d40acd8f6095e60193",
genDelegVrfHash = VRFVerKeyHash
"dfec18688a231f71641d9a3cba9fd8ed50945f540a71398d54ab142a4d7de22e"},
_×_
(KeyHash
"4518f73085f875053f5e0cea73a16908c0dd5c5c8de99f59a26b244d")
GenDelegPair {
genDelegKeyHash = KeyHash
"d2f63f5bd5fd024047ace2c0ce29b9f1a1f25a0ed51167c6e5201f24",
genDelegVrfHash = VRFVerKeyHash
"aff8611f9d1a12059a5427aeeff5c7c7d4d16a999a653b8c47c5bed094d9b738"},
_×_
(KeyHash
"67532b4ccbda57904308a4d84cee40c3f06bbdbba3809f509262a182")
GenDelegPair {
genDelegKeyHash = KeyHash
"9e2824776c1c532271d73ee36c7a4035f47c24a93d6eeeb61d477ec2",
genDelegVrfHash = VRFVerKeyHash
"10ceb136a9fc5d3ee9b2182f8cc3718e0832e442285a0bd33e7d88393e99908e"},
_×_
(KeyHash
"6e293605f5e3d13825837aa4258711997b9f1a6c3975a724b3b97582")
GenDelegPair {
genDelegKeyHash = KeyHash
"5e7c1fc4bda44efdbb0c90d3b30b8552fdc967a5763b79ced56db579",
genDelegVrfHash = VRFVerKeyHash
"1af70896db71282ad090c1ee61c021079f70b924928a5e463edf5667c6d88a5d"},
_×_
(KeyHash
"96bad2f4017c4d03cb2abf46f1c00c13639d4e5c69173612af86b1ce")
GenDelegPair {
genDelegKeyHash = KeyHash
"78e051bf88ab63cfd6a9e030a72a7652d36390ee905e265777caab32",
genDelegVrfHash = VRFVerKeyHash
"db231499d1fdd8ed6ffba950d1efd8677b8d2ed6f586254fd875230c9f78b7df"},
_×_
(KeyHash
"b3d9329a57721a7c8341733b197cf87bca93e1e4eaf41077b652fc8a")
GenDelegPair {
genDelegKeyHash = KeyHash
"b48819abbdcd67b3f7045dc2ad6ef54f8c99705e4259570dba4ed6fe",
genDelegVrfHash = VRFVerKeyHash
"b292e74b1b284645349f8c926cf195c3485d09c33fb95866c30fa904ec088aa5"}]),
dsIRewards = InstantaneousRewards {
iRReserves = Map.fromList [],
iRTreasury = Map.fromList [],
deltaReserves = DeltaCoin 0,
deltaTreasury = DeltaCoin 0}}}},
esSnapshots = SnapShots {
ssStakeMark = SnapShot {
ssStake = Map.fromList
[
+_×_
(KeyHashObj
(KeyHash
"4e88cc2d27c364aaf90648a87dfb95f8ee103ba67fa1f12f5e86c42a"))
(Coin 9999999999999992)],
ssDelegations = Map.fromList [],
ssPoolParams = Map.fromList []},
ssStakeMarkPoolDistr = PoolDistr {
unPoolDistr = Map.fromList [],
pdTotalActiveStake = Coin -1 +9999999999999992},
ssStakeSet = SnapShot {
ssStake = Map.fromList [],
ssDelegations = Map.fromList [],
ssPoolParams = Map.fromList []},
ssStakeGo = SnapShot {
ssStake = Map.fromList [],
ssDelegations = Map.fromList [],
ssPoolParams = Map.fromList []},
ssFee = Coin 1},
esNonMyopic = NonMyopic {
likelihoodsNM = Map.fromList [],
rewardPotNM = Coin 0}},
nesRu = SNothing,
nesPd = PoolDistr {
unPoolDistr = Map.fromList [],
pdTotalActiveStake = Coin 0},
stashedAVVMAddresses = UTxO (Map.fromList [])},
chainOCertIssue = Map.fromList
[
_×_
(KeyHash "467a66200ffc8ac8a81f745072c9777a72b719c9f5700c910daa8708")
0,
_×_
(KeyHash "5e7c1fc4bda44efdbb0c90d3b30b8552fdc967a5763b79ced56db579")
0,
_×_
(KeyHash "78e051bf88ab63cfd6a9e030a72a7652d36390ee905e265777caab32")
0,
_×_
(KeyHash "9e2824776c1c532271d73ee36c7a4035f47c24a93d6eeeb61d477ec2")
0,
_×_
(KeyHash "b48819abbdcd67b3f7045dc2ad6ef54f8c99705e4259570dba4ed6fe")
0,
_×_
(KeyHash "d2f63f5bd5fd024047ace2c0ce29b9f1a1f25a0ed51167c6e5201f24")
0,
_×_
(KeyHash "fd1f2340be2773c348f6af2aaaf222e44f4214d40acd8f6095e60193")
0],
chainEpochNonce = Nonce
"848f78ab80f57d31d0b9b02279eca1b0d1fcb2e1ec0f581df251b9f63f75e7ba",
chainEvolvingNonce = Nonce
"597937b2f6f3293948367cb692402891e050d2a6af2c831153577afafbaee309",
chainCandidateNonce = Nonce
"597937b2f6f3293948367cb692402891e050d2a6af2c831153577afafbaee309",
chainPrevEpochNonce = Nonce
"edd7d8c5163207bbc67857820b93761b36847e8cdad16e71d0bcc263754c3968",
chainLastAppliedBlock = At
LastAppliedBlock {
labBlockNo = BlockNo 3,
labSlotNo = SlotNo 110,
labHash =
`HashHeader {unHashHeader = "89ca408821eea42ffb259b2ab891e5082c761495028aafa62391cd11a4a691d7"}`}}
Use -p '/apply MIR - treasury/' to rerun this test only.
MIR cert transfers
MIR cert embargos
embargo reserves to treasury transfer: OK
embargo treasury to reserves transfer: OK
embargo decrements from reserves: OK
embargo decrements from treasury: OK
MIR cert alonzo
increment reserves too much: OK
increment treasury too much: OK
increment reserves too much with delta: OK
increment treasury too much with delta: OK
negative balance in reserves mapping: OK
negative balance in treasury mapping: OK
transfer reserves to treasury: OK
transfer treasury to reserves: OK
insufficient transfer reserves to treasury: OK
insufficient transfer treasury to reserves: OK
increment reserves mapping: OK
increment treasury mapping: OK
Network IDs
Incorrect Network ID is allowed pre-Alonzo: OK
Incorrect Network ID is NOT allowed in Alonzo: OK
Correct Network ID is allowed pre-Alonzo: OK
Correct Network ID is allowed in Alonzo: OK
MultiSig Examples
Alice uses SingleSig script: OK
FAIL: Alice doesn't sign in multi-sig: OK
Everybody signs in multi-sig: OK
Alice || Bob, Alice signs: OK
Alice || Bob, Bob signs: OK
Alice && Bob, both sign: OK
FAIL: Alice && Bob, Alice signs: OK
FAIL: Alice && Bob, Bob signs: OK
Alice && Bob || Carl, Alice && Bob sign: OK
Alice && Bob || Carl, Carl signs: OK
Alice && Bob || Carl && Daria, Alice && Bob sign: OK
Alice && Bob || Carl && Daria, Carl && Daria sign: OK
Alice && Bob || Carl || Daria, Alice && Bob sign: OK
Alice && Bob || Carl || Daria, Carl signs: OK
Alice && Bob || Carl || Daria, Daria signs: OK
two scripts: Alice Or Bob / alice And Bob Or Carl: OK
FAIL: two scripts: Alice Or Bob / alice And Bob Or Carl: OK
script and Key: Alice And Bob and alicePay: OK
FAIL: script and Key: Alice And Bob and alicePay: OK
script and Key: Alice Or Bob and alicePay, only Alice: OK
script and Key: Alice And Bob Or Carl and alicePay, Alice and Carl sign: OK
withdraw from script locked account, same script: OK
FAIL: withdraw from script locked account: OK
withdraw from script locked account, different script: OK
FAIL: withdraw from script locked account, signed, missing script: OK
TICKF properties: OK (3.03s)
+++ OK, passed 100 tests; 45 discarded.
Unit Tests
Tests with invalid transactions in ledger
Invalid Ledger - Alice tries to spend a nonexistent input: OK
Invalid Ledger - Alice does not include a witness: OK
Invalid Ledger - Alice tries to spend Bob's UTxO: OK
Invalid Ledger - Alice provides witness of wrong UTxO: OK
Invalid Ledger - Alice's transaction does not consume input: OK
Invalid Ledger - Alice's fee is too small: OK
Invalid Ledger - Alice's transaction has expired: OK
Invalid Ledger - Invalid witnesses: OK
Invalid Ledger - No withdrawal witness: OK
Invalid Ledger - Incorrect withdrawal amount: OK
Invalid Ledger - OutputTooSmall: OK
Invalid Ledger - PoolCostTooSmall: OK
Invalid Ledger - ProducedOverMaxWord64: OK
Test the protocol parameters.
VRF checks when the activeSlotCoeff is one: OK
Fee Tests
simple utxo: OK
multiple utxo: OK
register stake key: OK
delegate stake key: OK
deregister stake key: OK
register stake pool: OK
retire stake pool: OK
auxiliaryData: OK
multisig: OK
reward withdrawal: OK
estimate transaction fee: OK
Test checkLeaderVal calculation
With a stake of 0, cannot lead: OK
+++ OK, passed 100 tests.
With a maximal VRF, cannot lead: OK (0.01s)
+++ OK, passed 100 tests.
checkLeaderVal succeeds iff l < 1 - (1-f)^r: OK (0.01s)
+++ OK, passed 100 tests.
We are elected as leader proportional to our stake: OK (0.01s)
+++ OK, passed 1 test.
SafeHash
StandardCrypto
short==long: OK
newtype==underlyingtype: OK
2 out of 211 tests failed (1599.47s)
Loading