clarify managed auth reauthentication scope - #542
Conversation
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Automations to automatically generate PRs for you. |
94d51db to
a2b420d
Compare
There was a problem hiding this comment.
Stale comment
Risk assessment: Very Low
Re-evaluated after
ready_for_review. Head commit is stilla2b420d. Risk is unchanged.Approval stands. This automation already approved that commit. No re-approval and no dismissal.
Evidence (diff only)
- 15
.mdxfiles, 91 insertions / 80 deletions. All are Mintlify documentation pages.- No application code,
docs.json, workflows, CI, OpenAPI, or infrastructure files.- No CODEOWNERS file in the repo, so codeowner review is not required.
Wording updates only:
- Narrows automatic reauthentication copy to stored credentials, or stored credentials plus a saved TOTP secret.
- Replaces “already logged in” with “loads saved authentication state.”
- Adds CLI flag rows on the Managed Auth CLI reference page.
- Softens FAQ / overview product claims (including removing the explicit passkey warning) in favor of scoped reauth language and support pointers.
Why Very Low
- Documentation-only; no production logic, auth implementation, billing, or permission changes.
- No shared services or infra impact.
- Blast radius is public docs copy. Incorrect claims would be a docs accuracy issue, not a runtime one.
- These pages are customer-facing docs, not model instruction / prompt files.
Risk did not increase. Prior approval remains in effect.
Sent by Cursor Automation: Assign PR reviewers
masnwilliams
left a comment
There was a problem hiding this comment.
went through this — overall the direction is right. we were implying that every interactive login can replay unattended, and narrowing that is overdue.
my main reaction is that a couple of the specifics narrow past what we actually ship today, and the one field we tell people to read is described a bit differently than the api computes it. flagged those inline. the rest of the diff reads well to me and i'd leave it alone.
two worth pulling up here:
the totp framing. #529 moved this off "the credential has no totp secret" on purpose. can_reauth comes back true for a totp flow whether or not a secret is stored, and we do attempt the reauth — that optimism is deliberate. this pr reintroduces secret-presence as the headline promise in ~8 places, so it under-describes what the product actually does. suggest reusing #529's wording.
can_reauth_reason. we already return a typed reason alongside can_reauth, with a value per outcome, split into "reauth is possible" and "a human has to finish the login" — it's in the api reference, and the dashboard already maps each one to a human-readable explanation. documenting that is both more accurate than the matrix and means we don't hand-maintain a second description of the same policy that can drift. fine as a follow-up if you'd rather not expand this pr.
none of this is blocking imo, i just want the claims to match current behavior before it ships.
| ## SSO/OAuth Support | ||
|
|
||
| Sites with "Sign in with Google/GitHub/Microsoft" are supported. The user completes the OAuth flow with the provider, and the authenticated session is automatically saved to the Kernel profile. | ||
| Managed Auth supports common "Sign in with Google/GitHub/Microsoft" flows. The user completes the OAuth flow with the provider, and Kernel saves the authenticated session to the profile. Automatic reauthentication depends on the provider's login requirements. |
There was a problem hiding this comment.
Automatic reauthentication depends on the provider's login requirements.
is there anywhere we can link to here, like a place that shows how we decide if a connection can/cannot review
| | Login flow | Automatic reauthentication | | ||
| | --- | --- | | ||
| | Stored credentials | Supported | | ||
| | Stored credentials and TOTP | Supported when the TOTP secret is saved | |
There was a problem hiding this comment.
can_reauth is true for a totp flow regardless of whether a secret is stored, and we'll go ahead and attempt the reauth — that's intentional, not a gap. #529 changed this exact wording four days ago for the same reason.
suggest matching it: the outcome is "an authenticator code kernel couldn't provide automatically", not "no secret saved". the same sentence shows up in ~7 other files in this diff, so worth doing in one pass.
| ## Can this connection auto-reauth? | ||
|
|
||
| Check the `can_reauth` boolean on a connection. It's `true` only when **both** of these hold: | ||
| Check the `can_reauth` boolean on a connection. It is `true` when a credential is linked and the recorded login flow supports automatic reauthentication. |
There was a problem hiding this comment.
two things on this line.
can_reauth also requires a prior successful login — that's the most common reason it comes back false on a fresh connection, and we don't document it anywhere today.
and the table below reads as this boolean's semantics when it's really describing whether reauth will succeed. those come apart (see the totp row). worth stating that can_reauth is eligibility to attempt, not a success prediction.
| | --- | --- | | ||
| | Stored credentials | Supported | | ||
| | Stored credentials and TOTP | Supported when the TOTP secret is saved | | ||
| | Additional verification or approval requirements | [Contact support](/info/support) to find the best configuration | |
There was a problem hiding this comment.
an account picker blocks unattended reauth but isn't really "verification or approval" — we surface it as account_choice_required, and it's in the error table further down this page. the old text's "or other external action" at least caught it.
| <Warning> | ||
| Passkey-based authentication (e.g., Google accounts with passkeys enabled) is not currently supported. If a user's SSO provider requires a passkey, the login will fail with the `unsupported_auth_method` error code. | ||
| </Warning> | ||
| Managed Auth supports common credential, SSO, and multi-step login flows. Automatic reauthentication is supported when the login requires only stored credentials, or stored credentials and TOTP with a saved secret. Authentication requirements vary by site, so [contact support](/info/support) if your flow uses additional verification or approval steps. |
There was a problem hiding this comment.
i'd keep the passkey line here. unsupported_auth_method is a code we return today for passkey-only logins, and it's already in the error table on the lifecycle page with the recovery step.
pointing at that is more useful than routing to support — this is the exact thing people hit when a google account has passkeys turned on, and it's answerable without us.
| - **SSO/OAuth support** - "Sign in with Google/GitHub/Microsoft" buttons work out-of-the-box, with common SSO provider domains automatically allowed | ||
| - **2FA/OTP handling** - TOTP codes automated with automatic retry on expiry, SMS/email/push OTP are supported | ||
| - **Broad site coverage** - Login pages are discovered and handled across common website login flows | ||
| - **SSO/OAuth support** - Common provider domains are allowed by default, with support for custom providers |
There was a problem hiding this comment.
"with support for custom providers" reads like a custom provider works out of the box — its domain would still need adding to allowed_domains, only the common ones are allowed by default.
also the bullet doesn't say sso actually works anymore, just that domains are allowlisted.
| | `--health-check-interval <seconds>` | Seconds between health checks. | | ||
| | `--health-checks` | Enable periodic health checks. | | ||
| | `--no-health-checks` | Disable periodic health checks. | | ||
| | `--auto-reauth` | Permit automatic reauthentication for eligible flows. | |
There was a problem hiding this comment.
--auto-reauth and --no-auto-reauth are mutually exclusive — passing both errors out, same for the health-check pair. worth a note since both rows sit next to each other.
minor, but the two rows also describe the same flag from different angles ("for eligible flows" vs "after an expired session is detected").
a2b420d to
3d6ea2b
Compare
There was a problem hiding this comment.
Stale comment
Risk assessment: Very Low
Re-evaluated after synchronize. Head is now
3d6ea2b(previously approved commit wasa2b420d).Risk is unchanged. Approval stands. This automation already approved the PR. No re-approval and no dismissal.
Evidence (diff only)
- 15
.mdxfiles, 92 insertions / 77 deletions. All are Mintlify documentation pages.- No application code,
docs.json, workflows, CI, OpenAPI, or infrastructure files.- No CODEOWNERS file in the repo, so codeowner review is not required.
Wording updates only:
- Narrows automatic reauthentication copy to credential-only flows, with TOTP attempted when Kernel can supply a code.
- Treats
can_reauthas eligibility to attempt reauth and points tocan_reauth_reason.- Replaces “already logged in” with “loads saved authentication state.”
- Documents existing CLI flags (
--no-health-checks,--no-auto-reauth, and the matching enable/disable pairs) plus mutual exclusivity.- Softens product claims and routes additional auth requirements to support. Passkey-only remains documented as unsupported.
Why Very Low
- Documentation-only; no production logic, auth implementation, billing, or permission changes.
- No shared services or infra impact.
- Blast radius is public docs copy. Incorrect claims would be a docs accuracy issue, not a runtime one.
- These pages are customer-facing docs, not model instruction / prompt files.
Risk did not increase. Prior approval remains in effect.
Sent by Cursor Automation: Assign PR reviewers
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Want higher recall? High effort reviews run extra passes and find more bugs. A team admin can switch effort levels in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 3d6ea2b. Configure here.
3d6ea2b to
d7d6f14
Compare
There was a problem hiding this comment.
Stale comment
Risk assessment: Very Low
Re-evaluated after synchronize. Head is now
d7d6f14(previously approved commit wasa2b420d; last assessed head was3d6ea2b).Risk is unchanged. Approval stands. This automation already approved the PR. No re-approval and no dismissal.
Evidence (diff only)
- 15
.mdxfiles, 108 insertions / 77 deletions. All are Mintlify documentation pages.- Incremental change since last assessment: 8
.mdxfiles, 28 insertions / 12 deletions of wording only.- No application code,
docs.json, workflows, CI, OpenAPI, or infrastructure files.- No CODEOWNERS file in the repo, so codeowner review is not required.
Wording updates only:
- Narrows automatic reauthentication copy to credential-only flows, with TOTP attempted when Kernel can supply a code.
- Treats
can_reauthas eligibility to attempt reauth and points tocan_reauth_reasonvia an absolute API reference URL.- Replaces “already logged in” with “loads saved authentication state.”
- Documents existing CLI flags (
--no-health-checks,--no-auto-reauth, and the matching enable/disable pairs) plus mutual exclusivity.- Softens product claims. Passkey-only remains documented as unsupported, with a self-service recovery path. Support links are general “learn more” pointers, not a change to product behavior.
Why Very Low
- Documentation-only; no production logic, auth implementation, billing, or permission changes.
- No shared services or infra impact.
- Blast radius is public docs copy. Incorrect claims would be a docs accuracy issue, not a runtime one.
- These pages are customer-facing docs, not model instruction / prompt files.
Risk did not increase. Prior approval remains in effect.
Sent by Cursor Automation: Assign PR reviewers
d7d6f14 to
d83ec69
Compare
There was a problem hiding this comment.
Stale comment
Risk assessment: Very Low
Re-evaluated after synchronize. Head is now
d83ec69(previously approved commit wasa2b420d; last assessed head wasd7d6f14).Risk is unchanged. Approval stands. This automation already approved the PR. No re-approval and no dismissal.
Evidence (diff only)
- 14
.mdxfiles, 95 insertions / 76 deletions. All are Mintlify documentation pages.- Incremental change since last assessment: 9
.mdxfiles, 15 insertions / 27 deletions of wording only.index.mdxis no longer in the PR (reverted tomain).- No application code,
docs.json, workflows, CI, OpenAPI, or infrastructure files.- No CODEOWNERS file in the repo, so codeowner review is not required.
Wording updates only:
- Narrows automatic reauthentication copy to credential-only flows, with TOTP attempted when Kernel can supply a code.
- Treats
can_reauthas eligibility to attempt reauth and points tocan_reauth_reasonvia an absolute API reference URL.- Replaces “already logged in” with “loads saved authentication state.”
- Documents existing CLI flags (
--no-health-checks,--no-auto-reauth, and the matching enable/disable pairs on one row each).- Softens product claims. Passkey-only remains documented as unsupported, with a self-service recovery path. Several support links were removed in this update.
Why Very Low
- Documentation-only; no production logic, auth implementation, billing, or permission changes.
- No shared services or infra impact.
- Blast radius is public docs copy. Incorrect claims would be a docs accuracy issue, not a runtime one.
- These pages are customer-facing docs, not model instruction / prompt files.
Risk did not increase. Prior approval remains in effect.
Sent by Cursor Automation: Assign PR reviewers
d83ec69 to
412bb9e
Compare
There was a problem hiding this comment.
Stale comment
Risk assessment: Very Low
Re-evaluated after synchronize. Head is now
412bb9e(previously approved commit wasa2b420d; last assessed head wasd83ec69). History was rewritten; the current tree vsmainis still documentation-only.Risk is unchanged. Approval stands. This automation already approved the PR. No re-approval and no dismissal.
Evidence (diff only)
- 14
.mdxfiles, 95 insertions / 76 deletions. All are Mintlify documentation pages.- No application code,
docs.json, workflows, CI, OpenAPI, or infrastructure files.- No CODEOWNERS file in the repo, so codeowner review is not required.
Wording updates only:
- Narrows automatic reauthentication copy to credential-only flows, with TOTP attempted when Kernel can supply a code.
- Treats
can_reauthas eligibility to attempt reauth and points tocan_reauth_reasonvia an absolute API reference URL.- Replaces “already logged in” with “loads saved authentication state.”
- Documents existing CLI flags (
--no-health-checks,--no-auto-reauth, and the matching enable/disable pairs on one row each).- Softens product claims. Passkey-only remains documented as unsupported, with a self-service recovery path.
Why Very Low
- Documentation-only; no production logic, auth implementation, billing, or permission changes.
- No shared services or infra impact.
- Blast radius is public docs copy. Incorrect claims would be a docs accuracy issue, not a runtime one.
- These pages are customer-facing docs, not model instruction / prompt files.
Risk did not increase. Prior approval remains in effect.
Sent by Cursor Automation: Assign PR reviewers
There was a problem hiding this comment.
Stale comment
Risk assessment: Very Low
Re-evaluated after synchronize. Head is now
e51bb62(previously approved commit wasa2b420d; last assessed head was412bb9e).Risk is unchanged. Approval stands. This automation already approved the PR. No re-approval and no dismissal.
Evidence (diff only)
- 14
.mdxfiles, 89 insertions / 76 deletions. All are Mintlify documentation pages.- Incremental change since last assessment: 3
.mdxfiles, 6 deletions. Removed three "contact support" sentences fromauth/credentials.mdx,auth/faq.mdx, andauth/hosted-ui.mdx.- No application code,
docs.json, workflows, CI, OpenAPI, or infrastructure files.- No CODEOWNERS file in the repo, so codeowner review is not required.
Wording updates only:
- Narrows automatic reauthentication copy to credential-only flows, with TOTP attempted when Kernel can supply a code.
- Treats
can_reauthas eligibility to attempt reauth and points tocan_reauth_reasonvia an absolute API reference URL.- Replaces “already logged in” with “loads saved authentication state.”
- Documents existing CLI flags (
--no-health-checks,--no-auto-reauth, and the matching enable/disable pairs on one row each).- Softens product claims. Passkey-only remains documented as unsupported, with a self-service recovery path.
Why Very Low
- Documentation-only; no production logic, auth implementation, billing, or permission changes.
- No shared services or infra impact.
- Blast radius is public docs copy. Incorrect claims would be a docs accuracy issue, not a runtime one.
- These pages are customer-facing docs, not model instruction / prompt files.
Risk did not increase. Prior approval remains in effect.
Sent by Cursor Automation: Assign PR reviewers
There was a problem hiding this comment.
Stale comment
Risk assessment: Very Low
Re-evaluated after synchronize. Head is now
df5f289(previously approved commit wasa2b420d; last assessed head wase51bb62).Risk is unchanged. Approval stands. This automation already approved the PR. No re-approval and no dismissal.
Evidence (diff only)
- 14
.mdxfiles, 92 insertions / 79 deletions. All are Mintlify documentation pages.- Incremental change since last assessment: 5
.mdxfiles, comment/copy wording only (example comments, FAQ/overview/create sentences).- No application code,
docs.json, workflows, CI, OpenAPI, or infrastructure files.- No CODEOWNERS file in the repository, so codeowner review is not required.
- These pages are product docs, not LLM instruction or system-prompt files.
Why Very Low
Documentation-only wording updates that narrow Managed Auth reauthentication claims and document existing CLI flags. No production logic, auth implementation, or shared-system changes.
Sent by Cursor Automation: Assign PR reviewers
df5f289 to
d02d4f6
Compare
There was a problem hiding this comment.
Risk assessment: Very Low
Re-evaluated after synchronize. Head is now d02d4f6 (previously approved commit was a2b420d; last assessed head was df5f289). History was rewritten; the current tree vs main is still documentation-only.
Risk is unchanged. Approval stands. This automation already approved the PR. No re-approval and no dismissal.
Evidence (diff only)
- 14
.mdxfiles, 92 insertions / 79 deletions. All are Mintlify documentation pages. - Incremental change since last assessment: 5
.mdxfiles, comment/copy wording only (auth/credentials.mdx,auth/faq.mdx,auth/overview.mdx,browsers/faq.mdx,introduction/create.mdx). - No application code,
docs.json, workflows, CI, OpenAPI, or infrastructure files. - No CODEOWNERS file in the repository, so codeowner review is not required.
- These pages are product docs, not LLM instruction or system-prompt files.
Why Very Low
Documentation-only wording updates that narrow Managed Auth reauthentication claims and document existing CLI flags. No production logic, auth implementation, or shared-system changes.
Sent by Cursor Automation: Assign PR reviewers



