andreas
87aeec5999
feat: generic build_auth_url/exchange_code/fetch_user for multi-provider OAuth2
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-09 08:38:11 -04:00
andreas
f24500a6b5
fix: copy field_map/profile_data_path in get_providers; improve caplog assertions
2026-05-09 08:34:48 -04:00
andreas
8207cd7b5f
feat: add PROVIDER_DEFS, ResolvedProvider, get_providers() to oauth.py
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-09 08:29:07 -04:00
andreas
d190029728
fix: guard unconfigured oauth calls; add missing test coverage; clean imports
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-08 13:42:21 -04:00
andreas
b8307e7a9d
feat: add authorization_url, exchange_code, fetch_user to oauth module
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-08 13:37:21 -04:00
andreas
82cbce9615
test: fix shared state leak and fragile expiry assertion in oauth tests
2026-05-08 13:30:16 -04:00
andreas
dbb779b013
feat: add OAuth2 CSRF state management
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-08 13:28:18 -04:00
andreas
ca908ee967
fix: remove unused imports from oauth module and tests
2026-05-08 13:26:51 -04:00
andreas
73c697b6c5
feat: add oauth module skeleton and is_enabled()
...
Add hbd/server/oauth.py with OAuthError, _gitea_cfg(), and is_enabled()
to detect when all three required Gitea OAuth2 config keys are present.
Add "oauth": {} default to SERVER_DEFAULTS in config.py.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-08 13:24:27 -04:00