In particular, the expression (i * 4.hours) evaluates as an integer representing the correct number of seconds, but when adding that integer to the date it is treated as a number of days, leading to shifts spaced ~39.5 years apart.
Further, watch shifts are spaced every 2 hours, not every 4.
Coverage remained the same at 14.155% when pulling fbe98a919e5b49548c90188d67f918c63bdc9e50 on timparenti:fix-shifts into 7d340499a0c4ebf90797f9193cf6929b4bc42c46 on sc0v:master.
In particular, the expression
(i * 4.hours)
evaluates as an integer representing the correct number of seconds, but when adding that integer to the date it is treated as a number of days, leading to shifts spaced ~39.5 years apart.Further, watch shifts are spaced every 2 hours, not every 4.