# HyperTwist Phase 4 gameplay generated-mode selector option owned execution split-phase current-selection dropped-row audit inspect surface packet

## Goal

Close the next thin gameplay-facing consumer seam above the current-selection canonical inspect surface by exposing one current-selection dropped-row audit inspect surface for a chosen selector id.

## Why this packet exists

The current-selection canonical inspect surface already exposed the active selection's full fused split-phase normalization state, including surviving rows, duplicate-pruned rows, and invalid rows. Gameplay and Blueprint callers that only need the dropped-row audit still had to scan and filter the full fused row array themselves.

This packet removes that caller-side filtering step. It exposes one thin current-selection dropped-row audit inspect surface that projects only duplicate-pruned and invalid raw rows for the active selection while preserving unresolved-selection and blocked-preview posture from the already-landed canonical inspect surface.

## What changed

- add a first-party owned execution split-phase current-selection dropped-row audit inspect surface in shared training types
- derive that surface in the coach library by projecting the already-landed current-selection canonical inspect surface instead of reimplementing split-phase normalization logic
- expose the current-selection dropped-row audit inspect surface on both gameplay-facing consumers:
  - `UHyperTwistTrainingPanelWidget`
  - `AHyperTwistTrainingSessionActor`
- preserve exact duplicate-pruned and invalid-row provenance for the active selection
- preserve unresolved cached-selection and blocked-preview posture when the active selection cannot yet expose dropped-row audit detail

## 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 duplicate-pruned and invalid raw rows from one dedicated dropped-row audit surface without scanning the full fused canonical inspect surface 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 phase-id fallback roster inspect surface so callers can inspect only surviving phases whose visible labels fall back to phase id without filtering the broader survivor-phase roster themselves.
