Conversation
There was a problem hiding this comment.
ℹ️ No critical issues — the wiring is correct, but the new option isn't documented.
Reviewed changes
oidc.jwks_endpointconfig option — adds an optionaljwks_endpointto both the full and partial OIDC schemas and passes it throughbuildOidcas the existingjwksUrifield onOidcConfig.
The code change is minimal and matches the surrounding patterns exactly. provider.ts already had first-class support for a manual jwksUri (in fullManual, the discovery override, and the JWKS resolver), so this closes the gap in #619 without any behavioral risk.
ℹ️ jwks_endpoint is not documented
The new option is invisible to users, because the manual-endpoint references elsewhere in the repo weren't updated. config.example.yaml (the manual endpoints block) and docs/features/sso.md (both the "these are usually auto-discovered" list and the "Missing endpoints" troubleshooting entry) enumerate authorization_endpoint, token_endpoint, and userinfo_endpoint but omit jwks_endpoint. Since this PR's purpose is to let users supply a JWKS URL that discovery can't resolve, the option should be documented alongside the other manual endpoints.
Technical details
# Document oidc.jwks_endpoint
## Affected sites
- config.example.yaml:222-224 — manual endpoint block omits jwks_endpoint
- docs/features/sso.md:71-74 — "these are usually auto-discovered" list omits jwks_endpoint
- docs/features/sso.md:354-356 — "Missing endpoints" troubleshooting omits jwks_endpoint
- nix/options.nix:357-400 — Nix module mirrors some oidc endpoints (optional: add jwks_endpoint here too)
## Required outcome
- jwks_endpoint appears alongside the other manual endpoint overrides in config.example.yaml and docs/features/sso.mdDeepSeek Pro (free via Pullfrog for OSS) | 𝕏
tale
left a comment
There was a problem hiding this comment.
Please update the documentation (the example config.yaml should be fine).
|
Sorry for the delay! I added it to the config.example.yaml, as well as sso.md and options.nix. Please let me know if there's anything else you'd like to see updated; I'll get to it faster this time :) |
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes
- Documented
oidc.jwks_endpoint— added the key toconfig.example.yaml's manual-endpoint block and to bothdocs/features/sso.mdlocations: the config example and the "Missing endpoints" troubleshooting entry. - Added a Nix option —
services.headplane.settings.oidc.jwks_endpointmirrors the existing manual endpoint overrides asnullOr strwith anulldefault, so the module renders it into the generated YAML without anymodule.nixchange.
This resolves the documentation gap flagged in the prior review and the maintainer's requested change. The code wiring from the first commit (config-schema.ts, context.ts) is untouched and remains correct: jwksUri is consumed both in the fullManual path and as the discovery override in provider.ts.
openrouter/deepseek/deepseek-v4.1-flash (free via Pullfrog for OSS) | 𝕏

Added support to manually configure a JWKS endpoint w/i OIDC config.
See: #619