Repository navigation
Introduce standard Temporal dates with a native-first fallback - #211
Open
JakeGinnivan wants to merge 6 commits into
Open
JakeGinnivan wants to merge 6 commits into
JakeGinnivan wants to merge 6 commits into
Conversation
JakeGinnivan
force-pushed
the
jakeginnivan/temporal-date-foundation
branch
from
October 26, 2026 00:32
06d0a4c to
6f66f7e
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Start the migration to standard Temporal values without extending the Luxon interface. Stacked on #210; the shared conference-config/provider contract remains unchanged in this first slice.
Use native Temporal where available and
temporal-polyfill1.0.6 elsewhere, without installing globals. Reject ambiguous/nonexistent wall times unless a caller explicitly selects a disambiguation policy.Migrate talk-end checks and run-sheet highlighting calculations, remove redundant timezone arguments at feature call sites, and extend provider lint to reject direct
Temporal.Nowreads. Add lasting usage guidance and a reproduciblepnpm nx temporal-check websitecompatibility/bundle check.Evidence
After: native Node Temporal, forced fallback, and Workers return identical date/instant/DST results. React SSR hydration agrees in Chromium, Firefox, and WebKit, both with normal support and native Temporal explicitly disabled.
Merge Danger
Door: two-way
No persisted data or config schema changes. Standard Temporal types are introduced at a small module; the remaining Luxon contract can migrate in subsequent PRs.
Blast Radius: timing
Talk feedback availability and run-sheet timing now parse through Temporal. Invalid timestamps retain their existing feature-specific fallback behavior. Offset-free ambiguous/nonexistent wall times are rejected rather than silently normalized. The native fallback adds client payload on migrated routes until the remaining Luxon usage is removed.