• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

supabase / auth / 17444800289
69%

Build:
DEFAULT BRANCH: master
Ran 03 Sep 2025 08:14PM UTC
Jobs 1
Files 162
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

03 Sep 2025 08:06PM UTC coverage: 68.798% (+0.09%) from 68.707%
17444800289

push

github

web-flow
feat: add OAuth client type (#2152)

## Summary
Add OAuth 2.1 client type support (public vs confidential) to enable
proper client authentication for MCP integrations and lay the foundation
for the upcoming token endpoint implementation.

## Why This Matters
- MCP Integration: Some MCP clients don't provide client secrets in
/token requests. We need to know which clients require secrets vs
PKCE-only authentication.
- OAuth 2.1 Compliance: Proper distinction between public clients (SPAs,
mobile apps) and confidential clients (server apps) as required by the
spec.
- Token Endpoint Foundation: This client authentication logic will be
essential for the upcoming /token endpoint implementation to handle
different client types correctly.

## Key Changes
### Database
- Added client_type enum ('public', 'confidential') to oauth_clients
table
- Made client_secret_hash nullable for public clients
- Default: 'confidential' for security

### OAuth Client Registration
- Support token_endpoint_auth_method parameter in registration
- Auto-infer client type: `none` → public, `client_secret_*` →
confidential
- Priority: explicit client_type > inferred from auth method > default
confidential

### Authentication Logic
- Public clients: No client secret required, use PKCE
- Confidential clients: Client secret required
- Updated middleware to enforce type-specific authentication rules
- Foundation for /token endpoint: Centralized client auth functions
ready for token exchange implementation

116 of 142 new or added lines in 6 files covered. (81.69%)

2 existing lines in 2 files now uncovered.

12630 of 18358 relevant lines covered (68.8%)

66.75 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
2
79.67
0.0% internal/api/middleware.go
2
41.38
0.0% internal/api/oauthserver/auth.go
3
65.77
1.54% internal/api/oauthserver/handlers.go
6
81.98
-3.43% internal/models/oauth_client.go
13
83.01
-5.14% internal/api/oauthserver/service.go

Uncovered Existing Lines

Lines Coverage ∆ File
1
79.67
0.0% internal/api/middleware.go
1
41.38
0.0% internal/api/oauthserver/auth.go
Jobs
ID Job ID Ran Files Coverage
1 17444800289.1 03 Sep 2025 08:14PM UTC 162
68.8
GitHub Action Run
Source Files on build 17444800289
  • Tree
  • List 162
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • b118f1f0 on github
  • Prev Build on master (#17383331724)
  • Next Build on master (#17447075761)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc