Skip to main content

roboticus_core/
composition.rs

1//! Composition domain types shared across crates.
2
3/// Structured result of composing a subagent, including validation outcomes.
4#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
5pub struct CompositionResult {
6    pub agent_name: String,
7    pub validated_skills: Vec<String>,
8    pub missing_skills: Vec<String>,
9    pub auto_created_skills: Vec<String>,
10    pub warnings: Vec<String>,
11}
12
13impl CompositionResult {
14    /// Returns true if all requested skills were validated (none missing).
15    pub fn is_complete(&self) -> bool {
16        self.missing_skills.is_empty()
17    }
18}