namespace PowderCoating.Core.Entities; /// /// Immutable audit log of every Anthropic API call made on behalf of a tenant. /// Intentionally omits BaseEntity — no soft delete, no UpdatedAt, no per-tenant query filter /// (this is a platform-wide log read by SuperAdmins across all companies). /// public class AiUsageLog { public long Id { get; set; } public int CompanyId { get; set; } public string UserId { get; set; } = string.Empty; /// Which AI feature triggered this call. Use AppConstants.AiFeatures constants. public string Feature { get; set; } = string.Empty; /// True when the AI service returned successfully; false on exception or upstream error. public bool Success { get; set; } = true; /// Approximate input size in characters/bytes — used as a rough token-cost proxy. public int InputLength { get; set; } public DateTime CalledAt { get; set; } public Company? Company { get; set; } }