Remove extension from the installed list in project config. Args: extension_id: ID of extension to unregister
(self, extension_id: str)
| 3013 | self.save_project_config(config) |
| 3014 | |
| 3015 | def unregister_extension(self, extension_id: str): |
| 3016 | """Remove extension from the installed list in project config. |
| 3017 | |
| 3018 | Args: |
| 3019 | extension_id: ID of extension to unregister |
| 3020 | """ |
| 3021 | config = self.get_project_config() |
| 3022 | |
| 3023 | if not isinstance(config, dict): |
| 3024 | config = {} |
| 3025 | |
| 3026 | raw_installed = config.get("installed") |
| 3027 | sanitized = self._sanitize_installed_list(raw_installed, remove_id=extension_id) |
| 3028 | |
| 3029 | # Always persist if sanitized state differs from raw config (ensures normalization) |
| 3030 | if sanitized != raw_installed: |
| 3031 | config["installed"] = sanitized |
| 3032 | self.save_project_config(config) |
| 3033 | |
| 3034 | @staticmethod |
| 3035 | def _sanitize_installed_list( |