diff --git a/Cargo.toml b/Cargo.toml index 6a6bc78..a096827 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -95,7 +95,7 @@ http-body-util = "0.1" # OpenTelemetry — OTLP trace + metrics export opentelemetry = { version = "0.31", default-features = false, features = ["trace", "metrics"] } opentelemetry_sdk = { version = "0.31", default-features = false, features = ["trace", "metrics"] } -opentelemetry-otlp = { version = "0.31", default-features = false, features = ["trace", "metrics", "http-proto", "reqwest-blocking-client"] } +opentelemetry-otlp = { version = "0.31", default-features = false, features = ["trace", "metrics", "http-proto", "reqwest-client", "reqwest-rustls-webpki-roots"] } [features] default = [] diff --git a/README.md b/README.md index 40dfc6a..1faf4eb 100644 --- a/README.md +++ b/README.md @@ -67,8 +67,8 @@ ls -lh target/release/zeroclaw ```bash git clone https://github.com/zeroclaw-labs/zeroclaw.git cd zeroclaw -cargo build --release -cargo install --path . --force +cargo build --release --locked +cargo install --path . --force --locked # Quick setup (no prompts) zeroclaw onboard --api-key sk-... --provider openrouter @@ -474,6 +474,18 @@ A git hook runs `cargo fmt --check`, `cargo clippy -- -D warnings`, and `cargo t git config core.hooksPath .githooks ``` +### Build troubleshooting (Linux OpenSSL errors) + +If you see an `openssl-sys` build error, sync dependencies and rebuild with the repository lockfile: + +```bash +git pull +cargo build --release --locked +cargo install --path . --force --locked +``` + +ZeroClaw is configured to use `rustls` for HTTP/TLS dependencies; `--locked` keeps the transitive graph deterministic on fresh environments. + To skip the hook when you need a quick push during development: ```bash diff --git a/src/channels/mod.rs b/src/channels/mod.rs index be012fc..5e8dbcd 100644 --- a/src/channels/mod.rs +++ b/src/channels/mod.rs @@ -52,7 +52,6 @@ const CHANNEL_MAX_IN_FLIGHT_MESSAGES: usize = 64; struct ChannelRuntimeContext { channels_by_name: Arc>>, provider: Arc, - provider_name: Arc, memory: Arc, tools_registry: Arc>>, observer: Arc, @@ -188,7 +187,7 @@ async fn process_channel_message(ctx: Arc, msg: traits::C &mut history, ctx.tools_registry.as_ref(), ctx.observer.as_ref(), - "channels", + "channel-runtime", ctx.model.as_str(), ctx.temperature, ), @@ -969,7 +968,6 @@ pub async fn start_channels(config: Config) -> Result<()> { let runtime_ctx = Arc::new(ChannelRuntimeContext { channels_by_name, provider: Arc::clone(&provider), - provider_name: Arc::new(provider_name), memory: Arc::clone(&mem), tools_registry: Arc::clone(&tools_registry), observer, @@ -1162,7 +1160,6 @@ mod tests { let runtime_ctx = Arc::new(ChannelRuntimeContext { channels_by_name: Arc::new(channels_by_name), provider: Arc::new(ToolCallingProvider), - provider_name: Arc::new("openrouter".to_string()), memory: Arc::new(NoopMemory), tools_registry: Arc::new(vec![Box::new(MockPriceTool)]), observer: Arc::new(NoopObserver), @@ -1253,7 +1250,6 @@ mod tests { provider: Arc::new(SlowProvider { delay: Duration::from_millis(250), }), - provider_name: Arc::new("openrouter".to_string()), memory: Arc::new(NoopMemory), tools_registry: Arc::new(vec![]), observer: Arc::new(NoopObserver),