Understanding the Redundancy of block.timestamp + 10 minutes in Smart Contracts
From time to time when auditing, the following implementation crosses my way:
Specifically, it is about block.timestamp + 10 minutes. This practice is redundant and can be removed, the reason for it lies in how the EVM works:
Transactions, like adding liquidity, happen within the same block. Once submitted, the transaction is mined (confirmed) in the next block or a few blocks afterward. Since the EVM executes transactions atomically, there's no need to specify a timeframe for the transaction unless you're concerned about front-running or delays.
This means whenever the transaction is executed, block.timestamp will be the timestamp from exactly this block and since the transaction will be fulfilled in exactly that block, the addition of any value on top of block.timestamp is just unnecessary.