namespace Codex.Dal.Entities; /// /// Represents a conversation grouping multiple messages together. /// Provides conversation-level metadata and tracking. /// public class Conversation { /// /// Unique identifier for the conversation /// public Guid Id { get; set; } /// /// Title or summary of the conversation (can be auto-generated from first message) /// public string Title { get; set; } = string.Empty; /// /// Brief summary of the conversation topic or purpose /// public string? Summary { get; set; } /// /// When the conversation was started /// public DateTime StartedAt { get; set; } = DateTime.UtcNow; /// /// When the last message was added to this conversation /// public DateTime LastMessageAt { get; set; } = DateTime.UtcNow; /// /// Whether this conversation is currently active /// public bool IsActive { get; set; } = true; /// /// Total number of messages in this conversation /// public int MessageCount { get; set; } = 0; // Navigation properties /// /// All messages in this conversation /// public ICollection Messages { get; set; } = new List(); /// /// Agent executions that are part of this conversation /// public ICollection Executions { get; set; } = new List(); }