Compare a fixed event time with a fixed deadline.

before or late Date comparisons are just numeric timestamp comparisons once the times are fixed.

Deadline Window

offsetHours
deadline_window.lua
Replay: real traced execution (multi-file project)
local offsetHours = 3
local deadline = 1717243200
local eventTime = deadline + offsetHours * 60 * 60
local status = "late"
if eventTime <= deadline then
    status = "on-time"
end
print("offsetHours=" .. offsetHours)
print("status=" .. status)
local offsetHours = -2
local deadline = 1717243200
local eventTime = deadline + offsetHours * 60 * 60
local status = "late"
if eventTime <= deadline then
    status = "on-time"
end
print("offsetHours=" .. offsetHours)
print("status=" .. status)
local offsetHours = 8
local deadline = 1717243200
local eventTime = deadline + offsetHours * 60 * 60
local status = "late"
if eventTime <= deadline then
    status = "on-time"
end
print("offsetHours=" .. offsetHours)
print("status=" .. status)
  1. offsetHours ← 3, deadline ← 1717243200, eventTime ← 1717254000

    1local offsetHours→ 3 = 3 --@offsetHours=-2, 82local deadline→ 1717243200 = 17172432003local eventTime→ 1717254000 = deadline1717243200 + offsetHours3 * 60 * 604local status→ late = "late"5if eventTime <= deadline then6    status = "on-time"7end8print("offsetHours=" .. offsetHours3)9print("status=" .. statuslate)
    outputoffsetHours=3
    status=late
  1. offsetHours ← -2, deadline ← 1717243200, eventTime ← 1717236000

    1local offsetHours→ -2 = -22local deadline→ 1717243200 = 17172432003local eventTime→ 1717236000 = deadline1717243200 + offsetHours-2 * 60 * 604local status→ late = "late"5if eventTime <= deadline then
  2. status ← on-time

    4local status = "late"5if eventTime1717236000 <= deadline1717243200 then6    status→ on-time = "on-time"7end
  3. print("offsetHours=" .. offsetHours)

    7end8print("offsetHours=" .. offsetHours-2)9print("status=" .. statuson-time)
    outputoffsetHours=-2
    status=on-time
  1. offsetHours ← 8, deadline ← 1717243200, eventTime ← 1717272000

    1local offsetHours→ 8 = 82local deadline→ 1717243200 = 17172432003local eventTime→ 1717272000 = deadline1717243200 + offsetHours8 * 60 * 604local status→ late = "late"5if eventTime <= deadline then6    status = "on-time"7end8print("offsetHours=" .. offsetHours8)9print("status=" .. statuslate)
    outputoffsetHours=8
    status=late