fix(relay): address OAuth server metadata PR review
Critical:
- Add scopes_supported: ["atproto", "transition:generic"] per oauth-integration-spec.md §5.1
- Add public_url HTTPS validation to config.rs validate_and_build (RFC 8414 requires HTTPS issuer)
Important:
- Fix jwks_uri path: /oauth/jwks.json → /oauth/jwks (spec §5 table)
- Add private_key_jwt to token_endpoint_auth_methods_supported (spec §1.2 and §5.1)
- Fix db/oauth.rs FCIS annotation: Functional Core → Imperative Shell
- Remove ticket-reference language from db/oauth.rs comments
- Refactor trailing slash test: use ..base struct syntax, assert all four URL fields
- Add accessible_without_auth_headers test to lock in public access contract
Minor:
- Make OAuthServerMetadata struct private (no external callers)
- Add require_pushed_authorization_requests: true (PAR is mandatory per AT Protocol OAuth spec)
- Tighten pkce and response_types tests to exact-match (not .any()) to catch accidental additions
- Add par_is_required test
authored by
malpercio.dev
and committed by