Why this, rather than a rolling “past time limit” along the lines of option 3 here? (eg: as well as the monotonic median time past, we maintain a non-decreasing earliest_time_past
, which is initially the genesis timestamp, and thereafter max(earliest_time_past, block.nTimestamp - 2 hours)
, and add a new consensus rule next_block.nTimestamp >= earliest_time_past
in addition to next_block.nTimestamp > median_time_past
)
Having a rule that is applied consistently to every block seems somewhat better to me than a rule that only applies to every 2016th block to me. YMMV.
(Most of the discussion in that thread was about options 1 and 2, which replaced/simplified median time past, which I don’t think is a practical option)