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 . /// is item grants on success; empty when denied. /// is authoritative capacity after success, or current capacity on depletion deny. /// is skill XP applied on success; null when denied. /// public readonly record struct GatherResult( bool Success, string? ReasonCode, IReadOnlyList GrantsApplied, int? RemainingGathers, GatherXpGrantSummary? XpGrantSummary);