Thread offline operator manual into protected release surfaces

This commit is contained in:
axiomlogicnexus 2026-06-30 10:20:49 +00:00
parent 2e5cf09d1d
commit 79b8dd9039
5 changed files with 97 additions and 2 deletions

View file

@ -1202,3 +1202,30 @@ Latest feature-atlas capability-FAQ continuity follow-up on `2026-06-29`:
- `npm --prefix website test -- --run src/__tests__/public-marketing-pages.test.tsx`
- `1` file passed
- `16` tests passed
Latest same-family offline-manual continuity follow-up on `2026-06-30`:
- the public site now also ships one same-origin downloadable operator manual
at `website/public/manual/hypertwist-operator-manual.md`
- homepage, resources, docs, getting-started, and download now all expose that
same offline manual so the desktop-first product story, first-session path,
and XR/controller non-claims can travel outside the browser intact
- the adjacent protected-surface continuation then threaded that same manual
into the signed-in release-reference bundle too, so dashboard, launch-status,
account, browser-access, download, and notices follow-through no longer fall
back to public-only manual links once the operator is already signed in
- focused validation for that continuation stayed green under:
- `npm --prefix website test -- --run src/__tests__/public-marketing-pages.test.tsx src/__tests__/protected-app-pages.test.tsx`
- `npm --prefix website run type-check`
- `npm --prefix website run build`
- the owned continuity/tooling rerun also stayed green under:
- `scripts/run-hypertwist-sentrux-source-only.sh` -> `Quality: 6248`
- `scripts/run-hypertwist-gitnexus-analyze.sh` -> `Indexed commit: 1b4adda`
with the already-documented local post-index non-zero exit salvaged by
follow-up status proof
- `scripts/run-hypertwist-gitnexus-status.sh` -> `Status: up-to-date`
- `scripts/run-hypertwist-web-surface-validation.sh`
- website focused route/auth/release suite: `14` files, `84` tests passed
- website deployment/readiness tooling suite: `4` files, `34` tests passed
- website/server suite: `10` files, `36` tests passed
- successful website and `Content/Browser` production builds

View file

@ -358,6 +358,37 @@ Latest same-family website hardening follow-up on `2026-06-30`:
- `683` clusters
- `300` flows
- fallback completion time `87.1s`
Latest same-family offline-manual and protected-reference continuity follow-up
on `2026-06-30`:
- the public website now also exposes a same-origin downloadable operator
manual at `website/public/manual/hypertwist-operator-manual.md`
- homepage, docs, resources, getting-started, and download now all surface
that same offline manual so the desktop-first operator story can leave the
browser intact without widening the optional full-browser client branch
- the adjacent protected continuation then threaded that same manual into the
release-reference bundle used by the signed-in dashboard plus protected
launch-status, browser-access, account, downloads, and notices routes
- this keeps the signed-in operator shell from dropping back to thinner
public-only manual references once account context is already present
- focused continuity validation stayed green under:
- `npm --prefix website test -- --run src/__tests__/public-marketing-pages.test.tsx src/__tests__/protected-app-pages.test.tsx`
- `npm --prefix website run type-check`
- `npm --prefix website run build`
- the owned continuity/tooling rerun also stayed green under:
- `scripts/run-hypertwist-sentrux-source-only.sh` -> `Quality: 6248`
- `scripts/run-hypertwist-gitnexus-analyze.sh` -> `Indexed commit: 1b4adda`
with the already-documented local post-index non-zero exit salvaged by
follow-up status proof
- `scripts/run-hypertwist-gitnexus-status.sh` -> `Status: up-to-date`
- `scripts/run-hypertwist-web-surface-validation.sh`
- focused website route/auth/release validation: `14` files passed,
`84` tests passed
- website deployment/readiness tooling validation: `4` files passed,
`34` tests passed
- website/server suite: `10` files passed, `36` tests passed
- successful website and `Content/Browser` production builds
- `scripts/run-hypertwist-gitnexus-status.sh` then again reported the bounded
mirror `Status: up-to-date`

View file

