Skip to content

Combine auth page branding, logos, and missing-organization handling - #272

Merged
shaply merged 11 commits into
mainfrom
codex/combine-auth-page-fixes
Sep 14, 2026
Merged

shaply merged 11 commits into
mainfrom
codex/combine-auth-page-fixes

Conversation

@shaply

@shaply shaply commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

Combines #262, #266, and #268 because they conflict pairwise across login, signup, forgot password, and reset password. Preserves all source commits and resolves the pages together: one public configuration request includes LogoUrl, shared color defaults, normalized logo/tagline rendering, and the terminal missing-organization guard.

The integration also fixes the review findings: successful hook fixtures now include HTTP status and run with cache cleanup, and browser Hono RPC requests use the visited tenant's origin while server requests retain the configured absolute URL. Added real-response browser tests covering all four pages on two missing tenant subdomains with one server configuration. Main's newer health-checked CI database service is retained.

Checked every currently open PR's changed files: no additional PR touches these four pages. #270 changes related authenticated redirect handling in other pages and remains separate. The source PRs remain open; this PR supersedes them.

Validation:

  • 83 tests passed across all eight affected unit suites, including real PostgreSQL API/service tests and tenant scoping.
  • Full ESLint, changed-file Prettier, and TypeScript passed (using --ignoreDeprecations 6.0 for the existing ES5 target).
  • Independent integration review found no production defects.
  • Browser coverage added for real 404 responses on two tenant subdomains. Local Chrome run reached all 32 tenant-origin/branding cases but stalled without a final report; no browser pass is claimed. The normal production build could not run in the isolated checkout because Turbopack rejects its external node_modules symlink; the attempted browser run used a temporary webpack dev server. Full CI/build and browser completion remain to be verified.

Closes #252
Closes #253
Closes #254

jlouisugbo and others added 10 commits September 8, 2026 21:32
A failed organization config request was parsed and rendered as though it were valid configuration, and cached for five minutes, so a visitor on a subdomain with no matching organization got a page that looked broken with no explanation.

- Return 404 rather than 400 for a missing organization, so missing, malformed and server-error are distinguishable by status alone
- Check res.ok before parsing, and never write a non-ok response to the cache
- Add an additive status field to useOrganizationConfig so callers can tell "no such nonprofit" apart from a network or server failure
- Bump the config cache key prefix to retire entries poisoned by the old bug
- Render a shared, unbranded OrganizationNotFound on the four auth pages
The hook tests covered every status, but nothing asserted the four auth pages actually render OrganizationNotFound -- deleting the early return from a page left the suite green. Covers all four pages against not-found, ok and error.
@netlify

netlify Bot commented Sep 14, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for servicestart ready!

Name Link
🔨 Latest commit 26e67b7
🔍 Latest deploy log https://app.netlify.com/projects/servicestart/deploys/6aa8183eee36b600082e647f
😎 Deploy Preview https://deploy-preview-272--servicestart.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

Comment thread components/OrganizationNotFound.tsx
@shaply
shaply merged commit 9583d3a into main Sep 14, 2026
25 checks passed

This branch was successfully deployed

1 active deployment
Preview — 26e67b7e Deployed Sep 14, 2026 by shaply via drop-db #248
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fix Organization Logo and Tagline on Unauthenticated Pages Consistent Organization Branding Defaults Handle Requests for Nonexistent Organizations

4 participants