Add server restart shelter persistence QA gate

This commit is contained in:
2026-05-19 14:07:27 -07:00
parent 74c670a0e1
commit d82d6bcc41
3 changed files with 117 additions and 1 deletions
+25
View File
@@ -204,3 +204,28 @@ Required evidence:
This gate is server-relevant and must be rechecked after multiplayer package
deployment.
## Server Restart Shelter Persistence
The server restart shelter persistence gate proves a placed primitive shelter is
not merely a runtime actor. It must be captured into the world save, restored by
the server on startup, and remain available for weather protection after a
restart.
Required evidence:
- `AAgrarianShelterActor` owns a persistent actor component with
`ActorTypeId = primitive_shelter`.
- The game mode registers `primitive_shelter` with the persistence subsystem
before loading current world state.
- `SaveCurrentWorld` captures world actors and `LoadCurrentWorld` restores
registered world actors.
- Server startup uses `bLoadWorldOnServerStart`, checks `DoesSaveExist`, and
calls `LoadCurrentWorld` without clearing existing map actors.
- Shelter weather-protection verification remains tied to the restored shelter
actor.
- A release smoke run should place a shelter, save, restart the server, and
confirm the shelter remains at the same transform.
This gate is server-relevant and must be rechecked after the final 0.1.Q server
package/deploy if server code or package contents changed.