Skip to content

パフォーマンス計測&改善#180

Merged
reigithub merged 13 commits intomainfrom
feature/performance-test
Apr 19, 2026
Merged

パフォーマンス計測&改善#180
reigithub merged 13 commits intomainfrom
feature/performance-test

Conversation

@reigithub
Copy link
Copy Markdown
Owner

No description provided.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 16, 2026

🔍 コード品質チェックリスト

28 個の C# ファイルが変更されています。

共通チェック

  • .editorconfig に従ったフォーマット
  • 命名規則の遵守(_ プレフィックス、PascalCase)
  • 不要な using の削除

Unity プロジェクト (Game.Client)

  • Unity Analyzer の警告対応
  • GetComponent のキャッシュ(UNT0006)
  • null チェックに == 演算子を使用(UNT0002)
  • Camera.main のキャッシュ(UNT0030)
  • CompareTag の使用(UNT0015)

共有ライブラリ (Game.Shared)

  • Unity/Server 両方で動作することを確認
  • Unity 依存コードが含まれていないことを確認

📖 詳細は CODE_QUALITY_SETUP.md を参照してください。

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 16, 2026

Summary

Summary
Generated on: 04/18/2026 - 10:02:08
Parser: MultiReport (6x OpenCover)
Assemblies: 3
Classes: 188
Files: 230
Line coverage: 28.3% (2878 of 10140)
Covered lines: 2878
Uncovered lines: 7262
Coverable lines: 10140
Total lines: 21861
Branch coverage: 20.9% (593 of 2836)
Covered branches: 593
Total branches: 2836
Method coverage: Feature is only available for sponsors

Coverage

