namespace NeonSprawl.Server.Game.Gathering; /// /// Server-internal gather resolution envelope (NEO-62). May promote to wire JSON when the client needs explicit /// gather payloads; until then prototype verification uses inventory GET + interact response (NEO-63). /// NEO-64 telemetry hook sites live in . /// /// Item grants on success; empty when denied. /// Authoritative capacity after success, or current capacity on depletion deny. /// Skill XP applied on success; null when denied. public readonly record struct GatherResult( bool Success, string? ReasonCode, IReadOnlyList GrantsApplied, int? RemainingGathers, GatherXpGrantSummary? XpGrantSummary);