oris_agent_contract/
lib.rs1use serde::{Deserialize, Serialize};
4
5#[derive(Clone, Debug, Serialize, Deserialize)]
6pub enum AgentCapabilityLevel {
7 A0,
8 A1,
9 A2,
10 A3,
11 A4,
12}
13
14#[derive(Clone, Debug, Serialize, Deserialize)]
15pub enum ProposalTarget {
16 WorkspaceRoot,
17 Paths(Vec<String>),
18}
19
20#[derive(Clone, Debug, Serialize, Deserialize)]
21pub struct AgentTask {
22 pub id: String,
23 pub description: String,
24}
25
26#[derive(Clone, Debug, Serialize, Deserialize)]
27pub struct MutationProposal {
28 pub intent: String,
29 pub files: Vec<String>,
30 pub expected_effect: String,
31}
32
33#[derive(Clone, Debug, Serialize, Deserialize)]
34pub struct ExecutionFeedback {
35 pub accepted: bool,
36 pub asset_state: Option<String>,
37 pub summary: String,
38}