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

## Goal

Close the next thin gameplay-facing consumer seam above the current-selection label-provenance partition roster-pair surface by exposing one current-selection label-provenance partition merged ordered roster inspect surface for a chosen selector id.

## Why this packet exists

The current-selection label-provenance partition roster-pair inspect surface already exposed the active selection's explicit-label and phase-id-fallback retained-phase subsets from one paired detail surface. Gameplay and Blueprint callers that needed one ordered retained-phase view still had to stitch those two arrays together themselves and then preserve partition tagging while reordering by normalized execution order.

This packet removes that caller-side merge step. It exposes one thin current-selection label-provenance partition merged ordered roster inspect surface that composes the already-landed partition summary and roster-pair surfaces into one ordered retained-phase list, while preserving explicit-label versus phase-id-fallback partition tagging, unresolved-selection posture, and blocked-preview posture from the already-landed surfaces.

## What changed

- add a first-party owned execution split-phase current-selection label-provenance partition merged ordered roster inspect surface in shared training types
- derive that surface in the coach library by composing the already-landed current-selection label-provenance partition summary inspect surface and roster-pair inspect surface instead of reimplementing split-phase normalization logic
- expose the current-selection label-provenance partition merged ordered roster inspect surface on both gameplay-facing consumers:
  - `UHyperTwistTrainingPanelWidget`
  - `AHyperTwistTrainingSessionActor`
- preserve active-selection explicit-label and phase-id-fallback partition counts while projecting one merged ordered retained-phase roster with explicit partition tagging on each row
- preserve unresolved cached-selection and blocked-preview posture when the active selection cannot yet expose a merged ordered retained-phase roster

## Validation

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

## Result

Gameplay and Blueprint callers can now inspect the active selection's retained split phases in one ordered list with explicit-label versus phase-id-fallback partition tagging, without stitching the paired detail arrays together themselves.

## 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 merged ordered roster phase-id lookup inspect surface so callers can inspect one retained split-phase row by phase id without scanning the merged ordered roster array themselves.
