mirror of
https://github.com/pchuan98/codex.git
synced 2026-07-01 00:31:56 +08:00
a34da3b295
Summary\n- Await endpoint recommendation selection while constructing each authenticated turn, removing the first-turn cache race.\n- Snapshot and filter endpoint candidates once per turn, then use that same set for the bounded contextual user fragment, tool exposure, and exact install validation.\n- Keep recommendation selection ephemeral: do not persist recommendation state in or gate resumed threads on prior context.\n- Hide the legacy list tool in endpoint mode and preserve legacy discovery unchanged when the endpoint is disabled or unavailable.\n- Keep remote plugin and connector app identities out of model-visible context and attach them only to Codex-owned elicitation metadata.\n\nStack\n- 3/4, based on #28400.\n- Endpoint client and cache: #28399.\n- Generalized suggestion presentation: #28400.\n- Install-schema follow-up: #28403.\n\nValidation\n- \n- \n- \n- \n- Full : 2,649 passed and 88 environment-dependent tests failed because this sandbox cannot write , nest Seatbelt, or locate auxiliary test binaries.
60 lines
2.2 KiB
Rust
60 lines
2.2 KiB
Rust
mod app_mcp_routing;
|
|
mod discoverable;
|
|
pub mod installed_marketplaces;
|
|
pub mod loader;
|
|
mod manager;
|
|
pub mod manifest;
|
|
pub mod marketplace;
|
|
pub mod marketplace_add;
|
|
pub mod marketplace_remove;
|
|
pub mod marketplace_upgrade;
|
|
mod plugin_bundle_archive;
|
|
mod provider;
|
|
pub mod remote;
|
|
pub mod remote_bundle;
|
|
pub mod remote_legacy;
|
|
pub mod startup_sync;
|
|
pub mod store;
|
|
#[cfg(test)]
|
|
mod test_support;
|
|
pub mod toggles;
|
|
|
|
pub const OPENAI_CURATED_MARKETPLACE_NAME: &str = "openai-curated";
|
|
pub const OPENAI_API_CURATED_MARKETPLACE_NAME: &str = "openai-api-curated";
|
|
pub const OPENAI_BUNDLED_MARKETPLACE_NAME: &str = "openai-bundled";
|
|
|
|
pub fn is_openai_curated_marketplace_name(marketplace_name: &str) -> bool {
|
|
marketplace_name == OPENAI_CURATED_MARKETPLACE_NAME
|
|
|| marketplace_name == OPENAI_API_CURATED_MARKETPLACE_NAME
|
|
}
|
|
|
|
pub type LoadedPlugin = codex_plugin::LoadedPlugin<codex_config::McpServerConfig>;
|
|
pub type PluginLoadOutcome = codex_plugin::PluginLoadOutcome<codex_config::McpServerConfig>;
|
|
|
|
pub use app_mcp_routing::apps_route_available;
|
|
pub use discoverable::ToolSuggestDiscoverablePlugin;
|
|
pub use discoverable::ToolSuggestPluginDiscoveryInput;
|
|
pub use loader::PluginHookLoadOutcome;
|
|
pub use manager::ConfiguredMarketplace;
|
|
pub use manager::ConfiguredMarketplaceListOutcome;
|
|
pub use manager::ConfiguredMarketplacePlugin;
|
|
pub use manager::PluginDetail;
|
|
pub use manager::PluginDetailsUnavailableReason;
|
|
pub use manager::PluginInstallError;
|
|
pub use manager::PluginInstallOutcome;
|
|
pub use manager::PluginInstallRequest;
|
|
pub use manager::PluginListBackgroundTaskOptions;
|
|
pub use manager::PluginReadOutcome;
|
|
pub use manager::PluginReadRequest;
|
|
pub use manager::PluginUninstallError;
|
|
pub use manager::PluginsConfigInput;
|
|
pub use manager::PluginsManager;
|
|
pub use manager::RecommendedPluginCandidatesInput;
|
|
pub use marketplace_upgrade::ConfiguredMarketplaceUpgradeError as PluginMarketplaceUpgradeError;
|
|
pub use marketplace_upgrade::ConfiguredMarketplaceUpgradeOutcome as PluginMarketplaceUpgradeOutcome;
|
|
pub use provider::ExecutorPluginProvider;
|
|
pub use provider::ExecutorPluginProviderError;
|
|
pub use provider::ResolvedExecutorPlugin;
|
|
pub use remote::RecommendedPlugin;
|
|
pub use remote::RecommendedPluginsMode;
|