-
Mark Tyneway authored
This commit updates the timestamp updating logic such that `time.Now` is used instead of relying on L1 timestamps. This gives a higher fidelity for the `TIMESTAMP` opcode as well as makes the time on L2 be closer to the time on L1. L1 to L2 transactions no longer have the property of having the same timestamp on L2 as the timestamp of the L1 block they were included in. This should be able to be turned on without needing hardfork logic as replicas should always accept the timestamp that the sequencer sets. The sequencer is a trusted entity in the existing implementation and it is expected that the sequencer will become more trustless in future iterations of the protocol. This change is added to improve both UX and devex. Users are confused by the timestamps on Etherscan being ~15 minutes behind. This is due to the timestamps being set based on L1 block numbers, and the system only pulls L1 data once a secure amount of PoW is placed on top. Developers would like the timestamps to have a higher fidelity and be closer to the timestamps on L1.
57742a04