Skip to content

feat(KLEF): Show loading screen while IDP plugin is starting up#17

Merged
isaacwallace123 merged 1 commit intomainfrom
feat/idp-readiness-gate
Apr 3, 2026
Merged

feat(KLEF): Show loading screen while IDP plugin is starting up#17
isaacwallace123 merged 1 commit intomainfrom
feat/idp-readiness-gate

Conversation

@JeremyNRoos
Copy link
Copy Markdown
Contributor

Pull Request

Summary

  • Shows a "Starting identity provider…" loading screen on the login page while the IDP plugin container is starting up
  • Polls GET /api/v1/auth/config every 3 s until ready: true, then seamlessly transitions to the login form
  • Eliminates the need to manually spam login credentials while Keycloak boots

Related Issues

Closes #


Changes

What's Included

  • AuthConfig: add ready?: boolean field
  • AuthProvider: poll config every 3 s when IDP is installed (!setup_required) but not yet ready (!ready)
  • Login page: render a skeleton + "Starting identity provider…" message instead of the login form when ready: false

What's Not Included

  • Loading state on the authenticated layout redirect path (not needed — if the user is already past login the IDP is already ready)
  • Timeout / error state if the IDP never becomes ready (left for a follow-up)

Testing

How Was This Tested?

  • Tested locally: installed keycloak plugin, observed loading screen, watched it automatically transition to login form once Keycloak finished booting (~20–30 s)
  • Verified ready: false → skeletons shown, ready: true → login form appears without page refresh

Test Coverage

  • Unit tests added or updated
  • Integration tests added or updated
  • Manually tested end-to-end

Breaking Changes

Does this PR introduce breaking changes?

  • Yes
  • No

Security Considerations

  • This PR affects authentication or authorization logic
  • This PR touches secrets, tokens, or environment variables
  • This PR affects infrastructure, deployment pipelines, or network configuration

Documentation

Does this PR require documentation updates?

  • Yes
  • No

UI/UX (If Applicable)

  • Includes new components or views
  • Changes styles or theme tokens
  • Responsive behavior verified
  • Requires design approval

Screenshots or recordings: loading skeleton with "Starting identity provider…" caption, auto-transitions to login form when ready.


Pre-Merge Checklist

  • PR title follows semantic format (feat:, fix:, chore:, docs:, refactor:, test:)
  • All CI checks passing
  • Code follows project style guidelines
  • No debug logs or commented-out code left in
  • Dependencies reviewed (no unnecessary additions)
  • No sensitive information included

Reviewer Notes

Poll /api/v1/auth/config every 3s when ready:false (IDP installed but
container still starting). Show a "Starting identity provider…" loading
screen on the login page instead of the form, so the user isn't prompted
to spam credentials before Keycloak is ready.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@JeremyNRoos JeremyNRoos self-assigned this Apr 3, 2026
@github-actions github-actions bot added feature New feature or enhancement security Security fix/hardening labels Apr 3, 2026
@isaacwallace123 isaacwallace123 merged commit ba0a68c into main Apr 3, 2026
6 checks passed
@isaacwallace123 isaacwallace123 deleted the feat/idp-readiness-gate branch April 3, 2026 02:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature New feature or enhancement security Security fix/hardening

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants