From 14473c216ff7bae23951860840c7d68105507657 Mon Sep 17 00:00:00 2001 From: Abhinav Date: Wed, 13 May 2026 14:10:28 -0700 Subject: [PATCH] Enable plugin hooks by default (#22549) # Why Plugin-bundled hooks are already wired through the plugin manager, session setup, and app-server hook listing paths. Keeping `plugin_hooks` disabled by default means users still need an explicit feature opt-in before that existing behavior participates in normal plugin loading. # What - mark `plugin_hooks` as stable and enable it by default - add feature-registry test coverage for the new default/stage pairing Validation: - `cargo test -p codex-features` - `just fmt` --- codex-rs/features/src/lib.rs | 4 ++-- codex-rs/features/src/tests.rs | 6 ++++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/codex-rs/features/src/lib.rs b/codex-rs/features/src/lib.rs index c0a7a8a54..d8a0a598e 100644 --- a/codex-rs/features/src/lib.rs +++ b/codex-rs/features/src/lib.rs @@ -975,8 +975,8 @@ pub const FEATURES: &[FeatureSpec] = &[ FeatureSpec { id: Feature::PluginHooks, key: "plugin_hooks", - stage: Stage::UnderDevelopment, - default_enabled: false, + stage: Stage::Stable, + default_enabled: true, }, FeatureSpec { id: Feature::InAppBrowser, diff --git a/codex-rs/features/src/tests.rs b/codex-rs/features/src/tests.rs index 04e236f5e..2b10f8336 100644 --- a/codex-rs/features/src/tests.rs +++ b/codex-rs/features/src/tests.rs @@ -183,6 +183,12 @@ fn tool_search_is_stable_and_enabled_by_default() { assert_eq!(Feature::ToolSearch.default_enabled(), true); } +#[test] +fn plugin_hooks_are_stable_and_enabled_by_default() { + assert_eq!(Feature::PluginHooks.stage(), Stage::Stable); + assert_eq!(Feature::PluginHooks.default_enabled(), true); +} + #[test] fn browser_controls_are_stable_and_enabled_by_default() { assert_eq!(Feature::InAppBrowser.stage(), Stage::Stable);