crowdypy 0.14.1.dev1__tar.gz → 0.14.2.dev1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (577) hide show
  1. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/MIGRATION.md +9 -0
  2. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/PKG-INFO +3 -1
  3. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/README.md +2 -0
  4. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/docs/compatibility.md +1 -1
  5. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/docs/parity-matrix.md +2 -2
  6. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/pyproject.toml +8 -8
  7. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/schema.gql +21 -19
  8. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_generated/enums.py +2 -2
  9. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_generated/inputs.py +1 -1
  10. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_generated/operations.py +1 -1
  11. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/player_wallet.py +10 -3
  12. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_version.py +1 -1
  13. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/player_wallet.py +10 -3
  14. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/player_host/schemas.v1.json +2 -2
  15. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/fixtures/player-host.v1.json +2 -2
  16. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/domains/test_social_domains.py +15 -11
  17. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/uv.lock +154 -154
  18. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/CMakeLists.txt +1 -1
  19. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/PROVENANCE.md +1 -1
  20. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/exec.hpp +12 -3
  21. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/player_wallet.hpp +8 -2
  22. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/users.hpp +10 -2
  23. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/generated/enums.hpp +1 -1
  24. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/generated/operations.hpp +1 -1
  25. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/runtime.hpp +4 -2
  26. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/package.json +7 -7
  27. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/domains/exec.cpp +35 -13
  28. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/kit/runtime.cpp +288 -70
  29. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/tools/parity/fixtures/crowdy-studio-diagnostics.v1.json +2 -2
  30. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/tools/parity/fixtures/crowdyjs-studio-layout.v1.json +2 -2
  31. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/.gitattributes +0 -0
  32. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/.gitignore +0 -0
  33. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/.gitleaks.toml +0 -0
  34. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/AGENTS.md +0 -0
  35. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/CMakeLists.txt +0 -0
  36. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/LICENSE +0 -0
  37. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/SECURITY.md +0 -0
  38. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/benchmarks/README.md +0 -0
  39. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/benchmarks/bench_replication.py +0 -0
  40. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/docs/e2e-coverage.md +0 -0
  41. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/licenses/OpenSSL-LICENSE.txt +0 -0
  42. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/native/common.hpp +0 -0
  43. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/native/module.cpp +0 -0
  44. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/native/replication.hpp +0 -0
  45. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/native/replication_binding.cpp +0 -0
  46. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/native/session_binding.cpp +0 -0
  47. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/native/voice_binding.cpp +0 -0
  48. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/native/wire_binding.cpp +0 -0
  49. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/actors/Actor.graphql +0 -0
  50. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/actors/Actors.graphql +0 -0
  51. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/actors/BatchLookupActors.graphql +0 -0
  52. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/actors/CreateActor.graphql +0 -0
  53. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/actors/DeleteActor.graphql +0 -0
  54. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/actors/UpdateActor.graphql +0 -0
  55. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/actors/UpdateActorState.graphql +0 -0
  56. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/AppAccessTiers.graphql +0 -0
  57. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/AppFeatures.graphql +0 -0
  58. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/AppGrantMemberCandidates.graphql +0 -0
  59. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/AppUserAccessByApp.graphql +0 -0
  60. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/ArchiveAccessTier.graphql +0 -0
  61. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/ClaimFreeAppAccess.graphql +0 -0
  62. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/CreateAccessTier.graphql +0 -0
  63. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/DefineAppFeature.graphql +0 -0
  64. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/GrantAppAccess.graphql +0 -0
  65. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/GrantMyAppAccess.graphql +0 -0
  66. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/GrantTierFeature.graphql +0 -0
  67. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/MyAppAccess.graphql +0 -0
  68. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/RevokeAppAccess.graphql +0 -0
  69. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/RevokeTierFeature.graphql +0 -0
  70. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/RuntimePermissions.graphql +0 -0
  71. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/SuspendAppAccess.graphql +0 -0
  72. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/TierFeatures.graphql +0 -0
  73. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/appAccess/UpdateAccessTier.graphql +0 -0
  74. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/App.graphql +0 -0
  75. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/AppBySlug.graphql +0 -0
  76. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/AppDiscovery.graphql +0 -0
  77. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/AppsForOrg.graphql +0 -0
  78. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/ArchiveApp.graphql +0 -0
  79. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/CodeAdmissions.graphql +0 -0
  80. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/CreateApp.graphql +0 -0
  81. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/MarketplaceApps.graphql +0 -0
  82. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/MyApps.graphql +0 -0
  83. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/PlaceableDatacenters.graphql +0 -0
  84. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/apps/UpdateApp.graphql +0 -0
  85. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/auth/Logout.graphql +0 -0
  86. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/auth/LogoutAllDevices.graphql +0 -0
  87. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/avatars/Avatars.graphql +0 -0
  88. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/billing/AppBudget.graphql +0 -0
  89. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/billing/AppBudgets.graphql +0 -0
  90. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/billing/SetAppBudget.graphql +0 -0
  91. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/billing/WalletBalance.graphql +0 -0
  92. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/billing/WalletTransactions.graphql +0 -0
  93. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/AddChannelMember.graphql +0 -0
  94. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/BanChannelMember.graphql +0 -0
  95. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/Channel.graphql +0 -0
  96. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/ChannelMembers.graphql +0 -0
  97. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/ChannelPolicy.graphql +0 -0
  98. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/ChannelRoles.graphql +0 -0
  99. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/Channels.graphql +0 -0
  100. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/CreateChannel.graphql +0 -0
  101. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/CreateChannelRole.graphql +0 -0
  102. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/DeleteChannel.graphql +0 -0
  103. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/DeleteChannelRole.graphql +0 -0
  104. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/JoinChannel.graphql +0 -0
  105. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/LeaveChannel.graphql +0 -0
  106. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/MyChannels.graphql +0 -0
  107. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/RemoveChannelMember.graphql +0 -0
  108. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/RequestToJoinChannel.graphql +0 -0
  109. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/SetChannelMemberRoles.graphql +0 -0
  110. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/SetChannelPolicy.graphql +0 -0
  111. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/UnbanChannelMember.graphql +0 -0
  112. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/UpdateChannel.graphql +0 -0
  113. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/channels/UpdateChannelRole.graphql +0 -0
  114. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/chunks/GetChunk.graphql +0 -0
  115. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/chunks/GetChunkLods.graphql +0 -0
  116. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/chunks/GetChunksByDistance.graphql +0 -0
  117. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/chunks/GetVoxelList.graphql +0 -0
  118. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/chunks/UpdateChunk.graphql +0 -0
  119. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/chunks/UpdateChunkLods.graphql +0 -0
  120. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/chunks/UpdateChunkState.graphql +0 -0
  121. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/crowdyStudio/CrowdyStudio.graphql +0 -0
  122. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/exec/Exec.graphql +0 -0
  123. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/gameApps/GameApps.graphql +0 -0
  124. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/grids/CreateGridChannel.graphql +0 -0
  125. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/grids/GridChannels.graphql +0 -0
  126. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/grids/MintGridToken.graphql +0 -0
  127. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/host/Host.graphql +0 -0
  128. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/inputLog/InputLogMessages.graphql +0 -0
  129. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/inputLog/InputLogSessions.graphql +0 -0
  130. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/marketplace/Marketplace.graphql +0 -0
  131. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/CreateOrgRole.graphql +0 -0
  132. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/CreateOrgToken.graphql +0 -0
  133. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/CreateOrganization.graphql +0 -0
  134. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/DeleteOrgRole.graphql +0 -0
  135. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/InviteOrgMember.graphql +0 -0
  136. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/MemberRoles.graphql +0 -0
  137. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/MyOrganizations.graphql +0 -0
  138. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/OrgMembers.graphql +0 -0
  139. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/OrgPermissions.graphql +0 -0
  140. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/OrgRoles.graphql +0 -0
  141. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/OrgTokens.graphql +0 -0
  142. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/Organization.graphql +0 -0
  143. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/OrganizationBySlug.graphql +0 -0
  144. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/RemoveOrgMember.graphql +0 -0
  145. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/RevokeOrgToken.graphql +0 -0
  146. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/UpdateOrgMemberRoles.graphql +0 -0
  147. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/UpdateOrgRole.graphql +0 -0
  148. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/organizations/UpdateOrgToken.graphql +0 -0
  149. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/payments/CapturePaypalCheckout.graphql +0 -0
  150. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/payments/CreateCheckout.graphql +0 -0
  151. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/payments/MyCheckouts.graphql +0 -0
  152. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/platform/PlatformConfig.graphql +0 -0
  153. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/playerWallet/PlayerWallet.graphql +0 -0
  154. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/quotas/DeleteQuota.graphql +0 -0
  155. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/quotas/EffectiveQuota.graphql +0 -0
  156. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/quotas/QuotasForApp.graphql +0 -0
  157. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/quotas/QuotasForOrg.graphql +0 -0
  158. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/quotas/SetQuota.graphql +0 -0
  159. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/serverStatus/ActiveGraphQLServers.graphql +0 -0
  160. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/serverStatus/GameClientBootstrap.graphql +0 -0
  161. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/serverStatus/GraphqlServers.graphql +0 -0
  162. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/serverStatus/ServerWithLeastClients.graphql +0 -0
  163. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/serverStatus/VersionInfo.graphql +0 -0
  164. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/sharedEnvironment/SharedEnvironment.graphql +0 -0
  165. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/state/DeleteUserAppState.graphql +0 -0
  166. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/state/UpdateUserAppState.graphql +0 -0
  167. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/state/UserAppState.graphql +0 -0
  168. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/state/UserAppStates.graphql +0 -0
  169. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/AddTeamMember.graphql +0 -0
  170. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/BanTeamMember.graphql +0 -0
  171. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/CreateTeam.graphql +0 -0
  172. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/CreateTeamRole.graphql +0 -0
  173. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/DeleteTeam.graphql +0 -0
  174. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/DeleteTeamRole.graphql +0 -0
  175. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/JoinTeam.graphql +0 -0
  176. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/LeaveTeam.graphql +0 -0
  177. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/MyTeams.graphql +0 -0
  178. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/RemoveTeamMember.graphql +0 -0
  179. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/RequestToJoinTeam.graphql +0 -0
  180. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/SetTeamMemberRoles.graphql +0 -0
  181. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/SetTeamPolicy.graphql +0 -0
  182. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/Team.graphql +0 -0
  183. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/TeamMembers.graphql +0 -0
  184. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/TeamPolicy.graphql +0 -0
  185. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/TeamRoles.graphql +0 -0
  186. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/Teams.graphql +0 -0
  187. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/UnbanTeamMember.graphql +0 -0
  188. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/UpdateTeam.graphql +0 -0
  189. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teams/UpdateTeamRole.graphql +0 -0
  190. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/teleport/TeleportRequest.graphql +0 -0
  191. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/usage/AppGraphqlOperations.graphql +0 -0
  192. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/usage/AppUsageSummary.graphql +0 -0
  193. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/usage/PlayerPulse.graphql +0 -0
  194. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/users/DeleteMyAccount.graphql +0 -0
  195. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/users/FreePlayWindow.graphql +0 -0
  196. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/users/Me.graphql +0 -0
  197. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/users/PlayerProfile.graphql +0 -0
  198. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/users/UpdateGamertag.graphql +0 -0
  199. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/users/UpdateUserState.graphql +0 -0
  200. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/users/User.graphql +0 -0
  201. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/voxels/ListVoxelUpdatesByDistance.graphql +0 -0
  202. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/voxels/ListVoxels.graphql +0 -0
  203. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/voxels/RollbackVoxelUpdates.graphql +0 -0
  204. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/voxels/UpdateVoxel.graphql +0 -0
  205. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/operations/voxels/VoxelUpdateHistory.graphql +0 -0
  206. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/_pins.py +0 -0
  207. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/assert_default_origin.py +0 -0
  208. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/build_openssl.sh +0 -0
  209. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/check_content_policy.py +0 -0
  210. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/check_pin_tiers.py +0 -0
  211. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/cibw_before_all_linux.sh +0 -0
  212. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/resolve-release-tier.sh +0 -0
  213. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/resolve-release-tier.test.sh +0 -0
  214. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/resolve_pypi_version.py +0 -0
  215. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/stamp_version.py +0 -0
  216. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/ci/verify_artifacts.py +0 -0
  217. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/codegen.py +0 -0
  218. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/schema_drift.py +0 -0
  219. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/schema_sync.py +0 -0
  220. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/unasync.py +0 -0
  221. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/scripts/vendor_crowdycpp.py +0 -0
  222. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/__init__.py +0 -0
  223. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_concurrency.py +0 -0
  224. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_default_origin.py +0 -0
  225. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_generated/__init__.py +0 -0
  226. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_grid.py +0 -0
  227. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_native.pyi +0 -0
  228. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_operation.py +0 -0
  229. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/__init__.py +0 -0
  230. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/client.py +0 -0
  231. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/__init__.py +0 -0
  232. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/_base.py +0 -0
  233. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/actors.py +0 -0
  234. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/admin.py +0 -0
  235. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/app_access.py +0 -0
  236. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/apps.py +0 -0
  237. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/auth.py +0 -0
  238. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/avatars.py +0 -0
  239. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/billing.py +0 -0
  240. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/channels.py +0 -0
  241. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/chunks.py +0 -0
  242. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/crowdy_studio.py +0 -0
  243. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/crowdy_studio_agent.py +0 -0
  244. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/crowdy_studio_github.py +0 -0
  245. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/discovery.py +0 -0
  246. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/exec.py +0 -0
  247. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/game_apps.py +0 -0
  248. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/grids.py +0 -0
  249. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/host.py +0 -0
  250. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/input_log.py +0 -0
  251. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/marketplace.py +0 -0
  252. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/organizations.py +0 -0
  253. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/payments.py +0 -0
  254. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/platform.py +0 -0
  255. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/portal.py +0 -0
  256. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/quotas.py +0 -0
  257. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/server_status.py +0 -0
  258. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/shared_environment.py +0 -0
  259. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/state.py +0 -0
  260. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/teams.py +0 -0
  261. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/teleport.py +0 -0
  262. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/udp.py +0 -0
  263. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/usage.py +0 -0
  264. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/users.py +0 -0
  265. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/domains/voxels.py +0 -0
  266. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/graphql.py +0 -0
  267. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/grid_scope.py +0 -0
  268. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/__init__.py +0 -0
  269. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/actions.py +0 -0
  270. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/kit.py +0 -0
  271. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/mirror.py +0 -0
  272. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/__init__.py +0 -0
  273. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/arenas.py +0 -0
  274. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/encounters.py +0 -0
  275. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/instances.py +0 -0
  276. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/leaderboards.py +0 -0
  277. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/market.py +0 -0
  278. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/matchmaking.py +0 -0
  279. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/minigames.py +0 -0
  280. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/npcs.py +0 -0
  281. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/player.py +0 -0
  282. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/presence.py +0 -0
  283. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/racing.py +0 -0
  284. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/sessions.py +0 -0
  285. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/tables.py +0 -0
  286. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/tactics.py +0 -0
  287. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/territory.py +0 -0
  288. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/modules/world.py +0 -0
  289. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/protocol.py +0 -0
  290. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/realtime.py +0 -0
  291. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/runtime.py +0 -0
  292. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/social.py +0 -0
  293. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/store.py +0 -0
  294. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/topology.py +0 -0
  295. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/kit/wire.py +0 -0
  296. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/rediscover.py +0 -0
  297. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/stores.py +0 -0
  298. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/_sync/world.py +0 -0
  299. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/auth_state.py +0 -0
  300. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/client.py +0 -0
  301. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/codecs.py +0 -0
  302. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/datacenter_redirect.py +0 -0
  303. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/__init__.py +0 -0
  304. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/_base.py +0 -0
  305. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/actors.py +0 -0
  306. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/admin.py +0 -0
  307. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/app_access.py +0 -0
  308. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/apps.py +0 -0
  309. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/auth.py +0 -0
  310. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/avatars.py +0 -0
  311. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/billing.py +0 -0
  312. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/channels.py +0 -0
  313. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/chunks.py +0 -0
  314. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/crowdy_studio.py +0 -0
  315. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/crowdy_studio_agent.py +0 -0
  316. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/crowdy_studio_github.py +0 -0
  317. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/discovery.py +0 -0
  318. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/exec.py +0 -0
  319. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/game_apps.py +0 -0
  320. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/grids.py +0 -0
  321. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/host.py +0 -0
  322. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/input_log.py +0 -0
  323. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/marketplace.py +0 -0
  324. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/organizations.py +0 -0
  325. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/payments.py +0 -0
  326. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/platform.py +0 -0
  327. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/portal.py +0 -0
  328. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/quotas.py +0 -0
  329. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/server_status.py +0 -0
  330. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/shared_environment.py +0 -0
  331. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/state.py +0 -0
  332. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/teams.py +0 -0
  333. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/teleport.py +0 -0
  334. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/udp.py +0 -0
  335. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/usage.py +0 -0
  336. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/users.py +0 -0
  337. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/domains/voxels.py +0 -0
  338. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/enums.py +0 -0
  339. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/errors.py +0 -0
  340. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/estate.py +0 -0
  341. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/exec_gateway.py +0 -0
  342. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/graphql.py +0 -0
  343. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/grid_scope.py +0 -0
  344. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/inputs.py +0 -0
  345. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/__init__.py +0 -0
  346. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/actions.py +0 -0
  347. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/kit.py +0 -0
  348. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/mirror.py +0 -0
  349. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/__init__.py +0 -0
  350. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/arenas.py +0 -0
  351. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/encounters.py +0 -0
  352. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/instances.py +0 -0
  353. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/leaderboards.py +0 -0
  354. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/market.py +0 -0
  355. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/matchmaking.py +0 -0
  356. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/minigames.py +0 -0
  357. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/npcs.py +0 -0
  358. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/player.py +0 -0
  359. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/presence.py +0 -0
  360. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/racing.py +0 -0
  361. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/sessions.py +0 -0
  362. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/tables.py +0 -0
  363. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/tactics.py +0 -0
  364. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/territory.py +0 -0
  365. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/modules/world.py +0 -0
  366. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/protocol.py +0 -0
  367. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/realtime.py +0 -0
  368. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/runtime.py +0 -0
  369. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/social.py +0 -0
  370. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/store.py +0 -0
  371. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/topology.py +0 -0
  372. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/kit/wire.py +0 -0
  373. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/lb_cookie.py +0 -0
  374. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/media.py +0 -0
  375. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/pkce.py +0 -0
  376. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/player_host/__init__.py +0 -0
  377. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/player_host/agent_errors.py +0 -0
  378. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/player_host/agent_types.py +0 -0
  379. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/player_host/json_schema.py +0 -0
  380. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/player_host/schemas.py +0 -0
  381. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/player_host/types.py +0 -0
  382. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/py.typed +0 -0
  383. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/rediscover.py +0 -0
  384. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/replication.py +0 -0
  385. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/session.py +0 -0
  386. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/stores.py +0 -0
  387. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/studio/__init__.py +0 -0
  388. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/studio/client_tick_interval.py +0 -0
  389. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/studio/controller.py +0 -0
  390. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/studio/diagnostics.py +0 -0
  391. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/studio/github_new_repo.py +0 -0
  392. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/studio/layout.py +0 -0
  393. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/studio/models.py +0 -0
  394. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/studio/starter_projects.py +0 -0
  395. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/subscriptions.py +0 -0
  396. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/sync.py +0 -0
  397. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/utils.py +0 -0
  398. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/wire.py +0 -0
  399. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/src/crowdypy/world.py +0 -0
  400. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/conftest.py +0 -0
  401. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/__init__.py +0 -0
  402. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/conftest.py +0 -0
  403. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/test_e2e_identity.py +0 -0
  404. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/test_e2e_input_log.py +0 -0
  405. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/test_e2e_open_grid_exec_gateway.py +0 -0
  406. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/test_e2e_ranged_channel.py +0 -0
  407. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/test_e2e_replication.py +0 -0
  408. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/test_e2e_studio.py +0 -0
  409. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/test_e2e_world.py +0 -0
  410. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/e2e/test_e2e_world_data.py +0 -0
  411. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/fixtures/README.md +0 -0
  412. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/fixtures/binary-wire-fixtures.json +0 -0
  413. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/fixtures/exec-client-frames.json +0 -0
  414. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/fixtures/kit-protocol.json +0 -0
  415. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/fixtures/voice-frames.json +0 -0
  416. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/__init__.py +0 -0
  417. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/domains/__init__.py +0 -0
  418. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/domains/test_crowdycpp_roots.py +0 -0
  419. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/domains/test_input_log_reads.py +0 -0
  420. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/domains/test_org_domains.py +0 -0
  421. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/domains/test_studio_exec_domains.py +0 -0
  422. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/domains/test_world_domains.py +0 -0
  423. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_check_pin_tiers.py +0 -0
  424. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_core.py +0 -0
  425. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_durable_stores.py +0 -0
  426. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_estate_moves.py +0 -0
  427. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_exec_gateway.py +0 -0
  428. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_fixture_provenance.py +0 -0
  429. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_grid_scope.py +0 -0
  430. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_kit.py +0 -0
  431. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_kit_protocol.py +0 -0
  432. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_lazy_exports.py +0 -0
  433. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_player_host.py +0 -0
  434. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_refusals.py +0 -0
  435. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_release_versions.py +0 -0
  436. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_replication.py +0 -0
  437. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_sdk_audience.py +0 -0
  438. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_studio_controller.py +0 -0
  439. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_studio_diagnostics.py +0 -0
  440. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_studio_layout.py +0 -0
  441. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_subscriptions.py +0 -0
  442. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_transport.py +0 -0
  443. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_udp_api.py +0 -0
  444. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_voice_frames.py +0 -0
  445. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_wire.py +0 -0
  446. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tests/unit/test_world_session.py +0 -0
  447. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tools/e2e/provision.py +0 -0
  448. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tools/fixtures/player_host.mjs +0 -0
  449. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tools/parity/classifications.toml +0 -0
  450. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/tools/parity/parity.py +0 -0
  451. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/LICENSE +0 -0
  452. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/cmake/CheckPublicHeaders.cmake +0 -0
  453. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/cmake/CrowdyCPPConfig.cmake.in +0 -0
  454. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/cmake/CrowdyFindOpus.cmake +0 -0
  455. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/cmake/studio_layout_fixture.hpp.in +0 -0
  456. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/client.hpp +0 -0
  457. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/core/base64.hpp +0 -0
  458. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/core/bytes.hpp +0 -0
  459. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/core/clock.hpp +0 -0
  460. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/core/crypto.hpp +0 -0
  461. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/core/logger.hpp +0 -0
  462. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/core/result.hpp +0 -0
  463. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/core/spsc.hpp +0 -0
  464. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/core/uuid.hpp +0 -0
  465. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/crowdy.hpp +0 -0
  466. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/default_origin.hpp +0 -0
  467. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/admin.hpp +0 -0
  468. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/auth.hpp +0 -0
  469. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/crowdy_studio.hpp +0 -0
  470. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/crowdy_studio_agent.hpp +0 -0
  471. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/crowdy_studio_github.hpp +0 -0
  472. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/discovery.hpp +0 -0
  473. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/domain_base.hpp +0 -0
  474. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/game_apps.hpp +0 -0
  475. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/grids.hpp +0 -0
  476. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/groups.hpp +0 -0
  477. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/marketplace.hpp +0 -0
  478. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/portal.hpp +0 -0
  479. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/realtime_control.hpp +0 -0
  480. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/server_status.hpp +0 -0
  481. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/types.hpp +0 -0
  482. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/domains/world_data.hpp +0 -0
  483. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/async_scope.hpp +0 -0
  484. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/auth_state.hpp +0 -0
  485. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/cancel.hpp +0 -0
  486. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/datacenter_redirect.hpp +0 -0
  487. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/dispatcher.hpp +0 -0
  488. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/errors.hpp +0 -0
  489. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/estate.hpp +0 -0
  490. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/graphql_client.hpp +0 -0
  491. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/http.hpp +0 -0
  492. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/json.hpp +0 -0
  493. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/rediscover.hpp +0 -0
  494. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/subscription_client.hpp +0 -0
  495. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/graphql/websocket.hpp +0 -0
  496. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/actions.hpp +0 -0
  497. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/economy.hpp +0 -0
  498. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/genres.hpp +0 -0
  499. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/kit.hpp +0 -0
  500. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/mirror.hpp +0 -0
  501. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/modules.hpp +0 -0
  502. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/protocol.hpp +0 -0
  503. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/realtime.hpp +0 -0
  504. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/social.hpp +0 -0
  505. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/topology.hpp +0 -0
  506. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/kit/wire.hpp +0 -0
  507. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/media/opus.hpp +0 -0
  508. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/media/video_frames.hpp +0 -0
  509. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/media/voice_frames.hpp +0 -0
  510. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/player_host/adapter.hpp +0 -0
  511. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/player_host/player_host.hpp +0 -0
  512. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/player_host/schemas.hpp +0 -0
  513. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/player_host/types.hpp +0 -0
  514. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/replication/connection.hpp +0 -0
  515. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/replication/session_provider.hpp +0 -0
  516. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/replication/types.hpp +0 -0
  517. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/replication/udp_socket.hpp +0 -0
  518. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/session/chunk_store.hpp +0 -0
  519. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/session/codec.hpp +0 -0
  520. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/session/durable.hpp +0 -0
  521. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/session/keys.hpp +0 -0
  522. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/session/stores.hpp +0 -0
  523. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/session/world_session.hpp +0 -0
  524. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/studio/controller.hpp +0 -0
  525. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/studio/diagnostics.hpp +0 -0
  526. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/studio/editor.hpp +0 -0
  527. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/studio/github.hpp +0 -0
  528. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/studio/github_layout.hpp +0 -0
  529. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/studio/integration.hpp +0 -0
  530. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/studio/layout.hpp +0 -0
  531. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/studio/models.hpp +0 -0
  532. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/studio/runtime.hpp +0 -0
  533. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/wire/codec.hpp +0 -0
  534. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/wire/protocol.hpp +0 -0
  535. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/include/crowdy/world.hpp +0 -0
  536. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/client.cpp +0 -0
  537. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/core/base64.cpp +0 -0
  538. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/core/clock.cpp +0 -0
  539. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/core/crypto_default_unavailable.cpp +0 -0
  540. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/core/crypto_openssl.cpp +0 -0
  541. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/core/crypto_unavailable.cpp +0 -0
  542. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/core/logger.cpp +0 -0
  543. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/core/uuid.cpp +0 -0
  544. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/async_transport.cpp +0 -0
  545. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/auth_state.cpp +0 -0
  546. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/error_extensions.hpp +0 -0
  547. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/errors.cpp +0 -0
  548. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/graphql_client.cpp +0 -0
  549. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/http_curl.cpp +0 -0
  550. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/http_none.cpp +0 -0
  551. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/json.cpp +0 -0
  552. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/subscription_client.cpp +0 -0
  553. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/websocket_curl.cpp +0 -0
  554. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/graphql/websocket_none.cpp +0 -0
  555. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/kit/economy.cpp +0 -0
  556. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/kit/genres.cpp +0 -0
  557. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/kit/mirror.cpp +0 -0
  558. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/kit/modules.cpp +0 -0
  559. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/kit/protocol.cpp +0 -0
  560. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/kit/topology.cpp +0 -0
  561. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/media/opus.cpp +0 -0
  562. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/player_host/schemas.cpp +0 -0
  563. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/player_host/types.cpp +0 -0
  564. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/replication/connection.cpp +0 -0
  565. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/replication/socket_errors.hpp +0 -0
  566. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/replication/udp_socket.cpp +0 -0
  567. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/session/world_session.cpp +0 -0
  568. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/studio/diagnostics.cpp +0 -0
  569. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/studio/editor.cpp +0 -0
  570. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/src/studio/integration.cpp +0 -0
  571. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/third_party/yyjson/LICENSE +0 -0
  572. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/third_party/yyjson/yyjson.c +0 -0
  573. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/third_party/yyjson/yyjson.h +0 -0
  574. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/tools/parity/fixtures/exec-client-frames.json +0 -0
  575. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/tools/parity/fixtures/exec-gateway-cases.json +0 -0
  576. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/tools/parity/fixtures/kit-protocol.json +0 -0
  577. {crowdypy-0.14.1.dev1 → crowdypy-0.14.2.dev1}/vendor/CrowdyCPP/tools/parity/fixtures/voice-frames.json +0 -0
