test(app): make canonical soak comparisons workload-aware

Pin every ACE teleloc to an explicit starting quaternion and distinguish stable-workload owner growth from legitimate authoritative population, visibility, and cache-retirement changes. Preserve the original process residency and frame-cost limits while making canonical deltas actionable.

Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
Erik 2026-07-22 20:13:29 +02:00
parent bca4148739
commit 6c5e0604c9
4 changed files with 88 additions and 44 deletions

View file

@ -386,34 +386,30 @@ function Add-CanonicalCheckpointFailures([Diagnostics.Process]$Client) {
foreach ($field in @(
'loadedLandblocks',
'visibleLandblocks',
'totalLandblocks',
'pendingLiveTeardowns',
'pendingLandblockRetirements',
'meshRenderData',
'meshAtlasArrays',
'meshEstimatedBytes',
'stagedMeshUploads',
'stagedMeshBytes',
'trackedGpuBytes',
'trackedGpuBuffers',
'trackedGpuTextures',
'ownedCompositeTextures',
'compositeTextureOwners',
'activeParticleTextures',
'particleTextureOwners',
'compositeWarmupPending')) {
'totalLandblocks')) {
$first = $caulReturn.resources.PSObject.Properties[$field]
$plateau = $caulPlateau.resources.PSObject.Properties[$field]
if ($null -eq $first -or $null -eq $plateau) {
$failures.Add("canonical Caul comparison is missing resources.$field")
}
elseif ([long]$first.Value -ne [long]$plateau.Value) {
$failures.Add("Caul plateau canonical owner '$field' changed $($first.Value) -> $($plateau.Value)")
$failures.Add("Caul plateau deterministic world domain '$field' changed $($first.Value) -> $($plateau.Value)")
}
}
$populationChanged = $false
$workloadChanged = $false
$firstVisible =
$caulReturn.resources.PSObject.Properties['visibleLandblocks']
$plateauVisible =
$caulPlateau.resources.PSObject.Properties['visibleLandblocks']
if ($null -eq $firstVisible -or $null -eq $plateauVisible) {
$failures.Add('canonical Caul workload comparison is missing resources.visibleLandblocks')
}
elseif ([long]$firstVisible.Value -ne [long]$plateauVisible.Value) {
$workloadChanged = $true
$warnings.Add("Caul plateau visible workload changed $($firstVisible.Value) -> $($plateauVisible.Value)")
}
foreach ($field in @(
'worldEntities',
'animatedEntities',
@ -425,11 +421,34 @@ function Add-CanonicalCheckpointFailures([Diagnostics.Process]$Client) {
$failures.Add("canonical Caul population comparison is missing resources.$field")
}
elseif ([long]$first.Value -ne [long]$plateau.Value) {
$populationChanged = $true
$workloadChanged = $true
$warnings.Add("Caul plateau authoritative population '$field' changed $($first.Value) -> $($plateau.Value)")
}
}
foreach ($field in @(
'meshRenderData',
'meshAtlasArrays',
'meshEstimatedBytes',
'trackedGpuBytes',
'trackedGpuBuffers',
'trackedGpuTextures',
'ownedCompositeTextures',
'compositeTextureOwners',
'activeParticleTextures',
'particleTextureOwners')) {
$first = $caulReturn.resources.PSObject.Properties[$field]
$plateau = $caulPlateau.resources.PSObject.Properties[$field]
if ($null -eq $first -or $null -eq $plateau) {
$failures.Add("canonical Caul cache comparison is missing resources.$field")
}
elseif ([long]$plateau.Value -gt [long]$first.Value) {
$message = "Caul plateau canonical cache '$field' grew $($first.Value) -> $($plateau.Value)"
if ($workloadChanged) { $warnings.Add($message) }
else { $failures.Add($message) }
}
}
foreach ($field in @(
'particleBindings',
'particleOwners',
@ -441,9 +460,9 @@ function Add-CanonicalCheckpointFailures([Diagnostics.Process]$Client) {
if ($null -eq $first -or $null -eq $plateau) {
$failures.Add("canonical Caul owner comparison is missing resources.$field")
}
elseif ([long]$first.Value -ne [long]$plateau.Value) {
$message = "Caul plateau population-sensitive owner '$field' changed $($first.Value) -> $($plateau.Value)"
if ($populationChanged) { $warnings.Add($message) }
elseif ([long]$plateau.Value -gt [long]$first.Value) {
$message = "Caul plateau population-sensitive owner '$field' grew $($first.Value) -> $($plateau.Value)"
if ($workloadChanged) { $warnings.Add($message) }
else { $failures.Add($message) }
}
}