context
managed auth documentation currently places automatic reauthentication beside broader interactive login capabilities without consistently defining the automatic path. several pages also describe saved profile state as a guaranteed active login.
this can imply that every supported interactive login can run again unattended. the product promise is narrower: automatic reauthentication covers credential-only flows and attempts to provide totp codes when needed.
changes
can_reauthas eligibility to attempt reauthentication and linkcan_reauth_reasonas the canonical explanationalternatives considered
a mechanism-by-mechanism public limitations matrix would be more exhaustive, but it would repeat implementation details across customer-facing pages and lead with unsupported cases. this change keeps the public promise specific and offers support for readers who want help using managed auth.
testing and validation
mint broken-linksmint dev --port 3005and verified the affected routes returned 200can_reauth_reasonapi reference link resolves successfullygit diff --checkNote
Low Risk
Documentation-only wording and CLI flag reference updates; no runtime or API behavior changes in this diff.
Overview
This PR tightens Managed Auth docs so automatic reauthentication is described as a narrow, credential-based capability (plus TOTP when Kernel can supply codes), not as a blanket guarantee that every interactive login can run unattended again.
Across overview, configuration, lifecycle, credentials, hosted UI, programmatic, profiles, FAQ, 1Password, pricing, browser pools/FAQ, and CLI reference, copy now consistently says Kernel may reauthenticate eligible flows, distinguishes saved profile authentication state from “always logged in,” and softens absolutes on SSO/OAuth and site coverage.
Connection lifecycle updates are the deepest:
can_reauthis framed as eligibility to attempt (with a prior successful login, linked credentials, and no blocking requirement),can_reauth_reasonis linked to the API reference, and recovery guidance for flows needing human input is reframed without implying unattended replay.CLI docs newly document
--no-health-checks/--no-auto-reauthonconnections createand the--health-checks/--auto-reauthtoggle pairs onconnections update.Reviewed by Cursor Bugbot for commit d02d4f6. Bugbot is set up for automated code reviews on this repo. Configure here.