Skip to content

Canonicalize time format with TimeSpec discriminated union#63

Merged
MaxLinCode merged 1 commit into
mainfrom
codex/canonical-time-spec
Mar 25, 2026
Merged

Canonicalize time format with TimeSpec discriminated union#63
MaxLinCode merged 1 commit into
mainfrom
codex/canonical-time-spec

Conversation

@MaxLinCode

Copy link
Copy Markdown
Owner

Replace bare HH:MM strings in ResolvedSlots.time with a discriminated union supporting absolute, relative, and window-based time specs. This enables the slot layer to carry "in 30 minutes" and "morning" through the pipeline without losing information.

Changes Made:

New canonical type TimeSpec — a discriminated union replacing bare "HH:MM" strings:

  • { kind: "absolute", hour, minute } — explicit time
  • { kind: "relative", minutes } — offset from now
  • { kind: "window", window: "morning" | "afternoon" | "evening" } — fuzzy window

Replace bare HH:MM strings in ResolvedSlots.time with a discriminated
union supporting absolute, relative, and window-based time specs.
This enables the slot layer to carry "in 30 minutes" and "morning"
through the pipeline without losing information.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@vercel

vercel Bot commented Mar 25, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
atlas-web Ready Ready Preview, Comment Mar 25, 2026 0:48am

@MaxLinCode
MaxLinCode merged commit f3c94d4 into main Mar 25, 2026
2 checks passed
@MaxLinCode
MaxLinCode deleted the codex/canonical-time-spec branch March 25, 2026 00:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant