Session is null in Nextjs 15 middleware (Express backend) only in prod
middleware.ts
```ts...crossSubDomainCookies and defaultCookieAttributesIssue with better-auth v1.3.27 infering values

Email Sign-in path
Suddenly I started getting an error 422

Organization hooks (afterDelete)
afterDeleteOrganization hook, since the docs mention it takes a request as the second parameter — but it doesn’t seem to exist in the actual code.
Does anyone know what’s going on here? Could this be a docs issue, or something related to the types? Also, if there’s a better or more proper way to handle this scenario, I’d really appreciate any suggestions....How to require 2FA for credential accounts only?
500 error code for auth api endpoints

config not found
What tech stack should i choose?
Email, name and phoneNumber signup
Apple Sign-in inconsistenly fails to redirect with FaceID
OIDC Client Register - Additional data not stored
Tanstack with better auth
auth.api.signInEmail ? I'm confused. Is auth.api the right way or not?Chrome Extension OAuth Callback
http://localhost/ext/callback?ott=mZ_tdIZjcP5KR4P5toK9epJWdniZNcM9Making name mandatory in magic link registration
Query existing OAuth registered clients
await auth.oauth2.getClient({ name: "client-name" });
Workaround I'm using: query database directly via Drizzle. Seems not ideal...useSession() - expression not callable?

127.0.0.1 oauth redirects
Latest CLI changes drizzle datetime fields from mode: 'timestamp' → mode: 'timestamp_ms'
user.additionalFields to my config, so i ran npx @better-auth/cli generate and all the existing datetime fields were changed from a unix timestamp in seconds to a unix timestamp in milliseconds. here’s a representative example extracted from session, with before:
expiresAt: integer('expires_at', { mode: 'timestamp' }).notNull(),
expiresAt: integer('expires_at', { mode: 'timestamp' }).notNull(),
