Conversation
|
@retrogtx is attempting to deploy a commit to the cal Team on Vercel. A member of the Team first needs to authorize it. |
Graphite Automations"Add consumer team as reviewer" took an action on this PR • (04/13/25)1 reviewer was added to this PR based on Keith Williams's automation. "Add community label" took an action on this PR • (04/13/25)1 label was added to this PR based on Keith Williams's automation. |
There was a problem hiding this comment.
mrge found 16 issues across 16 files. View them in mrge.io
Merge Conflict Resolution - Push FailedI successfully resolved all merge conflicts between Files resolved:
Validation passed: Merge commit shows exactly 23 files, matching the original PR file count. However, I was unable to push the resolved merge to the fork. The The PR author (@retrogtx) will need to resolve the conflicts manually or grant push access to the fork. |
Devin AI is resolving merge conflictsThis PR has merge conflicts with the Devin will:
If you prefer to resolve conflicts manually, you can close the Devin session and handle it yourself. |
Merge Conflict Resolution AttemptedI successfully resolved the merge conflicts between the What was done:
Why push failed:Authentication failed when attempting to push to the fork repository For the PR author (@retrogtx):To resolve the conflicts yourself, you can run: git fetch upstream main
git merge upstream/mainThe two conflicts to resolve are:
|
There was a problem hiding this comment.
2 issues found across 1 file (changes from recent commits).
Prompt for AI agents (all issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="apps/web/modules/signup-view.tsx">
<violation number="1">
P3: Use the centralized WEBAPP_URL constant instead of reading process.env.NEXT_PUBLIC_WEBAPP_URL directly so protocol normalization/fallbacks remain consistent.</violation>
<violation number="2">
P2: Microsoft signup entrypoint was removed from the signup UI. The component no longer accepts `isOutlookLoginEnabled` and only renders a Google OAuth button, so users have no way to start a Microsoft/Azure AD signup from this view.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
There was a problem hiding this comment.
1 issue found across 2 files (changes from recent commits).
Prompt for AI agents (all issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="apps/web/modules/signup-view.tsx">
<violation number="1" location="apps/web/modules/signup-view.tsx:844">
P2: `searchQueryParams.set("email", prepopulateFormValues?.email)` can serialize to `email=undefined` when `token` is present but `prepopulateFormValues` is null, causing a bad login hint in the Microsoft SSO URL. Guard on a defined email before setting the param.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
Devin AI is addressing Cubic AI's review feedbackA Devin session has been created to address the issues identified by Cubic AI. |
| clientId: OUTLOOK_CLIENT_ID!, | ||
| clientSecret: OUTLOOK_CLIENT_SECRET!, | ||
| tenantId: process.env.AZURE_AD_TENANT_ID, | ||
| allowDangerousEmailAccountLinking: true, |
There was a problem hiding this comment.
i'm working on cleaning this up, but yes this is not okay
There was a problem hiding this comment.
if you're talking about allowDangerousEmailAccountLinking: true then that is alright because we follow the same approach for GoogleProvider as well
| AzureADProvider({ | ||
| clientId: OUTLOOK_CLIENT_ID!, | ||
| clientSecret: OUTLOOK_CLIENT_SECRET!, | ||
| tenantId: process.env.AZURE_AD_TENANT_ID, |
There was a problem hiding this comment.
is this a required field? if not, I wouldn't even introduce such an env var
There was a problem hiding this comment.
i'm working on cleaning this up, but yes this is not okay
Ryukemeister
left a comment
There was a problem hiding this comment.
think we'll just close this one and go with #28080 instead
What does this PR do?
Enables Microsoft authentication for Cal.com, allowing users to sign up and log in using their Microsoft accounts (Azure AD). This builds upon #16873 by @hbjORbj.
The flow is exactly like google except for one case, in google we add google meet as a conferencing tool. however in microsoft we don't add a conferencing tool, mainly for two reasons: 1. it requires additional permissions unlike google meet 2. MS teams which is conferencing tool for microsoft is only available for school and org accounts unlike meet which is available for all accounts be it free or org.
Fixes #27060
Visual Demo:
Microsoft.login.with.onboarding.v3.mov
Key Changes
Authentication:
IdentityProvider.AZUREADenum value with database migrationxms_edovclaim validation for email domain verification (handles work/school and personal accounts)azure-adproviderUI:
Profile Features:
Infrastructure:
OUTLOOK_LOGIN_ENABLED,OUTLOOK_API_CREDENTIALS,AZURE_AD_TENANT_ID"microsoft"→signIn("azure-ad")Environment Variables
How to Test
{WEBAPP_URL}/api/auth/callback/azure-adOUTLOOK_LOGIN_ENABLED=true