Save The Tree implementation and acceptance work in progress

Preserve production code, regression fixtures, audio assets and provenance, test infrastructure, and the original-completion plan and progress ledger. Final game and Windows acceptance remain pending; excluded local artifacts and native experiments are not part of this snapshot.
This commit is contained in:
Takeshi
2026-10-11 15:58:00 +09:00
parent 39f6068461
commit b84bade045
235 changed files with 495831 additions and 312 deletions
+4 -2
View File
@@ -1,5 +1,7 @@
extends SceneTree
const AudioTeardown := preload("res://tests/helpers/ui_audio_teardown.gd")
var _manual_save_path := "user://tests/main_dashboard_%d/manual_ui" % OS.get_process_id()
var _checks := 0
var _failures := 0
@@ -202,8 +204,8 @@ func _run() -> void:
_test_manual_save_and_load()
_test_event_choice_ui()
if is_instance_valid(_main):
_main.queue_free()
var teardown: Dictionary = await AudioTeardown.free_owner_and_wait(self, _main)
_expect(bool(teardown.get(&"passed", false)) and not bool(teardown.get(&"deadline_reached", true)), "owned audio references release before bounded teardown deadline with whole Runtime unchanged")
SaveService.delete_save(_manual_save_path)
if _failures == 0:
print("PASS: %d checks" % _checks)