- Replace GuildNotification TODO stub in MyPageController.Index with BuildGuildNotificationAsync: populates guild_id, guild_room_message_id, is_join_request, is_invited from real DB state. - Inject IGuildService, IGuildInviteRepository, IGuildJoinRequestRepository, IGuildChatMessageRepository into MyPageController. - Add GetMaxMessageIdSafelyAsync to IGuildChatMessageRepository (returns null when no messages exist, vs GetMaxMessageIdAsync which returns 0). - LoadDetail.cs audit: grep returned no guild fields — no LoadController changes. - Add GuildCrossSurfaceTests (4 tests): guild member, pending invite, pending join request, no-guild viewer all verified green. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2.1 KiB
2.1 KiB