Task 3: service contract (interface + DTOs) and FriendService skeleton. All methods throw NotImplementedException; Tasks 4-6 fill in the logic. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
12 lines
475 B
C#
12 lines
475 B
C#
namespace SVSim.Database.Services.Friend;
|
|
|
|
/// <summary>
|
|
/// Records a recent-opponent entry on the owner viewer. Upserts the (owner, opponent)
|
|
/// row to PlayedAt = now, enforces a 50-row per-viewer retention cap by deleting the
|
|
/// owner's oldest row when at cap. No-op if owner equals opponent.
|
|
/// </summary>
|
|
public interface IPlayedTogetherWriter
|
|
{
|
|
Task RecordAsync(long ownerViewerId, long opponentViewerId, BattleParticipationContext ctx, CancellationToken ct);
|
|
}
|