@ -67,6 +67,11 @@ manual:
- the website now also ships a same-origin downloadable operator manual at
`website/public/manual/hypertwist-operator-manual.md` so the desktop-first
onboarding and boundary truth can travel offline with the product
- the protected release-reference surfaces now also expose that same
downloadable operator manual beside docs, release notes, source, and
notices so signed-in operators can carry one offline guide through launch,
account, and download follow-through instead of dropping back to public-only
route fragments
- the public browser-account method lineup is now also visible on the
homepage, pricing, download, support, docs, and getting-started routes so
high-traffic decision pages no longer hide provider truth until the auth
@ -233,6 +238,32 @@ Latest refactor-tool ownership follow-up on `2026-06-30`:
- the same already-documented upstream auth-server residual:
`supertokens-node -> nodemailer`
Latest same-family offline-manual and protected-reference continuity follow-up
on `2026-06-30`:
- the public website now exposes one same-origin downloadable operator manual
across homepage, docs, resources, getting-started, and download so the
desktop-first product story can leave the browser intact
- the protected release-reference bundle now also surfaces that same
downloadable manual inside the signed-in dashboard and protected launch,
browser-access, account, download, and notices lanes beside docs, release
notes, corresponding source, and notices links
- focused continuity validation stayed green under:
- `npm --prefix website test -- --run src/__tests__/public-marketing-pages.test.tsx src/__tests__/protected-app-pages.test.tsx`
- `npm --prefix website run type-check`
- `npm --prefix website run build`
- the owned continuity/tooling rerun also stayed green under:
- `scripts/run-hypertwist-sentrux-source-only.sh` -> `Quality: 6248`
- `scripts/run-hypertwist-gitnexus-analyze.sh` -> `Indexed commit: 1b4adda`
with the already-documented local post-index non-zero exit salvaged by
follow-up status proof
- `scripts/run-hypertwist-gitnexus-status.sh` -> `Status: up-to-date`
- `scripts/run-hypertwist-web-surface-validation.sh`
- focused website route/auth/release suite: `14` files, `84` tests passed
- website deployment/readiness tooling suite: `4` files, `34` tests passed
- website/server suite: `10` files, `36` tests passed
- successful website and `Content/Browser` production builds
Latest auth-shell hardening follow-up on `2026-06-24`:
- the website now carries a first-party HyperTwist auth-shell backdrop module

View file

@ -404,6 +404,7 @@ describe('protected app pages', () => {
expect(screen.getAllByRole('link', { name: 'Protected launch status' }).every((link) => link.getAttribute('href') === '/app/launch-status')).toBe(true)
expect(screen.getByRole('link', { name: 'Protected notices' }).getAttribute('href')).toBe('/app/notices')
expect(screen.getByRole('link', { name: 'Public notices' }).getAttribute('href')).toBe('/open-source-notices')
expect(screen.getAllByRole('link', { name: 'Download operator manual (.md)' }).every((link) => link.getAttribute('href') === '/manual/hypertwist-operator-manual.md')).toBe(true)
expect(screen.getByRole('link', { name: 'Download Windows' }).getAttribute('href')).toBe('https://downloads.hypertwist.app/windows.exe')
})
@ -433,6 +434,7 @@ describe('protected app pages', () => {
expect(await screen.findByText(byExactTextContent('Windows: Primary shipping lane (Version 1.0.0, Channel candidate)', 'LI'))).toBeTruthy()
expect(screen.getAllByRole('link', { name: 'Open downloads' }).every((link) => link.getAttribute('href') === '/app/downloads')).toBe(true)
expect(screen.getAllByRole('link', { name: 'Protected launch status' }).every((link) => link.getAttribute('href') === '/app/launch-status')).toBe(true)
expect(screen.getAllByRole('link', { name: 'Download operator manual (.md)' }).every((link) => link.getAttribute('href') === '/manual/hypertwist-operator-manual.md')).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()

View file

@ -29,7 +29,7 @@ import {
roadmapHonestyCards,
supportEscalationCards,
} from '../site-data'
import { supportTopicDirectory } from './public-page-helpers'
import { downloadablePublicManualHref, supportTopicDirectory } from './public-page-helpers'
function Panel({
title,
@ -304,7 +304,8 @@ function ReleaseAuthorityLinks({
includeProtectedNoticesLink?: boolean
}) {
const hasLinks = Boolean(
releaseManifest.public_docs_url
downloadablePublicManualHref
|| releaseManifest.public_docs_url
|| releaseManifest.release_notes_url
|| releaseManifest.corresponding_source_url
|| releaseManifest.open_source_repo_url
@ -319,6 +320,9 @@ function ReleaseAuthorityLinks({
return (
<div className="button-row top-gap">
<a className="button button--ghost" href={downloadablePublicManualHref} download>
Download operator manual (.md)
</a>
{releaseManifest.public_docs_url ? (
<a className="button button--ghost" href={releaseManifest.public_docs_url} target="_blank" rel="noreferrer">
Public docs