fix: make status info structs public and add missing imports

Co-authored-by: aider (openai/andrew/openrouter/qwen/qwen3-coder) <aider@aider.chat>
This commit is contained in:
Andrew Phillips
2025-08-10 23:00:24 -03:00
parent 7ed3291e97
commit bb28b4f41a
2 changed files with 35 additions and 5 deletions

View File

@@ -29,6 +29,7 @@ use crate::modes::status::{PathInfo, CompressionInfo, MetaPluginInfo, StatusInfo
use crate::compression_engine::{CompressionType as CompressionTypeEnum, COMPRESSION_PROGRAMS}; use crate::compression_engine::{CompressionType as CompressionTypeEnum, COMPRESSION_PROGRAMS};
use crate::compression_engine::program::CompressionEngineProgram; use crate::compression_engine::program::CompressionEngineProgram;
use crate::meta_plugin::{MetaPluginType, get_meta_plugin}; use crate::meta_plugin::{MetaPluginType, get_meta_plugin};
use strum::IntoEnumIterator;
#[derive(Debug, Clone)] #[derive(Debug, Clone)]
pub struct ServerConfig { pub struct ServerConfig {
@@ -197,7 +198,10 @@ async fn handle_status(
// Create dummy command and args for compatibility with status mode functions // Create dummy command and args for compatibility with status mode functions
let mut cmd = Command::new("keep"); let mut cmd = Command::new("keep");
let args = Args::default(); // This will need to be properly initialized let args = crate::Args {
mode: crate::Mode::Status { output_format: None },
options: Default::default(),
};
// Determine which meta plugins would be enabled for a save operation // Determine which meta plugins would be enabled for a save operation
let mut meta_plugin_types: Vec<MetaPluginType> = vec![]; // Empty for now, could be extended let mut meta_plugin_types: Vec<MetaPluginType> = vec![]; // Empty for now, could be extended

View File

@@ -281,10 +281,36 @@ fn show_status_structured(
} }
#[derive(Serialize, Deserialize)] #[derive(Serialize, Deserialize)]
struct StatusInfo { pub struct StatusInfo {
paths: PathInfo, pub paths: PathInfo,
compression: Vec<CompressionInfo>, pub compression: Vec<CompressionInfo>,
meta_plugins: Vec<MetaPluginInfo>, pub meta_plugins: Vec<MetaPluginInfo>,
}
#[derive(Serialize, Deserialize)]
pub struct PathInfo {
pub data: String,
pub database: String,
}
#[derive(Serialize, Deserialize)]
pub struct CompressionInfo {
#[serde(rename = "type")]
pub compression_type: String,
pub found: bool,
pub default: bool,
pub binary: String,
pub compress: String,
pub decompress: String,
}
#[derive(Serialize, Deserialize)]
pub struct MetaPluginInfo {
pub meta_name: String,
pub found: bool,
pub enabled: bool,
pub binary: String,
pub args: String,
} }