@@ -3,6 +3,15 @@
3
3
  CrowdyPy is pre-1.0. Within a minor line, patch releases keep source compatibility; each
4
4
  new minor may change the API. Read the section for every minor you skip.
5
5
 
6
+ ## 0.14.2
7
+
8
+ CrowdyJS 18.14.0 and CrowdyCPP 0.67.3. No breaking change. `PlayerWalletAPI.charges()` is
9
+ deprecated and warns (`DeprecationWarning`), as the `playerUsageCharges` field it wraps is: it
10
+ reads the cents-era hourly rows, which the lossless ledger does not write. Read
11
+ `transactions()`: each `usage_debit` entry is one usage charge. The schema's billing
12
+ descriptions are 18.14.0's. The vendored native core moves from CrowdyCPP 0.66.0 to 0.67.3;
13
+ the replication client it binds is unchanged.
14
+
6
15
  ## 0.14.1
7
16
 
8
17
  CrowdyJS 18.13.0 and CrowdyCPP 0.66.0. Additive. A paused app, an app switched off, and a type switched off used to arrive as a bare denial. They are now `AppPaused`, `AppDisabled`, and `TypeDisabled`.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crowdypy
3
- Version: 0.14.1.dev1
3
+ Version: 0.14.2.dev1
4
4
  Summary: Official Python SDK for Crowded Kingdoms: typed GraphQL clients and a native UDP replication core
5
5
  Keywords: crowded-kingdoms,multiplayer,replication,graphql,sdk,udp
6
6
  Author: Crowded Kingdoms
@@ -51,6 +51,8 @@ CrowdyPy follows the [CrowdyJS](https://github.com/CrowdedKingdoms/CrowdyJS) API
51
51
  client, bound with [nanobind](https://github.com/wjakob/nanobind) and shipped inside the
52
52
  wheel. Python never touches a datagram.
53
53
 
54
+ **v0.14.2: CrowdyJS 18.14.0 and CrowdyCPP 0.67.3.** `player_wallet.charges()` is deprecated: read `transactions()`, whose `usage_debit` entries are the usage charges.
55
+
54
56
  **v0.14.1: the exec socket names a paused app and a switched-off app or type.** `AppPaused`, `AppDisabled`, and `TypeDisabled`. Still CrowdyJS 18.13.0 and CrowdyCPP 0.66.0.
55
57
 
56
58
  **v0.14.0: the economy (CrowdyJS 18.13.0, CrowdyCPP 0.66.0).** `kit.player`, the caller's own
@@ -11,6 +11,8 @@ CrowdyPy follows the [CrowdyJS](https://github.com/CrowdedKingdoms/CrowdyJS) API
11
11
  client, bound with [nanobind](https://github.com/wjakob/nanobind) and shipped inside the
12
12
  wheel. Python never touches a datagram.
13
13
 
14
+ **v0.14.2: CrowdyJS 18.14.0 and CrowdyCPP 0.67.3.** `player_wallet.charges()` is deprecated: read `transactions()`, whose `usage_debit` entries are the usage charges.
15
+
14
16
  **v0.14.1: the exec socket names a paused app and a switched-off app or type.** `AppPaused`, `AppDisabled`, and `TypeDisabled`. Still CrowdyJS 18.13.0 and CrowdyCPP 0.66.0.
15
17
 
16
18
  **v0.14.0: the economy (CrowdyJS 18.13.0, CrowdyCPP 0.66.0).** `kit.player`, the caller's own
@@ -5,7 +5,7 @@ are in `pyproject.toml` (`[project].version`, `[tool.crowdypy.crowdyjs]`,
5
5
  `[tool.crowdypy.crowdycpp]`); `tests/unit/test_release_versions.py` refuses this page when
6
6
  its version disagrees.
7
7
 
8
- - CrowdyPy `0.14.1`
8
+ - CrowdyPy `0.14.2`
9
9
  - API surface: CrowdyJS (the pinned version and commit in `pyproject.toml`); the generated
10
10
  `docs/parity-matrix.md` lists every covered method, every native equivalent and every
11
11
  browser exclusion with its reason. The gate is strict: there are no portable gaps, and a
@@ -4,8 +4,8 @@ Generated by `tools/parity/parity.py`; do not edit by hand. Classifications live
4
4
 
5
5
  ## Target
6
6
 
7
- - CrowdyJS: `18.13.0` at `7aeee709ad661c836a045f2d396c9a867f1d278a`
8
- - CrowdyCPP (native core): `0.66.0` at `d57cafe80c48c45fdf9ae14309d59b80d466d308`
7
+ - CrowdyJS: `18.14.0` at `9abcdf86c2b0440f113c8b7f15bd38fb23f51117`
8
+ - CrowdyCPP (native core): `0.67.3` at `f09fc0b174b90e739f7128400792d5679e621b9b`
9
9
  - schema.gql identical to CrowdyJS's: yes
10
10
  - Gate mode: strict portable parity (every portable gap is release-blocking)
11
11
 
@@ -4,7 +4,7 @@ build-backend = "scikit_build_core.build"
4
4
 
5
5
  [project]
6
6
  name = "crowdypy"
7
- version = "0.14.1.dev1"
7
+ version = "0.14.2.dev1"
8
8
  description = "Official Python SDK for Crowded Kingdoms: typed GraphQL clients and a native UDP replication core"
9
9
  readme = "README.md"
10
10
  license = "MIT AND Apache-2.0"
@@ -119,19 +119,19 @@ environment = { OPENSSL_ROOT_DIR = "C:/vcpkg/installed/x64-windows-static-md" }
119
119
  # --------------------------------------------------------------------------------------
120
120
 
121
121
  [tool.crowdypy.crowdyjs]
122
- version = "18.13.0"
123
- commit = "7aeee709ad661c836a045f2d396c9a867f1d278a"
122
+ version = "18.14.0"
123
+ commit = "9abcdf86c2b0440f113c8b7f15bd38fb23f51117"
124
124
 
125
125
  [tool.crowdypy.crowdycpp]
126
- version = "0.66.0"
127
- tag = "dev/v0.66.0"
128
- commit = "d57cafe80c48c45fdf9ae14309d59b80d466d308"
129
- tree-sha256 = "e92629e7d769516bdb126b9ad39f489b6d98d6c2f5f03743437127d370a689cf"
126
+ version = "0.67.3"
127
+ tag = "dev/v0.67.3"
128
+ commit = "f09fc0b174b90e739f7128400792d5679e621b9b"
129
+ tree-sha256 = "f0456195cc0948d96f8d7d987f2742722218c35ce60bbe9a34dfa3b9e6303541"
130
130
 
131
131
  # schema.gql and operations/ are CrowdyJS's, copied from the commit pinned above by
132
132
  # scripts/schema_sync.py, which records these hashes and re-derives them in CI.
133
133
  [tool.crowdypy.graphql]
134
- schema-sha256 = "b8d487684433c99556979ed20283a9abc6b16bb02b9f6508f07600a662265ca0"
134
+ schema-sha256 = "90d407b44d95416f23384023451b54edf73e18881dcad9ad9f06b20d8bd3fdfd"
135
135
  operations-sha256 = "37b1e06dc4e997bb42506968c50698a184934581a6d94d9471a29d2ce74ff3d3"
136
136
 
137
137
  # The SDL the docs site publishes. scripts/schema_drift.py compares the snapshot against it
@@ -1748,7 +1748,7 @@ type WalletTransaction {
1748
1748
  """DEPRECATED. balanceAfterMicrousd / 10,000 truncated toward zero."""
1749
1749
  balanceAfter: BigInt! @deprecated(reason: "Derived from balanceAfterMicrousd (truncated toward zero). Read balanceAfterMicrousd.")
1750
1750
  """
1751
- What produced this transaction. The complete set of values this API writes: "topup" (wallet credit from a completed checkout, positive), "admin_credit" (operator credit applied without a payment provider, positive), "auto_recharge" (off-session automatic wallet recharge, positive), "shared_usage" (hourly shared-environment metered charge for one closed clock hour, negative), "agent_usage" (Crowdy Studio agent run charged at provider cost, negative), "reserved_throughput" (monthly or prorated reserved capacity -- realtime bytes/s or GraphQL operations/s -- charged in addition to metered usage rather than including any of it, negative), "markup_payout" (the app developer's markup on a player's compute bill, credited to the org in the same transaction as the player debit that produced it, positive), "refund" (a payment-provider refund of a top-up, the credited amount leaving the wallet again, negative), "chargeback" (a card dispute on an org top-up, clawed back from the org wallet, negative). No other value is written; earlier versions of this description also listed "usage" and "environment_usage", neither of which was ever produced.
1751
+ What produced this transaction. The complete set of values this API writes: "topup" (wallet credit from a completed checkout, positive), "admin_credit" (operator credit applied without a payment provider, positive), "auto_recharge" (off-session automatic wallet recharge, positive), "shared_usage" (metered shared-environment usage: the increase in what one dimension's period total costs since the last charge for it, negative), "agent_usage" (Crowdy Studio agent run charged at provider cost, negative), "reserved_throughput" (monthly or prorated reserved capacity -- realtime bytes/s or GraphQL operations/s -- charged in addition to metered usage rather than including any of it, negative), "markup_payout" (the app developer's markup on a player's metered usage, credited to the org in the same transaction as the player debit that produced it, positive), "refund" (a payment-provider refund of a top-up, the credited amount leaving the wallet again, negative), "chargeback" (a card dispute on an org top-up, clawed back from the org wallet, negative). No other value is written; earlier versions of this description also listed "usage" and "environment_usage", neither of which was ever produced.
1752
1752
  """
1753
1753
  transactionType: String!
1754
1754
  """
@@ -1888,7 +1888,7 @@ enum CheckoutPurpose {
1888
1888
  """
1889
1889
  @deprecated Legacy recurring subscription for a paid shared app slot. No longer purchasable via createCheckout; retained for historical checkouts and webhook reconciliation.
1890
1890
  """
1891
- SHARED_APP_SUBSCRIPTION @deprecated(reason: "Shared apps use org wallet hourly usage billing. Publish via publishAppToShared and top up with ORG_WALLET_TOPUP.")
1891
+ SHARED_APP_SUBSCRIPTION @deprecated(reason: "Shared apps are billed for metered usage from the org wallet. Publish via publishAppToShared and top up with ORG_WALLET_TOPUP.")
1892
1892
  }
1893
1893
 
1894
1894
  """
@@ -2144,7 +2144,7 @@ type RateCardBandType {
2144
2144
  }
2145
2145
 
2146
2146
  """
2147
- One priced dimension: its rate and, where it has one, its hourly free allowance. A dimension with a price of 0 is metered but not charged.
2147
+ One priced dimension: its rate and, where it has one, its free allowance and the period that allowance resets on. A dimension with a price of 0 is metered but not charged.
2148
2148
  """
2149
2149
  type RateCardEntryType {
2150
2150
  """Which card this row is on."""
@@ -2192,7 +2192,7 @@ type RateCardEntryType {
2192
2192
  }
2193
2193
 
2194
2194
  """
2195
- Which rate card. SHARED prices organization metered usage for shared-environment apps (billed hourly to the org wallet as "shared_usage"). PLAYER prices player compute (billed hourly to the player wallet as "usage_debit").
2195
+ Which rate card. SHARED prices an organization's metered usage in shared-environment apps, charged to the org wallet as "shared_usage" entries. PLAYER prices a player's own metered usage (mod compute, egress, model storage and player-paid model tokens), charged to the player wallet as "usage_debit" entries with the app's markup added. Both settle about once a minute: each (payer, dimension, period) is charged what its running total now costs beyond what was already charged for it.
2196
2196
  """
2197
2197
  enum RateScope {
2198
2198
  SHARED
@@ -2506,7 +2506,7 @@ type PlayerWallet {
2506
2506
  }
2507
2507
 
2508
2508
  """
2509
- One player-wallet ledger entry: top-ups, hourly usage debits, auto-recharges, refunds, and adjustments. Usage debits carry the app and reference the hour's charge row, whose snapshot splits platform vs studio-markup components.
2509
+ One player-wallet ledger entry: top-ups, usage debits, auto-recharges, refunds, purchases, payouts and adjustments. A usage debit carries the app and charges what one dimension's running total for its period now costs beyond what was already charged, the app's markup included, so a period can bring several debits as its usage arrives; its description names the dimension and the period.
2510
2510
  """
2511
2511
  type PlayerWalletTransaction {
2512
2512
  """Transaction id."""
@@ -2524,12 +2524,14 @@ type PlayerWalletTransaction {
2524
2524
  """DEPRECATED. balanceAfterMicrousd / 10,000 truncated toward zero."""
2525
2525
  balanceAfter: BigInt! @deprecated(reason: "Derived from balanceAfterMicrousd. Read balanceAfterMicrousd.")
2526
2526
  """
2527
- What produced this entry. The complete set of values this API writes: "topup" (credit from a completed checkout, positive), "auto_recharge" (off-session automatic recharge, positive), "payout_credit" (marketplace seller payout, positive), "refund" (marketplace refund returned to the buyer, positive), "usage_debit" (hourly player-compute metered charge for one closed clock hour, negative), "purchase" (marketplace purchase, negative), "adjustment" (operator or dispute-clawback correction, signed).
2527
+ What produced this entry. The complete set of values this API writes: "topup" (credit from a completed checkout, positive), "auto_recharge" (off-session automatic recharge, positive), "payout_credit" (marketplace seller payout, positive), "refund" (marketplace refund returned to the buyer, positive), "usage_debit" (metered player usage in one app: the increase in what one dimension's period total costs since the last debit for it, markup included, negative), "purchase" (marketplace purchase, negative), "adjustment" (operator or dispute-clawback correction, signed).
2528
2528
  """
2529
2529
  transactionType: String!
2530
2530
  """Human description."""
2531
2531
  description: String
2532
- """External reference (checkout/PaymentIntent id)."""
2532
+ """
2533
+ External reference: the checkout or PaymentIntent id of a top-up, or for a usage debit the ledger charge it settles ("charge:<chargeId>:<n>", the n-th debit of that charge).
2534
+ """
2533
2535
  referenceId: String
2534
2536
  """The app a usage debit covers; null for wallet-level entries."""
2535
2537
  appId: BigInt
@@ -2592,7 +2594,7 @@ type PlayerAutoBilling {
2592
2594
  }
2593
2595
 
2594
2596
  """
2595
- One posted player usage charge: a (player, app, closed clock hour) row. amountCents = platformCents + markupCents — players see what the platform charges and what the studio adds (06 §4). The UNIQUE hour key makes the billing tick idempotent.
2597
+ One player usage charge from the hourly cents-era billing: a (player, app, closed clock hour) row. The lossless ledger, on by default, replaced that billing and writes no rows here, so the list ends where the ledger took over; usage since is in playerWalletTransactions as "usage_debit" entries. amountCents = platformCents + markupCents: what the platform charged and what the studio added.
2596
2598
  """
2597
2599
  type PlayerUsageCharge {
2598
2600
  """Charge id."""
@@ -7102,7 +7104,7 @@ type Query {
7102
7104
  scope: RateScope!
7103
7105
  ): [PublicRateCardEntryType!]!
7104
7106
  """
7105
- OPERATOR ONLY. The metered rate card for a scope: every priced dimension with its unit, price and hourly free allowance. SHARED is organization usage billed to the org wallet as "shared_usage"; PLAYER is player compute billed to the player wallet as "usage_debit". A dimension priced at 0 is metered but not charged. Read-only. Customers read the same rates through `meteredRateCard`, which is public and omits the operator note.
7107
+ OPERATOR ONLY. The metered rate card for a scope: every priced dimension with its unit, price, free allowance and the period that allowance resets on. SHARED is organization usage charged to the org wallet as "shared_usage"; PLAYER is a player's own metered usage charged to the player wallet as "usage_debit". A dimension priced at 0 is metered but not charged. Read-only. Customers read the same rates through `meteredRateCard`, which is public and omits the operator note.
7106
7108
  """
7107
7109
  billingRateCard(
7108
7110
  """Which card to read."""
@@ -7287,7 +7289,7 @@ type Query {
7287
7289
  """
7288
7290
  playerWalletBalance: PlayerWallet!
7289
7291
  """
7290
- The caller's player-wallet ledger, newest first: top-ups, hourly usage debits (per app), auto-recharges, refunds, and adjustments. Usage-debit hours are broken down by playerUsageCharges, whose snapshot splits the platform and studio-markup components.
7292
+ The caller's player-wallet ledger, newest first: top-ups, usage debits (per app, the app's markup included), auto-recharges, refunds, purchases, payouts and adjustments. Each usage debit names its dimension and period, and an over-charge credited back appears as an adjustment.
7291
7293
  """
7292
7294
  playerWalletTransactions(
7293
7295
  """Max entries (default 50, max 200)."""
@@ -7296,7 +7298,7 @@ type Query {
7296
7298
  offset: Int
7297
7299
  ): [PlayerWalletTransaction!]!
7298
7300
  """
7299
- The caller's posted hourly player-usage charges, newest first, optionally filtered by app. Each charge splits platformCents (base rate card) from markupCents (the studio's configured markup) with a per-metric snapshot — players always see what the platform charges and what the studio adds.
7301
+ The caller's hourly player-usage charges from the cents-era billing, newest first, optionally filtered by app. Nothing has been added since the lossless ledger took over; current usage charges are the "usage_debit" entries in playerWalletTransactions.
7300
7302
  """
7301
7303
  playerUsageCharges(
7302
7304
  """Optional: only charges for this app."""
@@ -7305,7 +7307,7 @@ type Query {
7305
7307
  Maximum number of charges to return, 1 to 200 (a value outside is clamped). Defaults to 50 when omitted.
7306
7308
  """
7307
7309
  limit: Int
7308
- ): [PlayerUsageCharge!]!
7310
+ ): [PlayerUsageCharge!]! @deprecated(reason: "Reads the hourly cents-era charge rows, which the lossless ledger does not write. Read playerWalletTransactions: each \"usage_debit\" entry is one charge, per app, markup included.")
7309
7311
  """
7310
7312
  The caller's self-set spend caps (global and per-app) with running counters. The effective runtime limit is min(developer policy, self-cap, wallet balance).
7311
7313
  """
@@ -9079,11 +9081,11 @@ type Mutation {
9079
9081
  referenceId: String
9080
9082
  ): WalletTransaction! @requiresPermission(scope: "operator", permission: "is_operator")
9081
9083
  """
9082
- OPERATOR ONLY. Runs the shared-usage billing tick once. It still bills only the last CLOSED clock hour — it will not charge an open hour. Use this to prove a closed-hour debit without waiting for the ~60s cron. Backdating usage rows is a local-test fixture, not something this mutation does on a live tier.
9084
+ OPERATOR ONLY. Runs the shared-usage tick once instead of waiting for the ~60s cron: reserved-throughput billing, the itemised statement of the last closed clock hour, and the usage-gate evaluation of every shared app. Metered usage is priced and charged by the ledger's settlement, about once a minute, not by this tick. Backdating usage rows is a local-test fixture, not something this mutation does on a live tier.
9083
9085
  """
9084
9086
  runSharedUsageBillingTick: Boolean! @requiresPermission(scope: "operator", permission: "is_operator")
9085
9087
  """
9086
- OPERATOR ONLY. Sets a metered dimension's price, the UNIT that price is quoted in, its free allowances, or any combination, and returns the new row alongside the values that moved. THIS IS THE ONLY SANCTIONED WAY TO CHANGE A PRICE OR A UNIT: the schema seeds use ON CONFLICT DO NOTHING, so a rate reaches a tier once at install and a unit corrected in the declaration never reaches a tier that already exists. Refuses an unknown or unmetered metric (a rate for a dimension nothing meters bills nobody while appearing configured), refuses a negative price, refuses unitLabel without unitQuantity (which would restate the rate card while the arithmetic kept the old divisor), and refuses a call that would change nothing. A unit change that also moves the money needs acknowledgeRepricing: true, so restating a price and cutting it cannot be confused. priceBands sets a graduated schedule (SHARED aggregate_data_volume only; band 1 becomes priceCents) and clearPriceBands returns the dimension to one flat price; while a dimension is banded a bare priceCents or a unit change is refused. NOT RETROACTIVE: charges already written are history and the tick is idempotent per closed hour, so a new rate applies to hours billed from now on. Takes effect within about a minute — both billing ticks reload the card on every run, so no restart is needed.
9088
+ OPERATOR ONLY. Sets a metered dimension's price, the UNIT that price is quoted in, its free allowances, or any combination, and returns the new row alongside the values that moved. THIS IS THE ONLY SANCTIONED WAY TO CHANGE A PRICE OR A UNIT: the schema seeds use ON CONFLICT DO NOTHING, so a rate reaches a tier once at install and a unit corrected in the declaration never reaches a tier that already exists. Refuses an unknown or unmetered metric (a rate for a dimension nothing meters bills nobody while appearing configured), refuses a negative price, refuses unitLabel without unitQuantity (which would restate the rate card while the arithmetic kept the old divisor), and refuses a call that would change nothing. A unit change that also moves the money needs acknowledgeRepricing: true, so restating a price and cutting it cannot be confused. priceBands sets a graduated schedule (SHARED aggregate_data_volume only; band 1 becomes priceCents) and clearPriceBands returns the dimension to one flat price; while a dimension is banded a bare priceCents or a unit change is refused. NOT RETROACTIVE: the ledger keeps the rate and allowance in force when a (payer, dimension, period) is first charged, so a change applies from each dimension's next period and nothing already charged is repriced. Takes effect within about a minute — the settlement reloads the card on every run, so no restart is needed.
9087
9089
  """
9088
9090
  setBillingRate(
9089
9091
  """Which dimension to reprice, the new price and/or allowance, and why."""
@@ -9105,7 +9107,7 @@ type Mutation {
9105
9107
  reason: String!
9106
9108
  ): BillingExemptOrgType! @requiresPermission(scope: "operator", permission: "is_operator")
9107
9109
  """
9108
- Publishes an app to the shared game-api environment. Free under the org's app-slot quota (result.free = true); beyond the quota, publish still succeeds and hourly usage is debited from the org wallet. Requires the 'manage_apps' permission on the app's org. Blocked when SHARED_GAME_API_URL is not configured.
9110
+ Publishes an app to the shared game-api environment. Free under the org's app-slot quota (result.free = true); beyond the quota, publish still succeeds and metered usage is charged to the org wallet. Requires the 'manage_apps' permission on the app's org. Blocked when SHARED_GAME_API_URL is not configured.
9109
9111
  """
9110
9112
  publishAppToShared(
9111
9113
  """App id (BigInt) to publish to the shared environment."""
@@ -9287,7 +9289,7 @@ type Mutation {
9287
9289
  markupBps: Int!
9288
9290
  ): Int! @requiresPermission(scope: "app", permission: "manage_billing", scopeArg: "appId")
9289
9291
  """
9290
- Operator only. Credit the payer of an over-billed charge (an I3 finding: an allowance or rate was raised after the charge landed) the difference, and close the charge row. Idempotent per charge state. SIDE EFFECT: a wallet credit and a CREDIT event.
9292
+ Operator only. Close an over-billed charge (an I3 finding: its priced total fell below what was billed and written off). The billed part of the difference is credited to the payer (a wallet credit and a CREDIT event); a written-off part (an exempt org) was never paid, so no money moves and a WRITE_OFF event of the opposite sign (reason OVERBILL_REVERSAL) offsets it. creditedMicrousd is the wallet credit only. Idempotent per charge state.
9291
9293
  """
9292
9294
  cpBillingCreditOverbill(
9293
9295
  """App the charge was billed under."""
@@ -10987,11 +10989,11 @@ input SetRateCardInput {
10987
10989
  """
10988
10990
  acknowledgeRepricing: Boolean
10989
10991
  """
10990
- New hourly free allowance in raw metric units, as a BigInt decimal string. Must be >= 0. Omit to leave the allowance unchanged.
10992
+ New hourly free allowance in raw metric units, as a BigInt decimal string. Must be >= 0. Omit to leave the allowance unchanged. Like a price, it applies from a dimension's next period where a period has already been charged.
10991
10993
  """
10992
10994
  freePerHour: BigInt
10993
10995
  """
10994
- New free allowance in raw metric units per freePeriod, as a BigInt decimal string. Must be >= 0. Leaves the period as it is unless freePeriod is also given. Not combinable with freePerHour, which is the older spelling of freeUnits with freePeriod HOUR.
10996
+ New free allowance in raw metric units per freePeriod, as a BigInt decimal string. Must be >= 0. Leaves the period as it is unless freePeriod is also given. Not combinable with freePerHour, which is the older spelling of freeUnits with freePeriod HOUR. Like a price, it applies from a dimension's next period where a period has already been charged.
10995
10997
  """
10996
10998
  freeUnits: BigInt
10997
10999
  """
@@ -10999,7 +11001,7 @@ input SetRateCardInput {
10999
11001
  """
11000
11002
  freePeriod: AllowancePeriod
11001
11003
  """
11002
- New monthly free allowance in raw metric units, as a BigInt decimal string. Must be >= 0. On the PLAYER card with metric player_wasm_compute_units this is the pooled monthly TRIAL BUDGET per (player, app) — the only sanctioned way to change it on a live tier. Omit to leave it unchanged.
11004
+ New monthly free allowance in raw metric units, as a BigInt decimal string. Must be >= 0. On the PLAYER card with metric player_wasm_compute_units this is the pooled monthly TRIAL BUDGET per (player, app) — the only sanctioned way to change it on a live tier. Omit to leave it unchanged. Like a price, it applies from a dimension's next period where a period has already been charged.
11003
11005
  """
11004
11006
  freePerMonth: BigInt
11005
11007
  """
@@ -1,6 +1,6 @@
1
1
  """GENERATED by scripts/codegen.py from schema.gql. Do not edit.
2
2
 
3
- schema.gql sha256: b8d487684433c99556979ed20283a9abc6b16bb02b9f6508f07600a662265ca0
3
+ schema.gql sha256: 90d407b44d95416f23384023451b54edf73e18881dcad9ad9f06b20d8bd3fdfd
4
4
  """
5
5
 
6
6
  from enum import StrEnum
@@ -364,7 +364,7 @@ class PlayerCodeOwnerKind(StrEnum):
364
364
 
365
365
 
366
366
  class RateScope(StrEnum):
367
- 'Which rate card. SHARED prices organization metered usage for shared-environment apps (billed hourly to the org wallet as "shared_usage"). PLAYER prices player compute (billed hourly to the player wallet as "usage_debit").'
367
+ 'Which rate card. SHARED prices an organization\'s metered usage in shared-environment apps, charged to the org wallet as "shared_usage" entries. PLAYER prices a player\'s own metered usage (mod compute, egress, model storage and player-paid model tokens), charged to the player wallet as "usage_debit" entries with the app\'s markup added. Both settle about once a minute: each (payer, dimension, period) is charged what its running total now costs beyond what was already charged for it.'
368
368
  SHARED = 'SHARED'
369
369
  PLAYER = 'PLAYER'
370
370
 
@@ -4,7 +4,7 @@ Every GraphQL input object as a msgspec Struct. Attributes are snake_case and en
4
4
  under their GraphQL names; an attribute left at UNSET is omitted from the request,
5
5
  which is how the API tells 'not provided' from an explicit null.
6
6
 
7
- schema.gql sha256: b8d487684433c99556979ed20283a9abc6b16bb02b9f6508f07600a662265ca0
7
+ schema.gql sha256: 90d407b44d95416f23384023451b54edf73e18881dcad9ad9f06b20d8bd3fdfd
8
8
  """
9
9
 
10
10
  from __future__ import annotations
@@ -1,6 +1,6 @@
1
1
  """GENERATED by scripts/codegen.py from schema.gql and operations/. Do not edit.
2
2
 
3
- schema.gql sha256: b8d487684433c99556979ed20283a9abc6b16bb02b9f6508f07600a662265ca0
3
+ schema.gql sha256: 90d407b44d95416f23384023451b54edf73e18881dcad9ad9f06b20d8bd3fdfd
4
4
  operations/ sha256: 37b1e06dc4e997bb42506968c50698a184934581a6d94d9471a29d2ce74ff3d3
5
5
  """
6
6
 
@@ -59,11 +59,18 @@ class PlayerWalletAPI(Domain):
59
59
  def charges(
60
60
  self, app_id: str | int | None = None, limit: int | None = None
61
61
  ) -> list[dict[str, Any]]:
62
- """The caller's posted hourly usage charges, newest first, optionally for one app.
62
+ """Deprecated: the cents-era charges, which nothing adds to any more. Use
63
+ :meth:`transactions`: its ``usage_debit`` entries are the usage charges.
63
64
 
64
- Each splits ``platformCents`` (the platform's rate card) from ``markupCents`` (the
65
- studio's markup) with a per-metric snapshot. ``limit`` defaults to 50, at most 200.
65
+ The caller's hourly usage charges from before the lossless ledger, newest first,
66
+ optionally for one app. ``limit`` defaults to 50, at most 200.
66
67
  """
68
+ warnings.warn(
69
+ "PlayerWalletAPI.charges is deprecated: nothing is added to it any more; "
70
+ "the usage_debit entries of transactions are the usage charges",
71
+ DeprecationWarning,
72
+ stacklevel=2,
73
+ )
67
74
  result: list[dict[str, Any]] = self._request(
68
75
  ops.PLAYER_USAGE_CHARGES, omit_none({"appId": _optional_bigint(app_id), "limit": limit})
69
76
  )
@@ -1,3 +1,3 @@
1
1
  """The CrowdyPy release this source tree builds."""
2
2
 
3
- __version__ = "0.14.1"
3
+ __version__ = "0.14.2"
@@ -58,11 +58,18 @@ class PlayerWalletAPI(Domain):
58
58
  async def charges(
59
59
  self, app_id: str | int | None = None, limit: int | None = None
60
60
  ) -> list[dict[str, Any]]:
61
- """The caller's posted hourly usage charges, newest first, optionally for one app.
61
+ """Deprecated: the cents-era charges, which nothing adds to any more. Use
62
+ :meth:`transactions`: its ``usage_debit`` entries are the usage charges.
62
63
 
63
- Each splits ``platformCents`` (the platform's rate card) from ``markupCents`` (the
64
- studio's markup) with a per-metric snapshot. ``limit`` defaults to 50, at most 200.
64
+ The caller's hourly usage charges from before the lossless ledger, newest first,
65
+ optionally for one app. ``limit`` defaults to 50, at most 200.
65
66
  """
67
+ warnings.warn(
68
+ "PlayerWalletAPI.charges is deprecated: nothing is added to it any more; "
69
+ "the usage_debit entries of transactions are the usage charges",
70
+ DeprecationWarning,
71
+ stacklevel=2,
72
+ )
66
73
  result: list[dict[str, Any]] = await self._request(
67
74
  ops.PLAYER_USAGE_CHARGES, omit_none({"appId": _optional_bigint(app_id), "limit": limit})
68
75
  )
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "crowdyJs": {
3
- "version": "18.13.0",
4
- "commit": "7aeee709ad661c836a045f2d396c9a867f1d278a"
3
+ "version": "18.14.0",
4
+ "commit": "9abcdf86c2b0440f113c8b7f15bd38fb23f51117"
5
5
  },
6
6
  "schemas": {
7
7
  "GAME_COMMAND_RESULT_SCHEMA_V1": {
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "fixtureVersion": 1,
3
3
  "crowdyJs": {
4
- "version": "18.13.0",
5
- "commit": "7aeee709ad661c836a045f2d396c9a867f1d278a"
4
+ "version": "18.14.0",
5
+ "commit": "9abcdf86c2b0440f113c8b7f15bd38fb23f51117"
6
6
  },
7
7
  "errorCodes": [
8
8
  "AGENT_DISABLED",
@@ -5,7 +5,7 @@ no client-side checks), so the contract under test is the operation, the variabl
5
5
  arguments as decimal strings, omitted optionals, idempotency keys under the document's
6
6
  variable name) and the root field handed back untouched. On top of that: the one argument
7
7
  whose omission and explicit null differ (``set_auto_billing``'s ``limit_cents``) and the
8
- deprecated ``app_markup_accrued``.
8
+ deprecated ``app_markup_accrued`` and ``charges``.
9
9
  """
10
10
 
11
11
  from __future__ import annotations
@@ -435,16 +435,6 @@ CASES: list[Case] = [
435
435
  {"limit": 20, "offset": 40},
436
436
  [ROW],
437
437
  ),
438
- Case(PlayerWalletAPI, "charges", (), "PlayerUsageCharges", {}, [ROW]),
439
- Case(
440
- PlayerWalletAPI,
441
- "charges",
442
- (42,),
443
- "PlayerUsageCharges",
444
- {"appId": "42", "limit": 5},
445
- [ROW],
446
- {"limit": 5},
447
- ),
448
438
  Case(PlayerWalletAPI, "spend_caps", (), "PlayerSpendCaps", {}, [ROW]),
449
439
  Case(
450
440
  PlayerWalletAPI,
@@ -546,6 +536,7 @@ def test_method_set_is_crowdyjs_snake_cased_and_every_method_is_covered(
546
536
  covered = {case.method for case in CASES if case.domain is domain}
547
537
  if domain is PlayerWalletAPI:
548
538
  covered.add("app_markup_accrued") # test_app_markup_accrued_is_deprecated
539
+ covered.add("charges") # test_charges_is_deprecated
549
540
  assert covered == ported
550
541
 
551
542
 
@@ -587,6 +578,19 @@ async def test_app_markup_accrued_is_deprecated(api: MockApi, graphql: AsyncGrap
587
578
  assert api.last.variables == {"appId": "42"}
588
579
 
589
580
 
581
+ async def test_charges_is_deprecated(api: MockApi, graphql: AsyncGraphQLClient) -> None:
582
+ wallet = PlayerWalletAPI(graphql)
583
+ api.reply_with_root([ROW])
584
+ with pytest.warns(DeprecationWarning, match="usage_debit"):
585
+ assert await wallet.charges() == [ROW]
586
+ assert api.last.operation_name == "PlayerUsageCharges"
587
+ assert api.last.query == ops.PLAYER_USAGE_CHARGES.document
588
+ assert api.last.variables == {}
589
+ with pytest.warns(DeprecationWarning, match="usage_debit"):
590
+ await wallet.charges(42, limit=5)
591
+ assert api.last.variables == {"appId": "42", "limit": 5}
592
+
593
+
590
594
  async def test_a_bad_id_is_refused_before_anything_is_sent(
591
595
  api: MockApi, graphql: AsyncGraphQLClient
592
596
  ) -> None: