openImmersiveSpace works as expected but never returns Result

As in the title: openImmersiveSpace works as expected. The ImmersiveSpace in the ID opens normally but the function never resolves a Result. Here is a workaround I used to make user it was on the UI thread and scenePhase was active:

`

@MainActor func openSpaceWithStateCheck() async {
if scenePhase == .active {
Task {
switch await openImmersiveSpace(id: "RoomCaptureInteraction") {
case .opened:
isCapturingImagery = true
break
case .error:
print("!! An error occurred when trying to open the immersive space captureRoomImagery")
case .userCancelled:
print("!! The user declined opening immersive space captureRoomImagery")
@unknown default:
print("!! unknown default result of opening space")
break
}
}
} else {
print("Scene not active, deferring immersive space opening")
}
}

I'm on visionOS 2.4 and SDK 2.2.

I have tried uninstalling the app and rebuilding. Tried simply opening an empty ImmersiveSpace.

The consistency of the ImmersiveSpace opening at least means I can work around it. Even dismissImmersiveSpace works normally and closes the immersive space. But a workaround seems hamfisted.

Accepted Answer

I was wrong. Bug centers on isCapturingImagery and I think I can solve this with structure.

openImmersiveSpace works as expected but never returns Result
 
 
Q