Skip to content

fix: Meeting scheduling timezone comparison bug#776

Merged
bokelley merged 2 commits into
mainfrom
bokelley/test-zoom-webhooks-prod
Jan 15, 2026
Merged

fix: Meeting scheduling timezone comparison bug#776
bokelley merged 2 commits into
mainfrom
bokelley/test-zoom-webhooks-prod

Conversation

@bokelley

Copy link
Copy Markdown
Contributor

Summary

Fixed Addie incorrectly rejecting meeting times as "already passed" when users specified times in their local timezone.

The bug: When Claude converts "9:15 AM ET" to ISO format like "2026-01-15T09:15:00" (without timezone offset), JavaScript's Date constructor interprets this as server local time (UTC). So when a user asked for 9:15 AM ET (which is 2:15 PM UTC), the server thought they meant 9:15 AM UTC (4:15 AM ET) - which was already in the past.

The fix: Compare times within the specified timezone context by:

  1. Getting current time formatted in the target timezone
  2. Comparing ISO strings directly (lexicographically sortable)

This ensures "9:15 AM ET" is compared against "current time in ET", not UTC.

Test plan

  • Unit tested timezone comparison logic locally
  • Ask Addie to schedule a meeting for a future time in ET
  • Verify meeting is created without "already passed" error

🤖 Generated with Claude Code

bokelley and others added 2 commits January 15, 2026 09:22
When Claude provides a datetime like "2026-01-15T09:15:00" without timezone
info, JavaScript's Date parses it as server local time (UTC). This caused
Addie to incorrectly reject meeting times as "already passed" when users
specified times in their local timezone.

The fix compares times within the specified timezone context by:
1. Getting current time formatted in the target timezone
2. Comparing ISO strings directly (lexicographically sortable)

This ensures "9:15 AM ET" is compared against "current time in ET", not UTC.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@bokelley bokelley merged commit 30c9630 into main Jan 15, 2026
5 checks passed
bokelley added a commit that referenced this pull request Jan 16, 2026
* fix: Meeting scheduling timezone comparison bug

When Claude provides a datetime like "2026-01-15T09:15:00" without timezone
info, JavaScript's Date parses it as server local time (UTC). This caused
Addie to incorrectly reject meeting times as "already passed" when users
specified times in their local timezone.

The fix compares times within the specified timezone context by:
1. Getting current time formatted in the target timezone
2. Comparing ISO strings directly (lexicographically sortable)

This ensures "9:15 AM ET" is compared against "current time in ET", not UTC.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* chore: Add changeset for timezone fix

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
bokelley added a commit that referenced this pull request Jan 20, 2026
* fix: Meeting scheduling timezone comparison bug

When Claude provides a datetime like "2026-01-15T09:15:00" without timezone
info, JavaScript's Date parses it as server local time (UTC). This caused
Addie to incorrectly reject meeting times as "already passed" when users
specified times in their local timezone.

The fix compares times within the specified timezone context by:
1. Getting current time formatted in the target timezone
2. Comparing ISO strings directly (lexicographically sortable)

This ensures "9:15 AM ET" is compared against "current time in ET", not UTC.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* chore: Add changeset for timezone fix

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
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