Harden Phase 6C launch execution projections

This commit is contained in:
axiomlogicnexus 2026-06-18 08:56:15 +00:00
parent 9ced13b762
commit 3da81bb21c
5 changed files with 105 additions and 40 deletions

View file

@ -9624,6 +9624,14 @@ bool UHyperTwistTrainingSubsystem::TryGetActiveImportedGeneratedModeLaunchReques
FHyperTwistTrainingImportedGeneratedModeLaunchRequest UHyperTwistTrainingSubsystem::CreateActiveImportedGeneratedModeLaunchRequest(
const FString& RequestSource
)
{
return CreateActiveImportedGeneratedModeLaunchRequestInternal(RequestSource, true);
}
FHyperTwistTrainingImportedGeneratedModeLaunchRequest UHyperTwistTrainingSubsystem::CreateActiveImportedGeneratedModeLaunchRequestInternal(
const FString& RequestSource,
const bool bRefreshRepositoryViews
)
{
FHyperTwistTrainingImportedGeneratedModeLaunchConfig LaunchConfig;
if (!TryGetActiveImportedGeneratedModeLaunchConfig(LaunchConfig))
@ -9639,12 +9647,8 @@ FHyperTwistTrainingImportedGeneratedModeLaunchRequest UHyperTwistTrainingSubsyst
ActiveImportedGeneratedModeLaunchRequest.RequestSource =
RequestSource.IsEmpty() ? TEXT("runtime-imported-generated-mode") : RequestSource;
ActiveImportedGeneratedModeLaunchRequest.LaunchConfig = LaunchConfig;
ActiveRunState.ImportedGeneratedModeLaunchRequest = ActiveImportedGeneratedModeLaunchRequest;
TrainingRepositoryState = UHyperTwistTrainingRepositoryLibrary::RecordRunState(
TrainingRepositoryState,
ActiveRunState
);
RefreshRepositoryViews();
ActiveRunState.ImportedGeneratedModeLaunchRequest = ActiveImportedGeneratedModeLaunchRequest;
PersistActiveRunStateToRepository(bRefreshRepositoryViews);
return ActiveImportedGeneratedModeLaunchRequest;
}
@ -9652,6 +9656,19 @@ bool UHyperTwistTrainingSubsystem::TryExecuteActiveImportedGeneratedModeLaunchRe
FHyperTwistTrainingRunState& OutRunState,
FString& OutBlockedReason
)
{
return TryExecuteActiveImportedGeneratedModeLaunchRequestInternal(
OutRunState,
OutBlockedReason,
true
);
}
bool UHyperTwistTrainingSubsystem::TryExecuteActiveImportedGeneratedModeLaunchRequestInternal(
FHyperTwistTrainingRunState& OutRunState,
FString& OutBlockedReason,
const bool bRefreshRepositoryViews
)
{
OutRunState = FHyperTwistTrainingRunState();
OutBlockedReason.Reset();
@ -9678,8 +9695,9 @@ bool UHyperTwistTrainingSubsystem::TryExecuteActiveImportedGeneratedModeLaunchRe
if (bNeedsFreshLaunchRequest)
{
LaunchRequest = CreateActiveImportedGeneratedModeLaunchRequest(
TEXT("runtime-imported-generated-mode-executor")
LaunchRequest = CreateActiveImportedGeneratedModeLaunchRequestInternal(
TEXT("runtime-imported-generated-mode-executor"),
false
);
}
if (!LaunchRequest.IsStructurallyValid())
@ -9724,11 +9742,12 @@ bool UHyperTwistTrainingSubsystem::TryExecuteActiveImportedGeneratedModeLaunchRe
const FString ExecutionSessionId =
HyperTwistTrainingSubsystemInternal::BuildGeneratedModeExecutionSessionId(LaunchRequest);
const FHyperTwistTrainingRunState StartedRunState = StartTrainingRunFromDeck(
const FHyperTwistTrainingRunState StartedRunState = StartTrainingRunFromDeckInternal(
GeneratedDeck,
SourceRunState.Session.UserId,
ExecutionSessionId,
LaunchRequest.LaunchConfig.DeliveryMode
LaunchRequest.LaunchConfig.DeliveryMode,
false
);
if (!StartedRunState.IsStructurallyValid())
{
@ -9740,11 +9759,7 @@ bool UHyperTwistTrainingSubsystem::TryExecuteActiveImportedGeneratedModeLaunchRe
ActiveImportedGeneratedModeLaunchRequest = LaunchRequest;
ActiveRunState.ImportedGeneratedModeLaunchRequest = LaunchRequest;
RefreshSummary();
TrainingRepositoryState = UHyperTwistTrainingRepositoryLibrary::RecordRunState(
TrainingRepositoryState,
ActiveRunState
);
RefreshRepositoryViews();
PersistActiveRunStateToRepository(bRefreshRepositoryViews);
OutRunState = ActiveRunState;
return OutRunState.IsStructurallyValid();
@ -9808,11 +9823,12 @@ bool UHyperTwistTrainingSubsystem::TryStartHigherDimensionalLaunchSurface(
: FString::Printf(
TEXT("phase6c_launch_%s"),
*FGuid::NewGuid().ToString(EGuidFormats::Digits));
OutRunState = StartTrainingRunFromDeck(
OutRunState = StartTrainingRunFromDeckInternal(
LaunchDeck,
EffectiveUserId,
EffectiveSessionId,
Mode
Mode,
false
);
if (!OutRunState.IsStructurallyValid())
{
@ -9834,12 +9850,6 @@ bool UHyperTwistTrainingSubsystem::TryStartHigherDimensionalLaunchSurface(
return false;
}
}
RefreshSummary();
TrainingRepositoryState = UHyperTwistTrainingRepositoryLibrary::RecordRunState(
TrainingRepositoryState,
ActiveRunState
);
RefreshRepositoryViews();
OutRunState = ActiveRunState;
if (!OutRunState.IsStructurallyValid())
{
@ -9850,12 +9860,16 @@ bool UHyperTwistTrainingSubsystem::TryStartHigherDimensionalLaunchSurface(
if (!bExecuteGeneratedModeLaunchRequest)
{
RefreshSummary();
PersistActiveRunStateToRepository(true);
OutRunState = ActiveRunState;
return true;
}
const FHyperTwistTrainingImportedGeneratedModeLaunchRequest LaunchRequest =
CreateActiveImportedGeneratedModeLaunchRequest(
TEXT("phase6c-higher-dimensional-launch-surface")
CreateActiveImportedGeneratedModeLaunchRequestInternal(
TEXT("phase6c-higher-dimensional-launch-surface"),
false
);
if (!LaunchRequest.IsStructurallyValid())
{
@ -9864,7 +9878,10 @@ bool UHyperTwistTrainingSubsystem::TryStartHigherDimensionalLaunchSurface(
return false;
}
if (!TryExecuteActiveImportedGeneratedModeLaunchRequest(OutRunState, OutBlockedReason))
if (!TryExecuteActiveImportedGeneratedModeLaunchRequestInternal(
OutRunState,
OutBlockedReason,
true))
{
if (OutBlockedReason.IsEmpty())
{
@ -9934,11 +9951,7 @@ FHyperTwistTrainingRunState UHyperTwistTrainingSubsystem::ApplyActiveImportedGen
return FHyperTwistTrainingRunState();
}
RefreshSummary();
TrainingRepositoryState = UHyperTwistTrainingRepositoryLibrary::RecordRunState(
TrainingRepositoryState,
ActiveRunState
);
RefreshRepositoryViews();
PersistActiveRunStateToRepository(true);
return ActiveRunState;
}
@ -12591,12 +12604,37 @@ FHyperTwistTrainingRunState UHyperTwistTrainingSubsystem::StartCoachQueueEntry(
return RunState;
}
void UHyperTwistTrainingSubsystem::PersistActiveRunStateToRepository(
const bool bRefreshRepositoryViews
)
{
TrainingRepositoryState = UHyperTwistTrainingRepositoryLibrary::RecordRunState(
TrainingRepositoryState,
ActiveRunState
);
if (bRefreshRepositoryViews)
{
RefreshRepositoryViews();
}
}
FHyperTwistTrainingRunState UHyperTwistTrainingSubsystem::StartTrainingRunFromDeck(
const FHyperTwistTrainingDeck& Deck,
const FString& UserId,
const FString& SessionId,
EHyperTwistTrainingDeliveryMode Mode
)
{
return StartTrainingRunFromDeckInternal(Deck, UserId, SessionId, Mode, true);
}
FHyperTwistTrainingRunState UHyperTwistTrainingSubsystem::StartTrainingRunFromDeckInternal(
const FHyperTwistTrainingDeck& Deck,
const FString& UserId,
const FString& SessionId,
EHyperTwistTrainingDeliveryMode Mode,
const bool bRefreshRepositoryViews
)
{
if (HasActiveSmartDeviceSession())
{
@ -12632,11 +12670,7 @@ FHyperTwistTrainingRunState UHyperTwistTrainingSubsystem::StartTrainingRunFromDe
OpenActiveRecognitionSession(RecognitionOpenError);
}
RefreshSummary();
TrainingRepositoryState = UHyperTwistTrainingRepositoryLibrary::RecordRunState(
TrainingRepositoryState,
ActiveRunState
);
RefreshRepositoryViews();
PersistActiveRunStateToRepository(bRefreshRepositoryViews);
return ActiveRunState;
}

View file

@ -738,6 +738,23 @@ private:
void RefreshSummary();
void RefreshMethodDrillSummary();
void RefreshRepositoryViews();
void PersistActiveRunStateToRepository(bool bRefreshRepositoryViews);
FHyperTwistTrainingRunState StartTrainingRunFromDeckInternal(
const FHyperTwistTrainingDeck& Deck,
const FString& UserId,
const FString& SessionId,
EHyperTwistTrainingDeliveryMode Mode,
bool bRefreshRepositoryViews
);
FHyperTwistTrainingImportedGeneratedModeLaunchRequest CreateActiveImportedGeneratedModeLaunchRequestInternal(
const FString& RequestSource,
bool bRefreshRepositoryViews
);
bool TryExecuteActiveImportedGeneratedModeLaunchRequestInternal(
FHyperTwistTrainingRunState& OutRunState,
FString& OutBlockedReason,
bool bRefreshRepositoryViews
);
void ResetActiveLiveTimerState();
void RefreshActiveLiveTimerState();
bool CanUseSmartDeviceBridge() const;

View file

@ -365,6 +365,8 @@ Closure read:
- `2026-06-18` Windows checkpoint: the same isolated worktree `C:\HyperTwist_worktrees\phase10validate` rebuilt the widened interactive-scene slice with `Result: Succeeded` / UnrealBuildTool `Total execution time: 3528.60 seconds`, and targeted `UnrealEditor-Cmd` automation found `11` tests under `HyperTwist.FirstParty.HigherDimensional.Phase6C` and passed all `11`, including the new `InteractiveSceneCatalog`; `LaunchExecution` emitted `Ignoring very large delta of 479.46 seconds`, so that quiet interval also remains confirmed as known-good on this lane rather than a corruption signal
- `2026-06-18` continuation proof: current code now replaces those placeholder `Magic120Cell` / `MagicCube5D` interactive-scene envelopes with family-owned runtime-state, projection, and persistence payloads, adds dedicated-family training-map assets plus dedicated host/launch/view-context/session surfaces, exposes explicit scene-envelope decoders through the runtime library, and batches start-time selector posture application so generated-mode launch execution no longer rebuilds repository views once per default selector
- `2026-06-18` Windows checkpoint: the same isolated worktree `C:\HyperTwist_worktrees\phase10validate` rebuilt the dedicated-family runtime-state slice with `Result: Succeeded` / UnrealBuildTool `Total execution time: 1648.33 seconds`; after the selector-batching hardening rebuild with `Result: Succeeded` / UnrealBuildTool `Total execution time: 93.44 seconds`, targeted `UnrealEditor-Cmd` automation exported `C:\HyperTwist_worktrees\phase10validate\UnrealHyperTwist\Saved\AutomationReports\Phase6C-DedicatedFamily-Optimized\index.json` with all `11` `HyperTwist.FirstParty.HigherDimensional.Phase6C` tests passing, `totalDuration` `196.08790588378906`, and `LaunchExecution` duration `195.65591430664062`; the commandlet still emitted `Ignoring very large delta of 195.58 seconds`, but that quiet interval is materially down from the immediately prior `385.00 seconds` proof on this lane while retaining `**** TEST COMPLETE. EXIT CODE: 0 ****`
- `2026-06-18` continuation proof: current code now also defers repository-view projection across the internal generated-mode launch handoff itself, so the seed-run, launch-request persistence, and generated-run transition keep their repository state intact without forcing intermediate view rebuilds that the caller never reads
- `2026-06-18` Windows checkpoint: after that projection-deferral hardening rebuild with `Result: Succeeded` / UnrealBuildTool `Total execution time: 400.77 seconds`, targeted `UnrealEditor-Cmd` automation exported `C:\HyperTwist_worktrees\phase10validate\UnrealHyperTwist\Saved\AutomationReports\Phase6C-DedicatedFamily-Optimized2\index.json` with all `11` `HyperTwist.FirstParty.HigherDimensional.Phase6C` tests passing, `totalDuration` `41.88494873046875`, and `LaunchExecution` duration `41.53509521484375`; the controller quiet interval fell again to `41.52 seconds` while retaining `**** TEST COMPLETE. EXIT CODE: 0 ****`
- [x] Replace the current placeholder interactive-scene envelopes with full owned `120-cell` and `5D` simulation-state, projection, and persistence ownership in Unreal above the landed higher-dimensional scene-context catalog
- [x] Replace the current shared-map execution bridge with full owned dedicated-family interactive launch, map, and persistence surfaces for `120-cell` and `5D`
@ -575,4 +577,9 @@ Recommended next widening order:
rerun on `localhost:22022` still passed all `11`
`HyperTwist.FirstParty.HigherDimensional.Phase6C` tests while dropping the
long `LaunchExecution` quiet interval from `385.00` to `195.58` seconds
- `2026-06-18`: the next `Phase 6C` hardening pass then deferred repository-
view projection across the internal generated-mode launch handoff itself, and
the same `localhost:22022` lane still passed all `11`
`HyperTwist.FirstParty.HigherDimensional.Phase6C` tests while dropping the
`LaunchExecution` quiet interval again from `195.58` to `41.52` seconds
- later classic-cube polish only when a concrete presentation gap remains, not as the default next move

View file

@ -271,7 +271,7 @@ repo.
| Higher-dimensional initial shared-map launch and view-context execution bridge | Implemented now | landed `Phase 6C` continuation packet | First-party current code first bundled higher-dimensional launch surfaces and view-context surfaces for `Magic120Cell` and `MagicCube5D`, resolved those surfaces through the training runtime library plus the live training panel/session-actor caches, and let the training subsystem start the shared-map seed run, apply default selector posture, persist the generated-mode launch request, and start the owned generated run without widening into external-process ownership. After recovering an interrupted follow-up, the primary reverse-SSH `localhost:22022` Windows lane rebuilt that cleaned slice on `2026-06-18` with `Result: Succeeded`, UnrealBuildTool `Total execution time: 124.81 seconds`, and passed all `8` `HyperTwist.FirstParty.HigherDimensional.Phase6C` tests, including `LaunchCatalog`, `ViewContextCatalog`, `LaunchExecution`, and `RunStateActivationResolution`; that initial bridge is now superseded by the later dedicated-family map ownership continuation. |
| Higher-dimensional explicit dedicated-host seam | Implemented now | landed `Phase 6C` host-surface continuation packet | First-party current code then recorded the preferred dedicated-family `Magic120Cell` / `MagicCube5D` host-map targets in an explicit higher-dimensional host-surface catalog while the slice still kept the shared training map as the interim effective runtime fallback, mirrored that resolved host seam through the training runtime library plus the panel/session caches, and threaded the host-surface id into the launch/view-context surfaces and generated-mode lineage. The primary reverse-SSH `localhost:22022` Windows lane rebuilt this widened slice on `2026-06-18` with `Result: Succeeded`, UnrealBuildTool `Total execution time: 2858.02 seconds`, and passed all `9` `HyperTwist.FirstParty.HigherDimensional.Phase6C` tests, including the new `HostCatalog`; that interim fallback is now superseded by the later dedicated-family map ownership continuation. |
| Higher-dimensional executed runtime session surface | Implemented now | landed `Phase 6C` session-surface continuation packet | First-party current code now merges the higher-dimensional launch, host, and view-context seams into an explicit runtime-session catalog for `Magic120Cell` and `MagicCube5D`, mirrors that session surface through the training runtime library plus the panel/session caches, upgrades generated-mode deck lineage to record the resolved session surface, and applies the merged launch-plus-view selector posture at start time instead of only the narrower launch defaults. The primary reverse-SSH `localhost:22022` Windows lane rebuilt this widened slice on `2026-06-18` with `Result: Succeeded`, UnrealBuildTool `Total execution time: 3541.98 seconds`, and passed all `10` `HyperTwist.FirstParty.HigherDimensional.Phase6C` tests, including the new `SessionCatalog`; the longer `LaunchExecution` quiet interval of `573.84 seconds` remained known-good. |
| Higher-dimensional dedicated-family interactive scene ownership | Implemented now | landed `Phase 6C` interactive-scene and dedicated-host continuation packet | First-party current code now promotes the higher-dimensional runtime-session seams into explicit `Magic120Cell` and `MagicCube5D` interactive-scene surfaces with family-owned runtime-state, projection, and persistence envelopes, replaces the shared-map bridge with dedicated-family training-map assets plus dedicated host/launch/view-context/session surfaces, exposes explicit scene-envelope decoders through the runtime library, and batches default selector application so generated-mode launch execution no longer rebuilds repository views once per selector. The primary reverse-SSH `localhost:22022` Windows lane rebuilt the dedicated-family ownership slice on `2026-06-18` with `Result: Succeeded`, UnrealBuildTool `Total execution time: 1648.33 seconds`; the follow-up hardening rebuild completed in `93.44 seconds`, and the exported automation report passed all `11` `HyperTwist.FirstParty.HigherDimensional.Phase6C` tests with `totalDuration` `196.08790588378906`, `LaunchExecution` duration `195.65591430664062`, and the controller quiet interval reduced to `195.58 seconds`. |
| Higher-dimensional dedicated-family interactive scene ownership | Implemented now | landed `Phase 6C` interactive-scene and dedicated-host continuation packet | First-party current code now promotes the higher-dimensional runtime-session seams into explicit `Magic120Cell` and `MagicCube5D` interactive-scene surfaces with family-owned runtime-state, projection, and persistence envelopes, replaces the shared-map bridge with dedicated-family training-map assets plus dedicated host/launch/view-context/session surfaces, exposes explicit scene-envelope decoders through the runtime library, batches default selector application so generated-mode launch execution no longer rebuilds repository views once per selector, and then defers repository-view projection across the internal generated-mode handoff itself so only the final launch state forces a view refresh. The primary reverse-SSH `localhost:22022` Windows lane rebuilt the dedicated-family ownership slice on `2026-06-18` with `Result: Succeeded`, UnrealBuildTool `Total execution time: 1648.33 seconds`; the later projection-deferral hardening rebuild completed in `400.77 seconds`, and the exported automation report passed all `11` `HyperTwist.FirstParty.HigherDimensional.Phase6C` tests with `totalDuration` `41.88494873046875`, `LaunchExecution` duration `41.53509521484375`, and the controller quiet interval reduced to `41.52 seconds`. |
| Broad non-Euclidean interaction shell and host ownership | Deep-source grounded retained | `MagicTile` retained remainder | Broad interaction-shell, WinForms/OpenTK host ownership, and generic runtime replacement remain deferred after the landed `Phase 6R-T` slice. |
### 7. Speech input and voice sidecars

View file

@ -172,10 +172,17 @@ Current consolidated milestone snapshot:
exported automation report passed all `11`
`HyperTwist.FirstParty.HigherDimensional.Phase6C` tests with
`LaunchExecution` duration `195.65591430664062`
- `2026-06-18`: the next `Phase 6C` hardening pass then deferred repository-
view projection across the internal generated-mode launch handoff, rebuilt
the same `localhost:22022` lane with `Result: Succeeded`, UnrealBuildTool
`Total execution time: 400.77 seconds`, and the exported automation report
again passed all `11` `HyperTwist.FirstParty.HigherDimensional.Phase6C`
tests with `totalDuration` `41.88494873046875` and `LaunchExecution`
duration `41.53509521484375`
- the functional `Phase 6C` ownership gap is now closed; the remaining work
in this lane is launch-execution performance hardening and richer
dedicated-family authored map content, not missing activation, host,
session, interactive-scene, runtime-state, or persistence ownership seams
in this lane is optional further micro-profiling and richer dedicated-family
authored map content, not missing activation, host, session,
interactive-scene, runtime-state, or persistence ownership seams
- the canonical HyperTwist repo-row portfolio is now treated as `75` rows, not `71`
- currently implemented rows are now `35`, not `20`