A booking form that stores only a wall-clock time can become ambiguous during daylight-saving changes. A service business needs the intended instant, named timezone and agreed handling of skipped or repeated times. Showing a timezone abbreviation beside the form does not resolve the ambiguity.
Source-bound fact
A local wall time can map to zero or multiple instants at timezone offset transitions. Official reference · Checked 17 October 2026.
Filled synthetic acceptance example
Synthetic teaching example, not a client case or a real-platform assessment. On narrow screens, scroll to read the complete table.
| Input | Check basis | Expected |
|---|---|---|
| 2026-04-05 02:30 Melbourne | 15:30Z and16:30Z on4Apr | two candidates; customer choice required |
| 2026-10-04 02:30 Melbourne | clock skips this local time | reject or apply disclosed policy |
| Confirmed2026-04-04T15:30Z | Australia/Melbourne | 02:30 first occurrence |
Supplier acceptance procedure
- Record the IANA zone and the chosen instant together; keep locale formatting out of the identifier.
- Test the repeated and skipped-time cases with the supplier’s actual timezone database and supported browsers.
- Compare confirmation, reminder and calendar export against the same chosen instant.
Interpret the output
The supplied Intl check formats two explicit instants into the repeated 02:30 display. It does not parse arbitrary local input or implement an entire timezone resolver. The business must choose and disclose how ambiguous selections are confirmed before accepting payment or promising an appointment.
Explicit limits
Timezone rules and platform support can change. Verify current tzdata; no live bookings or Temporal availability guarantee. Distinct from reporting-day aggregation and date-only deadlines.
Replay the finite teaching model
Save both files in one folder and use Node22 or newer. JSON contains inputs and expected results. The script processes synthetic data only, with no network, credentials, payment or paid API calls. Passing is not evidence that a real integration passed acceptance.
Filled inputs and expectations · Inspectable teaching script
node check.mjs booking-local-time-ambiguity-register.json