Game.Realtime - 42.5%
Name Line Branch
Game.Realtime 42.5% 51.6%
Game.Realtime.Extensions.RealtimeServiceExtensions 0%
Game.Realtime.Extensions.ServiceContextExtensions 0% 0%
Game.Realtime.Filters.JwtAuthenticationFilter 0% 0%
Game.Realtime.Filters.JwtAuthenticationHubFilter 58.8% 100%
Game.Realtime.Filters.ValidationExceptionFilter 50%
Game.Realtime.Filters.ValidationExceptionHubFilter 50%
Game.Realtime.Hubs.LobbyHub 42% 39.6%
Game.Realtime.Hubs.MatchmakingHub 13.3% 0%
Game.Realtime.Program 0% 0%
Game.Realtime.Services.GameModeConfig 100%
Game.Realtime.Services.GameServerSettings 0%
Game.Realtime.Services.LobbyDataService 99% 85.2%
Game.Realtime.Services.LobbyService 9.8% 0%
Game.Realtime.Services.MatchmakingConfiguration 100%
Game.Realtime.Services.MatchmakingProcessor 73.2% 66.1%
Game.Realtime.Services.MatchmakingQueueService 3.5%
Game.Realtime.Services.MatchmakingService 11.9% 0%
Game.Realtime.Services.UnityServerApiClient 0% 0%
Game.Realtime.Services.UnityServerConfiguration 100%
Game.Realtime.Validation.LobbyValidator 83.7% 87.5%
Game.Realtime.Validation.MatchmakingValidator 100% 100%
Game.Server - 30.7%
Name Line Branch
Game.Server 30.7% 22.5%
Game.Server.Caching.SortedSetEntry 0%
Game.Server.Configuration.AuthSettings 100%
Game.Server.Configuration.ChatSettings 100%
Game.Server.Configuration.DatabaseSettings 0%
Game.Server.Configuration.JwtSettings 100%
Game.Server.Configuration.MasterDataSettings 0%
Game.Server.Configuration.RankingCacheSettings 100%
Game.Server.Configuration.RequestSigningSettings 100%
Game.Server.Configuration.ResendSettings 0%
Game.Server.Configuration.UnityServerSettings 100%
Game.Server.Controllers.AuthController 91.8% 62.5%
Game.Server.Controllers.ChatRoomController 62.9% 42.8%
Game.Server.Controllers.RankingsController 93.7% 75%
Game.Server.Controllers.SurvivorScoresController 89.4% 66.6%
Game.Server.Controllers.UnityServerController 0% 0%
Game.Server.Controllers.UsersController 86.6% 50%
Game.Server.Database.DbConnectionFactory 0% 0%
Game.Server.Database.DbSession 89.1% 70%
Game.Server.Database.DbTransactionScope 100% 100%
Game.Server.Database.MigrationRunnerFactory 43.9% 0%
Game.Server.Database.SchemaVersionTableMetaData 83.3%
Game.Server.Dto.Responses.ApiError 100%
Game.Server.Dto.Responses.Result`2 100% 100%
Game.Server.Extensions.ServiceCollectionExtensions 97.3% 50%
Game.Server.Extensions.UserIdGenerator 50%
Game.Server.Extensions.WebApplicationExtensions 100%
Game.Server.Filters.ChatValidationFilter 100%
Game.Server.Health.PostgresHealthCheck 100%
Game.Server.Hubs.ChatHub 73.6% 50%
Game.Server.Infrastructure.MessagePackInputFormatter 33.3% 0%
Game.Server.Infrastructure.MessagePackOutputFormatter 40% 0%
Game.Server.MasterData.AudioMaster 0%
Game.Server.MasterData.AudioPlayTagsMaster 0%
Game.Server.MasterData.DatabaseBuilder 12.5%
Game.Server.MasterData.ImmutableBuilder 0%
Game.Server.MasterData.MasterMemoryResolver 100% 100%
Game.Server.MasterData.MasterMemoryResolverGetFormatterHelper 59% 18.1%
Game.Server.MasterData.MemoryDatabase 16.4% 1.1%
Game.Server.MasterData.ScoreTimeAttackEnemyMaster 0%
Game.Server.MasterData.ScoreTimeAttackEnemySpawnMaster 0%
Game.Server.MasterData.ScoreTimeAttackPlayerMaster 0%
Game.Server.MasterData.ScoreTimeAttackStageItemMaster 0%
Game.Server.MasterData.ScoreTimeAttackStageItemSpawnMaster 0%
Game.Server.MasterData.ScoreTimeAttackStageMaster 0%
Game.Server.MasterData.ScoreTimeAttackStageTotalResultMaster 0%
Game.Server.MasterData.SurvivorEnemyMaster 0%
Game.Server.MasterData.SurvivorItemDropMaster 0%
Game.Server.MasterData.SurvivorItemMaster 0%
Game.Server.MasterData.SurvivorPlayerLevelMaster 0%
Game.Server.MasterData.SurvivorPlayerMaster 0%
Game.Server.MasterData.SurvivorStageMaster 100%
Game.Server.MasterData.SurvivorStageWaveEnemyMaster 0%
Game.Server.MasterData.SurvivorStageWaveMaster 100%
Game.Server.MasterData.SurvivorWeaponLevelMaster 0%
Game.Server.MasterData.SurvivorWeaponMaster 0%
Game.Server.MasterData.Tables.AudioMasterTable 9.6% 0%
Game.Server.MasterData.Tables.AudioPlayTagsMasterTable 10% 0%
Game.Server.MasterData.Tables.ScoreTimeAttackEnemyMasterTable 6.5% 0%
Game.Server.MasterData.Tables.ScoreTimeAttackEnemySpawnMasterTable 8.9% 0%
Game.Server.MasterData.Tables.ScoreTimeAttackPlayerMasterTable 6.1% 0%
Game.Server.MasterData.Tables.ScoreTimeAttackStageItemMasterTable 9.4% 0%
Game.Server.MasterData.Tables.ScoreTimeAttackStageItemSpawnMasterTable 8.9% 0%
Game.Server.MasterData.Tables.ScoreTimeAttackStageMasterTable 8.9% 0%
Game.Server.MasterData.Tables.ScoreTimeAttackStageTotalResultMasterTable 6.6% 0%
Game.Server.MasterData.Tables.SurvivorEnemyMasterTable 7.6% 0%
Game.Server.MasterData.Tables.SurvivorItemDropMasterTable 9.8% 0%
Game.Server.MasterData.Tables.SurvivorItemMasterTable 8.9% 0%
Game.Server.MasterData.Tables.SurvivorPlayerLevelMasterTable 7.8%
Game.Server.MasterData.Tables.SurvivorPlayerMasterTable 7.1% 0%
Game.Server.MasterData.Tables.SurvivorStageMasterTable 27% 43.7%
Game.Server.MasterData.Tables.SurvivorStageWaveEnemyMasterTable 8.7% 0%
Game.Server.MasterData.Tables.SurvivorStageWaveMasterTable 10.1% 0%
Game.Server.MasterData.Tables.SurvivorWeaponLevelMasterTable 8.1% 0%
Game.Server.MasterData.Tables.SurvivorWeaponMasterTable 9% 0%
Game.Server.Middleware.ExceptionHandlingMiddleware 22.4% 0%
Game.Server.Middleware.RequestSigningMiddleware 52.6% 44.1%
Game.Server.Middleware.RequestSigningPolicy 100% 50%
Game.Server.Middleware.RequestSigningPolicyValidator 41.4% 47.3%
Game.Server.Program 93.2% 90%
Game.Server.Repositories.AuthRepository 84.9%
Game.Server.Repositories.RankingRepository 97.5% 50%
Game.Server.Repositories.SurvivorScoreRepository 61.3% 0%
Game.Server.Repositories.UserRepository 100%
Game.Server.Services.AuthService 96.5% 87.5%
Game.Server.Services.Chat.ChatMessageService 86.7%
Game.Server.Services.Chat.ChatPermissionValidator 100% 100%
Game.Server.Services.Chat.ChatRoomDataService 81.8% 50%
Game.Server.Services.Chat.Exceptions.ChatNotFoundException 100%
Game.Server.Services.Chat.Exceptions.ChatPermissionException 100%
Game.Server.Services.Interfaces.DsInfo 0%
Game.Server.Services.MasterDataService 0% 0%
Game.Server.Services.RankingService 88% 58.3%
Game.Server.Services.ResendEmailService 0%
Game.Server.Services.SurvivorRankingCacheService 50.6%
Game.Server.Services.SurvivorScoreService 100% 100%
Game.Server.Services.UnityServerAuthService 0% 0%
Game.Server.Services.UnityServerRegistryService 0%
Game.Server.Services.UnityServerSessionService 0% 0%
Game.Server.Services.UserService 92.5% 60%
Game.Server.Tables.SurvivorScore 100%
Game.Server.Tables.UserExternalIdentity 0%
Game.Server.Tables.UserInfo 100%
Game.Server.Validation.ChatInputValidator 100% 100%
Game.Server.Validation.PasswordValidator 100% 100%
Game.Server.Validation.SurvivorValidator 94.1% 91.6%
MasterMemory.MasterMemoryGeneratorOptionsAttribute 0%
MessagePack.GeneratedMessagePackResolver 12.9% 7.5%
System.Text.RegularExpressions.Generated 100% 96.1%
Game.Shared - 11.3%
Name Line Branch
Game.Shared 11.3% 3.5%
Game.Library.Shared.Dto.AccountLinkResponse 100%
Game.Library.Shared.Dto.ApiErrorResponse 100%
Game.Library.Shared.Dto.ChatMessage 100%
Game.Library.Shared.Dto.ChatRoomInfo 100%
Game.Library.Shared.Dto.ChatRoomMemberInfo 100%
Game.Library.Shared.Dto.ChatRoomMembersResponse 100%
Game.Library.Shared.Dto.CreateChatRoomRequest 100%
Game.Library.Shared.Dto.CreateChatRoomResponse 100%
Game.Library.Shared.Dto.CreateLobbyRequest 100%
Game.Library.Shared.Dto.CreateLobbyResponse 100%
Game.Library.Shared.Dto.EmailLoginRequest 100%
Game.Library.Shared.Dto.EnemyStateSnapshot 0%
Game.Library.Shared.Dto.ForgotPasswordRequest 100%
Game.Library.Shared.Dto.GameResultSnapshot 0%
Game.Library.Shared.Dto.GuestLoginRequest 100%
Game.Library.Shared.Dto.InviteMemberRequest 100%
Game.Library.Shared.Dto.LinkEmailRequest 100%
Game.Library.Shared.Dto.LobbyInfo 100%
Game.Library.Shared.Dto.LobbyPlayerInfo 100%
Game.Library.Shared.Dto.LoginRequest 100%
Game.Library.Shared.Dto.LoginResponse 100%
Game.Library.Shared.Dto.MasterDataVersionDto 0%
Game.Library.Shared.Dto.MatchmakingRequest 100%
Game.Library.Shared.Dto.MatchmakingResponse 100%
Game.Library.Shared.Dto.MessageResponse 100%
Game.Library.Shared.Dto.PlayerResultSnapshot 0%
Game.Library.Shared.Dto.PlayerStateSnapshot 0%
Game.Library.Shared.Dto.RankingEntryDto 100%
Game.Library.Shared.Dto.RankingResponse 100%
Game.Library.Shared.Dto.RefreshTokenRequest 100%
Game.Library.Shared.Dto.ResetPasswordRequest 100%
Game.Library.Shared.Dto.ScoreSubmitDto 100%
Game.Library.Shared.Dto.SetPermissionsRequest 0%
Game.Library.Shared.Dto.SuccessResponse 100%
Game.Library.Shared.Dto.SurvivorScoreHistoryEntry 100%
Game.Library.Shared.Dto.SurvivorScoreSubmitResponse 100%
Game.Library.Shared.Dto.TransferPasswordResponse 100%
Game.Library.Shared.Dto.UnityServerAuthResponse 75%
Game.Library.Shared.Dto.UnityServerDeregisterRequest 0%
Game.Library.Shared.Dto.UnityServerHealthResponse 0%
Game.Library.Shared.Dto.UnityServerHeartbeatRequest 0%
Game.Library.Shared.Dto.UnityServerRegistrationRequest 0%
Game.Library.Shared.Dto.UnityServerSessionEndedRequest 0%
Game.Library.Shared.Dto.UnityServerSessionRequest 0%
Game.Library.Shared.Dto.UnityServerSessionResponse 0%
Game.Library.Shared.Dto.UpdateUserRequest 100%
Game.Library.Shared.Dto.UserDto 0%
Game.Library.Shared.Dto.UserResponse 100%
Game.Library.Shared.Dto.VerifyEmailRequest 100%
Game.Library.Shared.Dto.WeaponUpgradeOptionSnapshot 0%
Game.Library.Shared.IState 0%
Game.Library.Shared.Realtime.Hubs.MatchResult 100%
Game.Library.Shared.RequestSigning.HmacRequestSigner 88.8% 65%
Game.Library.Shared.RequestSigning.SessionTokenHelper 92.8% 85.7%
Game.Library.Shared.RequestSigning.SessionTokenParseResult 100%
Game.Library.Shared.State`2 0%
Game.Library.Shared.StateMachine`1 0%
Game.Library.Shared.StateMachine`2 0% 0%
MessagePack.GeneratedMessagePackResolver 0% 0%

@reigithub reigithub merged commit c8630de into main Apr 19, 2026
15 checks passed
@reigithub reigithub deleted the feature/performance-test branch April 19, 2026 01:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant