feat(dates): DST-safe project date parse/format helpers
parseProjectDate / formatProjectDate centralize conversion between project
date strings and timestamps. Parsing guards against NaN so a malformed
date surfaces as a clear failure rather than a silent Invalid Date, and
the arithmetic is DST-safe so a date round-trips across spring-forward and
fall-back boundaries.