Skip to content

Keep calendar events that start at the same time - #632

Open
clstaudt wants to merge 1 commit into
mainfrom
keep-events-with-same-start
Open

clstaudt wants to merge 1 commit into
mainfrom
keep-events-with-same-start

Conversation

@clstaudt

@clstaudt clstaudt commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Merging calendar events kept only one of several events that start at the same minute, so tracked hours vanished from timesheets, invoices and Planned. It happened on re-imports, when adding a second calendar, and for anyone with a manual entry.

An earlier event is now replaced only by a new one that matches it entirely: start, end, duration, all-day, title, tag and source. Re-importing stays idempotent. Neither calendar source gives Tuttle an event id, so an event whose title or times changed appears next to its old copy: visible, rather than lost.

馃 Generated with Claude Code

Calendar rows were deduplicated on their start time alone. Of two
different events starting at the same minute, such as two all-day events
on one day or meetings from two imported calendars, only one was kept as
soon as a calendar was imported again, a second one was added, or any
time had been logged by hand. The other event's hours silently went
missing from timesheets, invoices and Planned.

A re-imported event now replaces its earlier copy only when start, end,
all-day, title and tag all match. Neither calendar source gives Tuttle
an event id, so an event whose title or times changed sits next to its
old copy instead of replacing it. Syncing a system calendar replaces all
of its rows, which clears such copies.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@clstaudt
clstaudt added this pull request to stack #634 October 18, 2026 20:24
@clstaudt clstaudt changed the title keep events with same start Keep calendar events that start at the same time Oct 18, 2026

This branch has not been deployed

No deployments
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