RPC check data types ​
Fields below are declared serialized members. Base types contribute their own fields; related types link the payload graph. ? means nullable, and required marks a required C# initializer. These are schematic C# contract shapes, not compilable declarations or a separate JSON schema. Constructor members are repeated in the field list for easy scanning. Serialization attributes and implementation helpers are omitted; use the linked source for exact wire aliases and formatters.
RelayRef ​
Names a peer that checks one host (the origin or a relay) and nothing else. Every check gets its own Attempt, because a finished peer stays in the hub for a while and its ref would find it. Source
csharp
public sealed partial record RelayRef(string Host, int Attempt)
{
string Host;
int Attempt;
}