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}