What happens when things go wrong.
No RoSignal call errors your game. Every network call is wrapped; failures are dropped quietly and retried with backoff where it makes sense.
If RoSignal is unreachable, your game keeps running on the last settings it received. When the connection returns, new values arrive and your change handlers fire as usual.
Only Get, GetFor, InRollout, and HasOverride read local state and never yield. Track and SetTraits are fire-and-forget. SetRank is the one call that yields.
Pending event counts are flushed on server shutdown, so a shutting-down server does not lose its last minute.
Changes to settings and messages take effect in live servers immediately — publishing is only needed when the scripts themselves change (first setup, or after a Repair setup).