Mirror browser-desktop truth across account and notices

This commit is contained in:
axiomlogicnexus 2026-06-24 23:28:44 +00:00
parent 516cda266c
commit 90e6088ecc
5 changed files with 39 additions and 3 deletions

View file

@ -374,6 +374,23 @@ That follow-up stayed green under:
- `3` test files passed
- focused protected dashboard/download/browser-access coverage stayed green
Latest protected account/notices parity follow-up later on `2026-06-24`:
- the protected Account and Notices routes now also carry the same compact
browser-versus-desktop reality panel instead of leaving that sharper truth
only on dashboard, downloads, and browser-access
- this keeps:
- entitlement review on account
- distribution/compliance follow-through on notices
aligned with the same explicit browser-support versus native-simulator split
and unfinished XR/controller boundary already shown on the other signed-in
routes
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 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

View file

@ -234,12 +234,14 @@ describe('protected app pages', () => {
expect(await screen.findByText('Session profile')).toBeTruthy()
expect(screen.getByText('Current packaged desktop proof')).toBeTruthy()
expect(screen.getByText('Packaged validation passed')).toBeTruthy()
expect(screen.getByText('Protected browser-versus-desktop reality')).toBeTruthy()
expect(screen.getByText('Why the browser is intentionally narrower')).toBeTruthy()
expect(screen.getByText('Current simulator control ownership')).toBeTruthy()
expect(screen.getAllByText(/classic-wca-keyboard\/v1/i).length).toBeGreaterThan(0)
expect(screen.getByText(byExactTextContent('Billing source: session', 'LI'))).toBeTruthy()
expect(await screen.findByText(byExactTextContent('Manifest viewer access: active', 'LI'))).toBeTruthy()
expect(await screen.findByText(byExactTextContent('Windows: Primary shipping lane (Version 1.0.0, Channel candidate)', 'LI'))).toBeTruthy()
expect(screen.getByRole('link', { name: 'Open downloads' }).getAttribute('href')).toBe('/app/downloads')
expect(screen.getAllByRole('link', { name: 'Open downloads' }).every((link) => link.getAttribute('href') === '/app/downloads')).toBe(true)
expect(screen.getByRole('link', { name: 'Get help' }).getAttribute('href')).toBe('/support?topic=operator-access')
expect(screen.getByText('Desktop access follow-through')).toBeTruthy()
expect(screen.getByText('Verify the current training lanes')).toBeTruthy()
@ -251,6 +253,8 @@ describe('protected app pages', () => {
expect(await screen.findByText('Distribution notices')).toBeTruthy()
expect(screen.getByText('Current packaged desktop proof')).toBeTruthy()
expect(screen.getByText('Packaged validation passed')).toBeTruthy()
expect(screen.getByText('Protected browser-versus-desktop reality')).toBeTruthy()
expect(screen.getByText('What the desktop runtime is for')).toBeTruthy()
expect(await screen.findAllByText(byExactTextContent('Configured release targets: 1/2', 'LI'))).toHaveLength(1)
expect(screen.getByText(byExactTextContent('Public repository/notices URL: https://github.com/hypertwist/hypertwist', 'LI'))).toBeTruthy()
expect(screen.getByText(byExactTextContent('Corresponding-source URL: https://hypertwist.app/open-source/source.zip', 'LI'))).toBeTruthy()
@ -258,7 +262,7 @@ describe('protected app pages', () => {
expect(screen.getByText('Escalation and release follow-through')).toBeTruthy()
expect(screen.getByText('Download and install issues')).toBeTruthy()
expect(screen.getByRole('link', { name: 'Public notices' }).getAttribute('href')).toBe('/open-source-notices')
expect(screen.getByRole('link', { name: 'Open downloads' }).getAttribute('href')).toBe('/app/downloads')
expect(screen.getAllByRole('link', { name: 'Open downloads' }).every((link) => link.getAttribute('href') === '/app/downloads')).toBe(true)
})
it('keeps local signed-in viewer posture when protected pages fall back from live release-manifest authority', async () => {

View file

@ -1223,6 +1223,11 @@ export function AccountPage() {
emptyMessage="The current protected account route could not find a Windows release target, so packaged desktop evidence is unavailable here right now."
releaseManifest={releaseManifest}
/>
<ProtectedBrowserDesktopRealityPanel
title="Protected browser-versus-desktop reality"
kicker="Signed-in product boundary"
description="Account posture should not make the browser shell sound like simulator ownership. This signed-in account route keeps the same explicit browser-versus-desktop split visible while plan, entitlement, and release-access state are being reviewed."
/>
<ControlRosterManualPanel
title="Current simulator control ownership"
kicker="Signed-in runtime posture"
@ -1322,6 +1327,11 @@ export function NoticesPage() {
emptyMessage="The current protected notices route could not find a Windows release target, so packaged desktop evidence is unavailable here right now."
releaseManifest={releaseManifest}
/>
<ProtectedBrowserDesktopRealityPanel
title="Protected browser-versus-desktop reality"
kicker="Distribution boundary"
description="Distribution and compliance work should not blur the same product split either. This protected notices route keeps the browser-support role, native simulator authority, and unfinished XR/controller boundary explicit while operators review downloadable release obligations."
/>
<Panel title="Reference surfaces" kicker="Release references">
<p>
Operators should keep public notices, protected notices, release notes, and corresponding source reachable from the same release story.

View file

@ -821,6 +821,11 @@ export const resourceCollections = [
] as const
export const changelogEntries = [
{
date: 'June 24, 2026',
title: 'Account and notices now keep the same protected browser-versus-desktop truth',
details: 'The protected Account and Notices routes now carry the same compact reality panel already used on the dashboard, protected downloads, and browser-access lane, so entitlement and distribution work no longer soften the browser-support versus native-simulator split after sign-in.',
},
{
date: 'June 24, 2026',
title: 'Pricing and resources now carry the full browser-versus-desktop reality section too',