Allow administrators to customize the SSO sign-in button text #1
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The sign-in button is too generic for an instance using an organization’s identity provider. Administrators should be able to give it a recognizable label, such as “Sign in with your family account”.
Acceptance criteria:
Starting owner-requested work on #1 and #3 after reading #14, both issue descriptions/all comments, and the merged #2 authentication handoff. Scope for #1: administrator-only persisted plain-text SSO button label, bounded input and safe fallback, live refresh on desktop/mobile without provider reinitialization or application restart, and persistence/authorization/browser regression coverage. Work is isolated from current main; the held scanning branch/PR remains untouched. No deployment or interruption of active uploads/tasks is planned.
Implementation decision: the label is a live field in the existing encrypted administrator settings, exposed through the existing public appearance snapshot. Saving text does not recreate the OIDC provider or change sign-in/session boundaries; open login screens use their existing focus/15-second refresh. Input is limited to 120 Unicode characters with controls rejected; blank uses the existing default and React renders the value as text. New desktop/mobile browser checks and initial backend checks passed. Final backend/race and integration checks are in progress; no deployment has occurred.
Implementation/local validation complete in commit
2ff357ea691e88047bede8943b47cedffdb7899b, branchcodex/issues-1-3-sso-profile, published with #3 as draft PR #22.Sign-in now contains SSO button text with the existing useful default. The setting is encrypted, versioned, audited and administrator-only. Text applies live; desktop/mobile login screens refresh on focus or within 15 seconds, independently of provider initialization or availability. Input is at most 120 Unicode characters, controls are rejected, blank/whitespace uses the default, and JSON/React render HTML as text. The accessible link name follows its text and local recovery remains available. No provider, identity, session or role configuration changes are triggered by label-only edits.
Regressions cover encrypted persistence, live application with pending provider settings, failed-save rollback, default/blank/Unicode bounds, control rejection, concurrent reads, unauthorized attempts, text saves during provider outage without discovery, desktop/mobile refresh and long-label wrapping. The real disposable app walkthrough verifies live application and restart persistence. OIDC guide and administration/testing/deployment guidance are updated.
Checks actually run and passed:
State: implemented, committed, locally tested and published for review; not merged, release-image-published or deployed. Forgejo run 19 for this commit is waiting. Native AMD64/ARM64 release gates and actual-provider/deployed checks remain outstanding; no gate waiver is claimed. No pilot service or active upload/task was restarted or interrupted; no real library, provider or email delivery was used. Held #12/PR #19 and its checkout remain unchanged.
Next handoff: review draft PR #22 against main, complete required native validation, then coordinate an idle installation and run the documented provider/desktop/mobile checks. This issue remains open for review and merge.
Merged at the owner's explicit request after their review: PR #22, main merge
09085fa7b7bdaf46be48b34cd8ac3068f315320e, preserving feature commit2ff357ea691e88047bede8943b47cedffdb7899b.Merge verification: no conflicts; current main was the original base. The merged Git tree
a01dfdd638f7a61996d8b401c9115852418daa79exactly matches the previously validated feature source. Feature ancestry, clean worktree and diff checks passed. No implementation edits or repeated application suites were needed for this unchanged source. The prior handoff records passing backend/vet/race, all four focused browser suites, full disposable application/settings/restart walkthrough, UI lint/build/audit, nine CI policy tests, documentation contracts and secret scans.Closing this completed development issue at the owner's explicit request. The saved administrator-only SSO label applies live on desktop/mobile, with a useful blank fallback, bounded plain-text rendering, accessible link names and preserved local recovery. Acceptance regressions include persistence, live refresh, fallback, unauthorized configuration, controls/length and escaping.
Source is merged, not deployed or release-image-published. Native Forgejo AMD64/ARM64 checks and the aggregate release gate remain outstanding; run 20 is waiting. Closing this issue does not waive release or installation checks. Next: complete native validation, coordinate an idle installation, and verify the actual provider plus desktop/mobile behavior using the installation checklist and OIDC guide. No pilot service or active upload/task was restarted or interrupted. Held #12/PR #19 remain untouched.