{"abstract":"A message stamped slightly in the future by a skewed clock is labelled \"Yesterday\".","category":"Chat ordering and read receipts","checks":8,"contract":"stamps are ascending unix seconds; offset_min is the viewer's UTC offset in minutes. A separator [index, label] precedes the first message of each local calendar day: \"Today\" for the local day containing now, \"Yesterday\" for the one before, otherwise the ISO local date.","evaluation_group":"w2-chat_ordering_and_read_receipts-day-separators","failed_approach":"Accepting either neighbour still labels the future day as Yesterday. The attempted `abs(d - today) == 1` still disagrees with a fixture.","family":"w2-chat_ordering_and_read_receipts-day-separators-yesterday-direction","id":"FA-76021","implementations":{"attempt":{"sha256":"c243e961f27b1248c83baf4dcef9e5f8dcc9441f2660d500c4149e4d35497777","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom datetime import date, timedelta\nN = 1\nobservations = []\ndef solve(stamps, offset_min, now):\n    def local_day(t):\n        return (t + offset_min * 60) // 86400\n    today = local_day(now)\n    out = []\n    prev = None\n    for i, t in enumerate(stamps):\n        d = local_day(t)\n        if d != prev:\n            if d == today:\n                label = 'Today'\n            elif abs(d - today) == 1:\n                label = 'Yesterday'\n            else:\n                label = str(date(1970, 1, 1) + timedelta(days=d))\n            out.append([i, label])\n            prev = d\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\n_CASES = {1: [('east of UTC late evening', ([8712000, 8722800], 330, 9072001), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144060), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449601), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355001), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055201), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592201), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 1), [])], 2: [('east of UTC late evening', ([8712000, 8722800], 330, 9072002), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144120), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449602), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355002), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055202), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592202), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 2), [])], 3: [('east of UTC late evening', ([8712000, 8722800], 330, 9072003), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144180), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449603), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355003), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055203), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592203), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040, 605100], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 3), [])], 4: [('east of UTC late evening', ([8712000, 8722800], 330, 9072004), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144240), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449604), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355004), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055204), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592204), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040, 605100, 605160], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 4), [])], 5: [('east of UTC late evening', ([8712000, 8722800], 330, 9072005), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144300), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449605), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355005), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055205), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592205), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040, 605100, 605160, 605220], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 5), [])]}\nfor _label, _args, _expected in _CASES[N]:\n    check(_label, solve(*_args), _expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"bc3dc4b7e4e677eeb06fec2f121eb41209b99599a67ac1f49a518020e5d2801a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom datetime import date, timedelta\nN = 1\nobservations = []\ndef solve(stamps, offset_min, now):\n    def local_day(t):\n        return (t + offset_min * 60) // 86400\n    today = local_day(now)\n    out = []\n    prev = None\n    for i, t in enumerate(stamps):\n        d = local_day(t)\n        if d != prev:\n            if d == today:\n                label = 'Today'\n            elif d == today + 1:\n                label = 'Yesterday'\n            else:\n                label = str(date(1970, 1, 1) + timedelta(days=d))\n            out.append([i, label])\n            prev = d\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\n_CASES = {1: [('east of UTC late evening', ([8712000, 8722800], 330, 9072001), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144060), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449601), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355001), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055201), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592201), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 1), [])], 2: [('east of UTC late evening', ([8712000, 8722800], 330, 9072002), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144120), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449602), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355002), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055202), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592202), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 2), [])], 3: [('east of UTC late evening', ([8712000, 8722800], 330, 9072003), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144180), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449603), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355003), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055203), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592203), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040, 605100], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 3), [])], 4: [('east of UTC late evening', ([8712000, 8722800], 330, 9072004), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144240), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449604), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355004), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055204), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592204), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040, 605100, 605160], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 4), [])], 5: [('east of UTC late evening', ([8712000, 8722800], 330, 9072005), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144300), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449605), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355005), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055205), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592205), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040, 605100, 605160, 605220], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 5), [])]}\nfor _label, _args, _expected in _CASES[N]:\n    check(_label, solve(*_args), _expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"2d1bba23be0cda4bfe97be3269edb778eb4cd20321bb17d200d1221ddc34c65a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom datetime import date, timedelta\nN = 1\nobservations = []\ndef solve(stamps, offset_min, now):\n    def local_day(t):\n        return (t + offset_min * 60) // 86400\n    today = local_day(now)\n    out = []\n    prev = None\n    for i, t in enumerate(stamps):\n        d = local_day(t)\n        if d != prev:\n            if d == today:\n                label = 'Today'\n            elif d == today - 1:\n                label = 'Yesterday'\n            else:\n                label = str(date(1970, 1, 1) + timedelta(days=d))\n            out.append([i, label])\n            prev = d\n    return out\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\n_CASES = {1: [('east of UTC late evening', ([8712000, 8722800], 330, 9072001), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144060), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449601), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355001), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055201), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592201), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 1), [])], 2: [('east of UTC late evening', ([8712000, 8722800], 330, 9072002), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144120), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449602), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355002), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055202), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592202), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 2), [])], 3: [('east of UTC late evening', ([8712000, 8722800], 330, 9072003), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144180), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449603), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355003), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055203), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592203), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040, 605100], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 3), [])], 4: [('east of UTC late evening', ([8712000, 8722800], 330, 9072004), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144240), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449604), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355004), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055204), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592204), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040, 605100, 605160], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 4), [])], 5: [('east of UTC late evening', ([8712000, 8722800], 330, 9072005), [[0, '1970-04-12']]), ('west of UTC early morning', ([17287200, 17301600], -300, 18144300), [[0, '1970-07-19'], [1, '1970-07-20']]), ('today and yesterday', ([4402800, 4442400, 4446000], 0, 4449605), [[0, 'Yesterday'], [1, 'Today']]), ('east of UTC after local midnight', ([5350200], 120, 5355005), [[0, 'Today']]), ('west of UTC before local midnight', ([6051600], -300, 6055205), [[0, 'Today']]), ('skewed future message', ([2592100, 2678500], 0, 2592205), [[0, 'Today'], [1, '1970-02-01']]), ('many messages one day', ([604800, 604860, 604920, 604980, 605040, 605100, 605160, 605220], 60, 777600), [[0, '1970-01-08']]), ('empty', ([], 0, 5), [])]}\nfor _label, _args, _expected in _CASES[N]:\n    check(_label, solve(*_args), _expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"Stipulated offline chat model; not a complete messaging protocol, client or server implementation. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-chat_ordering_and_read_receipts-day-separators-yesterday-direction","generated_at":"2026-09-29T14:49:12.255087+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Day headers anchor chat history in time; zone mistakes split or merge days around midnight.","repair":"Use `d == today - 1` for the yesterday direction decision and keep every other rule of the model unchanged.","root_cause":"The yesterday direction decision evaluates `d == today + 1` where the contract requires `d == today - 1`.","sha256":"3a11d9232b6b629854b63166b8af4cf50294a4b0b63b154df224d71dbc44165c","title":"Insert local day separators into a message list: yesterday direction · case 01","variant":1,"variant_policy":"N selects a different enumerated fixture set (shifted clocks, identifiers and sizes); boundary fixtures recur across variants.","verification":{"attempt":{"elapsed_ms":45.137,"exit_code":1,"observations":[{"actual":[[0,"1970-04-12"]],"check":"east of UTC late evening","expected":[[0,"1970-04-12"]],"passed":true},{"actual":[[0,"1970-07-19"],[1,"1970-07-20"]],"check":"west of UTC early morning","expected":[[0,"1970-07-19"],[1,"1970-07-20"]],"passed":true},{"actual":[[0,"Yesterday"],[1,"Today"]],"check":"today and yesterday","expected":[[0,"Yesterday"],[1,"Today"]],"passed":true},{"actual":[[0,"Today"]],"check":"east of UTC after local midnight","expected":[[0,"Today"]],"passed":true},{"actual":[[0,"Today"]],"check":"west of UTC before local midnight","expected":[[0,"Today"]],"passed":true},{"actual":[[0,"Today"],[1,"Yesterday"]],"check":"skewed future message","expected":[[0,"Today"],[1,"1970-02-01"]],"passed":false},{"actual":[[0,"1970-01-08"]],"check":"many messages one day","expected":[[0,"1970-01-08"]],"passed":true},{"actual":[],"check":"empty","expected":[],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"east of UTC late evening\", \"actual\": [[0, \"1970-04-12\"]], \"expected\": [[0, \"1970-04-12\"]], \"passed\": true}, {\"check\": \"west of UTC early morning\", \"actual\": [[0, \"1970-07-19\"], [1, \"1970-07-20\"]], \"expected\": [[0, \"1970-07-19\"], [1, \"1970-07-20\"]], \"passed\": true}, {\"check\": \"today and yesterday\", \"actual\": [[0, \"Yesterday\"], [1, \"Today\"]], \"expected\": [[0, \"Yesterday\"], [1, \"Today\"]], \"passed\": true}, {\"check\": \"east of UTC after local midnight\", \"actual\": [[0, \"Today\"]], \"expected\": [[0, \"Today\"]], \"passed\": true}, {\"check\": \"west of UTC before local midnight\", \"actual\": [[0, \"Today\"]], \"expected\": [[0, \"Today\"]], \"passed\": true}, {\"check\": \"skewed future message\", \"actual\": [[0, \"Today\"], [1, \"Yesterday\"]], \"expected\": [[0, \"Today\"], [1, \"1970-02-01\"]], \"passed\": false}, {\"check\": \"many messages one day\", \"actual\": [[0, \"1970-01-08\"]], \"expected\": [[0, \"1970-01-08\"]], \"passed\": true}, {\"check\": \"empty\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.654,"exit_code":1,"observations":[{"actual":[[0,"1970-04-12"]],"check":"east of UTC late evening","expected":[[0,"1970-04-12"]],"passed":true},{"actual":[[0,"1970-07-19"],[1,"1970-07-20"]],"check":"west of UTC early morning","expected":[[0,"1970-07-19"],[1,"1970-07-20"]],"passed":true},{"actual":[[0,"1970-02-20"],[1,"Today"]],"check":"today and yesterday","expected":[[0,"Yesterday"],[1,"Today"]],"passed":false},{"actual":[[0,"Today"]],"check":"east of UTC after local midnight","expected":[[0,"Today"]],"passed":true},{"actual":[[0,"Today"]],"check":"west of UTC before local midnight","expected":[[0,"Today"]],"passed":true},{"actual":[[0,"Today"],[1,"Yesterday"]],"check":"skewed future message","expected":[[0,"Today"],[1,"1970-02-01"]],"passed":false},{"actual":[[0,"1970-01-08"]],"check":"many messages one day","expected":[[0,"1970-01-08"]],"passed":true},{"actual":[],"check":"empty","expected":[],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"east of UTC late evening\", \"actual\": [[0, \"1970-04-12\"]], \"expected\": [[0, \"1970-04-12\"]], \"passed\": true}, {\"check\": \"west of UTC early morning\", \"actual\": [[0, \"1970-07-19\"], [1, \"1970-07-20\"]], \"expected\": [[0, \"1970-07-19\"], [1, \"1970-07-20\"]], \"passed\": true}, {\"check\": \"today and yesterday\", \"actual\": [[0, \"1970-02-20\"], [1, \"Today\"]], \"expected\": [[0, \"Yesterday\"], [1, \"Today\"]], \"passed\": false}, {\"check\": \"east of UTC after local midnight\", \"actual\": [[0, \"Today\"]], \"expected\": [[0, \"Today\"]], \"passed\": true}, {\"check\": \"west of UTC before local midnight\", \"actual\": [[0, \"Today\"]], \"expected\": [[0, \"Today\"]], \"passed\": true}, {\"check\": \"skewed future message\", \"actual\": [[0, \"Today\"], [1, \"Yesterday\"]], \"expected\": [[0, \"Today\"], [1, \"1970-02-01\"]], \"passed\": false}, {\"check\": \"many messages one day\", \"actual\": [[0, \"1970-01-08\"]], \"expected\": [[0, \"1970-01-08\"]], \"passed\": true}, {\"check\": \"empty\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.533,"exit_code":0,"observations":[{"actual":[[0,"1970-04-12"]],"check":"east of UTC late evening","expected":[[0,"1970-04-12"]],"passed":true},{"actual":[[0,"1970-07-19"],[1,"1970-07-20"]],"check":"west of UTC early morning","expected":[[0,"1970-07-19"],[1,"1970-07-20"]],"passed":true},{"actual":[[0,"Yesterday"],[1,"Today"]],"check":"today and yesterday","expected":[[0,"Yesterday"],[1,"Today"]],"passed":true},{"actual":[[0,"Today"]],"check":"east of UTC after local midnight","expected":[[0,"Today"]],"passed":true},{"actual":[[0,"Today"]],"check":"west of UTC before local midnight","expected":[[0,"Today"]],"passed":true},{"actual":[[0,"Today"],[1,"1970-02-01"]],"check":"skewed future message","expected":[[0,"Today"],[1,"1970-02-01"]],"passed":true},{"actual":[[0,"1970-01-08"]],"check":"many messages one day","expected":[[0,"1970-01-08"]],"passed":true},{"actual":[],"check":"empty","expected":[],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"east of UTC late evening\", \"actual\": [[0, \"1970-04-12\"]], \"expected\": [[0, \"1970-04-12\"]], \"passed\": true}, {\"check\": \"west of UTC early morning\", \"actual\": [[0, \"1970-07-19\"], [1, \"1970-07-20\"]], \"expected\": [[0, \"1970-07-19\"], [1, \"1970-07-20\"]], \"passed\": true}, {\"check\": \"today and yesterday\", \"actual\": [[0, \"Yesterday\"], [1, \"Today\"]], \"expected\": [[0, \"Yesterday\"], [1, \"Today\"]], \"passed\": true}, {\"check\": \"east of UTC after local midnight\", \"actual\": [[0, \"Today\"]], \"expected\": [[0, \"Today\"]], \"passed\": true}, {\"check\": \"west of UTC before local midnight\", \"actual\": [[0, \"Today\"]], \"expected\": [[0, \"Today\"]], \"passed\": true}, {\"check\": \"skewed future message\", \"actual\": [[0, \"Today\"], [1, \"1970-02-01\"]], \"expected\": [[0, \"Today\"], [1, \"1970-02-01\"]], \"passed\": true}, {\"check\": \"many messages one day\", \"actual\": [[0, \"1970-01-08\"]], \"expected\": [[0, \"1970-01-08\"]], \"passed\": true}, {\"check\": \"empty\", \"actual\": [], \"expected\": [], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}