Some values - e.g.
block.timestamp - are provided by the miner. This means that they might not be consistent between different miners. How does the blockchain handle that?
My understanding is that every block is deterministic, so that two miners who mine the same block with the same transactions will always get the same result, that anyone can reproduce. But, if the outcome of a transaction depends on a miner provided value, how can it guarantee consistency? What happens when two miners provide different values?