fix: incorrect operationId in password reset callback endpoint#9072
Merged
ping-maxwell merged 4 commits intobetter-auth:mainfrom Apr 9, 2026
Merged
Conversation
@better-auth/api-key
better-auth
auth
@better-auth/core
@better-auth/drizzle-adapter
@better-auth/electron
@better-auth/expo
@better-auth/i18n
@better-auth/kysely-adapter
@better-auth/memory-adapter
@better-auth/mongo-adapter
@better-auth/oauth-provider
@better-auth/passkey
@better-auth/prisma-adapter
@better-auth/redis-storage
@better-auth/scim
@better-auth/sso
@better-auth/stripe
@better-auth/telemetry
@better-auth/test-utils
commit: |
09eb044 to
0d1c7e0
Compare
ping-maxwell
requested changes
Apr 9, 2026
Member
ping-maxwell
left a comment
There was a problem hiding this comment.
just the changeset should be updated, the rest looks good
operationId in password reset callback endpoint
fixes broken authClient.forgetPassword() call in expo demo (method does not exist on client) by switching to authClient.requestPasswordReset()
0d1c7e0 to
a4c8382
Compare
ping-maxwell
approved these changes
Apr 9, 2026
Merged
Contributor
|
This issue has been locked as it was closed more than 7 days ago. If you're experiencing a similar problem or you have additional context, please open a new issue and reference this one. |
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Fixes an incorrect top-level
operationIdonrequestPasswordResetCallback. The top-level field feeds the OpenTelemetry span attributeATTR_OPERATION_ID(viagetOperationIdinapi/to-auth-endpoints.ts), while the OpenAPI generator readsmetadata.openapi.operationId. On this route they were out of sync: OpenAPI saidresetPasswordCallbackbut OTel was taggedforgetPasswordCallback, a leftover from the old/forget-passwordroute name. Every other endpoint that sets both fields (e.g.email-verification.ts:82+96,oauth-proxy/index.ts:138+143) keeps them matching; this route was the only outlier.Bundled a
forgettoforgotcleanup pass on places unrelated to the deprecated/forget-password/email-otpflow:packages/better-auth/src/api/routes/password.ts:156: top-leveloperationIdtoresetPasswordCallbackpackages/better-auth/src/api/routes/password.test.ts:6:describe("forget password")todescribe("forgot password")demo/nextjs:(auth)/forget-password/directory,forget-password-form.tsx,Forget*identifiers,sign-in-form.tsxhrefdemo/expo:forget-password.tsxfile,index.tsxroute push and button text. Also fixes a brokenauthClient.forgetPassword(...)call (method does not exist on the current client) by switching toauthClient.requestPasswordReset(...)Untouched on purpose: the deprecated
/forget-password/email-otpendpoint, its"forget-password"OTP type literal, theforget-password-otp-identifier prefix, theforgetPasswordEmailOTPexport, the rate-limiter matcher, the email-otp docs that describe those literals, and the1-4.mdx/1-5.mdxblog history. Renaming any of those would invalidate stored OTPs and break consumers still on the deprecated path.