Learn aligned drill recovery handoff outcomes upstream
This commit is contained in:
parent
fc85977928
commit
338c31a32a
3 changed files with 229 additions and 2 deletions
|
|
@ -93,10 +93,14 @@ namespace HyperTwistTrainingCoachLibraryInternal
|
|||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-outcome")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-outcome")
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-method-drill-recovery-structure-plan-tight-"))
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-method-drill-recovery-structure-plan-broad-"));
|
||||
}
|
||||
|
|
@ -180,7 +184,9 @@ namespace HyperTwistTrainingCoachLibraryInternal
|
|||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-tight")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned");
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-outcome");
|
||||
}
|
||||
|
||||
bool IsWeakMethodDrillRecoveryMemorySource(const FString& SourceLabel)
|
||||
|
|
@ -222,7 +228,9 @@ namespace HyperTwistTrainingCoachLibraryInternal
|
|||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned");
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-outcome");
|
||||
}
|
||||
|
||||
FString DescribeRetainedMethodDrillRecoveryStanceLabel(const FString& SourceLabel)
|
||||
|
|
@ -794,6 +802,11 @@ namespace HyperTwistTrainingCoachLibraryInternal
|
|||
{
|
||||
return TEXT("aligned reliable trusted tight drill-recovery-plan history");
|
||||
}
|
||||
if (SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-outcome"))
|
||||
{
|
||||
return TEXT("successful aligned reliable trusted tight drill-recovery-plan handoff outcome history");
|
||||
}
|
||||
if (SourceLabel == TEXT("coach-memory-method-drill-recovery-packet-strong"))
|
||||
{
|
||||
return TEXT("successful retained drill-recovery-packet history");
|
||||
|
|
@ -834,6 +847,11 @@ namespace HyperTwistTrainingCoachLibraryInternal
|
|||
{
|
||||
return TEXT("aligned reliable trusted broad drill-recovery-plan redirect history");
|
||||
}
|
||||
if (SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-outcome"))
|
||||
{
|
||||
return TEXT("successful aligned reliable trusted broad drill-recovery-plan redirect outcome history");
|
||||
}
|
||||
if (SourceLabel == TEXT("coach-memory-method-drill-recovery-packet-weak"))
|
||||
{
|
||||
return TEXT("weak retained drill-recovery-packet history");
|
||||
|
|
|
|||
|
|
@ -377,6 +377,28 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
== TEXT("dashboard-handoff-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-recommended");
|
||||
}
|
||||
|
||||
bool IsReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanCoachMemorySource(
|
||||
const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-outcome")
|
||||
|| SourceLabel.StartsWith(
|
||||
TEXT("coach-memory-dashboard-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-"));
|
||||
}
|
||||
|
||||
bool IsReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanCoachMemorySource(
|
||||
const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-outcome")
|
||||
|| SourceLabel.StartsWith(
|
||||
TEXT("coach-memory-dashboard-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-"));
|
||||
}
|
||||
|
||||
bool IsWeakMethodDrillRecoveryPacketDashboardHandoffSource(const FString& SourceLabel)
|
||||
{
|
||||
return SourceLabel == TEXT("dashboard-handoff-method-drill-recovery-packet-weak-queued")
|
||||
|
|
@ -457,11 +479,15 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-outcome")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted")
|
||||
|| SourceLabel == TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned")
|
||||
|| SourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-outcome")
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-method-drill-recovery-structure-plan-tight-"))
|
||||
|| SourceLabel.StartsWith(TEXT("coach-memory-dashboard-method-drill-recovery-structure-plan-broad-"));
|
||||
}
|
||||
|
|
@ -2132,6 +2158,8 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
HyperTwistTrainingRepositoryLibraryInternal::IsTightMethodDrillRecoveryStructurePlanDashboardHandoffSource(
|
||||
CoachMemorySnapshot.PreferredCoachHandoffSourceLabel
|
||||
)
|
||||
|| CoachMemorySnapshot.PreferredCoachHandoffSourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-outcome")
|
||||
|| CoachMemorySnapshot.PreferredQueueRecoveryActionSourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight")
|
||||
|| CoachMemorySnapshot.PreferredQueueRecoveryActionSourceLabel
|
||||
|
|
@ -2144,6 +2172,8 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
HyperTwistTrainingRepositoryLibraryInternal::IsReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanDashboardHandoffSource(
|
||||
CoachMemorySnapshot.PreferredCoachHandoffSourceLabel
|
||||
)
|
||||
|| CoachMemorySnapshot.PreferredCoachHandoffSourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-outcome")
|
||||
|| CoachMemorySnapshot.PreferredQueueRecoveryActionSourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned");
|
||||
const bool bReliableTrustedTightMethodDrillRecoveryStructurePlanHandoffSource =
|
||||
|
|
@ -2163,6 +2193,8 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
HyperTwistTrainingRepositoryLibraryInternal::IsBroadMethodDrillRecoveryStructurePlanDashboardHandoffSource(
|
||||
CoachMemorySnapshot.PreferredCoachHandoffSourceLabel
|
||||
)
|
||||
|| CoachMemorySnapshot.PreferredCoachHandoffSourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-outcome")
|
||||
|| CoachMemorySnapshot.PreferredQueueRecoveryActionSourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad")
|
||||
|| CoachMemorySnapshot.PreferredQueueRecoveryActionSourceLabel
|
||||
|
|
@ -2175,6 +2207,8 @@ namespace HyperTwistTrainingRepositoryLibraryInternal
|
|||
HyperTwistTrainingRepositoryLibraryInternal::IsReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanDashboardHandoffSource(
|
||||
CoachMemorySnapshot.PreferredCoachHandoffSourceLabel
|
||||
)
|
||||
|| CoachMemorySnapshot.PreferredCoachHandoffSourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-outcome")
|
||||
|| CoachMemorySnapshot.PreferredQueueRecoveryActionSourceLabel
|
||||
== TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned");
|
||||
const bool bReliableTrustedBroadMethodDrillRecoveryStructurePlanHandoffSource =
|
||||
|
|
@ -7559,6 +7593,18 @@ FHyperTwistTrainingCoachMemorySnapshot UHyperTwistTrainingRepositoryLibrary::Der
|
|||
Snapshot.DeferredLaunchHistoryCaseCount = RecommendationHistory.DeferredLaunchCaseCount;
|
||||
Snapshot.DeferredFirstFollowUpPacketHistoryCount =
|
||||
RecommendationHistory.DeferredFirstFollowUpPacketPlanCount;
|
||||
Snapshot.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount =
|
||||
RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount;
|
||||
Snapshot.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount =
|
||||
RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount;
|
||||
Snapshot.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeAverageScore =
|
||||
RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeAverageScore;
|
||||
Snapshot.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeAverageScore =
|
||||
RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeAverageScore;
|
||||
Snapshot.bHasRepeatRecommendationPressure = RecommendationHistory.bHasRepeatRecommendationPressure;
|
||||
const int32 DeferredTightenedLaunchBias = FMath::Clamp(
|
||||
RecommendationHistory.DeferredTightenedLaunchPlanCount,
|
||||
|
|
@ -7624,6 +7670,117 @@ FHyperTwistTrainingCoachMemorySnapshot UHyperTwistTrainingRepositoryLibrary::Der
|
|||
TEXT("recommendation-history-deferred-first-follow-up");
|
||||
}
|
||||
}
|
||||
const bool bReliableAlignedTrustedTightPlanOutcomeHistory =
|
||||
RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount
|
||||
>= 2
|
||||
&& RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeAverageScore
|
||||
>= 60.0f
|
||||
&& (RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount
|
||||
<= 0
|
||||
|| RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeAverageScore
|
||||
>= RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeAverageScore
|
||||
- 2.0f);
|
||||
const bool bReliableAlignedTrustedBroadPlanOutcomeHistory =
|
||||
RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount
|
||||
>= 2
|
||||
&& RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeAverageScore
|
||||
>= 58.0f
|
||||
&& (RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount
|
||||
<= 0
|
||||
|| RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeAverageScore
|
||||
>= RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeAverageScore
|
||||
- 2.0f);
|
||||
if (bReliableAlignedTrustedTightPlanOutcomeHistory)
|
||||
{
|
||||
const int32 ReliableAlignedTrustedTightPlanOutcomeBias = FMath::Clamp(
|
||||
RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount
|
||||
- RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount
|
||||
+ (RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeAverageScore
|
||||
>= 80.0f
|
||||
? 1
|
||||
: 0),
|
||||
1,
|
||||
4
|
||||
);
|
||||
Snapshot.FollowUpGuidanceContinueBias += ReliableAlignedTrustedTightPlanOutcomeBias;
|
||||
Snapshot.SuppressedPrimaryQueuePressureCount += FMath::Max(
|
||||
1,
|
||||
ReliableAlignedTrustedTightPlanOutcomeBias - 1
|
||||
);
|
||||
if (Snapshot.PreferredGuidanceLane == EHyperTwistTrainingCoachGuidanceLane::None
|
||||
|| Snapshot.PreferredGuidanceLane == EHyperTwistTrainingCoachGuidanceLane::Recommended
|
||||
|| Snapshot.PreferredGuidanceSourceLabel.StartsWith(TEXT("recommendation-history"))
|
||||
|| Snapshot.PreferredGuidanceSourceLabel.StartsWith(
|
||||
TEXT("coach-memory-method-drill-recovery-structure-plan")))
|
||||
{
|
||||
Snapshot.PreferredGuidanceLane = EHyperTwistTrainingCoachGuidanceLane::FollowUp;
|
||||
Snapshot.PreferredGuidanceSourceLabel =
|
||||
TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-outcome");
|
||||
}
|
||||
if (Snapshot.PreferredCoachHandoffKind == EHyperTwistTrainingCoachHandoffKind::None
|
||||
|| Snapshot.PreferredCoachHandoffKind
|
||||
== EHyperTwistTrainingCoachHandoffKind::Recommended
|
||||
|| Snapshot.PreferredCoachHandoffSourceLabel.IsEmpty()
|
||||
|| Snapshot.PreferredCoachHandoffSourceLabel.StartsWith(TEXT("recommendation-history"))
|
||||
|| Snapshot.PreferredCoachHandoffSourceLabel.StartsWith(
|
||||
TEXT("coach-memory-method-drill-recovery-structure-plan")))
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffKind = EHyperTwistTrainingCoachHandoffKind::FollowUp;
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-method-drill-recovery-structure-plan-tight-trusted-reliable-aligned-outcome");
|
||||
}
|
||||
}
|
||||
else if (bReliableAlignedTrustedBroadPlanOutcomeHistory)
|
||||
{
|
||||
const int32 ReliableAlignedTrustedBroadPlanOutcomeBias = FMath::Clamp(
|
||||
RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount
|
||||
- RecommendationHistory
|
||||
.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount
|
||||
+ (RecommendationHistory
|
||||
.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeAverageScore
|
||||
>= 78.0f
|
||||
? 1
|
||||
: 0),
|
||||
1,
|
||||
4
|
||||
);
|
||||
Snapshot.RecommendedGuidanceContinueBias += ReliableAlignedTrustedBroadPlanOutcomeBias;
|
||||
Snapshot.SuppressedFollowUpQueuePressureCount += ReliableAlignedTrustedBroadPlanOutcomeBias;
|
||||
if (Snapshot.PreferredGuidanceLane == EHyperTwistTrainingCoachGuidanceLane::None
|
||||
|| Snapshot.PreferredGuidanceLane == EHyperTwistTrainingCoachGuidanceLane::FollowUp
|
||||
|| Snapshot.PreferredGuidanceSourceLabel.StartsWith(
|
||||
TEXT("coach-memory-method-drill-recovery-structure-plan")))
|
||||
{
|
||||
Snapshot.PreferredGuidanceLane = EHyperTwistTrainingCoachGuidanceLane::Recommended;
|
||||
Snapshot.PreferredGuidanceSourceLabel =
|
||||
TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-outcome");
|
||||
}
|
||||
if (Snapshot.PreferredCoachHandoffKind == EHyperTwistTrainingCoachHandoffKind::None
|
||||
|| Snapshot.PreferredCoachHandoffKind == EHyperTwistTrainingCoachHandoffKind::FollowUp
|
||||
|| Snapshot.PreferredCoachHandoffSourceLabel.IsEmpty()
|
||||
|| Snapshot.PreferredCoachHandoffSourceLabel.StartsWith(TEXT("recommendation-history"))
|
||||
|| Snapshot.PreferredCoachHandoffSourceLabel.StartsWith(
|
||||
TEXT("coach-memory-method-drill-recovery-structure-plan")))
|
||||
{
|
||||
Snapshot.PreferredCoachHandoffKind = EHyperTwistTrainingCoachHandoffKind::Recommended;
|
||||
Snapshot.PreferredCoachHandoffSourceLabel =
|
||||
TEXT("coach-memory-method-drill-recovery-structure-plan-broad-trusted-reliable-aligned-outcome");
|
||||
}
|
||||
}
|
||||
|
||||
if (!RecommendationHistory.FocusDeckId.IsEmpty()
|
||||
&& (Snapshot.FocusDeckId.IsEmpty()
|
||||
|
|
@ -12689,6 +12846,8 @@ FHyperTwistTrainingCoachRecommendationHistorySummary UHyperTwistTrainingReposito
|
|||
float TightenedLaunchOutcomeAccumulator = 0.0f;
|
||||
float DeferredTightenedLaunchOutcomeAccumulator = 0.0f;
|
||||
float DeferredFirstFollowUpPacketOutcomeAccumulator = 0.0f;
|
||||
float ReliableAlignedTrustedTightPlanOutcomeAccumulator = 0.0f;
|
||||
float ReliableAlignedTrustedBroadPlanOutcomeAccumulator = 0.0f;
|
||||
FString LatestPlanSortUtc;
|
||||
|
||||
for (const FHyperTwistTrainingCoachActionPlan& Plan : UserPlans)
|
||||
|
|
@ -12865,6 +13024,18 @@ FHyperTwistTrainingCoachRecommendationHistorySummary UHyperTwistTrainingReposito
|
|||
|
||||
if (OutcomeSummary.IsStructurallyValid())
|
||||
{
|
||||
if (HyperTwistTrainingRepositoryLibraryInternal::IsReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanCoachMemorySource(
|
||||
OutcomeSummary.PreferredCoachHandoffSourceLabel))
|
||||
{
|
||||
Summary.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount += 1;
|
||||
ReliableAlignedTrustedTightPlanOutcomeAccumulator += OutcomeSummary.OutcomeScore;
|
||||
}
|
||||
if (HyperTwistTrainingRepositoryLibraryInternal::IsReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanCoachMemorySource(
|
||||
OutcomeSummary.PreferredCoachHandoffSourceLabel))
|
||||
{
|
||||
Summary.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount += 1;
|
||||
ReliableAlignedTrustedBroadPlanOutcomeAccumulator += OutcomeSummary.OutcomeScore;
|
||||
}
|
||||
if (OutcomeSummary.PlannedLaunchCaseCount > 0)
|
||||
{
|
||||
PlannedLaunchCaseCountAccumulator +=
|
||||
|
|
@ -13011,6 +13182,20 @@ FHyperTwistTrainingCoachRecommendationHistorySummary UHyperTwistTrainingReposito
|
|||
DeferredFirstFollowUpPacketOutcomeAccumulator
|
||||
/ static_cast<float>(Summary.DeferredFirstFollowUpPacketPlanCount);
|
||||
}
|
||||
if (Summary.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount > 0)
|
||||
{
|
||||
Summary.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeAverageScore =
|
||||
ReliableAlignedTrustedTightPlanOutcomeAccumulator
|
||||
/ static_cast<float>(
|
||||
Summary.ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount);
|
||||
}
|
||||
if (Summary.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount > 0)
|
||||
{
|
||||
Summary.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeAverageScore =
|
||||
ReliableAlignedTrustedBroadPlanOutcomeAccumulator
|
||||
/ static_cast<float>(
|
||||
Summary.ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount);
|
||||
}
|
||||
Summary.bHasRepeatRecommendationPressure =
|
||||
Summary.RepeatRecommendationSequenceCount > 0
|
||||
&& (Summary.RecurringCaseCount > 0
|
||||
|
|
|
|||
|
|
@ -1995,6 +1995,18 @@ struct FHyperTwistTrainingCoachMemorySnapshot
|
|||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
float ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanAverageOutcomeScore = 0.0f;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
float ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeAverageScore = 0.0f;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
float ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeAverageScore = 0.0f;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
bool bNeedsCoachIntervention = false;
|
||||
|
||||
|
|
@ -4483,6 +4495,18 @@ struct FHyperTwistTrainingCoachRecommendationHistorySummary
|
|||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
float DeferredFirstFollowUpPacketAverageOutcomeScore = 0.0f;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeHistoryCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
int32 ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeHistoryCount = 0;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
float ReliableAlignedTrustedTightMethodDrillRecoveryStructurePlanOutcomeAverageScore = 0.0f;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
float ReliableAlignedTrustedBroadMethodDrillRecoveryStructurePlanOutcomeAverageScore = 0.0f;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
TArray<FString> RecurringCaseIds;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue