@@ -1473,19 +1473,17 @@ fn copilot_status(on_path: bool, bin_path: Option<String>, home: Option<&Path>)
14731473 ) ;
14741474
14751475 // 1. plugin list (text — Copilot 1.0.44-2 has no --json).
1476- let plugin_ok = join_or_run_plugin_cli ( plugin_handle, "copilot" , & [ "plugin" , "list" ] )
1476+ let plugin_presence = join_or_run_plugin_cli ( plugin_handle, "copilot" , & [ "plugin" , "list" ] )
14771477 . filter ( |o| o. success )
14781478 . map ( |o| parse_copilot_plugin_list ( & o. stdout ) ) ;
14791479 // 2. marketplace list (text).
14801480 let mkt_ok = join_or_run_plugin_cli ( mkt_handle, "copilot" , & [ "plugin" , "marketplace" , "list" ] )
14811481 . filter ( |o| o. success )
14821482 . map ( |o| parse_copilot_marketplace_list ( & o. stdout ) ) ;
14831483
1484- if let ( Some ( p) , Some ( m) ) = ( plugin_ok, mkt_ok) {
1485- out. plugin_installed = p;
1486- // Copilot's `plugin list` doesn't expose enabled/disabled, so
1487- // "listed" implies enabled. Disabling a plugin removes it.
1488- out. plugin_enabled = p;
1484+ if let ( Some ( p) , Some ( m) ) = ( plugin_presence, mkt_ok) {
1485+ out. plugin_installed = p. installed ;
1486+ out. plugin_enabled = p. enabled ;
14891487 out. marketplace_registered = m;
14901488 } else {
14911489 copilot_fs_fallback ( & mut out, home) ;
0 commit comments