Skip to content

Commit ab157de

Browse files
committed
Make transValidityInterval depend on eras.
...instead of protocol versions. Implement transValidityInterval specific to Conway. Remove: - hardforkConwayTranslateUpperBoundForPlutusScripts - protocol version argument to transValidityInterval Move transVITimeUpperBoundIsOpen test to Conway.TxInfoSpec
1 parent 12e4531 commit ab157de

File tree

8 files changed

+92
-57
lines changed

8 files changed

+92
-57
lines changed

eras/alonzo/impl/src/Cardano/Ledger/Alonzo/Era.hs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,8 @@ module Cardano.Ledger.Alonzo.Era (
1414
AlonzoUTXOW,
1515
AlonzoBBODY,
1616
AlonzoLEDGER,
17-
hardforkConwayTranslateUpperBoundForPlutusScripts,
1817
) where
1918

20-
import Cardano.Ledger.BaseTypes (ProtVer (pvMajor), natVersion)
2119
import Cardano.Ledger.Internal.Era (AlonzoEra)
2220
import Cardano.Ledger.Mary (MaryEra, MaryValue)
2321
import Cardano.Ledger.Shelley.Core
@@ -93,8 +91,3 @@ type instance EraRule "TICK" AlonzoEra = ShelleyTICK AlonzoEra
9391
type instance EraRule "TICKF" AlonzoEra = ShelleyTICKF AlonzoEra
9492

9593
type instance EraRule "UPEC" AlonzoEra = ShelleyUPEC AlonzoEra
96-
97-
-- | Starting with protocol version 9, we translate the upper bound of validity
98-
-- interval correctly for Plutus scripts.
99-
hardforkConwayTranslateUpperBoundForPlutusScripts :: ProtVer -> Bool
100-
hardforkConwayTranslateUpperBoundForPlutusScripts pv = pvMajor pv > natVersion @8

