fix: correctly display meta plugin implementation status in status mode

Co-authored-by: aider (openai/andrew.openrouter.qwen.qwen3-coder) <aider@aider.chat>
This commit is contained in:
Andrew Phillips
2025-07-29 11:42:37 -03:00
parent ffb3c8c8c6
commit 632184221b

View File

@@ -137,9 +137,27 @@ fn build_meta_plugin_table() -> Table {
let is_default = meta_plugin_type == default_type; let is_default = meta_plugin_type == default_type;
// Get program info for display purposes // Get program info for display purposes
let meta_plugin_program: MetaPluginProgram = match &META_PLUGIN_PROGRAMS[meta_plugin_type.clone()] { let meta_plugin_program: Option<MetaPluginProgram> = META_PLUGIN_PROGRAMS[meta_plugin_type.clone()].clone();
Some(meta_plugin_program) => meta_plugin_program.clone(),
None => MetaPluginProgram::new("", vec![], "".to_string(), false), // Determine what implementation will actually be used
let (binary_display, args_display) = match meta_plugin_type {
// For internal plugins, always show as internal
MetaPluginType::DigestSha256 | MetaPluginType::ReadTime | MetaPluginType::ReadRate => {
("<INTERNAL>".to_string(), "".to_string())
},
// For program-based plugins, show program info if supported, otherwise show as not found
_ => {
match &meta_plugin_program {
Some(program) => {
if program.supported {
(program.program.clone(), program.args.join(" "))
} else {
("<NOT FOUND>".to_string(), "".to_string())
}
},
None => ("<INTERNAL>".to_string(), "".to_string()),
}
}
}; };
meta_plugin_table.add_row(Row::new(vec![ meta_plugin_table.add_row(Row::new(vec![
@@ -152,13 +170,8 @@ fn build_meta_plugin_table() -> Table {
true => Cell::new("Yes").with_style(Attr::ForegroundColor(color::GREEN)), true => Cell::new("Yes").with_style(Attr::ForegroundColor(color::GREEN)),
false => Cell::new("No"), false => Cell::new("No"),
}, },
match meta_plugin_program.program.is_empty() && is_supported { Cell::new(&binary_display),
true => { Cell::new(&args_display),
Cell::new("<INTERNAL>").with_style(Attr::ForegroundColor(color::BRIGHT_BLACK))
}
false => Cell::new(&meta_plugin_program.program),
},
Cell::new(&meta_plugin_program.args.join(" ")),
Cell::new(&meta_plugin.meta_name()), Cell::new(&meta_plugin.meta_name()),
])); ]));
} }