namespace ControlCenter.Api.Models;

/// <summary>
/// Read-only model representing an agent's current state.
/// Used as the return type from the Agent State Repository
/// to decouple consumers from the persistence layer.
/// </summary>
public class AgentState
{
    public Guid Id { get; set; }
    public string Status { get; set; } = string.Empty;
    public string? Task { get; set; }
    public int? Progress { get; set; }
    public string SessionKey { get; set; } = string.Empty;
    public string Channel { get; set; } = string.Empty;
    public DateTime LastActivity { get; set; }
    public DateTime CreatedAt { get; set; }
    public DateTime UpdatedAt { get; set; }
}