Automation
This commit is contained in:
parent
b12a673078
commit
e45a8063e3
6 changed files with 1022 additions and 4 deletions
24
src/task.rs
24
src/task.rs
|
|
@ -2,7 +2,8 @@ use chrono::{DateTime, Utc};
|
|||
use serde::{Deserialize, Serialize};
|
||||
use uuid::Uuid;
|
||||
|
||||
use crate::enums::{TaskResultType, TaskStatus};
|
||||
use crate::agents::AgentType;
|
||||
use crate::enums::{TaskResultType, TaskStatus, TestStrategy};
|
||||
use crate::todo::ToDo;
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
|
|
@ -146,6 +147,10 @@ pub struct TestCase {
|
|||
pub name: String,
|
||||
pub command: String,
|
||||
pub expected_output: Option<String>,
|
||||
#[serde(default)]
|
||||
pub test_strategy: Option<TestStrategy>,
|
||||
#[serde(default)]
|
||||
pub suggested_test_files: Vec<String>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
|
|
@ -156,6 +161,12 @@ pub struct ResourceLimits {
|
|||
pub timeout_seconds: u64,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct SessionBudget {
|
||||
pub max_tool_calls: u32,
|
||||
pub max_tokens: u32,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct FileRange {
|
||||
pub path: String,
|
||||
|
|
@ -177,6 +188,12 @@ pub struct AgentTaskSpec {
|
|||
pub token_budget: usize,
|
||||
pub resource_limits: ResourceLimits,
|
||||
pub parent_task_id: Option<Uuid>,
|
||||
pub pre_approved_plan_id: Option<Uuid>,
|
||||
pub execution_token: Option<Uuid>,
|
||||
pub session_budget: Option<SessionBudget>,
|
||||
pub agent_type: Option<AgentType>,
|
||||
#[serde(default)]
|
||||
pub suggested_test_files: Vec<String>,
|
||||
}
|
||||
|
||||
impl AgentTaskSpec {
|
||||
|
|
@ -199,6 +216,11 @@ impl AgentTaskSpec {
|
|||
timeout_seconds: 3600, // 1 hour
|
||||
},
|
||||
parent_task_id: None,
|
||||
pre_approved_plan_id: None,
|
||||
execution_token: None,
|
||||
session_budget: None,
|
||||
agent_type: None,
|
||||
suggested_test_files: Vec::new(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue