New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: OOO for team events #14503
fix: OOO for team events #14503
Conversation
Thank you for following the naming conventions! 🙏 Feel free to join our discord and post your PR link. |
📦 Next.js Bundle Analysis for @calcom/webThis analysis was generated by the Next.js Bundle Analysis action. 🤖 Sixty-nine Pages Changed SizeThe following pages changed size from the code in this PR compared to its base branch:
DetailsOnly the gzipped size is provided here based on an expert tip. First Load is the size of the global bundle plus the bundle for the individual page. If a user were to show up to your website and land on a given page, the first load size represents the amount of javascript that user would need to download. If Any third party scripts you have added directly to your app using the The "Budget %" column shows what percentage of your performance budget the First Load total takes up. For example, if your budget was 100kb, and a given page's first load size was 10kb, it would be 10% of your budget. You can also see how much this has increased or decreased compared to the base branch of your PR. If this percentage has increased by 20% or more, there will be a red status indicator applied, indicating that special attention should be given to this. If you see "+/- <0.01%" it means that there was a change in bundle size, but it is a trivial enough amount that it can be ignored. |
Current Playwright Test Results Summary✅ 301 Passing - Run may still be in progress, this comment will be updated as current testing workflow or job completes... (Last updated on 04/10/2024 08:39:33pm UTC) Run DetailsRunning Workflow PR Update on Github Actions Commit: f12d130 Started: 04/10/2024 08:35:05pm UTC
|
|
2 Test Cases Affected |
Test Case Results
Test Case | Last 7 days Failures | Last 7 days Flakes |
---|---|---|
user can login & logout succesfully -- future login flow user & logout using dashboard
Retry 2 • Retry 1 • Initial Attempt |
5.47% (17)17 / 311 runsfailed over last 7 days |
24.12% (75)75 / 311 runsflaked over last 7 days |
Login and logout tests -- future Login flow validations -- future Should warn when user does not exist
Retry 1 • Initial Attempt |
0% (0)0 / 309 runsfailed over last 7 days |
1.94% (6)6 / 309 runsflaked over last 7 days |
📄 apps/web/playwright/profile.e2e.ts • 1 Flake
Test Case Results
Test Case | Last 7 days Failures | Last 7 days Flakes |
---|---|---|
Update Profile Can resend verification link if the secondary email is unverified
Retry 1 • Initial Attempt |
3.15% (10)10 / 317 runsfailed over last 7 days |
16.09% (51)51 / 317 runsflaked over last 7 days |
📄 apps/web/playwright/organization/organization-invitation.e2e.ts • 2 Flakes
Top 1 Common Error Messages
|
2 Test Cases Affected |
Test Case Results
Test Case | Last 7 days Failures | Last 7 days Flakes |
---|---|---|
Organization Email not matching orgAutoAcceptEmail nonexisting user invited to a Team inside organization
Retry 1 • Initial Attempt |
2.13% (7)7 / 328 runsfailed over last 7 days |
15.24% (50)50 / 328 runsflaked over last 7 days |
Organization Email matching orgAutoAcceptEmail and a Verified Organization with DNS Setup Done nonexisting user is invited to Org
Retry 1 • Initial Attempt |
0.32% (1)1 / 308 runfailed over last 7 days |
8.12% (25)25 / 308 runsflaked over last 7 days |
📄 apps/web/playwright/teams.e2e.ts • 3 Flakes
Top 1 Common Error Messages
|
3 Test Cases Affected |
Test Case Results
Test Case | Last 7 days Failures | Last 7 days Flakes |
---|---|---|
Teams - NonOrg -- future Team Onboarding Invite Members
Retry 1 • Initial Attempt |
9.76% (32)32 / 328 runsfailed over last 7 days |
28.35% (93)93 / 328 runsflaked over last 7 days |
Teams - NonOrg -- future Email Embeds slots are loading for team event types
Retry 1 • Initial Attempt |
3.66% (12)12 / 328 runsfailed over last 7 days |
1.22% (4)4 / 328 runsflaked over last 7 days |
Teams - NonOrg -- legacy Team Onboarding Invite Members
Retry 1 • Initial Attempt |
0% (0)0 / 327 runsfailed over last 7 days |
0.61% (2)2 / 327 runsflaked over last 7 days |
📄 apps/web/playwright/integrations-stripe.e2e.ts • 1 Flake
Test Case Results
Test Case | Last 7 days Failures | Last 7 days Flakes |
---|---|---|
Stripe integration Can book a paid booking
Retry 1 • Initial Attempt |
2.51% (8)8 / 319 runsfailed over last 7 days |
34.48% (110)110 / 319 runsflaked over last 7 days |
📄 packages/embeds/embed-core/playwright/tests/action-based.e2e.ts • 8 Flakes
Top 1 Common Error Messages
|
8 Test Cases Affected |
Test Case Results
Test Case | Last 7 days Failures | Last 7 days Flakes |
---|---|---|
Popup Tests should open embed iframe on click - Configured with light theme
Retry 1 • Initial Attempt |
0.31% (1)1 / 319 runfailed over last 7 days |
63.01% (201)201 / 319 runsflaked over last 7 days |
Popup Tests should be able to reschedule
Retry 1 • Initial Attempt |
-170.94% (-200)-200 / 117 runsfailed over last 7 days |
170.94% (200)200 / 117 runsflaked over last 7 days |
Popup Tests should open Routing Forms embed on click
Retry 1 • Initial Attempt |
-170.94% (-200)-200 / 117 runsfailed over last 7 days |
170.94% (200)200 / 117 runsflaked over last 7 days |
Popup Tests Floating Button Popup Pro User - Configured in App with default setting of system theme should open embed iframe(Booker Profile Page) with dark theme when configured with dark theme using Embed API
Retry 1 • Initial Attempt |
-172.41% (-200)-200 / 116 runsfailed over last 7 days |
172.41% (200)200 / 116 runsflaked over last 7 days |
Popup Tests Floating Button Popup Pro User - Configured in App with default setting of system theme should open embed iframe according to system theme when configured with 'auto' theme using Embed API
Retry 1 • Initial Attempt |
-172.41% (-200)-200 / 116 runsfailed over last 7 days |
172.41% (200)200 / 116 runsflaked over last 7 days |
Popup Tests Floating Button Popup Pro User - Configured in App with default setting of system theme should open embed iframe according to system theme when no theme is configured through Embed API
Retry 1 • Initial Attempt |
-170.09% (-199)-199 / 117 runsfailed over last 7 days |
170.94% (200)200 / 117 runsflaked over last 7 days |
Popup Tests prendered embed should be loaded and apply the config given to it
Retry 1 • Initial Attempt |
-172.41% (-200)-200 / 116 runsfailed over last 7 days |
172.41% (200)200 / 116 runsflaked over last 7 days |
Popup Tests Floating Button Popup Pro User - Configured in App with default setting of system theme should open embed iframe(Event Booking Page) with dark theme when configured with dark theme using Embed API
Retry 1 • Initial Attempt |
-172.41% (-200)-200 / 116 runsfailed over last 7 days |
172.41% (200)200 / 116 runsflaked over last 7 days |
📄 packages/embeds/embed-core/playwright/tests/inline.e2e.ts • 1 Flake
Test Case Results
Test Case | Last 7 days Failures | Last 7 days Flakes |
---|---|---|
Inline Iframe Inline Iframe - Configured with Dark Theme
Retry 1 • Initial Attempt |
0.62% (2)2 / 321 runsfailed over last 7 days |
52.02% (167)167 / 321 runsflaked over last 7 days |
The latest updates on your projects. Learn more about Vercel for Git ↗︎ 4 Ignored Deployments
|
...groupedOOO, | ||
}).map( | ||
// remove 0-length overrides && OOO dates that were kept to cancel out working dates until now. | ||
(ranges) => ranges.filter((range) => range.start.valueOf() !== range.end.valueOf()) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OOO always starts and end on the same time (handled the same way as a full-day date override)
schedulingType: SchedulingType | null | ||
): DateRange[] => { | ||
const isTeamEvent = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for team events we want to use the date ranges that already take into account OOO days
@@ -532,7 +539,7 @@ export async function getAvailableSlots({ input, ctx }: GetScheduleOptions): Pro | |||
frequency: eventType.slotInterval || input.duration || eventType.length, | |||
organizerTimeZone: | |||
eventType.timeZone || eventType?.schedule?.timeZone || allUsersAvailability?.[0]?.timeZone, | |||
datesOutOfOffice: allUsersAvailability[0]?.datesOutOfOffice, | |||
datesOutOfOffice: !isTeamEvent ? allUsersAvailability[0]?.datesOutOfOffice : undefined, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For team events, OOO days are already included aggregatedAvailability
@@ -357,7 +357,7 @@ export async function ensureAvailableUsers( | |||
} | |||
|
|||
for (const user of eventType.users) { | |||
const { dateRanges, busy: bufferedBusyTimes } = await getUserAvailability( | |||
const { oooExcludedDateRanges: dateRanges, busy: bufferedBusyTimes } = await getUserAvailability( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we never want a user to be booked when marked as OOO
Graphite Automations"Add consumer team as reviewer" took an action on this PR • (04/10/24)1 reviewer was added to this PR based on Keith Williams's automation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does this PR do?
Fixes #14507
This fixes availabilities for team events when users have OOO entries. With this PR we now already subtract the OOO days from the user's date ranges and there are no OOO emojis or redirection buttons shown.
Type of change
How should this be tested?