[INFO] fetching crate zoey-core 0.1.1...
[INFO] testing zoey-core-0.1.1 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate zoey-core 0.1.1 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate zoey-core 0.1.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate zoey-core 0.1.1
[INFO] tweaked toml for crates.io crate zoey-core 0.1.1 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate zoey-core 0.1.1 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate zoey-core 0.1.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ordered-float v4.6.0
[INFO] [stderr]   Downloaded opentelemetry v0.22.0
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.55
[INFO] [stderr]   Downloaded time-core v0.1.6
[INFO] [stderr]   Downloaded rustls-native-certs v0.8.2
[INFO] [stderr]   Downloaded postscript v0.14.1
[INFO] [stderr]   Downloaded adobe-cmap-parser v0.4.1
[INFO] [stderr]   Downloaded hyper-timeout v0.4.1
[INFO] [stderr]   Downloaded socket2 v0.6.1
[INFO] [stderr]   Downloaded rustls-pki-types v1.13.0
[INFO] [stderr]   Downloaded type1-encoding-parser v0.1.0
[INFO] [stderr]   Downloaded time-macros v0.2.24
[INFO] [stderr]   Downloaded deranged v0.5.5
[INFO] [stderr]   Downloaded opentelemetry-otlp v0.16.0
[INFO] [stderr]   Downloaded prost v0.12.6
[INFO] [stderr]   Downloaded tracing-opentelemetry v0.23.0
[INFO] [stderr]   Downloaded cc v1.2.46
[INFO] [stderr]   Downloaded tokio-io-timeout v1.2.1
[INFO] [stderr]   Downloaded prost-derive v0.12.6
[INFO] [stderr]   Downloaded axum-core v0.3.4
[INFO] [stderr]   Downloaded clap_derive v3.2.25
[INFO] [stderr]   Downloaded mockall v0.13.1
[INFO] [stderr]   Downloaded rustls-webpki v0.103.8
[INFO] [stderr]   Downloaded os_str_bytes v6.6.1
[INFO] [stderr]   Downloaded rangemap v1.7.0
[INFO] [stderr]   Downloaded matchit v0.7.3
[INFO] [stderr]   Downloaded rsa v0.9.9
[INFO] [stderr]   Downloaded mockall_derive v0.13.1
[INFO] [stderr]   Downloaded pest_derive v2.8.3
[INFO] [stderr]   Downloaded codepage v0.1.2
[INFO] [stderr]   Downloaded security-framework v3.5.1
[INFO] [stderr]   Downloaded names v0.14.0
[INFO] [stderr]   Downloaded num-modular v0.6.1
[INFO] [stderr]   Downloaded indexmap v2.12.0
[INFO] [stderr]   Downloaded pdf-extract v0.7.12
[INFO] [stderr]   Downloaded num-order v1.2.0
[INFO] [stderr]   Downloaded axum-core v0.4.5
[INFO] [stderr]   Downloaded pest_generator v2.8.3
[INFO] [stderr]   Downloaded hyper-util v0.1.18
[INFO] [stderr]   Downloaded opentelemetry v0.23.0
[INFO] [stderr]   Downloaded tonic v0.11.0
[INFO] [stderr]   Downloaded opentelemetry_sdk v0.22.1
[INFO] [stderr]   Downloaded euclid v0.20.14
[INFO] [stderr]   Downloaded pest_meta v2.8.3
[INFO] [stderr]   Downloaded tower-http v0.6.6
[INFO] [stderr]   Downloaded data-encoding v2.9.0
[INFO] [stderr]   Downloaded clap v4.5.52
[INFO] [stderr]   Downloaded iri-string v0.7.9
[INFO] [stderr]   Downloaded axum-macros v0.4.2
[INFO] [stderr]   Downloaded tokio-util v0.7.17
[INFO] [stderr]   Downloaded reqwest v0.12.24
[INFO] [stderr]   Downloaded time v0.3.44
[INFO] [stderr]   Downloaded axum v0.6.20
[INFO] [stderr]   Downloaded handlebars v6.3.2
[INFO] [stderr]   Downloaded calamine v0.26.1
[INFO] [stderr]   Downloaded async-openai v0.24.1
[INFO] [stderr]   Downloaded async-convert v1.0.0
[INFO] [stderr]   Downloaded pest v2.8.3
[INFO] [stderr]   Downloaded pom v1.1.0
[INFO] [stderr]   Downloaded opentelemetry-proto v0.6.0
[INFO] [stderr]   Downloaded opentelemetry_sdk v0.23.0
[INFO] [stderr]   Downloaded webpki-roots v1.0.4
[INFO] [stderr]   Downloaded clap v3.2.25
[INFO] [stderr]   Downloaded clap_builder v4.5.52
[INFO] [stderr]   Downloaded quick-xml v0.31.0
[INFO] [stderr]   Downloaded axum v0.7.9
[INFO] [stderr]   Downloaded quinn-proto v0.11.13
[INFO] [stderr]   Downloaded rustls v0.23.35
[INFO] [stderr]   Downloaded tokio v1.48.0
[INFO] [stderr]   Downloaded rust-stemmers v1.2.0
[INFO] [stderr]   Downloaded lopdf v0.34.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a
[INFO] running `Command { std: "docker" "start" "58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling find-msvc-tools v0.1.5
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling socket2 v0.6.1
[INFO] [stderr]    Compiling mio v1.1.0
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling cc v1.2.46
[INFO] [stderr]    Compiling tracing-core v0.1.34
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling rustls-pki-types v1.13.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling indexmap v2.12.0
[INFO] [stderr]    Compiling http v1.3.1
[INFO] [stderr]    Compiling rustls v0.23.35
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling webpki-roots v1.0.4
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling tokio v1.48.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling unicase v2.8.1
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling pest v2.8.3
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling flate2 v1.1.5
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling rustls-webpki v0.103.8
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling icu_properties v2.1.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling rustls-native-certs v0.8.2
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling iri-string v0.7.9
[INFO] [stderr]    Compiling deranged v0.5.5
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]    Compiling pest_meta v2.8.3
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling zip v2.4.2
[INFO] [stderr]    Compiling sqlx-postgres v0.8.6
[INFO] [stderr]    Compiling sqlx-sqlite v0.8.6
[INFO] [stderr]    Compiling tokio-util v0.7.17
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling h2 v0.4.12
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling tower-http v0.6.6
[INFO] [stderr]    Compiling os_str_bytes v6.6.1
[INFO] [stderr]    Compiling time-core v0.1.6
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling utf-8 v0.7.6
[INFO] [stderr]    Compiling pom v1.1.0
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling data-encoding v2.9.0
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling zopfli v0.8.3
[INFO] [stderr]    Compiling clap_derive v3.2.25
[INFO] [stderr]    Compiling tungstenite v0.24.0
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling time v0.3.44
[INFO] [stderr]    Compiling clap_lex v0.2.4
[INFO] [stderr]    Compiling pest_generator v2.8.3
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]    Compiling derive_builder v0.20.2
[INFO] [stderr]    Compiling eventsource-stream v0.2.3
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling instant v0.1.13
[INFO] [stderr]    Compiling num-modular v0.6.1
[INFO] [stderr]    Compiling weezl v0.1.12
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling names v0.14.0
[INFO] [stderr]    Compiling rangemap v1.7.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling textwrap v0.16.2
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling lopdf v0.34.0
[INFO] [stderr]    Compiling clap v3.2.25
[INFO] [stderr]    Compiling num-order v1.2.0
[INFO] [stderr]    Compiling pest_derive v2.8.3
[INFO] [stderr]    Compiling backoff v0.4.0
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling hyper-util v0.1.18
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]    Compiling tokio-tungstenite v0.24.0
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling adobe-cmap-parser v0.4.1
[INFO] [stderr]    Compiling type1-encoding-parser v0.1.0
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling reqwest v0.12.24
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling async-convert v1.0.0
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling secrecy v0.8.0
[INFO] [stderr]    Compiling axum-macros v0.4.2
[INFO] [stderr]    Compiling quick-xml v0.31.0
[INFO] [stderr]    Compiling codepage v0.1.2
[INFO] [stderr]    Compiling euclid v0.20.14
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling postscript v0.14.1
[INFO] [stderr]    Compiling matchit v0.7.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.20
[INFO] [stderr]    Compiling pdf-extract v0.7.12
[INFO] [stderr]    Compiling reqwest-eventsource v0.6.0
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling async-openai v0.24.1
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling argon2 v0.5.3
[INFO] [stderr]    Compiling sqlx v0.8.6
[INFO] [stderr]    Compiling calamine v0.26.1
[INFO] [stderr]    Compiling handlebars v6.3.2
[INFO] [stderr]    Compiling rust-stemmers v1.2.0
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling tower-http v0.5.2
[INFO] [stderr]    Compiling zoey-core v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Content`
[INFO] [stdout]  --> src/agent_api/types.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::types::{Content, Memory, State, UUID};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::planner::tokens::TokenCounter`
[INFO] [stdout]    --> src/message.rs:932:29
[INFO] [stdout]     |
[INFO] [stdout] 932 |                         use crate::planner::tokens::TokenCounter;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `double_metaphone` and `normalized_similarity`
[INFO] [stdout]  --> src/preprocessor.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::nlp::{double_metaphone, normalized_similarity};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::Result`
[INFO] [stdout]  --> src/pipeline/mps.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runtime::legacy::LockRecovery`
[INFO] [stdout]  --> src/workers/embedding_worker.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::runtime::legacy::LockRecovery;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/agent_api/handlers.rs:446:13
[INFO] [stdout]     |
[INFO] [stdout] 265 |             Err(_) => {
[INFO] [stdout]     |             ------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 446 |             Err(e) => {
[INFO] [stdout]     |             ^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/zoey_core-58ebb33c8ddc7ea5.long-type-12492694029679954935.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/training.rs:754:21
[INFO] [stdout]     |
[INFO] [stdout] 754 |                 let mut s = sample.clone();
[INFO] [stdout]     |                     ----^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/message.rs:256:13
[INFO] [stdout]     |
[INFO] [stdout] 256 |         let mut state = self.compose_state_with_runtime_ref(&message).await?;
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/message.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |         let mut prompt = compose_prompt_from_state(&state, template_str).unwrap_or_else(|_| {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/runtime/legacy.rs:1089:17
[INFO] [stdout]      |
[INFO] [stdout] 1089 |             let mut updated = memory.clone();
[INFO] [stdout]      |                 ----^^^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_chunk_at` is assigned to, but never used
[INFO] [stdout]    --> src/agent_api/handlers.rs:281:21
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 let mut last_chunk_at = Instant::now();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_last_chunk_at` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_id`
[INFO] [stdout]    --> src/agent_api/handlers.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 |         let entity_id = req_clone.entity_id.unwrap_or_else(Uuid::new_v4);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_chunk_at` is never read
[INFO] [stdout]    --> src/agent_api/handlers.rs:288:21
[INFO] [stdout]     |
[INFO] [stdout] 288 |                     last_chunk_at = Instant::now();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `runtime_ref`
[INFO] [stdout]    --> src/message.rs:355:21
[INFO] [stdout]     |
[INFO] [stdout] 355 |                 let runtime_ref = Arc::new(RuntimeRef::new(&self.runtime));
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_runtime_ref`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enabled`
[INFO] [stdout]    --> src/preprocessor.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |             let enabled = {
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enabled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `adapter_opt`
[INFO] [stdout]    --> src/preprocessor.rs:143:17
[INFO] [stdout]     |
[INFO] [stdout] 143 |             let adapter_opt = rt_arc.read().unwrap().adapter.read().unwrap().clone();
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_adapter_opt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handler_opt`
[INFO] [stdout]    --> src/preprocessor.rs:144:17
[INFO] [stdout]     |
[INFO] [stdout] 144 |             let handler_opt = rt_arc
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_handler_opt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `queued`
[INFO] [stdout]    --> src/preprocessor.rs:245:37
[INFO] [stdout]     |
[INFO] [stdout] 245 | ...                   let queued = rt
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_queued`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pref`
[INFO] [stdout]     --> src/message.rs:1055:18
[INFO] [stdout]      |
[INFO] [stdout] 1055 |             Some(pref) => {
[INFO] [stdout]      |                  ^^^^ help: if this is intentional, prefix it with an underscore: `_pref`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/agent_api/handlers.rs:1787:14
[INFO] [stdout]      |
[INFO] [stdout] 1787 |     let (tx, mut rx) = tokio::sync::mpsc::channel::<MemoryWorkItem>(1000);
[INFO] [stdout]      |              ----^^
[INFO] [stdout]      |              |
[INFO] [stdout]      |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_tx`
[INFO] [stdout]     --> src/agent_api/handlers.rs:1797:18
[INFO] [stdout]      |
[INFO] [stdout] 1797 |             let (new_tx, new_rx) = tokio::sync::mpsc::channel::<MemoryWorkItem>(1000);
[INFO] [stdout]      |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_rx`
[INFO] [stdout]     --> src/agent_api/handlers.rs:1797:26
[INFO] [stdout]      |
[INFO] [stdout] 1797 |             let (new_tx, new_rx) = tokio::sync::mpsc::channel::<MemoryWorkItem>(1000);
[INFO] [stdout]      |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_state`
[INFO] [stdout]     --> src/agent_api/handlers.rs:2763:11
[INFO] [stdout]      |
[INFO] [stdout] 2763 |     State(server_state): State<ServerState>,
[INFO] [stdout]      |           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_state`
[INFO] [stdout]     --> src/agent_api/handlers.rs:2833:11
[INFO] [stdout]      |
[INFO] [stdout] 2833 |     State(server_state): State<ServerState>,
[INFO] [stdout]      |           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `last_update`
[INFO] [stdout]    --> src/agent_api/server.rs:302:20
[INFO] [stdout]     |
[INFO] [stdout] 302 |         |(runtime, last_update)| async move {
[INFO] [stdout]     |                    ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_update`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `academic_keywords`
[INFO] [stdout]    --> src/planner/complexity.rs:233:13
[INFO] [stdout]     |
[INFO] [stdout] 233 |         let academic_keywords = ["research", "study", "analysis", "theory", "hypothesis"];
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_academic_keywords`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `score` is never read
[INFO] [stdout]    --> src/planner/complexity.rs:198:30
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let mut score: f32 = 0.0;
[INFO] [stdout]     |                              ^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 235 |         score = 0.2 + 0.15 * hits as f32;
[INFO] [stdout]     |         -------------------------------- `score` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `runtime`
[INFO] [stdout]    --> src/pipeline/mps.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     runtime: std::sync::Arc<std::sync::RwLock<crate::AgentRuntime>>,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_runtime`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LockContext` is more private than the item `LockRecovery::read_with_context`
[INFO] [stdout]    --> src/runtime/legacy.rs:279:5
[INFO] [stdout]     |
[INFO] [stdout] 279 | /     fn read_with_context(
[INFO] [stdout] 280 | |         &self,
[INFO] [stdout] 281 | |         ctx: &LockContext,
[INFO] [stdout] 282 | |     ) -> std::result::Result<RwLockReadGuard<'_, T>, crate::ZoeyError>;
[INFO] [stdout]     | |_______________________________________________________________________^ method `LockRecovery::read_with_context` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `LockContext` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/runtime/legacy.rs:216:1
[INFO] [stdout]     |
[INFO] [stdout] 216 | struct LockContext {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LockContext` is more private than the item `LockRecovery::write_with_context`
[INFO] [stdout]    --> src/runtime/legacy.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 285 | /     fn write_with_context(
[INFO] [stdout] 286 | |         &self,
[INFO] [stdout] 287 | |         ctx: &LockContext,
[INFO] [stdout] 288 | |     ) -> std::result::Result<RwLockWriteGuard<'_, T>, crate::ZoeyError>;
[INFO] [stdout]     | |________________________________________________________________________^ method `LockRecovery::write_with_context` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `LockContext` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/runtime/legacy.rs:216:1
[INFO] [stdout]     |
[INFO] [stdout] 216 | struct LockContext {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LockContext` is more private than the item `<std::sync::RwLock<T> as LockRecovery<T>>::read_with_context`
[INFO] [stdout]    --> src/runtime/legacy.rs:318:5
[INFO] [stdout]     |
[INFO] [stdout] 318 | /     fn read_with_context(
[INFO] [stdout] 319 | |         &self,
[INFO] [stdout] 320 | |         ctx: &LockContext,
[INFO] [stdout] 321 | |     ) -> std::result::Result<RwLockReadGuard<'_, T>, crate::ZoeyError> {
[INFO] [stdout]     | |______________________________________________________________________^ method `<std::sync::RwLock<T> as LockRecovery<T>>::read_with_context` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `LockContext` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/runtime/legacy.rs:216:1
[INFO] [stdout]     |
[INFO] [stdout] 216 | struct LockContext {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LockContext` is more private than the item `<std::sync::RwLock<T> as LockRecovery<T>>::write_with_context`
[INFO] [stdout]    --> src/runtime/legacy.rs:389:5
[INFO] [stdout]     |
[INFO] [stdout] 389 | /     fn write_with_context(
[INFO] [stdout] 390 | |         &self,
[INFO] [stdout] 391 | |         ctx: &LockContext,
[INFO] [stdout] 392 | |     ) -> std::result::Result<RwLockWriteGuard<'_, T>, crate::ZoeyError> {
[INFO] [stdout]     | |_______________________________________________________________________^ method `<std::sync::RwLock<T> as LockRecovery<T>>::write_with_context` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `LockContext` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/runtime/legacy.rs:216:1
[INFO] [stdout]     |
[INFO] [stdout] 216 | struct LockContext {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_message` is never used
[INFO] [stdout]     --> src/agent_api/handlers.rs:1304:10
[INFO] [stdout]      |
[INFO] [stdout] 1304 | async fn process_message(
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `auth_middleware` is never used
[INFO] [stdout]    --> src/agent_api/server.rs:442:10
[INFO] [stdout]     |
[INFO] [stdout] 442 | async fn auth_middleware(state: State<ServerState>, request: Request, next: Next) -> Response {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rate_limit_middleware` is never used
[INFO] [stdout]    --> src/agent_api/server.rs:492:10
[INFO] [stdout]     |
[INFO] [stdout] 492 | async fn rate_limit_middleware(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `drain_semaphore` is never read
[INFO] [stdout]   --> src/infrastructure/shutdown.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct ShutdownManager {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 63 |     drain_semaphore: Arc<Semaphore>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `adapter`, `agent_id`, and `state_provider` are never read
[INFO] [stdout]    --> src/infrastructure/shutdown.rs:349:5
[INFO] [stdout]     |
[INFO] [stdout] 348 | pub struct DatabaseStatePersister<A> {
[INFO] [stdout]     |            ---------------------- fields in this struct
[INFO] [stdout] 349 |     adapter: Arc<A>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 350 |     agent_id: uuid::Uuid,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 351 |     state_provider: Arc<dyn Fn() -> PersistableRuntimeState + Send + Sync>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `detect_language` is never used
[INFO] [stdout]    --> src/preprocessor.rs:340:4
[INFO] [stdout]     |
[INFO] [stdout] 340 | fn detect_language(text: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `classify_text` is never used
[INFO] [stdout]    --> src/preprocessor.rs:354:4
[INFO] [stdout]     |
[INFO] [stdout] 354 | fn classify_text(text: &str) -> (String, String, String) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_topics_keywords` is never used
[INFO] [stdout]    --> src/preprocessor.rs:398:4
[INFO] [stdout]     |
[INFO] [stdout] 398 | fn extract_topics_keywords(text: &str) -> (Vec<String>, Vec<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_entities_simple` is never used
[INFO] [stdout]    --> src/preprocessor.rs:421:4
[INFO] [stdout]     |
[INFO] [stdout] 421 | fn extract_entities_simple(text: &str) -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/runtime/legacy.rs:224:8
[INFO] [stdout]     |
[INFO] [stdout] 223 | impl LockContext {
[INFO] [stdout]     | ---------------- associated function in this implementation
[INFO] [stdout] 224 |     fn new(name: String, strategy: LockRecoveryStrategy, metrics: Arc<LockPoisonMetrics>) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message_service` is never read
[INFO] [stdout]    --> src/runtime/legacy.rs:577:5
[INFO] [stdout]     |
[INFO] [stdout] 526 | pub struct AgentRuntime {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 577 |     message_service: Arc<RwLock<Option<Arc<dyn IMessageService>>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_lock_context` is never used
[INFO] [stdout]     --> src/runtime/legacy.rs:1434:8
[INFO] [stdout]      |
[INFO] [stdout] 1191 | impl AgentRuntime {
[INFO] [stdout]      | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1434 |     fn get_lock_context(&self, lock_name: &str) -> LockContext {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_lock_recovery_strategy` is never used
[INFO] [stdout]   --> src/runtime/lifecycle.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn get_lock_recovery_strategy(rt: &AgentRuntime) -> LockRecoveryStrategy {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_lock_recovery_strategy` is never used
[INFO] [stdout]   --> src/runtime/lifecycle.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn set_lock_recovery_strategy(rt: &mut AgentRuntime, strategy: LockRecoveryStrategy) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_lock_poison_metrics` is never used
[INFO] [stdout]   --> src/runtime/lifecycle.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn get_lock_poison_metrics(rt: &AgentRuntime) -> LockPoisonSummary {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reset_lock_poison_metrics` is never used
[INFO] [stdout]   --> src/runtime/lifecycle.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn reset_lock_poison_metrics(rt: &AgentRuntime) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_poisoned_locks` is never used
[INFO] [stdout]   --> src/runtime/lifecycle.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn has_poisoned_locks(rt: &AgentRuntime) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_lock_health_status` is never used
[INFO] [stdout]   --> src/runtime/lifecycle.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn get_lock_health_status(rt: &AgentRuntime) -> super::lifecycle::LockHealthStatus {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_runtime` is never used
[INFO] [stdout]   --> src/runtime/lifecycle.rs:41:14
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub async fn new_runtime(opts: RuntimeOpts) -> Result<Arc<RwLock<AgentRuntime>>> {
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `initialize_runtime` is never used
[INFO] [stdout]   --> src/runtime/lifecycle.rs:45:14
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub async fn initialize_runtime(rt: &mut AgentRuntime, options: InitializeOptions) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:51:1
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub mod observability;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub mod plugin_system;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:55:1
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub mod preprocessor;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:58:1
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub mod runtime;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:70:1
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub mod detectors;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:73:1
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub mod nlp;
[INFO] [stdout]    | ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub mod pipeline;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub mod workers;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]     --> src/agent_api/handlers.rs:1497:1
[INFO] [stdout]      |
[INFO] [stdout] 1497 | pub struct ContextAddPayload {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]     --> src/agent_api/handlers.rs:1519:1
[INFO] [stdout]      |
[INFO] [stdout] 1519 | pub struct ContextSavePayload {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]     --> src/agent_api/handlers.rs:1662:5
[INFO] [stdout]      |
[INFO] [stdout] 1662 |     BadRequest(String),
[INFO] [stdout]      |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]     --> src/agent_api/handlers.rs:1663:5
[INFO] [stdout]      |
[INFO] [stdout] 1663 |     Unauthorized(String),
[INFO] [stdout]      |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]     --> src/agent_api/handlers.rs:1664:5
[INFO] [stdout]      |
[INFO] [stdout] 1664 |     Forbidden(String),
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]     --> src/agent_api/handlers.rs:1665:5
[INFO] [stdout]      |
[INFO] [stdout] 1665 |     NotFound(String),
[INFO] [stdout]      |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]     --> src/agent_api/handlers.rs:1666:5
[INFO] [stdout]      |
[INFO] [stdout] 1666 |     RateLimited(String),
[INFO] [stdout]      |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]     --> src/agent_api/handlers.rs:1667:5
[INFO] [stdout]      |
[INFO] [stdout] 1667 |     Internal(String),
[INFO] [stdout]      |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]     --> src/agent_api/handlers.rs:1710:1
[INFO] [stdout]      |
[INFO] [stdout] 1710 | pub struct DeleteRoomPayload {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2041:5
[INFO] [stdout]      |
[INFO] [stdout] 2041 |     pub id: Uuid,
[INFO] [stdout]      |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2042:5
[INFO] [stdout]      |
[INFO] [stdout] 2042 |     pub room_id: Uuid,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2043:5
[INFO] [stdout]      |
[INFO] [stdout] 2043 |     pub entity_id: Uuid,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2044:5
[INFO] [stdout]      |
[INFO] [stdout] 2044 |     pub agent_id: Uuid,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2045:5
[INFO] [stdout]      |
[INFO] [stdout] 2045 |     pub filename: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2046:5
[INFO] [stdout]      |
[INFO] [stdout] 2046 |     pub doc_type: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2047:5
[INFO] [stdout]      |
[INFO] [stdout] 2047 |     pub content: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2048:5
[INFO] [stdout]      |
[INFO] [stdout] 2048 |     pub chunks: Vec<KnowledgeChunk>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2049:5
[INFO] [stdout]      |
[INFO] [stdout] 2049 |     pub word_count: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2050:5
[INFO] [stdout]      |
[INFO] [stdout] 2050 |     pub created_at: i64,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2051:5
[INFO] [stdout]      |
[INFO] [stdout] 2051 |     pub metadata: HashMap<String, serde_json::Value>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2057:5
[INFO] [stdout]      |
[INFO] [stdout] 2057 |     pub id: Uuid,
[INFO] [stdout]      |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2058:5
[INFO] [stdout]      |
[INFO] [stdout] 2058 |     pub document_id: Uuid,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2059:5
[INFO] [stdout]      |
[INFO] [stdout] 2059 |     pub text: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2060:5
[INFO] [stdout]      |
[INFO] [stdout] 2060 |     pub index: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2061:5
[INFO] [stdout]      |
[INFO] [stdout] 2061 |     pub char_start: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:2062:5
[INFO] [stdout]      |
[INFO] [stdout] 2062 |     pub char_end: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3039:5
[INFO] [stdout]      |
[INFO] [stdout] 3039 |     pub sample_id: Uuid,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3040:5
[INFO] [stdout]      |
[INFO] [stdout] 3040 |     pub feedback_score: f32,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3041:5
[INFO] [stdout]      |
[INFO] [stdout] 3041 |     pub feedback_text: Option<String>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]     --> src/agent_api/handlers.rs:3044:1
[INFO] [stdout]      |
[INFO] [stdout] 3044 | / pub async fn training_feedback_handler(
[INFO] [stdout] 3045 | |     State(state): State<ServerState>,
[INFO] [stdout] 3046 | |     Json(payload): Json<AddFeedbackRequest>,
[INFO] [stdout] 3047 | | ) -> Response {
[INFO] [stdout]      | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3091:5
[INFO] [stdout]      |
[INFO] [stdout] 3091 |     pub format: Option<String>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3092:5
[INFO] [stdout]      |
[INFO] [stdout] 3092 |     pub include_negative: Option<bool>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]     --> src/agent_api/handlers.rs:3095:1
[INFO] [stdout]      |
[INFO] [stdout] 3095 | / pub async fn training_export_handler(
[INFO] [stdout] 3096 | |     State(state): State<ServerState>,
[INFO] [stdout] 3097 | |     Json(payload): Json<ExportDataRequest>,
[INFO] [stdout] 3098 | | ) -> Response {
[INFO] [stdout]      | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3162:5
[INFO] [stdout]      |
[INFO] [stdout] 3162 |     pub limit: Option<usize>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3163:5
[INFO] [stdout]      |
[INFO] [stdout] 3163 |     pub offset: Option<usize>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3164:5
[INFO] [stdout]      |
[INFO] [stdout] 3164 |     pub min_quality: Option<f32>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]     --> src/agent_api/handlers.rs:3167:1
[INFO] [stdout]      |
[INFO] [stdout] 3167 | / pub async fn training_samples_handler(
[INFO] [stdout] 3168 | |     State(state): State<ServerState>,
[INFO] [stdout] 3169 | |     axum::extract::Query(query): axum::extract::Query<ListSamplesQuery>,
[INFO] [stdout] 3170 | | ) -> impl IntoResponse {
[INFO] [stdout]      | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3217:5
[INFO] [stdout]      |
[INFO] [stdout] 3217 |     pub format: Option<String>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3218:5
[INFO] [stdout]      |
[INFO] [stdout] 3218 |     pub config: Option<TrainingJobConfig>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]     --> src/agent_api/handlers.rs:3225:1
[INFO] [stdout]      |
[INFO] [stdout] 3225 | pub struct TrainingJobConfig {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3226:5
[INFO] [stdout]      |
[INFO] [stdout] 3226 |     pub name: Option<String>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3227:5
[INFO] [stdout]      |
[INFO] [stdout] 3227 |     pub min_quality: Option<f32>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3228:5
[INFO] [stdout]      |
[INFO] [stdout] 3228 |     pub include_negative: Option<bool>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3229:5
[INFO] [stdout]      |
[INFO] [stdout] 3229 |     pub auto_save: Option<bool>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]     --> src/agent_api/handlers.rs:3242:1
[INFO] [stdout]      |
[INFO] [stdout] 3242 | pub struct TrainingJobStatus {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3243:5
[INFO] [stdout]      |
[INFO] [stdout] 3243 |     pub job_id: Uuid,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3244:5
[INFO] [stdout]      |
[INFO] [stdout] 3244 |     pub state: String,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3245:5
[INFO] [stdout]      |
[INFO] [stdout] 3245 |     pub progress: f32,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3246:5
[INFO] [stdout]      |
[INFO] [stdout] 3246 |     pub samples_processed: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3247:5
[INFO] [stdout]      |
[INFO] [stdout] 3247 |     pub total_samples: usize,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3248:5
[INFO] [stdout]      |
[INFO] [stdout] 3248 |     pub started_at: i64,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3249:5
[INFO] [stdout]      |
[INFO] [stdout] 3249 |     pub completed_at: Option<i64>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3250:5
[INFO] [stdout]      |
[INFO] [stdout] 3250 |     pub error: Option<String>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3251:5
[INFO] [stdout]      |
[INFO] [stdout] 3251 |     pub result_path: Option<String>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]     --> src/agent_api/handlers.rs:3254:1
[INFO] [stdout]      |
[INFO] [stdout] 3254 | / pub async fn training_start_handler(
[INFO] [stdout] 3255 | |     State(state): State<ServerState>,
[INFO] [stdout] 3256 | |     Json(payload): Json<StartTrainingRequest>,
[INFO] [stdout] 3257 | | ) -> Response {
[INFO] [stdout]      | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]     --> src/agent_api/handlers.rs:3482:5
[INFO] [stdout]      |
[INFO] [stdout] 3482 |     pub job_id: Uuid,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]     --> src/agent_api/handlers.rs:3485:1
[INFO] [stdout]      |
[INFO] [stdout] 3485 | / pub async fn training_job_status_handler(
[INFO] [stdout] 3486 | |     axum::extract::Query(query): axum::extract::Query<JobStatusQuery>,
[INFO] [stdout] 3487 | | ) -> impl IntoResponse {
[INFO] [stdout]      | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/agent_api/task.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     Chat(ChatResponse),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/agent_api/task.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     State(StateResponse),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/agent_api/task.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Action(ActionResponse),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/agent_api/task.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub id: Uuid,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/agent_api/task.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub status: TaskStatus,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/agent_api/task.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub result: Option<TaskResult>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/agent_api/task.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub error: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/agent_api/task.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub created_at: Instant,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/agent_api/task.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub completed_at: Option<Instant>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/infrastructure/sanitization.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         original_length: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/infrastructure/sanitization.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |         new_length: usize,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/infrastructure/sanitization.rs:73:25
[INFO] [stdout]    |
[INFO] [stdout] 73 |     CharactersRemoved { count: usize, reason: String },
[INFO] [stdout]    |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/infrastructure/sanitization.rs:73:39
[INFO] [stdout]    |
[INFO] [stdout] 73 |     CharactersRemoved { count: usize, reason: String },
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/infrastructure/sanitization.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |     PatternRemoved { pattern: String },
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/infrastructure/sanitization.rs:79:24
[INFO] [stdout]    |
[INFO] [stdout] 79 |     NullBytesRemoved { count: usize },
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:447:5
[INFO] [stdout]     |
[INFO] [stdout] 447 |     pub tls_enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:448:5
[INFO] [stdout]     |
[INFO] [stdout] 448 |     pub auth_required: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:449:5
[INFO] [stdout]     |
[INFO] [stdout] 449 |     pub rate_limiting_enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:450:5
[INFO] [stdout]     |
[INFO] [stdout] 450 |     pub audit_logging_enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:451:5
[INFO] [stdout]     |
[INFO] [stdout] 451 |     pub pii_detection_enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:452:5
[INFO] [stdout]     |
[INFO] [stdout] 452 |     pub input_sanitization_enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:453:5
[INFO] [stdout]     |
[INFO] [stdout] 453 |     pub debug_mode: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:454:5
[INFO] [stdout]     |
[INFO] [stdout] 454 |     pub secrets_encrypted: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:455:5
[INFO] [stdout]     |
[INFO] [stdout] 455 |     pub cors_restricted: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/infrastructure/secure_defaults.rs:456:5
[INFO] [stdout]     |
[INFO] [stdout] 456 |     pub session_timeout_seconds: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/observability/mod.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub mod config;
[INFO] [stdout]   | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/observability/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod cost_tracker;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/observability/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub mod rest;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/observability/mod.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod types;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/mod.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub config: ObservabilityConfig,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/mod.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub cost_tracker: Option<Arc<CostTracker>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub security_monitor: Option<Arc<SecurityMonitor>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub rate_limits: Arc<RwLock<HashMap<String, ProviderRateLimit>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/observability/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | /     pub fn new(
[INFO] [stdout] 31 | |         config: ObservabilityConfig,
[INFO] [stdout] 32 | |         db: Option<Arc<dyn IDatabaseAdapter + Send + Sync>>,
[INFO] [stdout] 33 | |     ) -> Self {
[INFO] [stdout]    | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/observability/mod.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub fn compute_prompt_preview(s: &str) -> String {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/observability/mod.rs:81:1
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub fn compute_prompt_hash(s: &str) -> String {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/observability/mod.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/observability/mod.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     pub fn set_rate_limit(&self, provider: &str, rl: ProviderRateLimit) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/observability/mod.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     pub fn get_rate_limit_remaining(&self, provider: &str) -> Option<u32> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/observability/config.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct ObservabilityConfig {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/observability/config.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub enabled: bool,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/observability/config.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub cost_tracking: CostTrackingConfig,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/observability/config.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub prompt_storage: PromptStorageConfig,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/observability/config.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub rest_api: RestApiConfig,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/observability/config.rs:39:1
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct CostTrackingConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/config.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub enabled: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/config.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub database_storage: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/config.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub in_memory_retention_hours: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/config.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub anomaly_multiplier: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/observability/config.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn from_env() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/observability/config.rs:84:1
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct PromptStorageConfig {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/config.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub enabled: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/config.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub mode: PromptStorageMode,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/config.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub sanitization: PIISanitizationLevel,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/config.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub retention_days: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/observability/config.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn from_env() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/observability/config.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub enum PromptStorageMode {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/observability/config.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     Disabled,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/observability/config.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     HashOnly,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/observability/config.rs:154:5
[INFO] [stdout]     |
[INFO] [stdout] 154 |     Preview { chars: usize },
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/observability/config.rs:154:15
[INFO] [stdout]     |
[INFO] [stdout] 154 |     Preview { chars: usize },
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/observability/config.rs:155:5
[INFO] [stdout]     |
[INFO] [stdout] 155 |     Full,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/observability/config.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub enum PIISanitizationLevel {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/observability/config.rs:160:5
[INFO] [stdout]     |
[INFO] [stdout] 160 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/observability/config.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     Basic,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/observability/config.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 |     Standard,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/observability/config.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     Aggressive,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/observability/config.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     HIPAA,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/observability/config.rs:168:1
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub struct RestApiConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/observability/config.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/observability/config.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub host: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/observability/config.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub port: u16,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/observability/config.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     pub fn from_env() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/observability/cost_tracker.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct CostTracker {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/observability/cost_tracker.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn new(db: Option<Arc<dyn IDatabaseAdapter + Send + Sync>>) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/observability/rest.rs:268:1
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn extract_rate_limit_from_headers(headers: &HeaderMap) -> ProviderRateLimit {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         timestamp: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |         agent_id: UUID,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         conversation_id: Option<UUID>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         location: String, // "prompt" or "completion"
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         detected_types: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         severity: AlertSeverity,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         timestamp: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         agent_id: UUID,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         current_cost: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         baseline_cost: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         multiplier: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |         window: String, // "hourly" or "daily"
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |         timestamp: chrono::DateTime<chrono::Utc>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |         agent_id: UUID,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |         latency_ms: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         baseline_ms: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         multiplier: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/observability/security_monitor.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     Low,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/observability/security_monitor.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     Medium,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/observability/security_monitor.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     High,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/observability/security_monitor.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     Critical,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:65:12
[INFO] [stdout]    |
[INFO] [stdout] 65 |     File { path: String },
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/security_monitor.rs:68:15
[INFO] [stdout]    |
[INFO] [stdout] 68 |     Webhook { url: String },
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/observability/types.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub id: UUID,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub timestamp: DateTime<Utc>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub agent_id: UUID,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub user_id: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub conversation_id: Option<UUID>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub action_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub evaluator_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub provider: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub model: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub temperature: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub prompt_tokens: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub completion_tokens: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub total_tokens: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub cached_tokens: Option<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub input_cost_usd: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub output_cost_usd: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub total_cost_usd: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub latency_ms: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub ttft_ms: Option<u64>, // Time to first token
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub success: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub error: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub prompt_hash: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub prompt_preview: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub agent_id: UUID,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub user_id: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub conversation_id: Option<UUID>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub action_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub evaluator_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub temperature: Option<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub cached_tokens: Option<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub ttft_ms: Option<u64>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub prompt_hash: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub prompt_preview: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub provider: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub model: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub input_cost_per_1k_tokens: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub output_cost_per_1k_tokens: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub updated_at: DateTime<Utc>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/observability/types.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct ProviderRateLimit {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub remaining: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub reset_epoch_s: Option<u64>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub group_key: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub total_calls: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub total_tokens: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     pub total_cost_usd: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub avg_latency_ms: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub total_cost_usd: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub total_calls: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub total_tokens: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub avg_latency_ms: f64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub breakdown_by_model: Vec<CostBreakdownRow>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/observability/types.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub breakdown_by_provider: Vec<CostBreakdownRow>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     Professional,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     Friendly,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Technical,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     Casual,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Formal,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     Empathetic,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     Answer,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     Explanation,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     Instruction,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     Acknowledgment,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     Question,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/planner/mod.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Clarification,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/planner/tokens.rs:181:5
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub total_input_tokens: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/planner/tokens.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 |     pub total_output_tokens: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/planner/tokens.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub total_tokens: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/planner/tokens.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub total_cost: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/planner/tokens.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     pub session_count: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/plugin_system/mod.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub mod registry;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/plugin_system/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod resolver;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/plugin_system/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub mod traits;
[INFO] [stdout]   | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]  --> src/plugin_system/registry.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn register_provider(rt: &mut AgentRuntime, provider: Arc<dyn Provider>) {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/plugin_system/registry.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn register_action(rt: &mut AgentRuntime, action: Arc<dyn Action>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/plugin_system/registry.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn register_evaluator(rt: &mut AgentRuntime, evaluator: Arc<dyn Evaluator>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/plugin_system/registry.rs:27:1
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn get_actions(rt: &AgentRuntime) -> Vec<Arc<dyn Action>> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/plugin_system/registry.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn get_providers(rt: &AgentRuntime) -> Vec<Arc<dyn Provider>> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/plugin_system/registry.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn get_evaluators(rt: &AgentRuntime) -> Vec<Arc<dyn Evaluator>> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/plugin_system/registry.rs:39:1
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn get_models(rt: &AgentRuntime) -> HashMap<String, Vec<ModelProvider>> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/plugin_system/resolver.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Resolver;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/plugin_system/resolver.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     pub fn new() -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]  --> src/plugin_system/traits.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait PluginRegistry {}
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/preprocessor.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct Phase0Output {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub language: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub intent: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub sentiment: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub tone: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub topics: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub keywords: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub entities: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub complexity: Option<ComplexityAssessment>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub agent_candidates: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/preprocessor.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub available_actions: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/preprocessor.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/preprocessor.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct Phase0Preprocessor {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/preprocessor.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn new(runtime: Arc<RwLock<crate::AgentRuntime>>) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/preprocessor.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub async fn execute(&self, message: &Memory) -> Result<Phase0Output> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/runtime/events.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct EventBus;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/runtime/events.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new() -> Self {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/events.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn handlers_for(&self, runtime: &AgentRuntime, event: &str) -> Vec<EventHandler> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/events.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn register_handler(&self, runtime: &AgentRuntime, event: String, handler: EventHandler) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/events.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub fn logger(&self, runtime: &AgentRuntime) -> Arc<RwLock<tracing::Span>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/events.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | /     pub fn register_send_handler(
[INFO] [stdout] 33 | |         &self,
[INFO] [stdout] 34 | |         runtime: &mut AgentRuntime,
[INFO] [stdout] 35 | |         source: String,
[INFO] [stdout] 36 | |         handler: SendHandlerFunction,
[INFO] [stdout] 37 | |     ) {
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/events.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | /     pub fn get_send_handler(
[INFO] [stdout] 42 | |         &self,
[INFO] [stdout] 43 | |         runtime: &AgentRuntime,
[INFO] [stdout] 44 | |         source: &str,
[INFO] [stdout] 45 | |     ) -> Option<SendHandlerFunction> {
[INFO] [stdout]    | |____________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/runtime/executor.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Executor;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/runtime/executor.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/executor.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | /     pub async fn execute_action(
[INFO] [stdout] 17 | |         &self,
[INFO] [stdout] 18 | |         runtime: &AgentRuntime,
[INFO] [stdout] 19 | |         action_index: usize,
[INFO] [stdout] 20 | |         message: &Memory,
[INFO] [stdout] 21 | |         state: &State,
[INFO] [stdout] 22 | |     ) -> Result<Option<ActionResult>> {
[INFO] [stdout]    | |_____________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/executor.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | /     pub async fn execute_all_actions(
[INFO] [stdout] 38 | |         &self,
[INFO] [stdout] 39 | |         runtime: &AgentRuntime,
[INFO] [stdout] 40 | |         message: &Memory,
[INFO] [stdout] 41 | |         state: &State,
[INFO] [stdout] 42 | |     ) -> Result<Vec<ActionResult>> {
[INFO] [stdout]    | |__________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:101:24
[INFO] [stdout]     |
[INFO] [stdout] 101 |     RecoverWithLimit { max_recoveries: u64 },
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |         max_recoveries: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |         initial_delay_ms: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/legacy.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     pub fn new() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/runtime/legacy.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     pub fn get_summary(&self) -> LockPoisonSummary {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:206:5
[INFO] [stdout]     |
[INFO] [stdout] 206 |     pub total_poisoned: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:207:5
[INFO] [stdout]     |
[INFO] [stdout] 207 |     pub recoveries: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 |     pub failures: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 209 |     pub read_poisoned: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:210:5
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub write_poisoned: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:211:5
[INFO] [stdout]     |
[INFO] [stdout] 211 |     pub last_poisoned_at: Option<u64>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/runtime/legacy.rs:212:5
[INFO] [stdout]     |
[INFO] [stdout] 212 |     pub lock_poison_counts: HashMap<String, u64>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/runtime/lifecycle.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct LockHealthStatus {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/runtime/lifecycle.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     pub is_healthy: bool,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/runtime/lifecycle.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     pub total_poisoned: u64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/runtime/lifecycle.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub recoveries: u64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/runtime/lifecycle.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub failures: u64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/runtime/lifecycle.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub most_poisoned_locks: Vec<(String, u64)>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/runtime/state.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct RuntimeState;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/runtime/state.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/state.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn get_cached_state(&self, runtime: &AgentRuntime, room_id: &str) -> Option<State> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/state.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn set_cached_state(&self, runtime: &AgentRuntime, room_id: String, state: State) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/state.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn estimate_load(&self, runtime: &AgentRuntime) -> u32 {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/runtime/state.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | /     pub async fn compose_state_impl(
[INFO] [stdout] 42 | |         &self,
[INFO] [stdout] 43 | |         runtime: &AgentRuntime,
[INFO] [stdout] 44 | |         message: &Memory,
[INFO] [stdout] ...  |
[INFO] [stdout] 47 | |         skip_cache: bool,
[INFO] [stdout] 48 | |     ) -> Result<State> {
[INFO] [stdout]    | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn set_setting(rt: &mut AgentRuntime, key: &str, value: Value) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub fn get_setting(rt: &AgentRuntime, key: &str) -> Option<Value> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub fn get_setting_string(rt: &AgentRuntime, key: &str) -> Option<String> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_settings_with_prefix(rt: &AgentRuntime, prefix: &str) -> Vec<(String, String)> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn get_conversation_length(rt: &AgentRuntime) -> usize {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub fn get_service(rt: &AgentRuntime, service_type: &str) -> Option<Arc<dyn Service>> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:153:5
[INFO] [stdout]     |
[INFO] [stdout] 153 |     pub fn get_services_count(rt: &AgentRuntime) -> usize {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     pub fn get_all_services(rt: &AgentRuntime) -> HashMap<ServiceTypeName, Vec<Arc<dyn Service>>> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:161:5
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn message_service(rt: &AgentRuntime) -> Option<Arc<dyn IMessageService>> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub fn register_task_worker(rt: &mut AgentRuntime, name: String, worker: Arc<dyn TaskWorker>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:169:5
[INFO] [stdout]     |
[INFO] [stdout] 169 |     pub fn get_task_worker(rt: &AgentRuntime, name: &str) -> Option<Arc<dyn TaskWorker>> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:173:5
[INFO] [stdout]     |
[INFO] [stdout] 173 |     pub fn get_task_workers(rt: &AgentRuntime) -> HashMap<String, Arc<dyn TaskWorker>> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     pub fn zoey_os(rt: &AgentRuntime) -> Option<Arc<dyn std::any::Any + Send + Sync>> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:181:5
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn set_zoey_os(rt: &mut AgentRuntime, instance: Arc<dyn std::any::Any + Send + Sync>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     pub fn get_adapter(rt: &AgentRuntime) -> Option<Arc<dyn IDatabaseAdapter + Send + Sync>> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:189:5
[INFO] [stdout]     |
[INFO] [stdout] 189 |     pub fn get_action_results(rt: &AgentRuntime, message_id: Uuid) -> Vec<ActionResult> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/runtime/state.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn set_action_results(rt: &AgentRuntime, message_id: Uuid, results: Vec<ActionResult>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/types/components.rs:521:5
[INFO] [stdout]     |
[INFO] [stdout] 521 |     pub fn new(action: T) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/utils.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub mod delayed_reassessment;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/utils.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod rhythm;
[INFO] [stdout]   | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/utils/delayed_reassessment.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct DelayedReassessment;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/utils/delayed_reassessment.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub fn enabled(rt: &crate::AgentRuntime) -> bool {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/delayed_reassessment.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn start(rt: &mut crate::AgentRuntime, room_id: UUID, text: &str) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/delayed_reassessment.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn clear(rt: &mut crate::AgentRuntime, room_id: UUID) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/delayed_reassessment.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn pending(rt: &crate::AgentRuntime, room_id: UUID) -> Option<(i64, String)> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/delayed_reassessment.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub fn should_wait(prev_ts: i64) -> bool {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/delayed_reassessment.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn merge(a: &str, b: &str) -> String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/utils/logger.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct LogEvent {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/utils/logger.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub level: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/utils/logger.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub target: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/utils/logger.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub message: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/utils/logger.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub file: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/utils/logger.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub line: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/utils/logger.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub time: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/utils/logger.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn subscribe_logs() -> Option<broadcast::Receiver<LogEvent>> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/utils/rhythm.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct ConversationRhythm {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/rhythm.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub avg_user_message_length: f32,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/rhythm.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub message_velocity: f32,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/rhythm.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub recent_topics: Vec<String>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/rhythm.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub suggested_response_length: String,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/rhythm.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/utils/rhythm.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct RhythmTracker {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/rhythm.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/utils/rhythm.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn update(&mut self, msg: &Memory, topics: &[String]) -> ConversationRhythm {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/detectors/mod.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct QuestionInfo {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/detectors/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub text: String,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/detectors/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub score: f32,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/detectors/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub entities: Vec<String>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/detectors/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct DerivedDetections {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub ambiguity_score: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub vague_pronouns: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub weak_verbs: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub has_svo: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub short_message: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub casual_markers: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub formal_markers: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub polite_markers: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub rude_markers: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub sentiment_positive: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub sentiment_negative: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     pub excitement_markers: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub frustration_markers: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub hesitation_markers: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub urgency_markers: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub questions: Vec<QuestionInfo>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub negators: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub unresolved_references: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub comparisons: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub conditionals: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub enumerations: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub incomplete: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/detectors/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub incomplete_reason: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/detectors/mod.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn analyze_all(text: &str, recent_context_len: usize) -> DerivedDetections {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]  --> src/nlp/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn double_metaphone(s: &str) -> (String, String) {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/nlp/mod.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn normalized_similarity(a: &str, b: &str) -> f32 {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/pipeline/mod.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub mod context;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/pipeline/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod mps;
[INFO] [stdout]   | ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/pipeline/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub mod phases;
[INFO] [stdout]   | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/pipeline/mod.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub mod profiler;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/pipeline/mod.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod types;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/pipeline/context.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct PipelineContext {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/pipeline/context.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub runtime: Arc<RwLock<crate::AgentRuntime>>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/pipeline/context.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub message: Memory,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/pipeline/context.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub state: State,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/pipeline/context.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(runtime: Arc<RwLock<crate::AgentRuntime>>, message: Memory) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]  --> src/pipeline/mps.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn mp1_language(text: &str) -> String {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/pipeline/mps.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn mp2_classify(text: &str) -> (String, String, String) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/pipeline/mps.rs:62:1
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub fn mp3_topics_keywords(text: &str) -> (Vec<String>, Vec<String>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/pipeline/mps.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub fn mp4_entities_simple(text: &str) -> Vec<String> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/pipeline/mps.rs:119:1
[INFO] [stdout]     |
[INFO] [stdout] 119 | / pub async fn mp5_complexity(
[INFO] [stdout] 120 | |     runtime: std::sync::Arc<std::sync::RwLock<crate::AgentRuntime>>,
[INFO] [stdout] 121 | |     message: &Memory,
[INFO] [stdout] 122 | | ) -> Option<crate::planner::complexity::ComplexityAssessment> {
[INFO] [stdout]     | |_____________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/pipeline/mps.rs:128:1
[INFO] [stdout]     |
[INFO] [stdout] 128 | / pub async fn mp6_embedding_queue(
[INFO] [stdout] 129 | |     runtime: std::sync::Arc<std::sync::RwLock<crate::AgentRuntime>>,
[INFO] [stdout] 130 | |     message: &Memory,
[INFO] [stdout] 131 | |     text: String,
[INFO] [stdout] 132 | | ) -> bool {
[INFO] [stdout]     | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/pipeline/mps.rs:193:1
[INFO] [stdout]     |
[INFO] [stdout] 193 | / pub fn mp7_available_actions(
[INFO] [stdout] 194 | |     runtime: std::sync::Arc<std::sync::RwLock<crate::AgentRuntime>>,
[INFO] [stdout] 195 | | ) -> Vec<String> {
[INFO] [stdout]     | |________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/pipeline/mps.rs:204:1
[INFO] [stdout]     |
[INFO] [stdout] 204 | / pub fn mp8_agent_candidates(
[INFO] [stdout] 205 | |     runtime: std::sync::Arc<std::sync::RwLock<crate::AgentRuntime>>,
[INFO] [stdout] 206 | | ) -> Vec<String> {
[INFO] [stdout]     | |________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/pipeline/mps.rs:231:1
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub fn mp9_keywords_phonetic_similarity(keywords: &[String]) -> (Vec<(String, String)>, f32) {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/pipeline/phases.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / pub async fn execute_phase0(
[INFO] [stdout]  8 | |     runtime: Arc<RwLock<crate::AgentRuntime>>,
[INFO] [stdout]  9 | |     message: &Memory,
[INFO] [stdout] 10 | | ) -> crate::Result<PhaseProfile> {
[INFO] [stdout]    | |________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/pipeline/phases.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | / pub async fn execute_phase1(
[INFO] [stdout] 25 | |     runtime: Arc<RwLock<crate::AgentRuntime>>,
[INFO] [stdout] 26 | |     message: &Memory,
[INFO] [stdout] 27 | | ) -> crate::Result<PhaseProfile> {
[INFO] [stdout]    | |________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/pipeline/phases.rs:62:1
[INFO] [stdout]    |
[INFO] [stdout] 62 | / pub async fn execute_phase2(
[INFO] [stdout] 63 | |     runtime: Arc<RwLock<crate::AgentRuntime>>,
[INFO] [stdout] 64 | |     message: &Memory,
[INFO] [stdout] 65 | | ) -> crate::Result<PhaseProfile> {
[INFO] [stdout]    | |________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]  --> src/pipeline/profiler.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn summarize_profiles(tag: &str, entries: &[(String, i64)], total_ms: i64) {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/pipeline/types.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct MPResult<T> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/pipeline/types.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     pub name: &'static str,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/pipeline/types.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     pub value: T,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/pipeline/types.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub duration_ms: i64,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/pipeline/types.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct PhaseProfile {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/pipeline/types.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub phase: &'static str,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/pipeline/types.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub total_ms: i64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/pipeline/types.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub bottlenecks: Vec<(String, i64)>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/workers/mod.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub mod embedding_worker;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/workers/embedding_worker.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct EmbeddingWorker;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/workers/embedding_worker.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub fn new() -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 25s
[INFO] running `Command { std: "docker" "inspect" "58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling tokio v1.48.0
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling zerocopy-derive v0.8.27
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling predicates-core v1.0.9
[INFO] [stderr]    Compiling clap_lex v0.7.6
[INFO] [stderr]    Compiling mockall_derive v0.13.1
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling clap_builder v4.5.52
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling euclid v0.20.14
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling tungstenite v0.24.0
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling names v0.14.0
[INFO] [stderr]    Compiling clap v4.5.52
[INFO] [stderr]    Compiling predicates-tree v1.0.12
[INFO] [stderr]    Compiling pdf-extract v0.7.12
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling tokio-util v0.7.17
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling h2 v0.4.12
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling tower-http v0.6.6
[INFO] [stderr]    Compiling sqlx-postgres v0.8.6
[INFO] [stderr]    Compiling sqlx-sqlite v0.8.6
[INFO] [stderr]    Compiling tokio-tungstenite v0.24.0
[INFO] [stderr]    Compiling backoff v0.4.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling predicates v3.1.3
[INFO] [stderr]    Compiling tower-http v0.5.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling fragile v2.0.1
[INFO] [stderr]    Compiling downcast v0.11.0
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling mockall v0.13.1
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]    Compiling tokio-test v0.4.4
[INFO] [stderr]    Compiling hyper-util v0.1.18
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]    Compiling reqwest v0.12.24
[INFO] [stderr]    Compiling sqlx v0.8.6
[INFO] [stderr]    Compiling reqwest-eventsource v0.6.0
[INFO] [stderr]    Compiling async-openai v0.24.1
[INFO] [stderr]    Compiling zoey-core v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Content`
[INFO] [stdout]  --> src/agent_api/types.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::types::{Content, Memory, State, UUID};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::planner::tokens::TokenCounter`
[INFO] [stdout]    --> src/message.rs:932:29
[INFO] [stdout]     |
[INFO] [stdout] 932 |                         use crate::planner::tokens::TokenCounter;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `double_metaphone` and `normalized_similarity`
[INFO] [stdout]  --> src/preprocessor.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::nlp::{double_metaphone, normalized_similarity};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::Result`
[INFO] [stdout]  --> src/pipeline/mps.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runtime::legacy::LockRecovery`
[INFO] [stdout]  --> src/workers/embedding_worker.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::runtime::legacy::LockRecovery;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Content`
[INFO] [stdout]  --> src/agent_api/types.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::types::{Content, Memory, State, UUID};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RuntimeOpts` and `types::Character`
[INFO] [stdout]   --> src/agent_api/tests.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 |     use crate::{types::Character, AgentRuntime, RuntimeOpts};
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Request` and `body::Body`
[INFO] [stdout]    --> src/agent_api/tests.rs:440:9
[INFO] [stdout]     |
[INFO] [stdout] 440 |         body::Body,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 441 |         extract::{Path, State as AxumState},
[INFO] [stdout] 442 |         http::{Request, StatusCode},
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::planner::tokens::TokenCounter`
[INFO] [stdout]    --> src/message.rs:932:29
[INFO] [stdout]     |
[INFO] [stdout] 932 |                         use crate::planner::tokens::TokenCounter;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `regex::Regex`
[INFO] [stdout]     --> src/message.rs:1678:9
[INFO] [stdout]      |
[INFO] [stdout] 1678 |     use regex::Regex;
[INFO] [stdout]      |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/agent_api/handlers.rs:446:13
[INFO] [stdout]     |
[INFO] [stdout] 265 |             Err(_) => {
[INFO] [stdout]     |             ------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 446 |             Err(e) => {
[INFO] [stdout]     |             ^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/zoey_core-89181f6ce1404e35.long-type-17922626834012922751.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `double_metaphone` and `normalized_similarity`
[INFO] [stdout]  --> src/preprocessor.rs:2:18
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::nlp::{double_metaphone, normalized_similarity};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::Result`
[INFO] [stdout]  --> src/pipeline/mps.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runtime::legacy::LockRecovery`
[INFO] [stdout]  --> src/workers/embedding_worker.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::runtime::legacy::LockRecovery;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/training.rs:754:21
[INFO] [stdout]     |
[INFO] [stdout] 754 |                 let mut s = sample.clone();
[INFO] [stdout]     |                     ----^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/agent_api/handlers.rs:446:13
[INFO] [stdout]     |
[INFO] [stdout] 265 |             Err(_) => {
[INFO] [stdout]     |             ------ matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 446 |             Err(e) => {
[INFO] [stdout]     |             ^^^^^^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/zoey_core-f3e196d24706cf37.long-type-5052048419234097130.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/message.rs:256:13
[INFO] [stdout]     |
[INFO] [stdout] 256 |         let mut state = self.compose_state_with_runtime_ref(&message).await?;
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/training.rs:754:21
[INFO] [stdout]     |
[INFO] [stdout] 754 |                 let mut s = sample.clone();
[INFO] [stdout]     |                     ----^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/message.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |         let mut prompt = compose_prompt_from_state(&state, template_str).unwrap_or_else(|_| {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/runtime/legacy.rs:1089:17
[INFO] [stdout]      |
[INFO] [stdout] 1089 |             let mut updated = memory.clone();
[INFO] [stdout]      |                 ----^^^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/message.rs:256:13
[INFO] [stdout]     |
[INFO] [stdout] 256 |         let mut state = self.compose_state_with_runtime_ref(&message).await?;
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/message.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |         let mut prompt = compose_prompt_from_state(&state, template_str).unwrap_or_else(|_| {
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/runtime/legacy.rs:1089:17
[INFO] [stdout]      |
[INFO] [stdout] 1089 |             let mut updated = memory.clone();
[INFO] [stdout]      |                 ----^^^^^^^
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `storage` in initializer of `agent::Character`
[INFO] [stdout]    --> src/zoeyos.rs:888:9
[INFO] [stdout]     |
[INFO] [stdout] 888 |         Character {
[INFO] [stdout]     |         ^^^^^^^^^ missing `storage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_chunk_at` is assigned to, but never used
[INFO] [stdout]    --> src/agent_api/handlers.rs:281:21
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 let mut last_chunk_at = Instant::now();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_last_chunk_at` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_id`
[INFO] [stdout]    --> src/agent_api/handlers.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 |         let entity_id = req_clone.entity_id.unwrap_or_else(Uuid::new_v4);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_chunk_at` is never read
[INFO] [stdout]    --> src/agent_api/handlers.rs:288:21
[INFO] [stdout]     |
[INFO] [stdout] 288 |                     last_chunk_at = Instant::now();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `runtime_ref`
[INFO] [stdout]    --> src/message.rs:355:21
[INFO] [stdout]     |
[INFO] [stdout] 355 |                 let runtime_ref = Arc::new(RuntimeRef::new(&self.runtime));
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_runtime_ref`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enabled`
[INFO] [stdout]    --> src/preprocessor.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |             let enabled = {
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enabled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `adapter_opt`
[INFO] [stdout]    --> src/preprocessor.rs:143:17
[INFO] [stdout]     |
[INFO] [stdout] 143 |             let adapter_opt = rt_arc.read().unwrap().adapter.read().unwrap().clone();
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_adapter_opt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handler_opt`
[INFO] [stdout]    --> src/preprocessor.rs:144:17
[INFO] [stdout]     |
[INFO] [stdout] 144 |             let handler_opt = rt_arc
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_handler_opt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `queued`
[INFO] [stdout]    --> src/preprocessor.rs:245:37
[INFO] [stdout]     |
[INFO] [stdout] 245 | ...                   let queued = rt
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_queued`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pref`
[INFO] [stdout]     --> src/message.rs:1055:18
[INFO] [stdout]      |
[INFO] [stdout] 1055 |             Some(pref) => {
[INFO] [stdout]      |                  ^^^^ help: if this is intentional, prefix it with an underscore: `_pref`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/agent_api/handlers.rs:1787:14
[INFO] [stdout]      |
[INFO] [stdout] 1787 |     let (tx, mut rx) = tokio::sync::mpsc::channel::<MemoryWorkItem>(1000);
[INFO] [stdout]      |              ----^^
[INFO] [stdout]      |              |
[INFO] [stdout]      |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_tx`
[INFO] [stdout]     --> src/agent_api/handlers.rs:1797:18
[INFO] [stdout]      |
[INFO] [stdout] 1797 |             let (new_tx, new_rx) = tokio::sync::mpsc::channel::<MemoryWorkItem>(1000);
[INFO] [stdout]      |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_rx`
[INFO] [stdout]     --> src/agent_api/handlers.rs:1797:26
[INFO] [stdout]      |
[INFO] [stdout] 1797 |             let (new_tx, new_rx) = tokio::sync::mpsc::channel::<MemoryWorkItem>(1000);
[INFO] [stdout]      |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_state`
[INFO] [stdout]     --> src/agent_api/handlers.rs:2763:11
[INFO] [stdout]      |
[INFO] [stdout] 2763 |     State(server_state): State<ServerState>,
[INFO] [stdout]      |           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_state`
[INFO] [stdout]     --> src/agent_api/handlers.rs:2833:11
[INFO] [stdout]      |
[INFO] [stdout] 2833 |     State(server_state): State<ServerState>,
[INFO] [stdout]      |           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `last_update`
[INFO] [stdout]    --> src/agent_api/server.rs:302:20
[INFO] [stdout]     |
[INFO] [stdout] 302 |         |(runtime, last_update)| async move {
[INFO] [stdout]     |                    ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_update`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0063]: missing field `storage` in initializer of `agent::Character`
[INFO] [stdout]    --> src/secrets.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 |         Character {
[INFO] [stdout]     |         ^^^^^^^^^ missing `storage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `last_chunk_at` is assigned to, but never used
[INFO] [stdout]    --> src/agent_api/handlers.rs:281:21
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 let mut last_chunk_at = Instant::now();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_last_chunk_at` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_id`
[INFO] [stdout]    --> src/agent_api/handlers.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 |         let entity_id = req_clone.entity_id.unwrap_or_else(Uuid::new_v4);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `last_chunk_at` is never read
[INFO] [stdout]    --> src/agent_api/handlers.rs:288:21
[INFO] [stdout]     |
[INFO] [stdout] 288 |                     last_chunk_at = Instant::now();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `runtime_ref`
[INFO] [stdout]    --> src/message.rs:355:21
[INFO] [stdout]     |
[INFO] [stdout] 355 |                 let runtime_ref = Arc::new(RuntimeRef::new(&self.runtime));
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_runtime_ref`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enabled`
[INFO] [stdout]    --> src/preprocessor.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |             let enabled = {
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enabled`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `adapter_opt`
[INFO] [stdout]    --> src/preprocessor.rs:143:17
[INFO] [stdout]     |
[INFO] [stdout] 143 |             let adapter_opt = rt_arc.read().unwrap().adapter.read().unwrap().clone();
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_adapter_opt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handler_opt`
[INFO] [stdout]    --> src/preprocessor.rs:144:17
[INFO] [stdout]     |
[INFO] [stdout] 144 |             let handler_opt = rt_arc
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_handler_opt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `queued`
[INFO] [stdout]    --> src/preprocessor.rs:245:37
[INFO] [stdout]     |
[INFO] [stdout] 245 | ...                   let queued = rt
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_queued`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pref`
[INFO] [stdout]     --> src/message.rs:1055:18
[INFO] [stdout]      |
[INFO] [stdout] 1055 |             Some(pref) => {
[INFO] [stdout]      |                  ^^^^ help: if this is intentional, prefix it with an underscore: `_pref`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/agent_api/handlers.rs:1787:14
[INFO] [stdout]      |
[INFO] [stdout] 1787 |     let (tx, mut rx) = tokio::sync::mpsc::channel::<MemoryWorkItem>(1000);
[INFO] [stdout]      |              ----^^
[INFO] [stdout]      |              |
[INFO] [stdout]      |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_tx`
[INFO] [stdout]     --> src/agent_api/handlers.rs:1797:18
[INFO] [stdout]      |
[INFO] [stdout] 1797 |             let (new_tx, new_rx) = tokio::sync::mpsc::channel::<MemoryWorkItem>(1000);
[INFO] [stdout]      |                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_rx`
[INFO] [stdout]     --> src/agent_api/handlers.rs:1797:26
[INFO] [stdout]      |
[INFO] [stdout] 1797 |             let (new_tx, new_rx) = tokio::sync::mpsc::channel::<MemoryWorkItem>(1000);
[INFO] [stdout]      |                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `academic_keywords`
[INFO] [stdout]    --> src/planner/complexity.rs:233:13
[INFO] [stdout]     |
[INFO] [stdout] 233 |         let academic_keywords = ["research", "study", "analysis", "theory", "hypothesis"];
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_academic_keywords`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `score` is never read
[INFO] [stdout]    --> src/planner/complexity.rs:198:30
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let mut score: f32 = 0.0;
[INFO] [stdout]     |                              ^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 235 |         score = 0.2 + 0.15 * hits as f32;
[INFO] [stdout]     |         -------------------------------- `score` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_state`
[INFO] [stdout]     --> src/agent_api/handlers.rs:2763:11
[INFO] [stdout]      |
[INFO] [stdout] 2763 |     State(server_state): State<ServerState>,
[INFO] [stdout]      |           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_state`
[INFO] [stdout]     --> src/agent_api/handlers.rs:2833:11
[INFO] [stdout]      |
[INFO] [stdout] 2833 |     State(server_state): State<ServerState>,
[INFO] [stdout]      |           ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `last_update`
[INFO] [stdout]    --> src/agent_api/server.rs:302:20
[INFO] [stdout]     |
[INFO] [stdout] 302 |         |(runtime, last_update)| async move {
[INFO] [stdout]     |                    ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_last_update`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/agent_api/server.rs:566:13
[INFO] [stdout]     |
[INFO] [stdout] 566 |         let mut server = AgentApiServer::new(config, runtime);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `runtime`
[INFO] [stdout]    --> src/pipeline/mps.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 |     runtime: std::sync::Arc<std::sync::RwLock<crate::AgentRuntime>>,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_runtime`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `zoey-core` (lib); 28 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/1.99.0-beta.8-x86_64-unknown-linux-gnu/bin/rustc --crate-name zoey_core --edition=2021 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="default"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("default", "otel"))' -C metadata=7556d84acd31e40c -C extra-filename=-89181f6ce1404e35 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern aes_gcm=/opt/rustwide/target/debug/deps/libaes_gcm-52611937806fa7bd.rmeta --extern anyhow=/opt/rustwide/target/debug/deps/libanyhow-4342eda19ce54c8e.rmeta --extern argon2=/opt/rustwide/target/debug/deps/libargon2-13aa6fd3b0b6a0bf.rmeta --extern async_openai=/opt/rustwide/target/debug/deps/libasync_openai-8209ef7815ca1674.rmeta --extern async_trait=/opt/rustwide/target/debug/deps/libasync_trait-5ee2d0ee482bbb3b.so --extern axum=/opt/rustwide/target/debug/deps/libaxum-a04f0df95c3d0129.rmeta --extern base64=/opt/rustwide/target/debug/deps/libbase64-32787b0325ea6df8.rmeta --extern calamine=/opt/rustwide/target/debug/deps/libcalamine-85fcaa38976232d3.rmeta --extern chrono=/opt/rustwide/target/debug/deps/libchrono-9442a6db71ddb8b2.rmeta --extern dotenvy=/opt/rustwide/target/debug/deps/libdotenvy-6d8015f91495fe74.rmeta --extern futures_util=/opt/rustwide/target/debug/deps/libfutures_util-ee73c6f23c2265a8.rmeta --extern handlebars=/opt/rustwide/target/debug/deps/libhandlebars-97dc40bde33cbbc9.rmeta --extern hex=/opt/rustwide/target/debug/deps/libhex-13e08b3b00984ab7.rmeta --extern names=/opt/rustwide/target/debug/deps/libnames-91aaa29a27ef67fc.rmeta --extern once_cell=/opt/rustwide/target/debug/deps/libonce_cell-e9252a7b5119f3eb.rmeta --extern pdf_extract=/opt/rustwide/target/debug/deps/libpdf_extract-874ed05baa72ebaf.rmeta --extern rand=/opt/rustwide/target/debug/deps/librand-b9cba022b5ac7520.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-e1efcc34bb1ecb85.rmeta --extern reqwest=/opt/rustwide/target/debug/deps/libreqwest-43ac5725106e14ee.rmeta --extern rust_stemmers=/opt/rustwide/target/debug/deps/librust_stemmers-a8f7994912b4dfa3.rmeta --extern serde=/opt/rustwide/target/debug/deps/libserde-437b8ca9bf186a88.rmeta --extern serde_json=/opt/rustwide/target/debug/deps/libserde_json-3cddb4140b501717.rmeta --extern sha2=/opt/rustwide/target/debug/deps/libsha2-3493e52f7282fae4.rmeta --extern sqlx=/opt/rustwide/target/debug/deps/libsqlx-0fe6ae4b3edad63a.rmeta --extern thiserror=/opt/rustwide/target/debug/deps/libthiserror-3f9a495558d64776.rmeta --extern tokio=/opt/rustwide/target/debug/deps/libtokio-a08d41abc02b09dd.rmeta --extern tokio_stream=/opt/rustwide/target/debug/deps/libtokio_stream-c6fae08368dd1026.rmeta --extern tower=/opt/rustwide/target/debug/deps/libtower-4cff6942e83837d9.rmeta --extern tower_http=/opt/rustwide/target/debug/deps/libtower_http-0367d5380684a6e6.rmeta --extern tracing=/opt/rustwide/target/debug/deps/libtracing-cf1daa7d06404d83.rmeta --extern tracing_subscriber=/opt/rustwide/target/debug/deps/libtracing_subscriber-a18b79402c805a0a.rmeta --extern url=/opt/rustwide/target/debug/deps/liburl-35afdd8b81dc4011.rmeta --extern uuid=/opt/rustwide/target/debug/deps/libuuid-d8e1b3873fe3d57a.rmeta --cap-lints=warn -L native=/opt/rustwide/target/debug/build/ring-ea44fb209191b0d0/out -L native=/opt/rustwide/target/debug/build/libsqlite3-sys-91af0a9c9b2d704e/out` (signal: 9, SIGKILL: kill)
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `zoey-core` (lib test) due to 2 previous errors; 29 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/1.99.0-beta.8-x86_64-unknown-linux-gnu/bin/rustc --crate-name zoey_core --edition=2021 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --test --cfg 'feature="default"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("default", "otel"))' -C metadata=997799f5d55a8576 -C extra-filename=-f3e196d24706cf37 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern aes_gcm=/opt/rustwide/target/debug/deps/libaes_gcm-52611937806fa7bd.rlib --extern anyhow=/opt/rustwide/target/debug/deps/libanyhow-4342eda19ce54c8e.rlib --extern argon2=/opt/rustwide/target/debug/deps/libargon2-13aa6fd3b0b6a0bf.rlib --extern async_openai=/opt/rustwide/target/debug/deps/libasync_openai-8209ef7815ca1674.rlib --extern async_trait=/opt/rustwide/target/debug/deps/libasync_trait-5ee2d0ee482bbb3b.so --extern axum=/opt/rustwide/target/debug/deps/libaxum-a04f0df95c3d0129.rlib --extern base64=/opt/rustwide/target/debug/deps/libbase64-32787b0325ea6df8.rlib --extern calamine=/opt/rustwide/target/debug/deps/libcalamine-85fcaa38976232d3.rlib --extern chrono=/opt/rustwide/target/debug/deps/libchrono-9442a6db71ddb8b2.rlib --extern criterion=/opt/rustwide/target/debug/deps/libcriterion-240eef189dd332cc.rlib --extern dotenvy=/opt/rustwide/target/debug/deps/libdotenvy-6d8015f91495fe74.rlib --extern futures_util=/opt/rustwide/target/debug/deps/libfutures_util-ee73c6f23c2265a8.rlib --extern handlebars=/opt/rustwide/target/debug/deps/libhandlebars-97dc40bde33cbbc9.rlib --extern hex=/opt/rustwide/target/debug/deps/libhex-13e08b3b00984ab7.rlib --extern mockall=/opt/rustwide/target/debug/deps/libmockall-2a9736a977b7386c.rlib --extern names=/opt/rustwide/target/debug/deps/libnames-91aaa29a27ef67fc.rlib --extern once_cell=/opt/rustwide/target/debug/deps/libonce_cell-e9252a7b5119f3eb.rlib --extern pdf_extract=/opt/rustwide/target/debug/deps/libpdf_extract-874ed05baa72ebaf.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-b9cba022b5ac7520.rlib --extern regex=/opt/rustwide/target/debug/deps/libregex-e1efcc34bb1ecb85.rlib --extern reqwest=/opt/rustwide/target/debug/deps/libreqwest-43ac5725106e14ee.rlib --extern rust_stemmers=/opt/rustwide/target/debug/deps/librust_stemmers-a8f7994912b4dfa3.rlib --extern serde=/opt/rustwide/target/debug/deps/libserde-437b8ca9bf186a88.rlib --extern serde_json=/opt/rustwide/target/debug/deps/libserde_json-3cddb4140b501717.rlib --extern sha2=/opt/rustwide/target/debug/deps/libsha2-3493e52f7282fae4.rlib --extern sqlx=/opt/rustwide/target/debug/deps/libsqlx-0fe6ae4b3edad63a.rlib --extern tempfile=/opt/rustwide/target/debug/deps/libtempfile-28732285ddcdd372.rlib --extern thiserror=/opt/rustwide/target/debug/deps/libthiserror-3f9a495558d64776.rlib --extern tokio=/opt/rustwide/target/debug/deps/libtokio-a08d41abc02b09dd.rlib --extern tokio_stream=/opt/rustwide/target/debug/deps/libtokio_stream-c6fae08368dd1026.rlib --extern tokio_test=/opt/rustwide/target/debug/deps/libtokio_test-50a0e1a705c28189.rlib --extern tower=/opt/rustwide/target/debug/deps/libtower-4cff6942e83837d9.rlib --extern tower_http=/opt/rustwide/target/debug/deps/libtower_http-0367d5380684a6e6.rlib --extern tracing=/opt/rustwide/target/debug/deps/libtracing-cf1daa7d06404d83.rlib --extern tracing_subscriber=/opt/rustwide/target/debug/deps/libtracing_subscriber-a18b79402c805a0a.rlib --extern url=/opt/rustwide/target/debug/deps/liburl-35afdd8b81dc4011.rlib --extern uuid=/opt/rustwide/target/debug/deps/libuuid-d8e1b3873fe3d57a.rlib --cap-lints=warn -L native=/opt/rustwide/target/debug/build/ring-ea44fb209191b0d0/out -L native=/opt/rustwide/target/debug/build/libsqlite3-sys-91af0a9c9b2d704e/out` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a", kill_on_drop: false }`
[INFO] [stdout] 58619e29f5ad27ec33360d36172af74928148ac50ad1671060f89b7abc9a040a
