# HyperTwist Guided Classic-Cube Task-Planner And Focus-Playback Hierarchy Reconciliation - 2026-05-27

## Status

This document is the source-backed reconciliation note for the current guided
classic-cube task-planner and focus-playback family across:

- `alinen/cube`
- the first-party training, drill, coaching, and replay surfaces
- the landed bounded classic-cube `Phase 6R-Q`, `Phase 6R-R`, and `Phase 6R-S`
  seams

It answers one narrow question:

- does the current `alinen/cube` source require reopening already landed
  HyperTwist training/replay or classic-cube explanation packets before any
  future guided-task packet is considered

Result:

- no product-code reopening is required
- yes selective authority backfill is required so the retained planner slice
  stays narrow and does not blur into the current first-party
  training/drill/coaching, replay, or bounded classic-cube explanation
  families

## Source basis

- `C:\HyperTwist\docs\HYPERTWIST_PHASE_0R_PACKET_0R_E_EVALUATION_2026-05-13.md`
- `C:\HyperTwist\docs\REPO_LICENSE_TRACKING.md`
- `C:\HyperTwist\docs\v6_5_deep_manual_pack\HyperTwist\FEATURE_REGISTRY.md`
- `C:\Workspaces\HyperTwist\repos.manifest.json`
- `C:\Workspaces\HyperTwist\clean-room-specs\alinen-cube.model-a.md`
- `C:\Workspaces\HyperTwist\mirrors\restrictive\alinen\cube\README.md`
- `C:\Workspaces\HyperTwist\mirrors\restrictive\alinen\cube\Assets\Scripts\CubePlanner.cs`
- `C:\Workspaces\HyperTwist\mirrors\restrictive\alinen\cube\Assets\Scripts\CubeTaskSolver.cs`
- `C:\Workspaces\HyperTwist\mirrors\restrictive\alinen\cube\Assets\Scripts\CubeStateManager.cs`
- `C:\Workspaces\HyperTwist\mirrors\restrictive\alinen\cube\Assets\Scripts\CubeController.cs`
- current first-party runtime and packet authority under:
  - `C:\HyperTwist\UnrealHyperTwist\Source\UnrealHyperTwist`
  - `C:\HyperTwist\docs\ops\HYPERTWIST_IMPLEMENTATION_PHASE_1_KICKOFF.md`

## Slice-local verdict

| Slice | Primary authority | Secondary value kept | Route | Width | Result |
| --- | --- | --- | --- | --- | --- |
| Landed first-party training sessions, method-drill definitions, run state, follow-up queues, and coaching cockpit surfaces | first-party training and coaching surfaces | none required from `alinen/cube` | existing landed permissive route | `F2` | unchanged live implementation owner |
| Landed first-party replay and staged explanation shells | first-party replay surfaces plus landed bounded classic-cube `Phase 6R-Q`, `Phase 6R-R`, and `Phase 6R-S` seams | none required from `alinen/cube` | existing landed permissive route | `F2` | unchanged live implementation owner |
| Guided task graph, bounded task-local planner, focus-target cueing, and queued move demonstration for beginner classic-cube help | `alinen/cube` | current first-party training/coaching, replay, and bounded classic-cube explanation families remain adjacent non-overlapping owners | `R4` now, `R3` only if an explicit clean-room packet is opened later | `F2` | restrictive planner benchmark authority kept explicit |

## Why no product-code reopening is required

### `alinen/cube`

`alinen` still has retained value, but it is narrow:

- named solve-task progression rather than a single monolithic solve path
- bounded per-task search and scoring against current constraints
- explicit focus-target cueing for the current task
- queued move demonstration over a visible cube surface
- separable cube-state, planner, and playback modules

That retained value is explicit in the current source:

- `CubePlanner.cs` builds an ordered `_tasks` list with row/task labels and
  per-task solver delegates
- `CubePlanner.cs` advances one task at a time and only requests bounded help
  against the current task
- `CubePlanner.cs` uses `FocusCubie(...)` and task-specific color-enable logic
  to spotlight the current teaching target
- `CubeTaskSolver.cs` scores candidate paths against the current cubie and
  solved constraints rather than only asking for a total-cube finish
- `CubeController.cs` owns a queued command-playback seam separate from the
  planner
