Skip to content

refactor: share hidden-draft strip, pointer gates, and outlook prefer headers - #4835

Merged
tyler-dane merged 1 commit into
mainfrom
cursor/code-simplification-6bc9
Oct 26, 2026
Merged

tyler-dane merged 1 commit into
mainfrom
cursor/code-simplification-6bc9

Conversation

@cursor

@cursor cursor Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

Fixes #

What and why

Nightly simplification of merges after #4795 and #4827. Week draft decks reuse createTimedEventLayout after withoutHiddenEventId strips the active draft, matching Day. Empty-grid clicks share the mute, lock, and pill gates. Graph Prefer UTC headers live in one constant. seriesWriteKey reuses seriesIdOf, remainder-series stripRuleBounds sits next to truncateSeriesRulesBefore, and toRRule inlines the one-line wrapper. No product behavior change.

Verify

VERDICT: PASS

Selected local checks: test:sync:fast, test:web, type-check, lint, knip, test:a11y, test:e2e.

Open in Web View Automation 

Note

Low Risk
Refactor-only consolidation with tests on new helpers; Microsoft constants preserve UTC Prefer behavior; touch areas (layout, sync) are broad but described as behavior-neutral.

Overview
Consolidates duplicated calendar-web and Microsoft sync logic after recent merges, with no intended behavior change.

Hidden drafts & grid layout: Adds withoutHiddenEventId so an active draft is removed from the hidden-id set while still laying out like a normal event. Day layers and Week getActiveTimedDraftDeckLayout use it; Week timed draft decks now call createTimedEventLayout with that set (aligned with Day) instead of hand-filtering hidden partners.

Pointer hints: Extracts arePointerHintEnvironmentGatesClosed (mute, dismiss, app lock, pill) for shouldTeachPointerHint and empty-grid slot/all-day intents, replacing a duplicate Week-only gate.

Recurrence / optimistic edits: Moves stripRuleBounds next to truncateSeriesRulesBefore with tests; seriesWriteKey uses seriesIdOf. Several optimistic mutation helpers are module-private; Microsoft toRRule drops a one-line wrapper.

Microsoft Graph: Centralizes outlook.timezone and paged-event Prefer strings in microsoft-http.constants and wires reader, writer, normalizer, and master-categories through MICROSOFT_GRAPH_OUTLOOK_TIMEZONE (still UTC).

Reviewed by Cursor Bugbot for commit d7e6f92. Bugbot is set up for automated code reviews on this repo. Configure here.

… headers

Week draft decks reuse createTimedEventLayout after stripping the active draft from the hidden set, the same helper Day already used. Empty-grid clicks share the mute/lock/pill gates. Graph Prefer UTC headers and seriesWriteKey stop duplicating nearby helpers.

Co-authored-by: tyler <tyler@switchback.tech>
@tyler-dane tyler-dane added the agent-automerge Agent-loop finished; merge-guard may squash-merge label Oct 26, 2026
@tyler-dane
tyler-dane marked this pull request as ready for review October 26, 2026 01:18
@tyler-dane
tyler-dane enabled auto-merge October 26, 2026 01:18
@github-actions

Copy link
Copy Markdown
Contributor

Boot bundle: 527.3 KB gzip (+0.0 KB vs main)

@tyler-dane
tyler-dane added this pull request to the merge queue Oct 26, 2026
Merged via the queue into main with commit 0e3f5a5 Oct 26, 2026
39 checks passed
@tyler-dane
tyler-dane deleted the cursor/code-simplification-6bc9 branch October 26, 2026 01:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent-automerge Agent-loop finished; merge-guard may squash-merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants