mirror of
https://github.com/openai/codex.git
synced 2026-10-20 17:38:45 +00:00
## Why Plugin identity and skill ownership need to be available independently of MCP data, including for plugins without servers or connectors. Hosted plugins have no executor root and should not own executor skills. ## What changed - Add `McpServerContributor::selected_plugins` to declare executor plugin identities with deferred MCP data. Let the host assign server attribution and precedence across contributors. - Represent hosted connectors with `HostedPluginConnectors` and make `SelectedPluginIdentity::selected_root_id` optional instead of assigning synthetic roots to hosted plugins. - Resolve executor contributions before reading hosted connectors, and clear stale hosted state on account changes before executor loading can wait. - Preserve connector declarations from disabled plugins so Apps can hide those connectors. ## Testing Add coverage for account changes while executor loading is pending. Update tests to verify hosted identities have no executor root and disabled plugins hide their connectors even when plugin IDs differ from root IDs. GitOrigin-RevId: e7f511264c5874c1b56d5f3e4a46820724046db0