Chapter 15: Orchestration and Agents
Contract:
apr-book-ch15
Run: cargo run -p aprender-core --example ch15_orchestrate
#![allow(clippy::disallowed_methods)]
//! Chapter 15: Orchestration and Agents
//!
//! Demonstrates pipeline DAG and agent architecture contracts.
//! Citation: Yao et al., "ReAct," arXiv:2210.03629
//! Contract: contracts/apr-book-ch15-v1.yaml
fn main() {
// Pipeline stages contract
let stages = [
"apr import",
"apr validate",
"apr oracle",
"apr convert",
"apr qa",
"apr serve",
];
println!("Pipeline stages ({} steps):", stages.len());
for (i, stage) in stages.iter().enumerate() {
println!(" {}. {stage}", i + 1);
}
assert_eq!(stages.len(), 6, "Pipeline has exactly 6 stages");
// DAG dependency contract
// Each stage depends on the previous one
println!("\nDAG contract: strictly sequential (no cycles)");
for i in 1..stages.len() {
println!(" {} -> {}", stages[i - 1], stages[i]);
}
// ReAct agent loop (Yao et al., 2022)
println!("\nReAct agent loop:");
println!(" Thought -> Action -> Observation -> repeat");
println!(" Action space: apr CLI subcommands");
// Oracle-guided model selection
println!("\nOracle consultation protocol:");
println!(" apr oracle --family <family> --explain --stats");
println!(" Validates architecture claims against known contracts");
// Fail-fast contract
println!("\nFail-fast contract:");
println!(" Pipeline aborts on first contract violation");
println!(" No partial deployments allowed");
println!("\nChapter 15 contracts: PASSED");
}