# HyperTwist Phase 4 gameplay generated-mode selector option owned execution split-phase current-selection explicit-label roster inspect surface packet

## Goal

Close the next thin gameplay-facing consumer seam above the current-selection survivor-phase roster surface by exposing one current-selection explicit-label roster inspect surface for a chosen selector id.

## Why this packet exists

The current-selection survivor-phase roster surface already exposed the active selection's normalized surviving phases, including both explicit-label survivors and phase-id fallback survivors. Gameplay and Blueprint callers that only need the explicit-label subset still had to filter the broader survivor-phase roster themselves.

This packet removes that caller-side filtering step. It exposes one thin current-selection explicit-label roster inspect surface that projects only surviving phases whose visible labels come from explicit source labels, while preserving unresolved-selection and blocked-preview posture from the already-landed survivor-phase roster surface.

## What changed

- add a first-party owned execution split-phase current-selection explicit-label roster inspect surface in shared training types
- derive that surface in the coach library by projecting the already-landed current-selection survivor-phase roster inspect surface instead of reimplementing split-phase normalization logic
- expose the current-selection explicit-label roster inspect surface on both gameplay-facing consumers:
  - `UHyperTwistTrainingPanelWidget`
  - `AHyperTwistTrainingSessionActor`
- preserve exact explicit-label phase order, normalized labels, and label-provenance lines for the active selection
- preserve unresolved cached-selection and blocked-preview posture when the active selection cannot yet expose an explicit-label roster

## Validation

- full `Development Editor|Win64` solution build for `C:\HyperTwist\UnrealHyperTwist\UnrealHyperTwist.sln`

## Result

Gameplay and Blueprint callers can now inspect only the active selection's surviving phases whose visible labels come from explicit source labels from one dedicated explicit-label roster surface without filtering the broader survivor-phase roster first.

## Next bounded slice

Stay on the same gameplay-facing consumer lane and expose one thin generated-mode selector option owned execution split-phase current-selection label-provenance partition summary inspect surface so callers can inspect the active selection's explicit-label vs phase-id-fallback split from one summary surface without comparing the two filtered rosters themselves.
