feat: freeze v1 transport contracts (#4)
quality-gate / quality (push) Successful in 51s

Closes #4
This commit is contained in:
KyuubiYoru
2026-07-16 04:52:38 +02:00
parent e626b89909
commit 69c8b2d2bc
43 changed files with 3737 additions and 12 deletions
@@ -0,0 +1,28 @@
namespace FinalFactory.Rendezvous.Contracts;
public static class ContractLimits
{
public const int ContractVersion = 1;
public const int HttpRequestMaxBytes = 16 * 1024;
public const int BrowserResponseMaxBytes = 256 * 1024;
public const int UdpDatagramMaxBytes = 1_200;
public const int MetadataMaxBytes = 4 * 1024;
public const int MetadataMaxKeys = 32;
public const int MetadataKeyMaxBytes = 64;
public const int MetadataValueMaxBytes = 256;
public const int BrowserPageMaxItems = 100;
public const int GameIdMaxCharacters = 64;
public const int EnvironmentIdMaxCharacters = 32;
public const int RegionIdMaxCharacters = 32;
public const int DisplayNameMaxBytes = 128;
public const int BuildVersionMaxBytes = 64;
public const int IdempotencyKeyMaxCharacters = 64;
public const int CursorMaxCharacters = 512;
public const int DiagnosticCodeMaxCharacters = 64;
public const int ErrorMessageMaxBytes = 256;
public const int OpaqueHttpCredentialMaxCharacters = 1_024;
public const int UdpCapabilityMaxCharacters = 192;
public const int ConnectionTicketMaxCharacters = 192;
public const int LiteNetLibNatTokenMaxCharacters = 256;
public const int SessionCapacityMaxPlayers = 10_000;
}