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

mindersec / minder / 33905986826
62%

Build:
DEFAULT BRANCH: main
Ran 04 Sep 2026 06:38PM UTC
Jobs 1
Files 357
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

04 Sep 2026 06:27PM UTC coverage: 61.842% (+0.04%) from 61.805%
33905986826

push

github

web-flow
Fix panic recovery logging and OAuth callback race (#6733)

* Emit the panic recovery log event

The gRPC recovery handler built a zerolog event with the panic value
and stack trace but never called a terminator, so zerolog discarded
the event entirely and recovered panics were invisible in the logs.
Move the message into Msg() so the event is actually emitted.

* Retry provider creation on unique violation in OAuth callback

When two OAuth callbacks for the same provider raced, the loser got a
unique violation from CreateProviderFromSessionState along with a nil
provider. The handler logged "Provider already exists" and then
dereferenced the nil provider, panicking the callback. The access
token from the losing flow was also never stored.

Retry the call once when the unique violation surfaces: the provider
now exists, so the retry takes the fetch path, stores this flow's
access token, and returns the existing provider. Add a regression
test that reproduces the race through the store mocks; it panics
without this fix.

* Return existing provider with uniqueness error on lost race

Review feedback on the retry approach: it re-read the session state and
stored a second access token, both unnecessary in the enrollment race.
Change the CreateProviderFromSessionState contract instead: when
creation loses the race, fetch the winner's provider and return it
alongside the uniqueness error, so the OAuth callback falls through
with no extra writes. Also switch the not-found check to the
generics-based errors.AsType.

22 of 24 new or added lines in 3 files covered. (91.67%)

21636 of 34986 relevant lines covered (61.84%)

39.45 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
81.82
-0.4% internal/providers/session/service.go
Jobs
ID Job ID Ran Files Coverage
1 33905986826.1 04 Sep 2026 06:38PM UTC 357
61.84
GitHub Action Run
Source Files on build 33905986826
  • Tree
  • List 357
  • Changed 3
  • Source Changed 3
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #33905986826
  • 9e5e90c6 on github
  • Prev Build on main (#33679915134)
  • Next Build on main (#33986659900)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc