Repository navigation
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
This was referenced Oct 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Trailing-slash OIDC issuers were changed during discovery/save, causing otherwise valid signed tokens to fail. This preserves the exact issuer through discovery, save, and returning sign-in, and adds the missing managed-member controls.
Issuer compatibility: explicitly correcting one trailing slash migrates existing links and rejects conflicting links. Changing another part of the issuer, including another realm/path on the same host, removes the previous issuer's links rather than transferring identities between providers. Token and discovery issuer comparisons remain exact; mismatch diagnostics omit secrets.
Migration
0080_member_setuppreserves existing provider settings, adds the two group fields and onboarding policy, and refuses downgrade when it would lose the new configuration. The backup schema marker and generated API types are updated.Validation: 85 focused backend checks and 11 Chromium browser journeys passed, run serially through
python3 scripts/check.py. Frontend build/typecheck, generated API consistency, migrated-schema alignment, Ruff, Prettier, andgit diff --checkpassed. Baseline regressions demonstrated the stripped issuer and unsafe cross-realm link transfer. Browser checks cover delayed-save responses, all role choices, persisted policy, required/skipped onboarding, and reopening setup.OIDC verification uses a controlled HTTP identity provider with real signed tokens and PKCE, not the reporter's Authentik deployment. NOR-64 / #27 remains unresolved: HTTPS public-origin sessions over an HTTP upstream pass with preserved and rewritten Host, but the requested KeenDNS runtime configuration and correlated rejection evidence are still missing. This PR does not change proxy trust or origin validation.
Fixes NOR-92
Fixes NOR-93
Fixes NOR-101
Fixes #59
Fixes #60
Fixes #68
PR review follow-up
The shared library-review browser check could fail when “Save and review next” displayed the completed-link status and the next catalog-search status together. The fixture now holds that next lookup pending, checks both messages separately, and waits for the lookup to finish before continuing. The ambiguous assertion failed under this controlled timing before the fix; no product behavior or timeout was changed.
Follow-up validation: production build/typecheck and 7 Chromium journeys passed via
python3 scripts/check.py ui library-review.spec.ts member-setup.spec.ts, including required/optional onboarding and administrator settings.