namespace NeonSprawl.Server.Game.Mastery;
/// Internal event when a perk becomes unlocked (NEO-47; NEO-49 telemetry).
public enum PerkUnlockSource
{
BranchPick,
LevelUp,
}
/// Chosen branch when relevant; null for edge cases without a branch context.
public sealed record PerkUnlockEvent(
string PlayerId,
string PerkId,
string SkillId,
int TierIndex,
string? BranchId,
PerkUnlockSource Source);