(home: &Path)
| 800 | } |
| 801 | |
| 802 | fn uninstall_codex_plugin(home: &Path) -> Result<()> { |
| 803 | let profile_root = crate::automation::skill_targets::profile_root_for_agent_home(home); |
| 804 | for install_dir in codex_plugin_cached_install_dirs(home) { |
| 805 | crate::automation::memory_digest::remove_memory_digest_export( |
| 806 | &profile_root, |
| 807 | crate::automation::skill_targets::SkillInstallTarget::Codex, |
| 808 | &install_dir, |
| 809 | )?; |
| 810 | remove_codex_plugin_bootstrap_source(&install_dir)?; |
| 811 | } |
| 812 | let install_dir = codex_plugin_install_dir(home); |
| 813 | crate::automation::memory_digest::remove_memory_digest_export( |
| 814 | &profile_root, |
| 815 | crate::automation::skill_targets::SkillInstallTarget::Codex, |
| 816 | &install_dir, |
| 817 | )?; |
| 818 | remove_codex_plugin_bootstrap_source(&install_dir)?; |
| 819 | remove_codex_marketplace_entry(home)?; |
| 820 | Ok(()) |
| 821 | } |
| 822 | |
| 823 | fn uninstall_codex_repo_plugin_if_present(ctx: &InstallContext) -> Result<()> { |
| 824 | let Some(project_path) = codex_update_project_path(ctx) else { |
no test coverage detected