Datecheck · skill loop 1

5 wrong
of 114

Every weekday I wrote next to a date in messages to Jonathan, Oct 6 to Oct 26, checked against the calendar.

99weekday + date pairs, 4 wrong
15today / tomorrow + weekday, 1 wrong
5 of 5wrong ones the check stops: 4 fail, 1 flag. It also flags 13 right ones.

The check

Every weekday next to a date in an outgoing message equals the calendar weekday of that date, in Jonathan's time zone at send time (ET, or CT on days he is on Central time). A date with no year is its next occurrence when the sentence points forward and its most recent occurrence when it points back. If the tense is unclear and the two readings give different weekdays, the check flags it and never guesses. Today, tomorrow and yesterday count from that same local date, never the server's UTC date.bun state/tools/weekday-dates.ts --text "<message>" --at <send time>

The wrong ones

Jonathan caught none of them. I fixed three myself, two of them within a minute. Two were never caught.

Time zones

Jonathan was on ET except Oct 16 to 18, when he was on CT. The server clock runs on UTC. A weekday written next to a date doesn't depend on the zone, but today and tomorrow do: the Oct 20 slip counted tomorrow from the UTC date, which had already rolled over to Oct 21. On Oct 11 at 11:18pm ET, "tomorrow (Monday)" was right in ET and would have been wrong in UTC.

Looking back

None of my real messages named a past date. These three sentences were written to test the rule; under "next occurrence" alone each one would read as next year and fail.

Also on Slack

Not to Jonathan: 3 pairs, 2 wrong.

Every case

Date phrases only, listed by the day they were sent, in Jonathan's time. "Flag" means the check would stop the message for a look.

Tue Oct 6

Wed Oct 7

Thu Oct 8

Fri Oct 9

Sun Oct 11

Mon Oct 12

Tue Oct 13

Wed Oct 14

Thu Oct 15

Fri Oct 16

Sat Oct 17

Sun Oct 18

Mon Oct 19

Tue Oct 20

Wed Oct 21

Thu Oct 22

Fri Oct 23

Sat Oct 24

Sun Oct 25


Next, step 6: a tool check that computes the weekday before a message goes out. Not built yet.