Advertise canonical OAuth discovery while retaining legacy routes - #202
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit f216674. Configure here.
masnwilliams
left a comment
There was a problem hiding this comment.
Reviewed at 0d6c1ce. The discovery policy is small, explicit, and well isolated; production preserves the MCP resource identity while advertising the canonical authorization server, and non-production remains self-originating. The regression coverage addresses the public-host behavior across staging, previews, and local development. No actionable code-quality findings.
The documented DNS and cached-client checks should remain deployment gates.

Summary
https://auth.onkernel.comOAuth endpoints in production protected-resource discovery, while preserving the resource identityhttps://mcp.onkernel.com.no-store.docs/oauth-cutover.md.Deployment dependencies
Ready for code review, not authorization to merge/deploy.
Reverse ordering: deploy a focused metadata rollback from current main first; keep auth on Go while handling cached canonical clients and in-flight codes. A separately reviewed auth-record-only DNS rollback comes after that, with its captured target and TTL convergence checks. Neither metadata nor DNS rollback is guaranteed to transparently recover cached clients. Do not revert unrelated concurrent work or delete registrations.
Cached-client compatibility fixture
Synthetic native-client testing with Claude Code 2.1.259 found:
400 invalid_requestdoes not immediately clear it: early cancellation preserves it, while the observed 300.3-second callback timeout clears it. Token-stageinvalid_clientis different and clears registration immediately.claude mcp logout <server-name>followed byclaude mcp login <server-name>immediately removes the stale registration and performs successful canonical DCR on the next login. Ordinary cached users did not need this recovery while legacy routes remained available.This is synthetic evidence for the tested client/version, not live acceptance or a guarantee for all clients. It does not authorize cutover or replace the remaining live acceptance checks. Keep the legacy routes; do not infer that existing IDs are valid across issuers.
Validation
bunx tsc --noEmit --incremental false: passed.git diff --check: passed.No deployment, public setting, DNS, Clerk, or live registration changes performed. Cached-client compatibility testing is separate from these local tests.