Skip to content

feat: add user OAuth sign-in and account linking - #349

Merged
linkdata merged 22 commits into
mainfrom
codex/feat/147-jawsauth-integration
Nov 5, 2026
Merged

linkdata merged 22 commits into
mainfrom
codex/feat/147-jawsauth-integration

Conversation

@linkdata

@linkdata linkdata commented Nov 4, 2026 •

Copy link
Copy Markdown
Owner

Closes #147. Closes #351. Part of #106.

Summary

  • Add GitHub OAuth2 profile sign-in and GitLab OIDC sign-in through jawsauth. Account linking requires proof of both provider identities and preserves one identity per provider.
  • Serve user routes on the existing linkdata/webserv listener. Render login, account, and browser error pages through JaWS, including admin browser failures.
  • Keep OAuth users separate from local password administrators. Bound guest session admission and serialize durable link writes with logout, auth expiry, and session rotation.
  • Document provider setup, privacy, and limits.

Dependency

Pins merged jawsauth PR #21 at commit 1748e00.

Verification

  • GOWORK=off go test -race -count=1 ./...
  • GOWORK=off go vet ./...
  • Focused OAuth link, logout, and rotation race tests passed against merged jawsauth.
  • git diff --check
  • Upstream jawsauth CI, Keycloak OIDC, and GitLab OAuth2 profile sign-in and linking passed.

The opt-in live collaboration test was not run.

@linkdata
linkdata force-pushed the codex/feat/147-jawsauth-integration branch from 67a67bf to 676489d Compare November 4, 2026 16:10
@linkdata
linkdata marked this pull request as ready for review November 5, 2026 09:42
@linkdata
linkdata merged commit 6a00c8d into main Nov 5, 2026
4 checks passed
@linkdata
linkdata deleted the codex/feat/147-jawsauth-integration branch November 5, 2026 09:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Render browser-facing admin errors through JaWS Add GitHub and GitLab sign-in with proven account linking

1 participant