🐛 fix(recurring-events): create instances for someday recurrence#1080
Merged
victor-enogwe merged 7 commits intomainfrom Oct 8, 2025
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR updates the recurrence logic for someday events by creating instance events alongside their base events. Previously, someday recurring events would only create base events without instances.
- Added support for creating someday event instances when base events are created
- Updated event categorization to include
RECURRENCE_INSTANCE_SOMEDAYcategory - Modified filtering logic to exclude base events from someday queries while including instances
Reviewed Changes
Copilot reviewed 15 out of 15 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| packages/core/src/util/event/event.util.ts | Refactored event type checking functions for better type safety |
| packages/core/src/types/event.types.ts | Added new RECURRENCE_INSTANCE_SOMEDAY category and updated documentation |
| packages/core/src/mocks/v1/events/events.someday.1.ts | Updated mock data to use ObjectId for better test consistency |
| packages/core/src/mocks/v1/events/events.22jan.ts | Updated mock data to use ObjectId for better test consistency |
| packages/backend/src/sync/services/sync/compass.sync.processor.ts | Updated transition handling to support someday instance events |
| packages/backend/src/sync/services/sync/tests/compass-sync-processor-this-event/instance.test.ts | Updated test expectations for someday instance creation |
| packages/backend/src/sync/services/sync/tests/compass-sync-processor-this-event/base.test.ts | Restructured tests to validate base event edit restrictions |
| packages/backend/src/event/services/event.service.util.ts | Simplified filtering logic to exclude base events consistently |
| packages/backend/src/event/services/event.service.ts | Modified instance creation logic to support someday events |
| packages/backend/src/event/services/event.find.test.ts | Updated tests to validate new someday instance behavior |
| packages/backend/src/event/classes/compass.event.parser.ts | Enhanced parser to handle someday instance creation and updates |
| packages/backend/src/event/classes/compass.event.parser.test.util.ts | Updated test utility to expect instances for someday events |
| packages/backend/src/event/classes/compass.event.parser.test.ts | Added proper import and updated test expectations |
| packages/backend/src/event/classes/compass.event.generator.ts | Added validation to prevent direct base event editing |
| packages/backend/src/common/services/mongo.service.ts | Made ObjectId parameter optional for better flexibility |
packages/backend/src/sync/services/sync/compass.sync.processor.ts
Outdated
Show resolved
Hide resolved
tyler-dane
reviewed
Oct 7, 2025
packages/backend/src/sync/services/sync/compass.sync.processor.ts
Outdated
Show resolved
Hide resolved
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
This PR updates the recurrence logic for someday events.
Someday event instances are now created alongside their base event.
Use Case
closes #1058