Repository navigation
feat: add schemas for OpenID Provider applications, resources and scopes - #125
Merged
Merged
Conversation
This was referenced Oct 31, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
A new
oidcApplicationmodule for the admin routes that manage the OpenID Provider's applications (clients) and resources on the API (ADR 0001 in seamless-auth-api, D5, D6, D10, D12), plus thehosted_uibranding key from the widened scope.checkOidcApplication(exported so the API re-runs them on the merged result of a partial update):none(PKCE only) and cannot hold keys, a secret orclient_credentials.private_key_jwt; keys are only accepted with it, and only one of JWKS or JWKS URI.refresh_tokenneedsauthorization_codeor the device grant;authorization_codeneeds a redirect URI.deviceFlowEnabled, first-party only (D10).client_secret_jwtcannot be expressed (#410).https,httponly on127.0.0.1/[::1](any port at request time), private-use schemes in reverse domain form.localhost, fragments and credentials are refused.oidcRedirectUriProblem/oidcRedirectUriKindexpose the rule.https/http/urnURI, no query or fragment), declared scopes (RFC 6749 tokens; OIDC scopes andseamlessreserved), and each application's allowed resources and scopes.hosted_uionSystemConfigSchema(defaultnull) and the patch schema: app name override,httpslogo, hex colors, font stack. Every value is constrained so it cannot break out of the CSS variables the edge injects.admin_oidc_*auth event types andOidcApplicationRoutes.Shipped in the existing pre mode as a
minorchangeset, so it releases as0.34.0-next.N.Closes #97
Checks
npm run typecheck: passnpm run lint: passnpm run format:check: passnpm test: 23 files, 448 tests pass (79 new)npm run build,npm run test:zod-floor: pass