summaryrefslogtreecommitdiff
path: root/src/Agent.Planner/PlannerTask.cs
blob: edc85c245a8dff61de172eb4ab47dc470ba42159 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
namespace Agent.Planner;

public sealed record PlannerTask(
    Guid Id,
    string Description,
    IReadOnlySet<Guid> Dependencies,
    PlannerTaskState State,
    TokenBudgetClass BudgetClass,
    TokenEstimate Estimate,
    long ActualInputTokens,
    long ActualOutputTokens,
    bool RequiresExternalEffect)
{
    public double ExpectedTokens => Estimate.ExpectedTokens;
    public long ActualTotalTokens => checked(ActualInputTokens + ActualOutputTokens);
}

public sealed record CriticalPathResult(IReadOnlyList<Guid> TaskIds, double CumulativeTokenCost);