diff --git a/services/calendar_impl.py b/services/calendar_impl.py index 6afae80..64dd418 100644 --- a/services/calendar_impl.py +++ b/services/calendar_impl.py @@ -376,10 +376,18 @@ class SqlCalendarService: async def adopt_entries_for_user( self, session: AsyncSession, user_id: int, session_id: str, ) -> None: - """Adopt anonymous calendar entries for a logged-in user.""" + """Adopt anonymous calendar entries for a logged-in user. + + Only deletes stale *pending* entries for the user — confirmed/ordered + entries must be preserved. + """ await session.execute( update(CalendarEntry) - .where(CalendarEntry.deleted_at.is_(None), CalendarEntry.user_id == user_id) + .where( + CalendarEntry.deleted_at.is_(None), + CalendarEntry.user_id == user_id, + CalendarEntry.state == "pending", + ) .values(deleted_at=func.now()) ) cal_result = await session.execute(