# HyperTwist Phase 4 dashboard live template-launch and preview action control inspect surface packet

- bounded Phase `4` dashboard-consumer slice
- date: `2026-05-10`

## Intent

Stay adjacent in the live dashboard consumer lane and expose the preferred template-launch plus recommended/follow-up preview action controls directly to gameplay and Blueprint callers.

## Why this packet exists

`UHyperTwistCoachDashboardWidget` already displayed:

- the preferred template-launch action label
- the recommended preview action label
- the follow-up preview action label
- the enablement posture behind those three controls

But that control band still only surfaced through button labels and `SetIsEnabled` state. Callers still had to scrape widget controls to understand whether the dashboard was willing to launch the preferred template, whether recommended guidance preview was currently actionable, and whether follow-up guidance preview was currently blocked by timer or guidance availability.

## What changed

- added `FHyperTwistTrainingCoachDashboardPreferredTemplateLaunchActionInspectSurface`
- added `FHyperTwistTrainingCoachDashboardGuidancePreviewActionInspectSurface`
- added `GetDisplayedPreferredTemplateLaunchActionInspectSurface()`
- added `GetDisplayedRecommendedPreviewActionInspectSurface()`
- added `GetDisplayedFollowUpPreviewActionInspectSurface()`
- retained the exact displayed template-launch, recommended-preview, and follow-up-preview action labels inside the widget so the new surfaces report the same live strings the dashboard is already presenting
- retained the exact displayed template-launch status/detail lines inside the widget so the preferred-template action surface reports the same live template band the dashboard is already presenting
- kept the packet bounded to `UHyperTwistCoachDashboardWidget` plus shared surface types, with no template-selection refactor and no backend continuity changes

## Files

- `C:\HyperTwist\UnrealHyperTwist\Source\UnrealHyperTwist\Public\HyperTwistTraining\HyperTwistTrainingTypes.h`
- `C:\HyperTwist\UnrealHyperTwist\Source\UnrealHyperTwist\Public\HyperTwistTraining\HyperTwistCoachDashboardWidget.h`
- `C:\HyperTwist\UnrealHyperTwist\Source\UnrealHyperTwist\Private\HyperTwistTraining\HyperTwistCoachDashboardWidget.cpp`
- `C:\HyperTwist\docs\HYPERTWIST_ROADMAP_OVERHAUL_EXPANSION_GUIDE.md`

## Outcome

Gameplay and Blueprint callers can now inspect:

- the exact displayed preferred template-launch action label
- the exact displayed recommended preview action label
- the exact displayed follow-up preview action label
- whether each of those three actions is currently enabled
- the displayed template-launch status/detail band aligned with the preferred template action
- whether recommended or follow-up preview is currently backed by a live deck, a brief fallback, or neither
- which preview lane is currently active behind those controls

without scraping widget button text or reopening launch/preview gating logic.

## Validation

- full `Development Editor | Win64` MSBuild on `UnrealHyperTwist.sln`
  - passed with `0 Warning(s), 0 Error(s)`

## Next clean slice

Stay on the same live dashboard consumer lane and expose the guidance preview case navigation control surface pair over the already-derived `Prev Guidance Case` / `Next Guidance Case` labels and enablement posture.
