Skip to content

Conversation

@imnasnainaec
Copy link
Collaborator

@imnasnainaec imnasnainaec commented Feb 5, 2026

Working toward some form of #3719

Vibe coding locally with GitHub Copilot.


This change is Reviewable

@imnasnainaec imnasnainaec self-assigned this Feb 5, 2026
@coderabbitai
Copy link

coderabbitai bot commented Feb 5, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch lexbox-login

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Feb 5, 2026

Codecov Report

❌ Patch coverage is 20.22472% with 284 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.07%. Comparing base (c2f6aa3) to head (d54a65d).

Files with missing lines Patch % Lines
Backend/Services/LexboxAuthService.cs 0.00% 233 Missing ⚠️
Backend/Controllers/AuthController.cs 36.66% 29 Missing and 9 partials ⚠️
Backend/Models/AuthStatus.cs 64.70% 6 Missing ⚠️
src/components/Lexbox/LexboxLogin.tsx 85.36% 5 Missing and 1 partial ⚠️
Backend/Models/LexboxLoginUrl.cs 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #4139      +/-   ##
==========================================
- Coverage   74.78%   73.07%   -1.71%     
==========================================
  Files         300      307       +7     
  Lines       11044    11400     +356     
  Branches     1381     1433      +52     
==========================================
+ Hits         8259     8331      +72     
- Misses       2386     2660     +274     
- Partials      399      409      +10     
Flag Coverage Δ
backend 81.65% <11.74%> (-4.56%) ⬇️
frontend 66.02% <85.36%> (+0.12%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@imnasnainaec
Copy link
Collaborator Author

Summary of work so far:

Backend

  • appsettings.json: adds a LexboxAuth section with BaseUrl, ClientId, Scope, Prompt, and client metadata defaults.
  • AuthController.cs: adds GET /v1/auth/status and GET /v1/auth/lexbox/login-url. The latter returns a LexboxLoginUrl or 500 if config is missing.
  • ILexboxAuthService.cs: defines CreateLoginUrl(HttpRequest).
  • AuthStatus.cs: LoggedIn, LoggedInAs, UserId plus helpers for logged-in/out.
  • LexboxLoginUrl.cs: simple DTO with Url.
  • LexboxAuthService.cs: builds Lexbox OIDC login URL with PKCE (code verifier/challenge), state, redirect URI back to /api/auth/oauth-callback, and caches state in-memory for 15 minutes.
  • Startup.cs: registers ILexboxAuthService in DI.

Frontend (src/)

  • api/* OpenAPI bindings (generated)
  • backend/index.ts: instantiates authApi and getExternalLoginUrl() now calls getLexboxLoginUrl and returns the url.
    Frontend UI + tests
  • components/Lexbox/LexboxLogin.tsx: new component that loads getAuthStatus, and on login calls getExternalLoginUrl then window.open(url). Logged-in state shows a menu with logout.
  • components/Lexbox/tests/LexboxLogin.test.tsx: tests mock backend calls, verify window.open for login, and logout flow.

@imnasnainaec imnasnainaec changed the title [WIP] Start building Lexbox login [WIP] Building Lexbox login Feb 5, 2026
@imnasnainaec imnasnainaec force-pushed the lexbox-login branch 2 times, most recently from 6c2a062 to d49af8a Compare February 10, 2026 21:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant