//! Configuration for doc-lifecycle VAPORA adapter use serde::{Deserialize, Serialize}; use std::path::PathBuf; /// Plugin configuration #[derive(Debug, Clone, Serialize, Deserialize)] pub struct PluginConfig { /// Enable doc-lifecycle plugin pub enabled: bool, /// Root directory for documentation pub docs_root: PathBuf, /// Mode: minimal, standard, or full pub mode: String, /// Classify on task completion pub auto_classify: bool, /// Consolidate duplicates automatically pub auto_consolidate: bool, /// Generate RAG index pub generate_rag_index: bool, /// Generate mdBook site pub generate_mdbook: bool, /// Language for documentation pub language: String, /// NATS subject for task events pub nats_subject: String, /// SurrealDB connection string pub surreal_url: String, } impl Default for PluginConfig { fn default() -> Self { Self { enabled: true, docs_root: PathBuf::from("docs"), mode: "standard".to_string(), auto_classify: true, auto_consolidate: true, generate_rag_index: true, generate_mdbook: true, language: "en".to_string(), nats_subject: "vapora.tasks.completed".to_string(), surreal_url: "surreal://localhost:8000".to_string(), } } }