# HyperTwist Phase 4 dashboard live active-run, attempt-timer, and current-case / current-deck status inspect surface packet

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

## Intent

Stay on the deliberate live `UHyperTwistCoachDashboardWidget` guidance-consumer lane and expose the remaining live active-run, attempt/timer, and current-case/current-deck presentation state directly to gameplay and Blueprint callers.

## Why this packet exists

The dashboard already derived:

- the displayed active-run status line
- the displayed active-run summary line
- the displayed attempt-input and live-timer status lines
- the displayed current-case prompt and notation lines

But that live state still only surfaced through dashboard text blocks. Callers still had to scrape widget presentation or reopen active-run / timer / current-case derivation to inspect what the dashboard was currently showing.

## What changed

- added `FHyperTwistTrainingCoachDashboardActiveRunStatusInspectSurface`
- added `FHyperTwistTrainingCoachDashboardActiveAttemptTimerStatusInspectSurface`
- added `FHyperTwistTrainingCoachDashboardCurrentCaseDeckStatusInspectSurface`
- added `GetDisplayedActiveRunStatusInspectSurface()`
- added `GetDisplayedActiveAttemptTimerStatusInspectSurface()`
- added `GetDisplayedCurrentCaseDeckStatusInspectSurface()`
- retained the exact displayed active-run status/summary lines, attempt-input line, timer-status line, and current-case prompt/notation lines inside the widget so the new inspect surfaces report the same live strings the dashboard is already presenting
- kept the packet bounded to `UHyperTwistCoachDashboardWidget` plus shared surface types, with no dashboard redesign 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 displayed active-run line and summarized active-run attempt totals
- the displayed attempt-input posture and live timer phase/status line
- the displayed current-case prompt/notation presentation plus the active current-deck context

without scraping dashboard text blocks or reopening active-run / timer / current-case derivation.

## 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 guidance-consumer lane and land the displayed last-attempt review summary, displayed last-attempt timing / derived-phase review, and live split-capture status inspect surface group.
