The GitHub Actions job "Required Checks" on texera.git/main has failed.
Run started by GitHub user github-merge-queue[bot] (triggered by 
github-merge-queue[bot]).

Head commit for run:
17607c5a99171a636b4fa8336d43b570b0705bc1 / ali risheh <[email protected]>
fix(config-service): expose inviteOnly on /config/pre-login so INACTIVE users 
see the registration-request form (#5572)

### What changes were proposed in this PR?

#5305 moved `GET /config/user-system` from `@PermitAll` to
`@RolesAllowed("REGULAR", "ADMIN")`. A freshly-registered user is
`INACTIVE`
until admin approval, so they cannot reach `@RolesAllowed` endpoints —
the
request returns 403/401, `inviteOnly` is left undefined on the frontend,
the
registration-request form never appears, and no admin notification email
is
sent. In invite-only deployments, new sign-ups are silently dropped.

Per review feedback (@Yicong-Huang), instead of re-opening the whole
`/config/user-system` endpoint with `@PermitAll`, this PR exposes only
the
`inviteOnly` boolean on the already-public `/config/pre-login` and keeps
`/config/user-system` `@RolesAllowed`. The frontend already loads
`/config/pre-login` anonymously during APP_INITIALIZER, so `inviteOnly`
is now
available before activation without widening the authenticated surface.

<!-- BEFORE & AFTER screenshots to be added. -->

### Any related issues, documentation, discussions?

Resolves #5587

### How was this PR tested?

- Updated `ConfigResourceAuthSpec`: `/config/pre-login` exposes exactly
`{localLogin, googleLogin, defaultLocalUser, attributionEnabled,
inviteOnly}`
anonymously; `/config/user-system` returns 401 + `Bearer` challenge
without a
token and 200 with a valid Bearer token. `sbt ConfigService/test` → 9
passed.
- Verified live on an invite-only deployment: a fresh INACTIVE
registration
reads `inviteOnly: true` from `/config/pre-login`, the
registration-request
  form appears, and the admin notification email is sent, while
  `/config/user-system` still returns 403/401 to anonymous callers.

### Was this PR authored or co-authored using generative AI tooling?

Generated-by: Claude Code (Claude Opus 4.8)

---------

Co-authored-by: Claude Opus 4.8 (1M context) <[email protected]>

Report URL: https://github.com/apache/texera/actions/runs/27305466218

With regards,
GitHub Actions via GitBox

Reply via email to