diff --git a/codex-rs/core/src/features.rs b/codex-rs/core/src/features.rs index 976cad0f94..5b0b78d0bd 100644 --- a/codex-rs/core/src/features.rs +++ b/codex-rs/core/src/features.rs @@ -498,7 +498,7 @@ pub const FEATURES: &[FeatureSpec] = &[ FeatureSpec { id: Feature::RemoteModels, key: "remote_models", - stage: Stage::UnderDevelopment, + stage: Stage::Stable, default_enabled: true, }, FeatureSpec { @@ -633,3 +633,23 @@ pub fn maybe_push_unstable_features_warning( msg: EventMsg::Warning(WarningEvent { message }), }); } + +#[cfg(test)] +mod tests { + use super::*; + + use pretty_assertions::assert_eq; + + #[test] + fn under_development_features_are_disabled_by_default() { + for spec in FEATURES { + if matches!(spec.stage, Stage::UnderDevelopment) { + assert_eq!( + spec.default_enabled, false, + "feature `{}` is under development and must be disabled by default", + spec.key + ); + } + } + } +} diff --git a/codex-rs/default.nix b/codex-rs/default.nix index 8ad019a1de..c9586128e6 100644 --- a/codex-rs/default.nix +++ b/codex-rs/default.nix @@ -1,4 +1,6 @@ { + cmake, + llvmPackages, openssl, rustPlatform, pkg-config, @@ -15,8 +17,11 @@ rustPlatform.buildRustPackage (_: { doCheck = false; src = ./.; nativeBuildInputs = [ - pkg-config + cmake + llvmPackages.clang + llvmPackages.libclang.lib openssl + pkg-config ]; cargoLock.outputHashes = { @@ -25,8 +30,8 @@ rustPlatform.buildRustPackage (_: { "nucleo-0.5.0" = "sha256-Hm4SxtTSBrcWpXrtSqeO0TACbUxq3gizg1zD/6Yw/sI="; "nucleo-matcher-0.3.1" = "sha256-Hm4SxtTSBrcWpXrtSqeO0TACbUxq3gizg1zD/6Yw/sI="; "runfiles-0.1.0" = "sha256-uJpVLcQh8wWZA3GPv9D8Nt43EOirajfDJ7eq/FB+tek="; - "tokio-tungstenite-0.28.0" = "sha256-vJZ3S41gHtRt4UAODsjAoSCaTksgzCALiBmbWgyDCi8="; - "tungstenite-0.28.0" = "sha256-CyXZp58zGlUhEor7WItjQoS499IoSP55uWqr++ia+0A="; + "tokio-tungstenite-0.28.0" = "sha256-hJAkvWxDjB9A9GqansahWhTmj/ekcelslLUTtwqI7lw="; + "tungstenite-0.27.0" = "sha256-AN5wql2X2yJnQ7lnDxpljNw0Jua40GtmT+w3wjER010="; }; meta = with lib; {