Release the shell from a candidate engine that fails after it attached

The shell's scene part detaches it too, so a candidate failing in a later part (a layer's drawing, Cockpit clouds) leaves the shell free for the working engine instead of refusing every later attach. StyleManager.attachScene releases what it built when it throws, and one detach runs at a time. The controls phase awaits its parts, and a failed attachment no longer forces handoff off for the parts it releases. scripts/qa-app-once.mjs now also rolls back from a Navara candidate whose layer attachment fails.
This commit is contained in:
German Khokhlov committed 2026-11-03 19:45:34 +04:00
1 parent 58c8a481ed
commit d86047fe8f
12 files changed
+229 -76

No files matched your search

+1
View File
@@ -2662,6 +2662,7 @@
"src/app/tools.js",
"src/app/sessionVoice.js",
"src/app/sceneParts.js",
"src/app/shellPart.js",
"src/app/viewer.js",
"src/sky/starrySky.js",
"src/sky/stars.js",