# HyperTwist Phase 8B optional full-browser client / Unreal backend preparation packet

Created on `2026-06-19`

## Status

- first-party HyperTwist packet
- spec-only `Phase 8B` preparation/control slice
- no implementation widening is granted by this packet
- adjacent follow-on status on `2026-06-19`: the separately bounded `Phase 7C`
  native behavior proof is now landed in
  `docs/arch/HYPERTWIST_PHASE7C_MAGICTILE_NATIVE_BEHAVIOR_PROOF_IMPLEMENTATION_PACKET_2026-06-19.md`
- additive follow-on status on `2026-06-19`: the browser-client seam families,
  transport-neutral vocabulary, reconnect posture, and future go or no-go
  criteria are now tightened in
  `docs/arch/HYPERTWIST_PHASE8B_BROWSER_CLIENT_SPEC_EVIDENCE_HARDENING_PACKET_2026-06-19.md`

## Purpose

This packet freezes the optional full-browser client branch after the already
landed embedded browser runtime and browser-state bridge posture.

The granted slice is:

- define the optional full-browser client path as a bounded first-party
  architecture branch
- clarify authority boundaries between a browser-owned client shell and the
  Unreal runtime backend
- define transport, persistence, and packaging seams without claiming live
  implementation

It is not:

- a replacement for the current embedded browser/CEF shipping posture
- a donor-backed browser rewrite
- a browser-first authority inversion over puzzle or training state
- a native `MagicTile` renderer port
- a renderer-port widening packet of any kind

## Current authority basis

This preparation packet stands on:

- `docs/ops/HYPERTWIST_COMPREHENSIVE_RECONSTRUCTION_ROADMAP_2026-06-10.md`
- `docs/v6_5_deep_manual_pack/HyperTwist/ROADMAP.md`
- `docs/v6_5_deep_manual_pack/HyperTwist/ARCHITECTURE.md`
- `docs/v6_5_deep_manual_pack/HyperTwist/FEATURE_REGISTRY.md`
- `docs/ops/HYPERTWIST_IMPLEMENTATION_PHASE_1_KICKOFF.md`

The accepted routing facts are:

- the current landed browser posture is still the embedded browser/CEF shell
  inside Unreal through `UHyperTwistBrowserWidget` and the authoritative
  `Content/Browser/index.html` surface
- Unreal remains the runtime center and the authority for puzzle state,
  training state, timer continuity, replay, and persistence
- the unchecked roadmap branch for a full browser client exists, but it had not
  yet been frozen into a bounded first-party architecture seam
- the adjacent `Phase 7C` native behavior proof is now landed separately
- any later native renderer widening is now governed by the explicit
  `Phase 7D` renderer-port decision gate rather than inheriting permission
  from this browser-client branch

## Required result

The required outcome of this packet is a stable spec-only branch that later
implementation can follow without reopening host or authority ambiguity.

That branch must state:

- the browser client may own rendering, local presentation, and input
  composition
- Unreal remains the authoritative backend over puzzle, session, timer,
  replay, and persistence state
- request/response plus optional push/update transport boundaries are explicit
  first-party seams rather than implicit browser-shell inheritance
- the branch stays optional and deferred rather than becoming the new default
  shipping posture

## Granted family

The bounded `Phase 8B` spec slice may land:

1. a first-party browser-client session boundary
2. a first-party Unreal-backend request/response contract for catalog, launch,
   state query, action submission, replay, and persistence surfaces
3. a first-party optional push/update seam for timer, replay, and training
   state continuity
4. transport-neutral envelope reuse guidance where the landed embedded browser
   bridge already expresses compatible state
5. explicit deferrals for packaging, auth, offline, and renderer ownership

The packet must stay out of:

- live browser-client implementation
- public-hosting or remote-auth rollout
- offline-first conflict-resolution design
- browser-owned solver or training authority
- native `MagicTile` renderer ownership or porting

## Proposed implementation shape

Later implementation, if separately approved, should stay bounded by this
shape:

- Unreal remains the authoritative runtime host
- the optional browser client talks to Unreal through explicit first-party
  backend surfaces rather than direct donor/runtime coupling
- the browser client may reuse the landed browser-state bridge vocabulary where
  that vocabulary is transport-neutral and still owned in first-party terms
- browser-specific rendering, layout, and interaction composition stay on the
  client side
- session creation, puzzle execution, timer state, replay persistence, and
  training-state truth stay on the Unreal side

## Deferred neighboring families

This packet keeps the following families deferred:

- current shipping-posture replacement
- generic browser-first runtime inversion
- native `MagicTile` behavior or renderer ownership
- broader non-Euclidean host-shell replacement
- renderer-port widening before the explicit `Phase 7D` decision gate is
  satisfied

## Acceptance criteria

- the packet records that the optional full-browser client path is now a
  bounded first-party spec branch rather than a loose roadmap note
- the packet records that the landed embedded browser/CEF shell remains the
  current shipping posture
- the packet records that Unreal stays authoritative for runtime state through
  explicit backend seams
- the packet records that this branch remains separate from the now-landed
  `Phase 7C` proof seam and the now-frozen `Phase 7D` renderer-port decision
  gate

## Validation target

Validate this packet through doc-consistency only:

1. roadmap, architecture, feature-registry, and kickoff notes must agree on
   the optional full-browser client branch
2. no Unreal build or code validation claim is required for this spec-only
   packet
3. no implementation or packaging proof may be claimed from this document

## Queue effect

If this packet lands cleanly:

- the optional full-browser client branch becomes explicitly defined and safely
  deferrable
- the browser-client branch remains separate from the now-landed `Phase 7C`
  proof seam and the separate `Phase 7D` native renderer decision gate
