From d3b2ede09ddd5efbb8d7b0b6f16ed882111f1765 Mon Sep 17 00:00:00 2001 From: NINI Date: Wed, 7 Oct 2026 00:16:18 +0900 Subject: [PATCH] Construct rapid QA board from actual collected puzzle DTO and preserve source hashes --- tools/android/exercise-final-rapid.ps1 | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/android/exercise-final-rapid.ps1 b/tools/android/exercise-final-rapid.ps1 index 1fa8f40..1866020 100644 --- a/tools/android/exercise-final-rapid.ps1 +++ b/tools/android/exercise-final-rapid.ps1 @@ -21,8 +21,9 @@ try { Check 'rapid-actual-offline' $offline 'Airplane1 wifi0 data0 no active network' $boardPath=Join-Path $sourceDir 'stage-20-success.json' $result.fixtureProvenance.actualStage20Sha256=(Get-FileHash $boardPath).Hash - $board=(Get-Content $boardPath -Raw|ConvertFrom-Json).latestFreePlay - $board.PSObject.Properties.Remove('sourceStageId');$board|Add-Member stageId 20 + $collectedPath=Join-Path $sourceDir 'stage-20-collected.json' + $result.fixtureProvenance.actualStage20CollectedSha256=(Get-FileHash $collectedPath).Hash + $board=@((Get-Content $collectedPath -Raw|ConvertFrom-Json).puzzleStates|Where-Object stageId -eq 20)[0] for($i=0;$i-lt10;$i++){$board.balls[$i].position=[pscustomobject][ordered]@{x=[double]($i%5-2);y=(2.2+[Math]::Floor($i/5));z=[double]-1}} $board.groups=@([pscustomobject][ordered]@{id='qa-collected10';ballIds=@($board.balls.id)});$board.collectedBallIds=@($board.balls.id);$board.countedBallIds=@() $board.camera=[pscustomobject][ordered]@{target=[pscustomobject][ordered]@{x=[double]0;y=.6;z=[double]0};rotation=[pscustomobject][ordered]@{x=[double]0;y=[double]0;z=[double]0;w=[double]1};distance=[double]11}