summaryrefslogtreecommitdiff
path: root/src/Agent.Planner/PlannerTask.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Agent.Planner/PlannerTask.cs')
-rw-r--r--src/Agent.Planner/PlannerTask.cs18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/Agent.Planner/PlannerTask.cs b/src/Agent.Planner/PlannerTask.cs
new file mode 100644
index 0000000..edc85c2
--- /dev/null
+++ b/src/Agent.Planner/PlannerTask.cs
@@ -0,0 +1,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);