Extend protected release continuity surfaces

This commit is contained in:
axiomlogicnexus 2026-06-25 09:50:28 +00:00
parent 73bbf33c3d
commit ab26041670
4 changed files with 26 additions and 7 deletions

View file

@ -604,8 +604,9 @@ Latest same-day browser/distribution continuity follow-up still on `2026-06-24`:
- dashboard auth-health and release-authority fallback continuity
- public download and protected release-lane fallback continuity
- the next same-family protected release follow-through packet now also keeps
the signed-in dashboard, protected download center, and protected account
lane on one shared release-action decision surface driven by:
the signed-in dashboard, protected download center, protected browser-access
lane, protected notices lane, and protected account lane on one shared
release-action decision surface driven by:
- live manifest viewer entitlement
- live checkout-target availability
- configured packaged-release targets

View file

@ -296,11 +296,13 @@ Current consolidated milestone snapshot:
snapshot from that fresher manifest viewer truth and the protected dashboard
plus account surfaces now surface a compact live-authority sync notice
summarizing what changed, and the protected dashboard, protected
`/app/downloads`, and protected account lane now also resolve that same live
manifest plus checkout truth into one explicit operator-facing release-action
surface that chooses between direct package download, checkout or
provisioning, notices or release follow-through, and degraded-authority
recovery instead of leaving the next move implicit across separate panels,
`/app/downloads`, protected `/app/browser-access`, protected
`/app/notices`, and protected account lane now also resolve that same live
manifest plus checkout truth into one explicit operator-facing
release-action surface that chooses between direct package download,
checkout or provisioning, notices or release follow-through, and
degraded-authority recovery instead of leaving the next move implicit across
separate panels,
and the same auth layer now also clears stale
stored sessions when shared auth is configured and `/api/auth/me` returns
`401` instead of preserving a false authenticated protected-shell posture,

View file

@ -191,6 +191,8 @@ describe('protected app pages', () => {
renderPage(<BrowserAccessPage />, '/app/browser-access')
expect(await screen.findByText('Current browser posture')).toBeTruthy()
expect(screen.getByText('Current release action')).toBeTruthy()
expect((await screen.findByRole('link', { name: 'Download Windows package' })).getAttribute('href')).toBe('https://downloads.hypertwist.app/windows.exe')
expect(screen.getByText('Current packaged desktop proof')).toBeTruthy()
expect(screen.getByText('Packaged validation passed')).toBeTruthy()
expect(screen.getByText(/Magic120Cell dedicated-family training map: passed/i)).toBeTruthy()
@ -257,6 +259,8 @@ describe('protected app pages', () => {
renderPage(<NoticesPage />, '/app/notices')
expect(await screen.findByText('Distribution notices')).toBeTruthy()
expect(screen.getByText('Current release action')).toBeTruthy()
expect((await screen.findByRole('link', { name: 'Download Windows package' })).getAttribute('href')).toBe('https://downloads.hypertwist.app/windows.exe')
expect(screen.getByText('Current packaged desktop proof')).toBeTruthy()
expect(screen.getByText('Packaged validation passed')).toBeTruthy()
expect(screen.getByText('Protected browser-versus-desktop reality')).toBeTruthy()

View file

@ -1403,6 +1403,12 @@ export function BrowserAccessPage() {
</Link>
</div>
</Panel>
<ProtectedReleaseActionPanel
title="Current release action"
kicker="Protected access guidance"
releaseManifest={releaseManifest}
releaseAuthorityUnavailable={releaseManifestQuery.isError}
/>
<ProtectedBrowserDesktopRealityPanel
title="Protected browser-versus-desktop reality"
kicker="Signed-in product boundary"
@ -1642,6 +1648,12 @@ export function NoticesPage() {
<li>Corresponding-source URL: {releaseManifest.corresponding_source_url || 'configure the corresponding-source URL before public launch'}</li>
</ul>
</Panel>
<ProtectedReleaseActionPanel
title="Current release action"
kicker="Protected access guidance"
releaseManifest={releaseManifest}
releaseAuthorityUnavailable={releaseManifestQuery.isError}
/>
<Panel title="Operator obligations" kicker="Keep aligned">
<ul className="list">
<li>Keep pricing, download, and notices surfaces aligned whenever a public downloadable build is offered.</li>