- `CubeStateManager.cs` keeps the cube-state turn/grouping layer separate from
  both the planner and the playback shell

Those strengths make `alinen/cube` the strongest current guided task-planner
benchmark. They do not make it the owner of HyperTwist's live training,
coaching, replay, or bounded classic-cube explanation families.

### Current first-party training/coaching and replay surfaces

HyperTwist already owns the current live training, coaching, and adjacent
replay family in first-party code:

- method-drill sample decks and definitions already exist
- method-drill run, batch, diagnostic, and follow-up template surfaces already
  exist
- coaching queue and follow-up entry surfaces already exist
- replay and staged explanation surfaces already exist through first-party
  replay and bounded classic-cube explanation lanes

Those surfaces are broader and already live. `alinen/cube` does not reopen
them.

### Landed classic-cube `Phase 6R-Q/R/S`

The landed classic-cube explanation and correction seams are already first-party
and bounded:

- the stage ladder already exposes ordered solve stages
- solve guidance already gates on reconstruction and correction completion
- correction and resolution already reopen or unlock the stage ladder in a
  bounded way
- playback-stage ownership is intentionally deferred inside that bounded family

`alinen/cube`'s task-planner benchmark does not reopen those shell/state
families. It only remains a later clean-room comparison surface if HyperTwist
ever wants a more explicit guided task graph above the current drill, replay,
and solve-guidance seams.

## Selective backfill result

### Earlier packet reopened

- `C:\HyperTwist\docs\HYPERTWIST_PHASE_0R_PACKET_0R_E_EVALUATION_2026-05-13.md`

### Earlier standing note reopened

- `C:\Workspaces\HyperTwist\clean-room-specs\alinen-cube.model-a.md`

### Reason

Later comparison against the now-landed HyperTwist training/drill/coaching,
replay, and classic-cube explanation surfaces sharpened the exact retained
`alinen` slice:

- `alinen/cube` is not a generic training-session owner
- `alinen/cube` is not a generic coaching backend owner
- `alinen/cube` is not the live owner of canonical replay or staged
  explanation playback
- `alinen/cube` is not the live owner of the current bounded solve-guidance
  ladder
- `alinen/cube` remains the task-planner benchmark only for the narrower
  lesson-task graph, bounded task-local planner, focus-target cueing, and
  queued move-demonstration slice

### Change class

- repo-local extraction did not change
- cross-lane authority wording was sharpened for the exact retained slice
- no cleanup interpretation changed
- no product-code change occurred

### What remained valid

- the original `0R-E` decision to keep `alinen/cube` no-license and non-live
  remained valid
- the current first-party training/coaching surfaces remained valid
- the current first-party replay surfaces remained valid
- the current first-party classic-cube `Phase 6R-Q/R/S` seams remained valid
- the existing scrubbed `Model A` handoff remained valid as a seed

### What changed

The dependent canon now makes the exact non-live role explicit:

- keep `alinen/cube` only as the strongest clean-room planner benchmark for
  the narrower guided task-graph and focus-playback slice
- keep training/drill/coaching ownership with the current first-party surfaces
- keep replay ownership with the current first-party replay family
- keep bounded classic-cube explanation and correction ownership with the
  landed `Phase 6R-Q/R/S` seams

## Propagation result

### Feature registry

Updated.

The registry now explicitly records the retained guided task-planner and
focus-playback slice instead of leaving that slice implicit in the older `0R-E`
packet alone.

### Cross-lane doctrine

No doctrine wording change was needed.

This pass applied the existing `A/R/F` hierarchy; it did not change the
hierarchy rules themselves.

### Skillization

No doctrine or `SKILLS.md` change was needed.

This pass did not create or reopen any command or skill surface.

### Legal evidence

No license-status or mirror-custody change occurred.

The repo-row tracker, feature registry, manifest, and scrubbed handoff were
sharpened instead.

## Operational answer

Before any future guided task or planner packet is opened, the correct move was
this evaluation and selective backfill pass first.

After this pass:

- do not reopen the live product code
- do not reinterpret `alinen/cube` as proof that training/coaching, replay,
  or bounded solve-guidance ownership is still pending
- if HyperTwist later opens a true guided task-planner lane, start from the
  retained planner benchmark slice only and keep it clean-room routed rather
  than donor-routed
