Converge dashboard generated-mode flow onto panel surface

This commit is contained in:
axiomlogicnexus 2026-05-06 03:17:51 +02:00
parent 974361248f
commit b30a7ee488
2 changed files with 84 additions and 6 deletions

View file

@ -10,7 +10,6 @@
#include "Components/VerticalBox.h"
#include "Components/VerticalBoxSlot.h"
#include "HAL/PlatformTime.h"
#include "HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.h"
namespace HyperTwistCoachDashboardWidgetInternal
{
@ -3674,11 +3673,7 @@ bool UHyperTwistCoachDashboardWidget::ContinueCurrentRunFlow()
{
FHyperTwistTrainingRunState RunState;
FString BlockedReason;
bSucceeded = UHyperTwistTrainingRuntimeLibrary::TryExecuteActiveImportedGeneratedModeLaunchRequest(
this,
RunState,
BlockedReason
);
bSucceeded = TryExecuteActiveImportedGeneratedModeLaunchRequest(RunState, BlockedReason);
if (bSucceeded)
{
LastStepResult = FHyperTwistTrainingRunStepResult();

View file

@ -0,0 +1,83 @@
# HyperTwist thin generated-mode dashboard convergence packet
Created on `2026-05-06`
Status:
- first-party HyperTwist packet
- bounded thin runtime-consumer completion slice
## Purpose
This packet closes the last remaining first-party generated-mode consumer leak after the panel widget and session actor packet landed.
The open task is:
- converge the coach dashboard widget onto the already-landed panel consumer surface so it stops bypassing that surface for generated-mode execution
It is not:
- a new generated-mode backend packet
- a dashboard redesign
- a new consumer family
- a broad runtime-library rewrite
## Scope
Bounded lane:
- `UHyperTwistCoachDashboardWidget` should use the inherited `UHyperTwistTrainingPanelWidget` generated-mode consumer method instead of calling the runtime library directly
Required result:
- the dashboard widget executes generated-mode launch requests through `TryExecuteActiveImportedGeneratedModeLaunchRequest(...)` inherited from the panel widget
- the dashboard widget keeps consuming the same refreshed cached run state and blocked-reason surfaces after execution
- the dashboard file no longer carries a direct generated-mode runtime-library bypass
Out of scope:
- changing generated-mode readiness heuristics
- changing generated-mode request creation behavior
- adding new dashboard UX
- widening into later-phase orchestration work
## Current owned product truth
These pieces are already live in first-party code:
- bounded generated-mode execution in the training subsystem and runtime library
- dashboard continue-flow support for generated-mode launch decks
- panel widget and session actor wrappers for selector application, request creation, and request execution
What was still missing:
- the dashboard widget was still calling the runtime library directly for generated-mode execution even though it already inherits the panel surface that now owns that consumer lane
## Implementation target
The slice should do the following:
1. replace the direct runtime-library execute call in `ContinueCurrentRunFlow()`
2. route that execution through the inherited panel method
3. preserve the same dashboard refresh and transition-update flow after execution
## Suggested file ownership
Primary edit surfaces:
- `UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistCoachDashboardWidget.cpp`
- `docs/arch/HYPERTWIST_THIN_GENERATED_MODE_DASHBOARD_CONVERGENCE_PACKET_2026-05-06.md`
## Acceptance criteria
- the dashboard widget no longer directly calls the runtime library for generated-mode execution
- generated-mode dashboard continue flow now goes through the same panel consumer surface as the other thin consumers
- full UE build still succeeds
## Validation checklist
1. build `UnrealHyperTwist.sln`
2. confirm `ContinueCurrentRunFlow()` now uses the inherited panel method
3. confirm no direct generated-mode runtime-library execute call remains in the dashboard widget
That is the packet.