Make auth entry pages explicit about desktop truth
This commit is contained in:
parent
90e6088ecc
commit
5e4389773e
5 changed files with 58 additions and 2 deletions
|
|
@ -391,6 +391,23 @@ That follow-up stayed green under:
|
|||
- `npm --prefix website test -- --run src/__tests__/protected-app-pages.test.tsx`
|
||||
- focused Account and Notices coverage stayed green
|
||||
|
||||
Latest auth-entry parity follow-up later on `2026-06-24`:
|
||||
|
||||
- the public Login and Register routes now also render a compact
|
||||
browser-versus-desktop reality panel instead of relying only on after-sign-in
|
||||
next-step notes plus the later protected dashboard to explain the split
|
||||
- this keeps:
|
||||
- auth-entry account-access language
|
||||
- protected follow-through routing
|
||||
aligned with the same explicit native-runtime and unfinished
|
||||
XR/controller-boundary truth already present across the public manual and the
|
||||
signed-in browser shell
|
||||
|
||||
That follow-up stayed green under:
|
||||
|
||||
- `npm --prefix website test -- --run src/__tests__/public-auth-pages.test.tsx`
|
||||
- focused Login and Register coverage stayed green
|
||||
|
||||
Latest public-surface continuity follow-up later on `2026-06-24`:
|
||||
|
||||
- the reusable `Choose the right HyperTwist surface` guide is no longer limited
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -208,6 +208,8 @@ describe('public auth and download pages', () => {
|
|||
expect(registerLink.getAttribute('href')).toBe('/register?next=%2Fapp')
|
||||
expect(screen.getByText('Protected operator dashboard')).toBeTruthy()
|
||||
expect(screen.getAllByText(/After sign-in you will continue to the protected operator dashboard/i).length).toBeGreaterThan(0)
|
||||
expect(screen.getByText('Browser account access does not replace the simulator.')).toBeTruthy()
|
||||
expect(screen.getByText('Current input, XR, and settings truth')).toBeTruthy()
|
||||
expect(screen.getByText('Protected browser dashboard')).toBeTruthy()
|
||||
expect(screen.getByText('Native Unreal desktop runtime')).toBeTruthy()
|
||||
|
||||
|
|
@ -232,6 +234,8 @@ describe('public auth and download pages', () => {
|
|||
expect(loginLink.getAttribute('href')).toBe('/login?next=%2Fapp%2Fdownloads%3Fplatform%3Dwindows')
|
||||
expect(screen.getByText('Protected Windows release lane')).toBeTruthy()
|
||||
expect(screen.getAllByText(/After sign-in you will continue to the protected Windows download center/i).length).toBeGreaterThan(0)
|
||||
expect(screen.getByText('Browser account access does not replace the simulator.')).toBeTruthy()
|
||||
expect(screen.getByText('Why the browser is intentionally narrower')).toBeTruthy()
|
||||
expect(screen.getByText('Protected browser dashboard')).toBeTruthy()
|
||||
expect(screen.getByText('Native Unreal desktop runtime')).toBeTruthy()
|
||||
|
||||
|
|
@ -291,6 +295,7 @@ describe('public auth and download pages', () => {
|
|||
expect(screen.getByText('Recommended recovery order')).toBeTruthy()
|
||||
expect(screen.getByText('Missing auth env: VITE_SUPERTOKENS_API_DOMAIN')).toBeTruthy()
|
||||
expect(screen.getByText('VITE_AUTH_API_BASE_URL not configured; same-origin auth fallback remains active.')).toBeTruthy()
|
||||
expect(screen.getByText('Browser account access does not replace the simulator.')).toBeTruthy()
|
||||
expect(screen.getByRole('link', { name: 'Open support' }).getAttribute('href')).toBe('/support?topic=operator-access')
|
||||
expect(screen.getByText('Protected operator dashboard')).toBeTruthy()
|
||||
})
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import {
|
|||
} from '../auth/supertokens-client'
|
||||
import { SiteMetadata } from '../components/seo/SiteMetadata'
|
||||
import { OperationalStatusCallout } from '../components/ui/OperationalStatusCallout'
|
||||
import { deliverySurfaceCards, operatorManualTracks } from '../site-data'
|
||||
import { browserDesktopRealityCards, deliverySurfaceCards, operatorManualTracks } from '../site-data'
|
||||
import { buildSupportPath, getDownloadPlatformLabel, normalizeDownloadPlatform } from '../site-routes'
|
||||
|
||||
function AuthShell({
|
||||
|
|
@ -165,6 +165,33 @@ function AuthAccessGuide({ nextPath }: { nextPath: string }) {
|
|||
)
|
||||
}
|
||||
|
||||
function AuthBrowserDesktopRealityPanel() {
|
||||
return (
|
||||
<div className="top-gap">
|
||||
<p className="status-pill status-pill--info">Browser-versus-desktop reality</p>
|
||||
<h2>Browser account access does not replace the simulator.</h2>
|
||||
<p>
|
||||
Sign-in exists so protected release, entitlement, pairing, and account work can stay in the browser.
|
||||
The real simulator still lives in the desktop runtime, and unfinished XR/controller widening still stays explicit.
|
||||
</p>
|
||||
<div className="card-grid top-gap">
|
||||
{browserDesktopRealityCards.map((card) => (
|
||||
<article key={card.title} className="card card--compact">
|
||||
<p className="status-pill status-pill--info">{card.posture}</p>
|
||||
<h3>{card.title}</h3>
|
||||
<p>{card.description}</p>
|
||||
<ul className="list top-gap">
|
||||
{card.bullets.map((bullet) => (
|
||||
<li key={bullet}>{bullet}</li>
|
||||
))}
|
||||
</ul>
|
||||
</article>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
function AuthRuntimeNotice() {
|
||||
const authRuntimeValidation = getSuperTokensAuthRuntimeValidation()
|
||||
if (authRuntimeValidation.ready && authRuntimeValidation.warnings.length === 0) {
|
||||
|
|
@ -294,6 +321,7 @@ export function LoginPage() {
|
|||
</button>
|
||||
) : null}
|
||||
</div>
|
||||
<AuthBrowserDesktopRealityPanel />
|
||||
<AuthAccessGuide nextPath={nextPath} />
|
||||
</AuthShell>
|
||||
</>
|
||||
|
|
@ -356,6 +384,7 @@ export function RegisterPage() {
|
|||
{isSubmitting ? 'Creating account...' : 'Create account'}
|
||||
</button>
|
||||
</form>
|
||||
<AuthBrowserDesktopRealityPanel />
|
||||
<AuthAccessGuide nextPath={nextPath} />
|
||||
</AuthShell>
|
||||
</>
|
||||
|
|
|
|||
|
|
@ -821,6 +821,11 @@ export const resourceCollections = [
|
|||
] as const
|
||||
|
||||
export const changelogEntries = [
|
||||
{
|
||||
date: 'June 24, 2026',
|
||||
title: 'Login and register now keep the browser-versus-desktop truth explicit too',
|
||||
details: 'The public auth entry pages now render a compact browser-versus-desktop reality panel before operators even finish sign-in, so account access, protected release routing, and desktop pairing no longer depend only on the later signed-in dashboard to explain what stays native and what remains outside the current XR/controller boundary.',
|
||||
},
|
||||
{
|
||||
date: 'June 24, 2026',
|
||||
title: 'Account and notices now keep the same protected browser-versus-desktop truth',
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue