[INFO] cloning repository https://github.com/rasonyang/oh-my-code
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rasonyang/oh-my-code" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frasonyang%2Foh-my-code", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frasonyang%2Foh-my-code'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] efe4e25c9a9723b2a407d7f9029996251726c3c0
[INFO] testing rasonyang/oh-my-code against 1.98.0-beta.6+cargoflags=--release for beta-1.98-release-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frasonyang%2Foh-my-code" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/rasonyang/oh-my-code
[INFO] finished tweaking git repo https://github.com/rasonyang/oh-my-code
[INFO] tweaked toml for git repo https://github.com/rasonyang/oh-my-code written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/rasonyang/oh-my-code on toolchain 1.98.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/rasonyang/oh-my-code 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.98.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66
[INFO] running `Command { std: "docker" "start" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66", 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" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66", 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" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling cc v1.2.58
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling openssl v0.10.76
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling indexmap v2.13.1
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling nix v0.28.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling openssl-sys v0.9.112
[INFO] [stderr]    Compiling onig_sys v69.9.1
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tokio v1.51.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling grep-matcher v0.1.8
[INFO] [stderr]    Compiling quick-xml v0.38.4
[INFO] [stderr]    Compiling nibble_vec v0.1.0
[INFO] [stderr]    Compiling endian-type v0.1.2
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling plist v1.8.0
[INFO] [stderr]    Compiling yaml-rust v0.4.5
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling onig v6.5.1
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling radix_trie v0.2.1
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling encoding_rs_io v0.1.7
[INFO] [stderr]    Compiling memmap2 v0.9.10
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling syntect v5.3.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling rustyline v14.0.0
[INFO] [stderr]    Compiling grep-searcher v0.1.16
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling uuid v1.23.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling grep-regex v0.1.14
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling oh-my-code v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `OpenAIMessage` is more private than the item `to_openai_messages`
[INFO] [stdout]    --> src/model/openai.rs:122:1
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub fn to_openai_messages(messages: &[Message]) -> Vec<OpenAIMessage> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `to_openai_messages` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `OpenAIMessage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/model/openai.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout]  25 | struct OpenAIMessage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `OpenAITool` is more private than the item `to_openai_tools`
[INFO] [stdout]    --> src/model/openai.rs:223:1
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub fn to_openai_tools(tools: &[ToolDef]) -> Vec<OpenAITool> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `to_openai_tools` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `OpenAITool` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/model/openai.rs:50:1
[INFO] [stdout]     |
[INFO] [stdout]  50 | struct OpenAITool {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_plan_mode` is never used
[INFO] [stdout]   --> src/agent/mod.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Agent {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn set_plan_mode(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `name` and `supported_models` are never used
[INFO] [stdout]   --> src/model/mod.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub trait Provider: Send + Sync {
[INFO] [stdout]    |           -------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 22 |     fn supported_models(&self) -> Vec<ModelInfo>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InputJsonComplete` is never constructed
[INFO] [stdout]   --> src/model/types.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub enum StreamEvent {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 51 |     InputJsonComplete {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StreamEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModelInfo` is never constructed
[INFO] [stdout]   --> src/model/types.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct ModelInfo {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `assistant` and `tool_use_blocks` are never used
[INFO] [stdout]    --> src/model/types.rs:94:12
[INFO] [stdout]     |
[INFO] [stdout]  84 | impl Message {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn assistant(text: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn tool_use_blocks(&self) -> Vec<(&str, &str, &Value)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `index` is never read
[INFO] [stdout]   --> src/model/openai.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | struct OpenAISseToolCall {
[INFO] [stdout]    |        ----------------- field in this struct
[INFO] [stdout] 84 |     index: Option<u32>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OpenAISseToolCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `provider_name` is never read
[INFO] [stdout]    --> src/model/openai.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout]  97 | pub struct OpenAIProvider {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 101 |     provider_name: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchConfig` is never constructed
[INFO] [stdout]   --> src/search/mod.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct SearchConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchEngine` is never constructed
[INFO] [stdout]   --> src/search/mod.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct SearchEngine {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `ignore_overrides` are never used
[INFO] [stdout]   --> src/search/mod.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl SearchEngine {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new(config: SearchConfig) -> Result<Self> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn ignore_overrides(&self, base_path: &Path) -> Result<Override> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Highlighter` is never constructed
[INFO] [stdout]  --> src/search/highlight.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Highlighter {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `highlight_file`, and `with_line_numbers` are never used
[INFO] [stdout]   --> src/search/highlight.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Highlighter {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Result<Self> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn highlight_file(&self, path: &Path, content: &str) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn with_line_numbers(content: &str) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `created_at` is never read
[INFO] [stdout]   --> src/session/storage.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct SessionSummary {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 19 |     pub id: String,
[INFO] [stdout] 20 |     pub created_at: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SessionSummary` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 4m 12s
[INFO] running `Command { std: "docker" "inspect" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66", 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" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling tokio v1.51.0
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling tokio-test v0.4.5
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling wiremock v0.6.5
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling oh-my-code v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `OpenAIMessage` is more private than the item `openai::to_openai_messages`
[INFO] [stdout]    --> src/model/openai.rs:122:1
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub fn to_openai_messages(messages: &[Message]) -> Vec<OpenAIMessage> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `openai::to_openai_messages` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `OpenAIMessage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/model/openai.rs:25:1
[INFO] [stdout]     |
[INFO] [stdout]  25 | struct OpenAIMessage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `OpenAITool` is more private than the item `openai::to_openai_tools`
[INFO] [stdout]    --> src/model/openai.rs:223:1
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub fn to_openai_tools(tools: &[ToolDef]) -> Vec<OpenAITool> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `openai::to_openai_tools` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `OpenAITool` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/model/openai.rs:50:1
[INFO] [stdout]     |
[INFO] [stdout]  50 | struct OpenAITool {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `name` and `supported_models` are never used
[INFO] [stdout]   --> src/model/mod.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub trait Provider: Send + Sync {
[INFO] [stdout]    |           -------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 22 |     fn supported_models(&self) -> Vec<ModelInfo>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InputJsonComplete` is never constructed
[INFO] [stdout]   --> src/model/types.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub enum StreamEvent {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 51 |     InputJsonComplete {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StreamEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModelInfo` is never constructed
[INFO] [stdout]   --> src/model/types.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct ModelInfo {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `index` is never read
[INFO] [stdout]   --> src/model/openai.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | struct OpenAISseToolCall {
[INFO] [stdout]    |        ----------------- field in this struct
[INFO] [stdout] 84 |     index: Option<u32>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OpenAISseToolCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `provider_name` is never read
[INFO] [stdout]    --> src/model/openai.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout]  97 | pub struct OpenAIProvider {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 101 |     provider_name: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `highlighter` is never read
[INFO] [stdout]   --> src/search/mod.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct SearchEngine {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 16 |     pub config: SearchConfig,
[INFO] [stdout] 17 |     pub highlighter: highlight::Highlighter,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ignore_overrides` is never used
[INFO] [stdout]   --> src/search/mod.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl SearchEngine {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn ignore_overrides(&self, base_path: &Path) -> Result<Override> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `created_at` is never read
[INFO] [stdout]   --> src/session/storage.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct SessionSummary {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 19 |     pub id: String,
[INFO] [stdout] 20 |     pub created_at: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SessionSummary` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 11s
[INFO] running `Command { std: "docker" "inspect" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66", 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" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.6" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: type `OpenAIMessage` is more private than the item `openai::to_openai_messages`
[INFO] [stderr]    --> src/model/openai.rs:122:1
[INFO] [stderr]     |
[INFO] [stderr] 122 | pub fn to_openai_messages(messages: &[Message]) -> Vec<OpenAIMessage> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `openai::to_openai_messages` is reachable at visibility `pub(crate)`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `OpenAIMessage` is only usable at visibility `pub(self)`
[INFO] [stderr]    --> src/model/openai.rs:25:1
[INFO] [stderr]     |
[INFO] [stderr]  25 | struct OpenAIMessage {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `OpenAITool` is more private than the item `openai::to_openai_tools`
[INFO] [stderr]    --> src/model/openai.rs:223:1
[INFO] [stderr]     |
[INFO] [stderr] 223 | pub fn to_openai_tools(tools: &[ToolDef]) -> Vec<OpenAITool> {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `openai::to_openai_tools` is reachable at visibility `pub(crate)`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `OpenAITool` is only usable at visibility `pub(self)`
[INFO] [stderr]    --> src/model/openai.rs:50:1
[INFO] [stderr]     |
[INFO] [stderr]  50 | struct OpenAITool {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `name` and `supported_models` are never used
[INFO] [stderr]   --> src/model/mod.rs:21:8
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub trait Provider: Send + Sync {
[INFO] [stderr]    |           -------- methods in this trait
[INFO] [stderr] ...
[INFO] [stderr] 21 |     fn name(&self) -> &str;
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 22 |     fn supported_models(&self) -> Vec<ModelInfo>;
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `InputJsonComplete` is never constructed
[INFO] [stderr]   --> src/model/types.rs:51:5
[INFO] [stderr]    |
[INFO] [stderr] 40 | pub enum StreamEvent {
[INFO] [stderr]    |          ----------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 51 |     InputJsonComplete {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `StreamEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ModelInfo` is never constructed
[INFO] [stderr]   --> src/model/types.rs:77:12
[INFO] [stderr]    |
[INFO] [stderr] 77 | pub struct ModelInfo {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `index` is never read
[INFO] [stderr]   --> src/model/openai.rs:84:5
[INFO] [stderr]    |
[INFO] [stderr] 83 | struct OpenAISseToolCall {
[INFO] [stderr]    |        ----------------- field in this struct
[INFO] [stderr] 84 |     index: Option<u32>,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `OpenAISseToolCall` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `provider_name` is never read
[INFO] [stderr]    --> src/model/openai.rs:101:5
[INFO] [stderr]     |
[INFO] [stderr]  97 | pub struct OpenAIProvider {
[INFO] [stderr]     |            -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 101 |     provider_name: String,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `highlighter` is never read
[INFO] [stderr]   --> src/search/mod.rs:17:9
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct SearchEngine {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] 16 |     pub config: SearchConfig,
[INFO] [stderr] 17 |     pub highlighter: highlight::Highlighter,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `ignore_overrides` is never used
[INFO] [stderr]   --> src/search/mod.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 20 | impl SearchEngine {
[INFO] [stderr]    | ----------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 29 |     pub fn ignore_overrides(&self, base_path: &Path) -> Result<Override> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `created_at` is never read
[INFO] [stderr]   --> src/session/storage.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub struct SessionSummary {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] 19 |     pub id: String,
[INFO] [stderr] 20 |     pub created_at: String,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `SessionSummary` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: `oh-my-code` (bin "oh-my-code" test) generated 10 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.26s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/oh_my_code-a5c15f4743399583)
[INFO] [stdout] 
[INFO] [stdout] running 112 tests
[INFO] [stdout] test agent::plan::tests::test_plan_mode_clone_shares_state ... ok
[INFO] [stdout] test agent::executor::tests::test_executor_think_tool ... ok
[INFO] [stdout] test agent::executor::tests::test_executor_plan_mode_blocks_writes ... ok
[INFO] [stdout] test agent::plan::tests::test_plan_mode_default ... ok
[INFO] [stdout] test agent::plan::tests::test_plan_mode_toggle ... ok
[INFO] [stdout] test agent::executor::tests::test_executor_unknown_tool ... ok
[INFO] [stdout] test agent::tests::test_agent_clear_history ... ok
[INFO] [stdout] test agent::tests::test_agent_new ... ok
[INFO] [stdout] test agent::tests::test_agent_plan_mode_toggle ... ok
[INFO] [stdout] test config::tests::detect_anthropic_host_is_case_insensitive ... ok
[INFO] [stdout] test config::tests::detect_hostless_url_with_anthropic_in_path_falls_through_to_openai ... ok
[INFO] [stdout] test config::tests::detect_malformed_url_falls_through_to_openai ... ok
[INFO] [stdout] test config::tests::detect_openai_falls_through_to_bearer ... ok
[INFO] [stdout] test config::tests::detect_real_anthropic_uses_xapi_key ... ok
[INFO] [stdout] test config::tests::env_quick_start_all_three_set_activates_synthetic_provider_anthropic ... ok
[INFO] [stdout] test config::tests::detect_third_party_anthropic_path_is_case_insensitive ... ok
[INFO] [stdout] test config::tests::env_quick_start_openai_url_uses_bearer_and_openai_routing ... ok
[INFO] [stdout] test config::tests::env_quick_start_empty_string_vars_treated_as_unset ... ok
[INFO] [stdout] test config::tests::env_quick_start_partial_set_leaves_config_untouched ... ok
[INFO] [stdout] test config::tests::test_active_provider_config ... ok
[INFO] [stdout] test config::tests::env_quick_start_whitespace_only_vars_treated_as_unset ... ok
[INFO] [stdout] test config::tests::env_quick_start_minimax_anthropic_url_uses_bearer_and_minimax_anthropic_routing ... ok
[INFO] [stdout] test config::tests::env_quick_start_none_set_leaves_config_untouched ... ok
[INFO] [stdout] test config::tests::test_active_provider_missing ... ok
[INFO] [stdout] test config::tests::test_provider_config_auth_style_bearer ... ok
[INFO] [stdout] test config::tests::test_resolved_session_dir_tilde ... ok
[INFO] [stdout] test config::tests::test_parse_default_config ... ok
[INFO] [stdout] test config::tests::test_provider_config_auth_style_defaults_to_x_api_key ... ok
[INFO] [stdout] test config::tests::toml_loaded_providers_have_no_routing_name ... ok
[INFO] [stdout] test model::claude::tests::test_extract_system_prompt ... ok
[INFO] [stdout] test model::claude::tests::test_parse_sse_ignores_empty ... ok
[INFO] [stdout] test config::tests::test_default_config_serializes ... ok
[INFO] [stdout] test model::claude::tests::live_minimax_anthropic_roundtrip ... ok
[INFO] [stdout] test config::tests::detect_third_party_anthropic_path_uses_bearer ... ok
[INFO] [stdout] test model::claude::tests::test_parse_sse_ignores_event_lines ... ok
[INFO] [stdout] test model::claude::tests::test_parse_sse_message_stop ... ok
[INFO] [stdout] test model::claude::tests::test_parse_sse_text_delta ... ok
[INFO] [stdout] test model::claude::tests::test_to_claude_message_text ... ok
[INFO] [stdout] test model::claude::tests::test_to_claude_message_tool_result ... ok
[INFO] [stdout] test model::claude::tests::test_to_claude_tools ... ok
[INFO] [stdout] test model::openai::tests::test_parse_openai_sse_done ... ok
[INFO] [stdout] test model::claude::tests::test_parse_sse_tool_use_start ... ok
[INFO] [stdout] test model::openai::tests::test_parse_openai_sse_text_delta ... ok
[INFO] [stdout] test model::openai::tests::test_parse_openai_sse_tool_call_start ... ok
[INFO] [stdout] test model::openai::tests::test_to_openai_messages_system ... ok
[INFO] [stdout] test model::openai::tests::test_to_openai_messages_assistant_with_tool_calls ... ok
[INFO] [stdout] test model::openai::tests::test_to_openai_messages_tool_results ... ok
[INFO] [stdout] test model::openai::tests::test_to_openai_tools ... ok
[INFO] [stdout] test model::types::tests::test_content_block_serialization ... ok
[INFO] [stdout] test model::types::tests::test_message_assistant_constructor ... ok
[INFO] [stdout] test model::openai::tests::test_to_openai_messages_user ... ok
[INFO] [stdout] test model::types::tests::test_tool_results_message ... ok
[INFO] [stdout] test model::types::tests::test_tool_use_blocks_extraction ... ok
[INFO] [stdout] test model::types::tests::test_message_user_constructor ... ok
[INFO] [stdout] test search::finder::tests::test_find_no_matches ... ok
[INFO] [stdout] test search::highlight::tests::test_with_line_numbers ... ok
[INFO] [stdout] test search::finder::tests::test_find_all_rs ... ok
[INFO] [stdout] test search::finder::tests::test_find_with_glob_path ... ok
[INFO] [stdout] test search::finder::tests::test_find_max_results ... ok
[INFO] [stdout] test search::ripgrep::tests::test_grep_case_sensitive ... ok
[INFO] [stdout] test search::highlight::tests::test_highlighter_new ... ok
[INFO] [stdout] test search::ripgrep::tests::test_grep_no_matches ... ok
[INFO] [stdout] test search::ripgrep::tests::test_grep_basic ... ok
[INFO] [stdout] test session::storage::tests::test_list_sessions ... ok
[INFO] [stdout] test session::storage::tests::test_list_sessions_empty_dir ... ok
[INFO] [stdout] test session::storage::tests::test_save_and_load_session ... ok
[INFO] [stdout] test tool::bash::tests::test_bash_empty_command ... ok
[INFO] [stdout] test search::tests::test_search_engine_new ... ok
[INFO] [stdout] test search::ripgrep::tests::test_grep_max_results ... ok
[INFO] [stdout] test session::storage::tests::test_load_nonexistent_session ... ok
[INFO] [stdout] test search::highlight::tests::test_highlight_file_rust ... ok
[INFO] [stdout] test tool::file_edit::tests::test_file_edit_ambiguous ... ok
[INFO] [stdout] test tool::file_edit::tests::test_file_edit_basic ... ok
[INFO] [stdout] test tool::file_edit::tests::test_file_edit_not_found_string ... ok
[INFO] [stdout] test tool::file_read::tests::test_file_read_basic ... ok
[INFO] [stdout] test tool::file_edit::tests::test_file_edit_replace_all ... ok
[INFO] [stdout] test tool::file_read::tests::test_file_read_not_found ... ok
[INFO] [stdout] test tool::file_read::tests::test_file_read_with_offset_and_limit ... ok
[INFO] [stdout] test tool::file_write::tests::test_file_write_creates_directories ... ok
[INFO] [stdout] test tool::file_write::tests::test_file_write_missing_path ... ok
[INFO] [stdout] test tool::file_read::tests::test_file_read_missing_path ... ok
[INFO] [stdout] test tool::file_write::tests::test_file_write_new_file ... ok
[INFO] [stdout] test tool::bash::tests::test_bash_pwd ... ok
[INFO] [stdout] test tool::bash::tests::test_bash_stderr ... ok
[INFO] [stdout] test tool::glob::tests::test_glob_tool_missing_pattern ... ok
[INFO] [stdout] test tool::grep::tests::test_format_matches ... ok
[INFO] [stdout] test tool::grep::tests::test_grep_tool_empty_pattern ... ok
[INFO] [stdout] test tool::grep::tests::test_grep_tool_missing_pattern ... ok
[INFO] [stdout] test tool::plan_mode::tests::test_enter_plan_mode ... ok
[INFO] [stdout] test tool::glob::tests::test_glob_tool_find_rs_files ... ok
[INFO] [stdout] test tool::grep::tests::test_grep_tool_search ... ok
[INFO] [stdout] test tool::bash::tests::test_bash_failing_command ... ok
[INFO] [stdout] test tool::plan_mode::tests::test_exit_plan_mode_already_disabled ... ok
[INFO] [stdout] test tool::plan_mode::tests::test_exit_plan_mode ... ok
[INFO] [stdout] test tool::tests::test_all_tools_registered ... ok
[INFO] [stdout] test tool::tests::test_registry_register_and_get ... ok
[INFO] [stdout] test tool::tests::test_tool_output_error ... ok
[INFO] [stdout] test tool::tests::test_tool_output_success ... ok
[INFO] [stdout] test tool::tests::test_registry_tool_defs ... ok
[INFO] [stdout] test tool::file_write::tests::test_file_write_overwrite ... ok
[INFO] [stdout] test tool::think::tests::test_think_tool_empty ... ok
[INFO] [stdout] test tool::web_fetch::tests::test_web_fetch_missing_url ... ok
[INFO] [stdout] test tool::think::tests::test_think_tool_basic ... ok
[INFO] [stdout] test tool::web_fetch::tests::test_web_fetch_empty_url ... ok
[INFO] [stdout] test tool::web_search::tests::test_extract_between ... ok
[INFO] [stdout] test tool::web_search::tests::test_extract_between_missing_end ... ok
[INFO] [stdout] test tool::web_search::tests::test_extract_between_not_found ... ok
[INFO] [stdout] test tool::web_search::tests::test_web_search_missing_query ... ok
[INFO] [stdout] test tool::bash::tests::test_bash_echo ... ok
[INFO] [stdout] test tool::plan_mode::tests::test_enter_plan_mode_already_enabled ... ok
[INFO] [stdout] test model::claude::tests::claude_provider_sends_bearer_header_when_auth_style_bearer ... ok
[INFO] [stdout] test model::claude::tests::claude_provider_sends_x_api_key_header_by_default ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 112 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66", kill_on_drop: false }`
[INFO] [stdout] 95d2d23b87b6a8a2df3ab8da78168e2b03a4fac3cf9f03746842f32bacd33f66