eras/alonzo/impl/src/Cardano/Ledger/Alonzo/Plutus/TxInfo.hs

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ module Cardano.Ledger.Alonzo.Plutus.TxInfo (
4646

4747
import Cardano.Crypto.Hash.Class (hashToBytes)
4848
import Cardano.Ledger.Alonzo.Core
49-
import Cardano.Ledger.Alonzo.Era (AlonzoEra, hardforkConwayTranslateUpperBoundForPlutusScripts)
49+
import Cardano.Ledger.Alonzo.Era (AlonzoEra)
5050
import Cardano.Ledger.Alonzo.Plutus.Context
5151
import Cardano.Ledger.Alonzo.Scripts (AlonzoPlutusPurpose (..), PlutusScript (..), toAsItem)
5252
import Cardano.Ledger.Alonzo.TxWits (unTxDatsL)
@@ -103,7 +103,7 @@ instance EraPlutusTxInfo 'PlutusV1 AlonzoEra where
103103

104104
toPlutusTxInfo proxy LedgerTxInfo {ltiProtVer, ltiEpochInfo, ltiSystemStart, ltiUTxO, ltiTx} = do
105105
timeRange <-
106-
transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
106+
transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
107107
txInsMaybes <- forM (Set.toList (txBody ^. inputsTxBodyL)) $ \txIn -> do
108108
txOut <- transLookupTxOut ltiUTxO txIn
109109
pure $ PV1.TxInInfo (transTxIn txIn) <$> transTxOut txOut
@@ -218,23 +218,14 @@ transValidityInterval ::
218218
forall proxy era a.
219219
Inject (AlonzoContextError era) a =>
220220
proxy era ->
221-
ProtVer ->
222221
EpochInfo (Either Text) ->
223222
SystemStart ->
224223
ValidityInterval ->
225224
Either a PV1.POSIXTimeRange
226-
transValidityInterval _ protVer epochInfo systemStart = \case
225+
transValidityInterval _ epochInfo systemStart = \case
227226
ValidityInterval SNothing SNothing -> pure PV1.always
228227
ValidityInterval (SJust i) SNothing -> PV1.from <$> transSlotToPOSIXTime i
229-
ValidityInterval SNothing (SJust i) -> do
230-
t <- transSlotToPOSIXTime i
231-
pure $
232-
if hardforkConwayTranslateUpperBoundForPlutusScripts protVer
233-
then
234-
PV1.Interval
235-
(PV1.LowerBound PV1.NegInf True)
236-
(PV1.strictUpperBound t)
237-
else PV1.to t
228+
ValidityInterval SNothing (SJust i) -> PV1.to <$> transSlotToPOSIXTime i
238229
ValidityInterval (SJust i) (SJust j) -> do
239230
t1 <- transSlotToPOSIXTime i
240231
t2 <- transSlotToPOSIXTime j

eras/alonzo/impl/test/Test/Cardano/Ledger/Alonzo/TxInfoSpec.hs

Lines changed: 2 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import Cardano.Ledger.Alonzo.Plutus.Context (
1818
import Cardano.Ledger.Alonzo.Plutus.TxInfo (AlonzoContextError (..), transValidityInterval)
1919
import Cardano.Ledger.Alonzo.Tx (AlonzoTx (..))
2020
import Cardano.Ledger.Alonzo.TxBody (AlonzoTxOut (..), TxBody (..))
21-
import Cardano.Ledger.BaseTypes (Network (..), StrictMaybe (..), natVersion)
21+
import Cardano.Ledger.BaseTypes (Network (..), StrictMaybe (..))
2222
import qualified Cardano.Ledger.BaseTypes as BT (Inject (..), ProtVer (..))
2323
import Cardano.Ledger.Coin (Coin (..))
2424
import Cardano.Ledger.Credential (StakeReference (..))
@@ -115,8 +115,7 @@ transVITimeUpperBoundIsClosed ::
115115
Expectation
116116
transVITimeUpperBoundIsClosed = do
117117
let interval = ValidityInterval SNothing (SJust (SlotNo 40))
118-
pv = BT.ProtVer (eraProtVerLow @era) 0
119-
case transValidityInterval (Proxy @era) pv ei ss interval of
118+
case transValidityInterval (Proxy @era) ei ss interval of
120119
Left (e :: ContextError era) ->
121120
expectationFailure $ "no translation error was expected, but got: " <> show e
122121
Right t ->
@@ -125,26 +124,6 @@ transVITimeUpperBoundIsClosed = do
125124
(PV1.LowerBound PV1.NegInf True)
126125
(PV1.UpperBound (PV1.Finite (PV1.POSIXTime 40000)) True)
127126

128-
-- | The test checks that since protocol version 9 'transVITime' works correctly,
129-
-- by returning open upper bound of the validaty interval.
130-
transVITimeUpperBoundIsOpen ::
131-
forall era.
132-
( EraPlutusContext era
133-
, BT.Inject (AlonzoContextError era) (ContextError era)
134-
) =>
135-
Expectation
136-
transVITimeUpperBoundIsOpen = do
137-
let interval = ValidityInterval SNothing (SJust (SlotNo 40))
138-
pv = BT.ProtVer (natVersion @9) 0
139-
case transValidityInterval (Proxy @era) pv ei ss interval of
140-
Left (e :: ContextError era) ->
141-
expectationFailure $ "no translation error was expected, but got: " <> show e
142-
Right t ->
143-
t
144-
`shouldBe` PV1.Interval
145-
(PV1.LowerBound PV1.NegInf True)
146-
(PV1.UpperBound (PV1.Finite (PV1.POSIXTime 40000)) False)
147-
148127
spec :: Spec
149128
spec = describe "txInfo translation" $ do
150129
-- TODO: convert to Imp: https://github.com/IntersectMBO/cardano-ledger/issues/5210
@@ -156,8 +135,6 @@ spec = describe "txInfo translation" $ do
156135
describe "transVITime" $ do
157136
it "validity interval's upper bound is closed when protocol < 9" $
158137
transVITimeUpperBoundIsClosed @AlonzoEra
159-
it "validity interval's upper bound is open when protocol >= 9" $
160-
transVITimeUpperBoundIsOpen @AlonzoEra
161138

162139
genesisId :: TxId
163140
genesisId = TxId (unsafeMakeSafeHash (mkDummyHash (0 :: Int)))

eras/babbage/impl/src/Cardano/Ledger/Babbage/TxInfo.hs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -322,7 +322,7 @@ instance EraPlutusTxInfo 'PlutusV1 BabbageEra where
322322
unless (Set.null refInputs) $ Left (ReferenceInputsNotSupported refInputs)
323323

324324
timeRange <-
325-
Alonzo.transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
325+
Alonzo.transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
326326
inputs <- mapM (transTxInInfoV1 ltiUTxO) (Set.toList (txBody ^. inputsTxBodyL))
327327
outputs <-
328328
zipWithM
@@ -355,7 +355,7 @@ instance EraPlutusTxInfo 'PlutusV2 BabbageEra where
355355

356356
toPlutusTxInfo proxy LedgerTxInfo {ltiProtVer, ltiEpochInfo, ltiSystemStart, ltiUTxO, ltiTx} = do
357357
timeRange <-
358-
Alonzo.transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
358+
Alonzo.transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
359359
inputs <- mapM (transTxInInfoV2 ltiUTxO) (Set.toList (txBody ^. inputsTxBodyL))
360360
refInputs <- mapM (transTxInInfoV2 ltiUTxO) (Set.toList (txBody ^. referenceInputsTxBodyL))
361361
outputs <-

eras/conway/impl/cardano-ledger-conway.cabal

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ library testlib
188188
cardano-ledger-core:{cardano-ledger-core, testlib},
189189
cardano-ledger-mary:{cardano-ledger-mary, testlib},
190190
cardano-ledger-shelley:{cardano-ledger-shelley, testlib},
191-
cardano-slotting:testlib,
191+
cardano-slotting:{cardano-slotting, testlib},
192192
cardano-strict-containers,
193193
containers,
194194
cuddle >=0.4,
@@ -203,6 +203,7 @@ library testlib
203203
prettyprinter,
204204
small-steps >=1.1,
205205
text,
206+
time,
206207

207208
executable huddle-cddl
208209
main-is: Main.hs

eras/conway/impl/src/Cardano/Ledger/Conway/TxInfo.hs

Lines changed: 35 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ module Cardano.Ledger.Conway.TxInfo (
3131
transTxOutV1,
3232
transMintValue,
3333
transTxBodyId,
34+
transValidityInterval,
3435
transVotingProcedures,
3536
transProposal,
3637
toPlutusV3Args,
@@ -103,6 +104,7 @@ import Cardano.Ledger.Plutus.Data (Data)
103104
import Cardano.Ledger.Plutus.Language (Language (..), PlutusArgs (..), SLanguage (..))
104105
import Cardano.Ledger.Plutus.ToPlutusData (ToPlutusData (..))
105106
import Cardano.Ledger.Plutus.TxInfo (
107+
slotToPOSIXTime,
106108
transBoundedRational,
107109
transCoinToLovelace,
108110
transCoinToValue,
@@ -116,6 +118,8 @@ import Cardano.Ledger.Plutus.TxInfo (
116118
)
117119
import qualified Cardano.Ledger.Plutus.TxInfo as TxInfo
118120
import Cardano.Ledger.TxIn (TxId (..), TxIn (..))
121+
import Cardano.Slotting.EpochInfo (EpochInfo)
122+
import Cardano.Slotting.Time (SystemStart)
119123
import Control.Arrow (ArrowChoice (..))
120124
import Control.DeepSeq (NFData)
121125
import Control.Monad (unless, when, zipWithM)
@@ -125,6 +129,7 @@ import Data.List.NonEmpty (NonEmpty (..))
125129
import qualified Data.Map.Strict as Map
126130
import qualified Data.OSet.Strict as OSet
127131
import qualified Data.Set as Set
132+
import Data.Text (Text)
128133
import GHC.Generics hiding (to)
129134
import Lens.Micro ((^.))
130135
import NoThunks.Class (NoThunks)
@@ -398,7 +403,7 @@ instance EraPlutusTxInfo 'PlutusV1 ConwayEra where
398403
toPlutusTxInfo proxy LedgerTxInfo {ltiProtVer, ltiEpochInfo, ltiSystemStart, ltiUTxO, ltiTx} = do
399404
guardConwayFeaturesForPlutusV1V2 ltiTx
400405
timeRange <-
401-
Alonzo.transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
406+
transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
402407
inputs <- mapM (transTxInInfoV1 ltiUTxO) (Set.toList (txBody ^. inputsTxBodyL))
403408
mapM_ (transTxInInfoV1 ltiUTxO) (Set.toList (txBody ^. referenceInputsTxBodyL))
404409
outputs <-
@@ -433,7 +438,7 @@ instance EraPlutusTxInfo 'PlutusV2 ConwayEra where
433438
toPlutusTxInfo proxy LedgerTxInfo {ltiProtVer, ltiEpochInfo, ltiSystemStart, ltiUTxO, ltiTx} = do
434439
guardConwayFeaturesForPlutusV1V2 ltiTx
435440
timeRange <-
436-
Alonzo.transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
441+
transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
437442
inputs <- mapM (Babbage.transTxInInfoV2 ltiUTxO) (Set.toList (txBody ^. inputsTxBodyL))
438443
refInputs <- mapM (Babbage.transTxInInfoV2 ltiUTxO) (Set.toList (txBody ^. referenceInputsTxBodyL))
439444
outputs <-
@@ -470,7 +475,7 @@ instance EraPlutusTxInfo 'PlutusV3 ConwayEra where
470475

471476
toPlutusTxInfo proxy LedgerTxInfo {ltiProtVer, ltiEpochInfo, ltiSystemStart, ltiUTxO, ltiTx} = do
472477
timeRange <-
473-
Alonzo.transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
478+
transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
474479
let
475480
txInputs = txBody ^. inputsTxBodyL
476481
refInputs = txBody ^. referenceInputsTxBodyL
@@ -764,3 +769,30 @@ class
764769

765770
instance ConwayEraPlutusTxInfo 'PlutusV3 ConwayEra where
766771
toPlutusChangedParameters _ x = PV3.ChangedParameters (PV3.dataToBuiltinData (toPlutusData x))
772+
773+
-- | Translate a validity interval to POSIX time
774+
transValidityInterval ::
775+
forall proxy era a.
776+
Inject (AlonzoContextError era) a =>
777+
proxy era ->
778+
EpochInfo (Either Text) ->
779+
SystemStart ->
780+
ValidityInterval ->
781+
Either a PV1.POSIXTimeRange
782+
transValidityInterval _ epochInfo systemStart = \case
783+
ValidityInterval SNothing SNothing -> pure PV1.always
784+
ValidityInterval (SJust i) SNothing -> PV1.from <$> transSlotToPOSIXTime i
785+
ValidityInterval SNothing (SJust i) -> do
786+
t <- transSlotToPOSIXTime i
787+
pure $ PV1.Interval (PV1.LowerBound PV1.NegInf True) (PV1.strictUpperBound t)
788+
ValidityInterval (SJust i) (SJust j) -> do
789+
t1 <- transSlotToPOSIXTime i
790+
t2 <- transSlotToPOSIXTime j
791+
pure $
792+
PV1.Interval
793+
(PV1.lowerBound t1)
794+
(PV1.strictUpperBound t2)
795+
where
796+
transSlotToPOSIXTime =
797+
left (inject . TimeTranslationPastHorizon @era)
798+
. slotToPOSIXTime epochInfo systemStart

eras/conway/impl/testlib/Test/Cardano/Ledger/Conway/TxInfoSpec.hs

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,27 @@
1010

1111
module Test.Cardano.Ledger.Conway.TxInfoSpec (spec) where
1212

13-
import Cardano.Ledger.Alonzo.Plutus.Context (EraPlutusTxInfo, toPlutusTxCert)
13+
import Cardano.Ledger.Alonzo (AlonzoEra)
14+
import Cardano.Ledger.Alonzo.Plutus.Context (
15+
EraPlutusContext (ContextError),
16+
EraPlutusTxInfo,
17+
toPlutusTxCert,
18+
)
19+
import Cardano.Ledger.Alonzo.Plutus.TxInfo (AlonzoContextError)
1420
import Cardano.Ledger.BaseTypes
21+
import qualified Cardano.Ledger.BaseTypes as BT
1522
import Cardano.Ledger.Coin (Coin (..))
1623
import Cardano.Ledger.Conway.Core
1724
import Cardano.Ledger.Conway.TxCert
25+
import Cardano.Ledger.Conway.TxInfo (transValidityInterval)
1826
import Cardano.Ledger.Credential (StakeCredential)
1927
import Cardano.Ledger.Plutus.Language (Language (..))
28+
import Cardano.Ledger.Slot
29+
import Cardano.Slotting.EpochInfo (fixedEpochInfo)
30+
import Cardano.Slotting.Time (SystemStart (..), mkSlotLength)
2031
import Data.Proxy (Proxy (..))
32+
import Data.Time.Clock.POSIX (posixSecondsToUTCTime)
33+
import qualified PlutusLedgerApi.V1 as PV1
2134
import qualified PlutusLedgerApi.V2 as PV2
2235
import qualified PlutusLedgerApi.V3 as PV3
2336
import Test.Cardano.Ledger.Common
@@ -54,6 +67,9 @@ spec = do
5467
expectDeposit coin $ transV10 $ ConwayTxCertDeleg $ ConwayUnRegCert cred (SJust coin)
5568
expectDeposit coin $ transV10 $ UnRegDepositTxCert cred coin
5669
expectNoDeposit $ transV10 $ ConwayTxCertDeleg $ ConwayUnRegCert cred SNothing
70+
71+
it "validity interval's upper bound is open when protocol >= 9" $
72+
transVITimeUpperBoundIsOpen @AlonzoEra
5773
where
5874
expectDeposit :: Coin -> PV3.TxCert -> IO ()
5975
expectDeposit (Coin c) =
@@ -71,3 +87,28 @@ spec = do
7187
txcert ->
7288
expectationFailure $
7389
"Deposit not expected, but found in: " <> show txcert
90+
91+
-- | The test checks that since protocol version 9 'transVITime' works correctly,
92+
-- by returning open upper bound of the validaty interval.
93+
transVITimeUpperBoundIsOpen ::
94+
forall era.
95+
( EraPlutusContext era
96+
, BT.Inject (AlonzoContextError era) (ContextError era)
97+
) =>
98+
Expectation
99+
transVITimeUpperBoundIsOpen = do
100+
let interval = ValidityInterval SNothing (SJust (SlotNo 40))
101+
case transValidityInterval (Proxy @era) ei ss interval of
102+
Left (e :: ContextError era) ->
103+
expectationFailure $ "no translation error was expected, but got: " <> show e
104+
Right t ->
105+
t
106+
`shouldBe` PV1.Interval
107+
(PV1.LowerBound PV1.NegInf True)
108+
(PV1.UpperBound (PV1.Finite (PV1.POSIXTime 40000)) False)
109+
110+
ei :: EpochInfo (Either a)
111+
ei = fixedEpochInfo (EpochSize 100) (mkSlotLength 1)
112+
113+
ss :: SystemStart
114+
ss = SystemStart $ posixSecondsToUTCTime 0

eras/dijkstra/src/Cardano/Ledger/Dijkstra/TxInfo.hs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
{-# LANGUAGE LambdaCase #-}
55
{-# LANGUAGE MultiParamTypeClasses #-}
66
{-# LANGUAGE NamedFieldPuns #-}
7-
{-# LANGUAGE TypeApplications #-}
87
{-# LANGUAGE TypeFamilies #-}
98
{-# OPTIONS_GHC -Wno-orphans #-}
109

@@ -43,6 +42,7 @@ import Cardano.Ledger.Conway.TxInfo (
4342
transTxOutV1,
4443
transVotingProcedures,
4544
)
45+
import qualified Cardano.Ledger.Conway.TxInfo as Conway
4646
import Cardano.Ledger.Dijkstra.Core
4747
import Cardano.Ledger.Dijkstra.Era (DijkstraEra)
4848
import Cardano.Ledger.Dijkstra.Scripts (PlutusScript (..))
@@ -113,7 +113,7 @@ instance EraPlutusTxInfo 'PlutusV1 DijkstraEra where
113113
toPlutusTxInfo proxy LedgerTxInfo {ltiProtVer, ltiEpochInfo, ltiSystemStart, ltiUTxO, ltiTx} = do
114114
guardConwayFeaturesForPlutusV1V2 ltiTx
115115
timeRange <-
116-
Alonzo.transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
116+
Conway.transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
117117
inputs <- mapM (transTxInInfoV1 ltiUTxO) (Set.toList (txBody ^. inputsTxBodyL))
118118
mapM_ (transTxInInfoV1 ltiUTxO) (Set.toList (txBody ^. referenceInputsTxBodyL))
119119
outputs <-
@@ -148,7 +148,7 @@ instance EraPlutusTxInfo 'PlutusV2 DijkstraEra where
148148
toPlutusTxInfo proxy LedgerTxInfo {ltiProtVer, ltiEpochInfo, ltiSystemStart, ltiUTxO, ltiTx} = do
149149
guardConwayFeaturesForPlutusV1V2 ltiTx
150150
timeRange <-
151-
Alonzo.transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
151+
Conway.transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
152152
inputs <- mapM (Babbage.transTxInInfoV2 ltiUTxO) (Set.toList (txBody ^. inputsTxBodyL))
153153
refInputs <- mapM (Babbage.transTxInInfoV2 ltiUTxO) (Set.toList (txBody ^. referenceInputsTxBodyL))
154154
outputs <-
@@ -185,7 +185,7 @@ instance EraPlutusTxInfo 'PlutusV3 DijkstraEra where
185185

186186
toPlutusTxInfo proxy LedgerTxInfo {ltiProtVer, ltiEpochInfo, ltiSystemStart, ltiUTxO, ltiTx} = do
187187
timeRange <-
188-
Alonzo.transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
188+
Conway.transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
189189
let
190190
txInputs = txBody ^. inputsTxBodyL
191191
refInputs = txBody ^. referenceInputsTxBodyL
@@ -245,7 +245,7 @@ instance EraPlutusTxInfo 'PlutusV4 DijkstraEra where
245245

246246
toPlutusTxInfo proxy LedgerTxInfo {ltiProtVer, ltiEpochInfo, ltiSystemStart, ltiUTxO, ltiTx} = do
247247
timeRange <-
248-
Alonzo.transValidityInterval ltiTx ltiProtVer ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
248+
Conway.transValidityInterval ltiTx ltiEpochInfo ltiSystemStart (txBody ^. vldtTxBodyL)
249249
let
250250
txInputs = txBody ^. inputsTxBodyL
251251
refInputs = txBody ^. referenceInputsTxBodyL

0 commit comments

Comments
 (0)