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

pomerium / pomerium / 21924134758
44%

Build:
DEFAULT BRANCH: main
Ran 11 Feb 2026 09:54PM UTC
Jobs 1
Files 667
Run time 2min
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

11 Feb 2026 09:41PM UTC coverage: 44.075% (+0.01%) from 44.061%
21924134758

push

github

web-flow
mcp: add UpstreamOAuthClient type and storage for DCR caching (#6107)

## Summary

Add per-instance caching of RFC 7591 Dynamic Client Registration (DCR)
results in the databroker. DCR registers an OAuth client *application*,
not a per-user credential — so Pomerium should register once per (AS
issuer, downstream host) pair and reuse the resulting
`client_id`/`client_secret` for all users.

- New `UpstreamOAuthClient` proto type with fields: issuer,
downstream_host, client_id, client_secret, redirect_uri,
registration_endpoint, created_at
- New `GetUpstreamOAuthClient` / `PutUpstreamOAuthClient` storage
methods keyed by `dcr|{issuer}|{downstream_host}`
- Validation that issuer and downstream_host are non-empty on put

## Related issues

- [ENG-3572: Cache DCR client registrations per-instance in
databroker](https://linear.app/pomerium/issue/ENG-3572/cache-dcr-client-registrations-per-instance-in-databroker)

## User Explanation

No user-facing changes. This is an internal storage addition for a
future feature (upstream MCP OAuth proxying).

## Checklist

- [x] reference any related issues
- [ ] updated unit tests
- [x] add appropriate label (`enhancement`, `bug`, `breaking`,
`dependencies`, `ci`)
- [ ] ready for review

36 of 40 new or added lines in 1 file covered. (90.0%)

31 existing lines in 6 files now uncovered.

32021 of 72651 relevant lines covered (44.08%)

117.85 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
4
84.82
1.13% internal/mcp/storage.go

Uncovered Existing Lines

Lines Coverage ∆ File
2
75.0
-0.72% internal/databroker/config_source.go
3
90.69
0.0% config/config_source.go
3
58.44
-0.78% internal/controlplane/server.go
4
87.71
-0.95% pkg/storage/postgres/postgres.go
9
79.91
0.0% pkg/ssh/manager.go
10
76.67
-2.78% pkg/storage/postgres/backend.go
Jobs
ID Job ID Ran Files Coverage
1 21924134758.1 11 Feb 2026 09:54PM UTC 667
44.08
GitHub Action Run
Source Files on build 21924134758
  • Tree
  • List 667
  • Changed 10
  • Source Changed 1
  • Coverage Changed 10
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #21924134758
  • e001728a on github
  • Prev Build on main (#21919446546)
  • Next Build on main (#21924576857)
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

© 2026 Coveralls, Inc