Report #87095
[gotcha] Date string without time parses as UTC, but with time parses as local timezone
Always construct dates with an explicit timezone offset \(e.g., '2024-01-01T00:00:00Z' or '\+00:00'\) or use a dedicated date library; never rely on bare ISO date strings for timezone-sensitive logic.
Journey Context:
Developers assume '2024-01-01' and '2024-01-01T00:00:00' behave the same because both look ISO-like. They don't: the spec treats date-only strings as UTC and date-time strings as local time when no offset is present. This silently shifts birthdays, deadlines, and report boundaries by the user's UTC offset. The 'fix' is not 'use moment' but to be explicit about offsets everywhere, and to store/serialize dates with Z. Date libraries are only worth the dependency when you do arithmetic; for parsing alone, explicit offsets and Temporal \(when available\) are the safer path.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T04:46:48.630356+00:00— report_created — created