mirror of
https://github.com/openai/codex.git
synced 2026-10-20 17:38:45 +00:00
## What changed - Move `Provider` and `RetryConfig` into `codex-client`, retaining re-exports from `codex-api`, and switch `codex-model-provider-info` to depend on `codex-client`. - Move feature-state metric emission into `codex-core`, preserving its behavior while removing the `codex-features` dependency on `codex-otel`. - Explicitly enable TLS features for `tonic` in `codex-config` and `reqwest` in `codex-http-client`. - Enable `png`'s `zlib-rs` feature directly in `codex-utils-image` to keep encoded PNG bytes stable when WebSocket dependencies are absent. GitOrigin-RevId: 91fd63ab01b55d516b3e80e3644d06af8d5a01f6
27 lines
840 B
Rust
27 lines
840 B
Rust
//! Metrics derived from loaded configuration at session start.
|
|
|
|
use super::Config;
|
|
use codex_features::FEATURES;
|
|
use codex_features::Stage;
|
|
use codex_otel::SessionTelemetry;
|
|
|
|
pub(crate) fn emit_session_start_metrics(config: &Config, telemetry: &SessionTelemetry) {
|
|
for feature in FEATURES {
|
|
if matches!(feature.stage, Stage::Removed) {
|
|
continue;
|
|
}
|
|
if config.features.enabled(feature.id) != feature.default_enabled {
|
|
telemetry.counter(
|
|
"codex.feature.state",
|
|
/*inc*/ 1,
|
|
&[
|
|
("feature", feature.key),
|
|
("value", &config.features.enabled(feature.id).to_string()),
|
|
],
|
|
);
|
|
}
|
|
}
|
|
#[cfg(windows)]
|
|
crate::windows_system_config::emit_namespace_squatting_probe();
|
|
}
|