[INFO] fetching crate saasexpress-core 0.2.0...
[INFO] testing saasexpress-core-0.2.0 against 1.94.0 for beta-1.95-1
[INFO] extracting crate saasexpress-core 0.2.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate saasexpress-core 0.2.0
[INFO] finished tweaking crates.io crate saasexpress-core 0.2.0
[INFO] tweaked toml for crates.io crate saasexpress-core 0.2.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate saasexpress-core 0.2.0 on toolchain 1.94.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.94.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate saasexpress-core 0.2.0 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.94.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded small_ctor v0.1.2
[INFO] [stderr]   Downloaded fastant v0.1.10
[INFO] [stderr]   Downloaded fastrace-macro v0.7.9
[INFO] [stderr]   Downloaded console-api v0.8.1
[INFO] [stderr]   Downloaded rtrb v0.3.2
[INFO] [stderr]   Downloaded fastrace v0.7.9
[INFO] [stderr]   Downloaded console-subscriber v0.4.1
[INFO] [stderr]   Downloaded hdrhistogram v7.5.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f19c20665b5c8785af5a526f447bdc6e289a2e375736112dde9d56f9980a5623
[INFO] running `Command { std: "docker" "start" "-a" "f19c20665b5c8785af5a526f447bdc6e289a2e375736112dde9d56f9980a5623", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f19c20665b5c8785af5a526f447bdc6e289a2e375736112dde9d56f9980a5623", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f19c20665b5c8785af5a526f447bdc6e289a2e375736112dde9d56f9980a5623", kill_on_drop: false }`
[INFO] [stdout] f19c20665b5c8785af5a526f447bdc6e289a2e375736112dde9d56f9980a5623
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-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" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 33ba81e25fd114b54636316131792676ed1665d29c8f4b35099f268717e5c251
[INFO] running `Command { std: "docker" "start" "-a" "33ba81e25fd114b54636316131792676ed1665d29c8f4b35099f268717e5c251", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]    Compiling smallvec v1.15.0
[INFO] [stderr]    Compiling tracing-core v0.1.33
[INFO] [stderr]    Compiling indexmap v2.9.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]    Compiling rustversion v1.0.20
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling miniz_oxide v0.8.8
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]    Compiling thread_local v1.1.8
[INFO] [stderr]    Compiling small_ctor v0.1.2
[INFO] [stderr]    Compiling web-time v1.1.0
[INFO] [stderr]    Compiling rtrb v0.3.2
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling humantime v2.2.0
[INFO] [stderr]    Compiling dotenv v0.15.0
[INFO] [stderr]    Compiling fastant v0.1.10
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling hdrhistogram v7.5.4
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.9.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling prost-derive v0.13.5
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling fastrace-macro v0.7.9
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling tokio v1.46.1
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling pin-project v1.1.10
[INFO] [stderr]    Compiling prost v0.13.5
[INFO] [stderr]    Compiling prost-types v0.13.5
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling uuid v1.16.0
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling fastrace v0.7.9
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling tokio-util v0.7.15
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling h2 v0.4.11
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling hyper v1.6.0
[INFO] [stderr]    Compiling hyper-util v0.1.15
[INFO] [stderr]    Compiling hyper-timeout v0.5.2
[INFO] [stderr]    Compiling tonic v0.12.3
[INFO] [stderr]    Compiling console-api v0.8.1
[INFO] [stderr]    Compiling console-subscriber v0.4.1
[INFO] [stderr]    Compiling saasexpress-core v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::graph::graph::GraphMod`
[INFO] [stdout]  --> src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::graph::graph::GraphMod;
[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::graph::graph_run::GraphRun`
[INFO] [stdout]  --> src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::graph::graph_run::GraphRun;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `broadcast_event`
[INFO] [stdout]  --> src/lib.rs:7:46
[INFO] [stdout]   |
[INFO] [stdout] 7 | use my_reg::{ControlEvent, ControlEventType, broadcast_event, deregister, register};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, and `mpsc`
[INFO] [stdout]   --> src/lib.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 |     broadcast::{Receiver, Sender},
[INFO] [stdout]    |                 ^^^^^^^^  ^^^^^^
[INFO] [stdout] 12 |     mpsc,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Display`
[INFO] [stdout]  --> src/graph/graph.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::{Debug, Display};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::prelude::SpanContext`
[INFO] [stdout]  --> src/graph/graph.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use fastrace::prelude::SpanContext;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::channel::oneshot`
[INFO] [stdout]  --> src/graph/graph.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::channel::oneshot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> src/graph/graph.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use serde_json::{Value, json};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver` and `Sender`
[INFO] [stdout]   --> src/graph/graph.rs:10:30
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::sync::broadcast::{Receiver, Sender};
[INFO] [stdout]    |                              ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc`
[INFO] [stdout]   --> src/graph/graph.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio::sync::mpsc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/graph/graph.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::operator_types::canonical_model::CanonicalModel`
[INFO] [stdout]   --> src/graph/graph.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph::operator_types::canonical_model::CanonicalModel;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `register`
[INFO] [stdout]   --> src/graph/graph.rs:20:70
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::my_reg::{ControlEvent, ControlEventType, broadcast_event, register};
[INFO] [stdout]    |                                                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SharedService`
[INFO] [stdout]   --> src/graph/graph.rs:24:30
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::shared_resource::{SharedService, SharedServiceRef};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DebuggableSpan`, `OriginMessage`, and `self`
[INFO] [stdout]   --> src/graph/graph.rs:29:22
[INFO] [stdout]    |
[INFO] [stdout] 29 | use super::message::{self, DebuggableSpan, Message, OriginMessage};
[INFO] [stdout]    |                      ^^^^  ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::operator_types::canonical_model::CanonicalModelService`
[INFO] [stdout]   --> src/graph/graph.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | use super::operator_types::canonical_model::CanonicalModelService;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::processors::port::Port`
[INFO] [stdout]   --> src/graph/graph.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | use super::processors::port::Port;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]   --> src/graph/graph.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | use std::ops::Deref;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]  --> src/graph/graph_run.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::graph::{Graph, GraphRunner};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRefRead`, `OperatorRef`, `OperatorRole`, `OperatorRuntime`, and `Operator`
[INFO] [stdout]   --> src/graph/message.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime, OperatorRuntimeType,
[INFO] [stdout]    |     ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/graph/operator.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub type OperatorRef = Arc<Mutex<(dyn Operator + 'static)>>;
[INFO] [stdout]    |                                  ^                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 14 - pub type OperatorRef = Arc<Mutex<(dyn Operator + 'static)>>;
[INFO] [stdout] 14 + pub type OperatorRef = Arc<Mutex<dyn Operator + 'static >>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::Span`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use fastrace::Span;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Canceled`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:2:39
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::channel::oneshot::{self, Canceled};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::{Error, Value, json};
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mpsc` and `oneshot::Receiver`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::sync::{mpsc, oneshot::Receiver};
[INFO] [stdout]   |                   ^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:5:35
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphStatus`, `OperatorRef`, `my_reg::register`, `registry::GraphRegistry`, and `settings::settings::env_settings`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:9:42
[INFO] [stdout]    |
[INFO] [stdout]  9 |         graph::{AsyncHandleTrait, Graph, GraphStatus},
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |             GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |         registry::GraphRegistry,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     },
[INFO] [stdout] 18 |     my_reg::register,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 19 |     settings::settings::env_settings,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::panic`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use core::panic;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `Mutex`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:23:28
[INFO] [stdout]    |
[INFO] [stdout] 23 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                            ^^^^^^^
[INFO] [stdout] 24 |     fmt::Debug,
[INFO] [stdout] 25 |     sync::{Arc, Mutex},
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Value`
[INFO] [stdout]  --> src/graph/operator_types/ai_tool.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde_yaml::{Error, Value};
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorState`
[INFO] [stdout]  --> src/graph/operator_types/ai_tool.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 |         GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                         ^^^^^^^^^^^                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> src/graph/operator_types/ai_tool.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                   ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/graph/operator_types/canonical_model.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 |         GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                         ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> src/graph/operator_types/canonical_model.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                   ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread::spawn`
[INFO] [stdout]  --> src/graph/registry.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     thread::spawn,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/graph/registry.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{error, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphMod`
[INFO] [stdout]  --> src/graph/registry.rs:9:27
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::graph::{Graph, GraphMod};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::graph::Graph`
[INFO] [stdout]  --> src/graph/serde.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::graph::Graph;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::graph::GraphStatus`
[INFO] [stdout]  --> src/graph/watcher.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     graph::graph::GraphStatus,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Serialize`
[INFO] [stdout]  --> src/graph/watcher.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::Serialize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/graph/watcher.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::JoinHandle`
[INFO] [stdout]  --> src/my_reg.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::task::JoinHandle;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `event`
[INFO] [stdout]  --> src/my_reg.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tracing::{debug, error, event, info};
[INFO] [stdout]   |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/buffer_to_json.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/operators/buffer_to_json.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/buffer_to_json.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stdout]   --> src/operators/buffer_to_json.rs:13:54
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Filter2Operator, GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                                      ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/operators/factory.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncHandleTrait`
[INFO] [stdout]  --> src/operators/factory.rs:4:27
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::graph::graph::{AsyncHandleTrait, Graph};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, `OperatorState`, `OperatorType`, and `Operator`
[INFO] [stdout]  --> src/operators/factory.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::graph::operator::{Operator, OperatorRef, OperatorRole, OperatorState, OperatorType};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/json_to_buffer.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/json_to_buffer.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]   --> src/operators/json_to_buffer.rs:12:37
[INFO] [stdout]    |
[INFO] [stdout] 12 |     GraphOperatorContext, Operator, OperatorRef, OperatorRuntime, OperatorType,
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/callout.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/callout.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::Duration`
[INFO] [stdout]  --> src/operators/callout.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use chrono::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `broadcast`
[INFO] [stdout]  --> src/operators/callout.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::sync::{broadcast, mpsc};
[INFO] [stdout]   |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time::sleep`
[INFO] [stdout]  --> src/operators/callout.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::time::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/operators/callout.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/callout.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphMod`
[INFO] [stdout]   --> src/operators/callout.rs:13:52
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::graph::graph::{AsyncHandleTrait, Graph, GraphMod, GraphRunner, GraphStatus};
[INFO] [stdout]    |                                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]   --> src/operators/callout.rs:15:37
[INFO] [stdout]    |
[INFO] [stdout] 15 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]  --> src/operators/ai_agent/mod.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 |     operator::{OperatorRef, OperatorRole},
[INFO] [stdout]   |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::json`
[INFO] [stdout]  --> src/operators/ai_tool/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde_json::json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/claim_check/claim_check.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/claim_check/claim_check.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]  --> src/operators/claim_check/claim_check.rs:9:54
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Filter2Operator, GraphOperatorContext, Operator, OperatorRef, OperatorRuntime, OperatorType,
[INFO] [stdout]   |                                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::local::LocalSpan`
[INFO] [stdout]  --> src/operators/fan_out/fan_out.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use fastrace::local::LocalSpan;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/fan_out/fan_out.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `info` and `span`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:10:29
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::{debug, error, info, span, warn};
[INFO] [stdout]    |                             ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRuntimeType`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:15:71
[INFO] [stdout]    |
[INFO] [stdout] 15 |     GraphOperatorContext, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType,
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::graph::registry::GraphRegistry;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/global_space/global_space.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/global_space/global_space.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/global_space/global_space.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 9 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stdout]   |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OnceLock` and `collections::HashMap`
[INFO] [stdout]  --> src/operators/global_space/resource.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::HashMap,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     sync::{Arc, Mutex, OnceLock},
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/noop.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/noop.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::channel::oneshot`
[INFO] [stdout]  --> src/operators/noop.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::channel::oneshot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stdout]   --> src/operators/noop.rs:10:37
[INFO] [stdout]    |
[INFO] [stdout] 10 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stdout]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutex` and `thread::sleep`
[INFO] [stdout]  --> src/operators/op_actor.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 |     sync::{Arc, Mutex},
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 3 |     thread::sleep,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]  --> src/operators/op_actor.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType, OperatorType,
[INFO] [stdout]   |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]   --> src/operators/op_actor.rs:10:31
[INFO] [stdout]    |
[INFO] [stdout] 10 |     graph::{AsyncHandleTrait, Graph},
[INFO] [stdout]    |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `local::LocalSpan`
[INFO] [stdout]   --> src/operators/op_actor.rs:14:22
[INFO] [stdout]    |
[INFO] [stdout] 14 | use fastrace::{Span, local::LocalSpan, prelude::SpanContext};
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `info_span`, `instrument`, `span`, and `warn`
[INFO] [stdout]   --> src/operators/op_actor.rs:16:35
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tracing::{debug, error, info, info_span, instrument, span, warn};
[INFO] [stdout]    |                                   ^^^^^^^^^  ^^^^^^^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::Instrument`
[INFO] [stdout]   --> src/operators/op_actor.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use tracing::Instrument;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::local::LocalSpan`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use fastrace::local::LocalSpan;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::prelude::SpanContext`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use fastrace::prelude::SpanContext;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 | use fastrace::{Span, trace};
[INFO] [stdout]   |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn_blocking`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::task::spawn_blocking;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `info_span`, `info`, `instrument`, and `warn`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tracing::{debug, error, info, info_span, instrument, warn};
[INFO] [stdout]    |                             ^^^^  ^^^^^^^^^  ^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorRuntimeType`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:16:37
[INFO] [stdout]    |
[INFO] [stdout] 16 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 17 |     OperatorRuntimeType, OperatorType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::graph::registry::GraphRegistry;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ControlEvent` and `register`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::my_reg::{ControlEvent, register};
[INFO] [stdout]    |                     ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::future::FutureExt`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use fastrace::future::FutureExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::Instrument`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use tracing::Instrument;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]  --> src/operators/op_wrapper.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::graph;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRefRead`, `OperatorRef`, `OperatorRole`, and `OperatorRuntimeType`
[INFO] [stdout]  --> src/operators/op_wrapper.rs:6:37
[INFO] [stdout]   |
[INFO] [stdout] 6 |     GraphOperatorContext, Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 7 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stdout]  --> src/operators/op_wrapper.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::graph::registry::GraphRegistry;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::de`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use serde::de;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::any::Any;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `elided_named_lifetimes` has been renamed to `mismatched_lifetime_syntaxes`
[INFO] [stdout]    --> src/operators/op_wrapper.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |         elided_named_lifetimes,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `mismatched_lifetime_syntaxes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `elided_named_lifetimes` has been renamed to `mismatched_lifetime_syntaxes`
[INFO] [stdout]    --> src/operators/op_wrapper.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |         elided_named_lifetimes,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `mismatched_lifetime_syntaxes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/passthrough.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/passthrough.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/operators/passthrough.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tracing::{debug, info};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stdout]  --> src/operators/passthrough.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/settings.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/settings.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/operators/settings.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::channel::oneshot`
[INFO] [stdout]  --> src/operators/settings.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::channel::oneshot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]  --> src/operators/settings.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde_json::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/settings.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorState`
[INFO] [stdout]   --> src/operators/settings.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]    |                                     ^^^^^^^^^^^                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ControlCommand` and `OriginMessage`
[INFO] [stdout]   --> src/operators/settings.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph::message::{ControlCommand, Message, OriginMessage};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::operators::shell::resources::get_instance`
[INFO] [stdout]  --> src/operators/shell/process.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::operators::shell::resources::get_instance;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]   --> src/operators/shell/process.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::thread::sleep;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io`
[INFO] [stdout]   --> src/operators/shell/process.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tokio::io;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]   --> src/operators/shell/process.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |               ^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::warn`
[INFO] [stdout]  --> src/operators/shell/resources.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::warn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/shell/shell.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/shell/shell.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/operators/shell/shell.rs:5:35
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]   --> src/operators/shell/shell.rs:11:37
[INFO] [stdout]    |
[INFO] [stdout] 11 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/stub.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/stub.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::de::value`
[INFO] [stdout]  --> src/operators/stub.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::de::value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/operators/stub.rs:5:29
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, warn};
[INFO] [stdout]   |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/stub.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/template.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/template.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/template.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/terminate.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/terminate.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/terminate.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/timer.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]  --> src/operators/timer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/timer.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRefRead`, `OperatorRef`, and `OperatorState`
[INFO] [stdout]   --> src/operators/timer.rs:16:37
[INFO] [stdout]    |
[INFO] [stdout] 16 |     GraphOperatorContext, Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stdout]    |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/graph/processors/mod.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             ProcessorType::Basic { processor } => processor.req_reply().await,
[INFO] [stdout]    |             ---------------------------------- matches all the relevant values
[INFO] [stdout] 34 |             _ => {
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> src/operators/op_wrapper.rs:286:5
[INFO] [stdout]     |
[INFO] [stdout] 286 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> src/operators/op_wrapper.rs:325:5
[INFO] [stdout]     |
[INFO] [stdout] 325 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::operator_types::ai_tool::AIToolOperator`
[INFO] [stdout]   --> src/graph/graph.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | use super::operator_types::ai_tool::AIToolOperator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::ai_tool::AIToolOperator`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use super::ai_tool::AIToolOperator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::operator_types::ai_tool::AIToolOperator`
[INFO] [stdout]  --> src/operators/ai_agent/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::graph::operator_types::ai_tool::AIToolOperator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Operator`
[INFO] [stdout]  --> src/operators/op_actor.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType, OperatorType,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncHandleTrait`
[INFO] [stdout]   --> src/operators/op_actor.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 |     graph::{AsyncHandleTrait, Graph},
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufRead`
[INFO] [stdout]  --> src/operators/shell/process.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{BufRead, Write};
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/operators/shell/process.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{BufRead, Write};
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_node`
[INFO] [stdout]    --> src/graph/graph.rs:761:9
[INFO] [stdout]     |
[INFO] [stdout] 761 |         start_node: String,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_node`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]    --> src/graph/operator.rs:105:24
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]    --> src/graph/operator.rs:105:43
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         values: serde_yaml::Value,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/graph/watcher.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 53 |                     _ => {
[INFO] [stdout]    |                     ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/graph/watcher.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                     ControlEventType::Notice => {
[INFO] [stdout]    |                     ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 38 |                     ControlEventType::OperatorUpdated => {
[INFO] [stdout]    |                     --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 47 |                     ControlEventType::GraphReplaced => {
[INFO] [stdout]    |                     ------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 53 |                     _ => {
[INFO] [stdout]    |                     ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]    --> src/operators/buffer_to_json.rs:126:39
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> src/operators/buffer_to_json.rs:167:22
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn handle(&self, message: Message) -> Message {
[INFO] [stdout]     |                      ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/json_to_buffer.rs:40:39
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/global_space/global_space.rs:46:39
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/noop.rs:47:39
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]    --> src/operators/op_actor_handle.rs:107:39
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph_name`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new<T>(graph_name: String, id: String, operator: T) -> Self
[INFO] [stdout]    |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_graph_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:61:24
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:61:43
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/passthrough.rs:39:39
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/stub.rs:48:39
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {}
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/template.rs:41:39
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/terminate.rs:41:39
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EdgeDestination` is never constructed
[INFO] [stdout]   --> src/graph/experimental.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct EdgeDestination {
[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 `on_init`, `on_finalize`, and `on_call` are never used
[INFO] [stdout]   --> src/graph/hooks.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait GraphHook: Send + Sync + Debug {
[INFO] [stdout]    |           --------- methods in this trait
[INFO] [stdout] 11 |     /// Called when the graph is initialized.
[INFO] [stdout] 12 |     fn on_init(&self, graph: &mut Graph);
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn on_finalize(&self, graph: &mut Graph);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn on_call(&self, graph: &mut Graph, message: &str);
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `session`, `span`, and `context` are never read
[INFO] [stdout]   --> src/graph/message.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct OriginMessageV2<T> {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 41 |     session: Option<String>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 42 |     span: Option<DebuggableSpan>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 43 |     context: T,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OriginMessageV2` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `XProcessor` is never used
[INFO] [stdout]   --> src/graph/processors/mod.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub(crate) trait XProcessor: Send + Sync + Debug {
[INFO] [stdout]    |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ProcessorType` is never used
[INFO] [stdout]   --> src/graph/processors/mod.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum ProcessorType {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_basic` and `req_reply` are never used
[INFO] [stdout]   --> src/graph/processors/mod.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl ProcessorType {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 20 |     pub fn new_basic(graph: &mut Graph) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub async fn req_reply(&mut self) -> Message {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `end` is never read
[INFO] [stdout]   --> src/graph/processors/port.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Port {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 11 |     end: Receiver<Message>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Port` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `req_reply`, and `wait` are never used
[INFO] [stdout]   --> src/graph/processors/port.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Port {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 15 |     pub fn new(graph: &mut Graph, id: String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub async fn req_reply(&mut self) -> Message {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub async fn wait(&mut self) -> Option<Message> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RawGraph` is never constructed
[INFO] [stdout]   --> src/graph/serde.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(super) struct RawGraph {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RawNode` is never constructed
[INFO] [stdout]   --> src/graph/serde.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct RawNode {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Edge` is never constructed
[INFO] [stdout]   --> src/graph/serde.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct Edge {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `load_yaml` and `load_yaml_from_value` are never used
[INFO] [stdout]   --> src/graph/serde.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl RawGraph {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn load_yaml(file_path: &str) -> Result<RawGraph, Box<dyn std::error::Error>> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn load_yaml_from_value(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/operators/canodamo_sample.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct ThisModel {
[INFO] [stdout]   |        --------- field in this struct
[INFO] [stdout] 8 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ThisModel` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_empty` is never used
[INFO] [stdout]   --> src/operators/ai_agent/mod.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn default_empty() -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThisModel` is never constructed
[INFO] [stdout]   --> src/operators/ai_agent/mod.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct ThisModel {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_empty` is never used
[INFO] [stdout]  --> src/operators/ai_tool/mod.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn default_empty() -> String {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThisModel` is never constructed
[INFO] [stdout]   --> src/operators/ai_tool/mod.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct ThisModel {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `setup_routes` is never used
[INFO] [stdout]    --> src/operators/fan_out/fan_out.rs:456:8
[INFO] [stdout]     |
[INFO] [stdout]  91 | impl FanOut {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 456 |     fn setup_routes(&self, _start: OperatorRef) {}
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `drop_instance` is never used
[INFO] [stdout]   --> src/operators/global_space/resource.rs:41:19
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl WidgetsSharedService {
[INFO] [stdout]    | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) fn drop_instance() {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `graph_name` and `id` are never read
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub(crate) struct OperatorActorHandle {
[INFO] [stdout]    |                   ------------------- fields in this struct
[INFO] [stdout] 33 |     //sender: mpsc::Sender<Message>,
[INFO] [stdout] 34 |     graph_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 35 |     id: String,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OperatorActorHandle` 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 `id` is never read
[INFO] [stdout]   --> src/operators/op_wrapper.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct OperatorWrapper {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 22 |     id: String,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OperatorWrapper` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `child` is never read
[INFO] [stdout]   --> src/operators/shell/process.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ShellProcess {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 24 |     child: Option<tokio::process::Child>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ShellProcess` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `batching` is never used
[INFO] [stdout]    --> src/operators/shell/process.rs:301:10
[INFO] [stdout]     |
[INFO] [stdout] 301 | async fn batching(
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_batch` is never used
[INFO] [stdout]    --> src/operators/shell/process.rs:380:10
[INFO] [stdout]     |
[INFO] [stdout] 380 | async fn process_batch(buffer: &mut Vec<String>, forward_to: &mut FuturesMPSC::Sender<Message>) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Template` is never constructed
[INFO] [stdout]   --> src/operators/template.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) struct Template;
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     async fn end_to_end(&self, message: Vec<u8>) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout]    = note: `#[warn(async_fn_in_trait)]` on by default
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 13 -     async fn end_to_end(&self, message: Vec<u8>) -> Message;
[INFO] [stdout] 13 +     fn end_to_end(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     async fn end_to_end_json(&self, message: Value) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 14 -     async fn end_to_end_json(&self, message: Value) -> Message;
[INFO] [stdout] 14 +     fn end_to_end_json(&self, message: Value) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     async fn end_to_end_standard(&self, message: Vec<u8>) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 15 -     async fn end_to_end_standard(&self, message: Vec<u8>) -> Message;
[INFO] [stdout] 15 +     fn end_to_end_standard(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     async fn end_to_end_2(&self, message: Vec<u8>) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 17 -     async fn end_to_end_2(&self, message: Vec<u8>) -> Message;
[INFO] [stdout] 17 +     fn end_to_end_2(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/operators/shell/process.rs:155:29
[INFO] [stdout]     |
[INFO] [stdout] 155 |                 for line in err_reader.next_line().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 155 -                 for line in err_reader.next_line().await {
[INFO] [stdout] 155 +                 while let Ok(line) = err_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 155 -                 for line in err_reader.next_line().await {
[INFO] [stdout] 155 +                 if let Ok(line) = err_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/operators/shell/process.rs:193:29
[INFO] [stdout]     |
[INFO] [stdout] 193 |                 for line in out_reader.next_line().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 193 -                 for line in out_reader.next_line().await {
[INFO] [stdout] 193 +                 while let Ok(line) = out_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 193 -                 for line in out_reader.next_line().await {
[INFO] [stdout] 193 +                 if let Ok(line) = out_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 01s
[INFO] running `Command { std: "docker" "inspect" "33ba81e25fd114b54636316131792676ed1665d29c8f4b35099f268717e5c251", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "33ba81e25fd114b54636316131792676ed1665d29c8f4b35099f268717e5c251", kill_on_drop: false }`
[INFO] [stdout] 33ba81e25fd114b54636316131792676ed1665d29c8f4b35099f268717e5c251
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-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" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4a32cd5595e3ee814e2733f2d79bba2699a2be99a5252bac985a82e207ce5663
[INFO] running `Command { std: "docker" "start" "-a" "4a32cd5595e3ee814e2733f2d79bba2699a2be99a5252bac985a82e207ce5663", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `crate::graph::graph::GraphMod`
[INFO] [stdout]  --> src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::graph::graph::GraphMod;
[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::graph::graph_run::GraphRun`
[INFO] [stdout]  --> src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::graph::graph_run::GraphRun;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `broadcast_event`
[INFO] [stdout]  --> src/lib.rs:7:46
[INFO] [stdout]   |
[INFO] [stdout] 7 | use my_reg::{ControlEvent, ControlEventType, broadcast_event, deregister, register};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, and `mpsc`
[INFO] [stdout]   --> src/lib.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 |     broadcast::{Receiver, Sender},
[INFO] [stdout]    |                 ^^^^^^^^  ^^^^^^
[INFO] [stdout] 12 |     mpsc,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Display`
[INFO] [stdout]  --> src/graph/graph.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::{Debug, Display};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::prelude::SpanContext`
[INFO] [stdout]  --> src/graph/graph.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use fastrace::prelude::SpanContext;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::channel::oneshot`
[INFO] [stdout]  --> src/graph/graph.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::channel::oneshot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> src/graph/graph.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use serde_json::{Value, json};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver` and `Sender`
[INFO] [stdout]   --> src/graph/graph.rs:10:30
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::sync::broadcast::{Receiver, Sender};
[INFO] [stdout]    |                              ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc`
[INFO] [stdout]   --> src/graph/graph.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio::sync::mpsc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/graph/graph.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::operator_types::canonical_model::CanonicalModel`
[INFO] [stdout]   --> src/graph/graph.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph::operator_types::canonical_model::CanonicalModel;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `register`
[INFO] [stdout]   --> src/graph/graph.rs:20:70
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::my_reg::{ControlEvent, ControlEventType, broadcast_event, register};
[INFO] [stdout]    |                                                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SharedService`
[INFO] [stdout]   --> src/graph/graph.rs:24:30
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::shared_resource::{SharedService, SharedServiceRef};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DebuggableSpan`, `OriginMessage`, and `self`
[INFO] [stdout]   --> src/graph/graph.rs:29:22
[INFO] [stdout]    |
[INFO] [stdout] 29 | use super::message::{self, DebuggableSpan, Message, OriginMessage};
[INFO] [stdout]    |                      ^^^^  ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::operator_types::canonical_model::CanonicalModelService`
[INFO] [stdout]   --> src/graph/graph.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | use super::operator_types::canonical_model::CanonicalModelService;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::processors::port::Port`
[INFO] [stdout]   --> src/graph/graph.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | use super::processors::port::Port;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]   --> src/graph/graph.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | use std::ops::Deref;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]  --> src/graph/graph_run.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::graph::{Graph, GraphRunner};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRefRead`, `OperatorRef`, `OperatorRole`, `OperatorRuntime`, and `Operator`
[INFO] [stdout]   --> src/graph/message.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime, OperatorRuntimeType,
[INFO] [stdout]    |     ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/graph/operator.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub type OperatorRef = Arc<Mutex<(dyn Operator + 'static)>>;
[INFO] [stdout]    |                                  ^                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 14 - pub type OperatorRef = Arc<Mutex<(dyn Operator + 'static)>>;
[INFO] [stdout] 14 + pub type OperatorRef = Arc<Mutex<dyn Operator + 'static >>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::Span`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use fastrace::Span;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Canceled`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:2:39
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::channel::oneshot::{self, Canceled};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::{Error, Value, json};
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mpsc` and `oneshot::Receiver`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::sync::{mpsc, oneshot::Receiver};
[INFO] [stdout]   |                   ^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:5:35
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphStatus`, `OperatorRef`, `my_reg::register`, `registry::GraphRegistry`, and `settings::settings::env_settings`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:9:42
[INFO] [stdout]    |
[INFO] [stdout]  9 |         graph::{AsyncHandleTrait, Graph, GraphStatus},
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |             GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |         registry::GraphRegistry,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     },
[INFO] [stdout] 18 |     my_reg::register,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 19 |     settings::settings::env_settings,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::panic`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use core::panic;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `Mutex`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:23:28
[INFO] [stdout]    |
[INFO] [stdout] 23 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                            ^^^^^^^
[INFO] [stdout] 24 |     fmt::Debug,
[INFO] [stdout] 25 |     sync::{Arc, Mutex},
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Value`
[INFO] [stdout]  --> src/graph/operator_types/ai_tool.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde_yaml::{Error, Value};
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorState`
[INFO] [stdout]  --> src/graph/operator_types/ai_tool.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 |         GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                         ^^^^^^^^^^^                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> src/graph/operator_types/ai_tool.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                   ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/graph/operator_types/canonical_model.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 |         GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                         ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> src/graph/operator_types/canonical_model.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                   ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread::spawn`
[INFO] [stdout]  --> src/graph/registry.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     thread::spawn,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/graph/registry.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{error, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphMod`
[INFO] [stdout]  --> src/graph/registry.rs:9:27
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::graph::{Graph, GraphMod};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::graph::Graph`
[INFO] [stdout]  --> src/graph/serde.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::graph::Graph;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::graph::GraphStatus`
[INFO] [stdout]  --> src/graph/watcher.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     graph::graph::GraphStatus,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Serialize`
[INFO] [stdout]  --> src/graph/watcher.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::Serialize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/graph/watcher.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::JoinHandle`
[INFO] [stdout]  --> src/my_reg.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::task::JoinHandle;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `event`
[INFO] [stdout]  --> src/my_reg.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tracing::{debug, error, event, info};
[INFO] [stdout]   |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/buffer_to_json.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/operators/buffer_to_json.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/buffer_to_json.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stdout]   --> src/operators/buffer_to_json.rs:13:54
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Filter2Operator, GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                                      ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/operators/factory.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncHandleTrait`
[INFO] [stdout]  --> src/operators/factory.rs:4:27
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::graph::graph::{AsyncHandleTrait, Graph};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, `OperatorState`, `OperatorType`, and `Operator`
[INFO] [stdout]  --> src/operators/factory.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::graph::operator::{Operator, OperatorRef, OperatorRole, OperatorState, OperatorType};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/json_to_buffer.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/json_to_buffer.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]   --> src/operators/json_to_buffer.rs:12:37
[INFO] [stdout]    |
[INFO] [stdout] 12 |     GraphOperatorContext, Operator, OperatorRef, OperatorRuntime, OperatorType,
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/callout.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/callout.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::Duration`
[INFO] [stdout]  --> src/operators/callout.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use chrono::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `broadcast`
[INFO] [stdout]  --> src/operators/callout.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::sync::{broadcast, mpsc};
[INFO] [stdout]   |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time::sleep`
[INFO] [stdout]  --> src/operators/callout.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::time::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/operators/callout.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/callout.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphMod`
[INFO] [stdout]   --> src/operators/callout.rs:13:52
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::graph::graph::{AsyncHandleTrait, Graph, GraphMod, GraphRunner, GraphStatus};
[INFO] [stdout]    |                                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]   --> src/operators/callout.rs:15:37
[INFO] [stdout]    |
[INFO] [stdout] 15 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]  --> src/operators/ai_agent/mod.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 |     operator::{OperatorRef, OperatorRole},
[INFO] [stdout]   |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::json`
[INFO] [stdout]  --> src/operators/ai_tool/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde_json::json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/claim_check/claim_check.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/claim_check/claim_check.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]  --> src/operators/claim_check/claim_check.rs:9:54
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Filter2Operator, GraphOperatorContext, Operator, OperatorRef, OperatorRuntime, OperatorType,
[INFO] [stdout]   |                                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::local::LocalSpan`
[INFO] [stdout]  --> src/operators/fan_out/fan_out.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use fastrace::local::LocalSpan;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/fan_out/fan_out.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `info` and `span`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:10:29
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::{debug, error, info, span, warn};
[INFO] [stdout]    |                             ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRuntimeType`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:15:71
[INFO] [stdout]    |
[INFO] [stdout] 15 |     GraphOperatorContext, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType,
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::graph::registry::GraphRegistry;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/global_space/global_space.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/global_space/global_space.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/global_space/global_space.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 9 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stdout]   |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OnceLock` and `collections::HashMap`
[INFO] [stdout]  --> src/operators/global_space/resource.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::HashMap,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     sync::{Arc, Mutex, OnceLock},
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/noop.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/noop.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::channel::oneshot`
[INFO] [stdout]  --> src/operators/noop.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::channel::oneshot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stdout]   --> src/operators/noop.rs:10:37
[INFO] [stdout]    |
[INFO] [stdout] 10 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stdout]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutex` and `thread::sleep`
[INFO] [stdout]  --> src/operators/op_actor.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 |     sync::{Arc, Mutex},
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 3 |     thread::sleep,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]  --> src/operators/op_actor.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType, OperatorType,
[INFO] [stdout]   |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]   --> src/operators/op_actor.rs:10:31
[INFO] [stdout]    |
[INFO] [stdout] 10 |     graph::{AsyncHandleTrait, Graph},
[INFO] [stdout]    |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `local::LocalSpan`
[INFO] [stdout]   --> src/operators/op_actor.rs:14:22
[INFO] [stdout]    |
[INFO] [stdout] 14 | use fastrace::{Span, local::LocalSpan, prelude::SpanContext};
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `info_span`, `instrument`, `span`, and `warn`
[INFO] [stdout]   --> src/operators/op_actor.rs:16:35
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tracing::{debug, error, info, info_span, instrument, span, warn};
[INFO] [stdout]    |                                   ^^^^^^^^^  ^^^^^^^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::Instrument`
[INFO] [stdout]   --> src/operators/op_actor.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use tracing::Instrument;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::local::LocalSpan`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use fastrace::local::LocalSpan;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::prelude::SpanContext`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use fastrace::prelude::SpanContext;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 | use fastrace::{Span, trace};
[INFO] [stdout]   |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn_blocking`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::task::spawn_blocking;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `info_span`, `info`, `instrument`, and `warn`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tracing::{debug, error, info, info_span, instrument, warn};
[INFO] [stdout]    |                             ^^^^  ^^^^^^^^^  ^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorRuntimeType`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:16:37
[INFO] [stdout]    |
[INFO] [stdout] 16 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 17 |     OperatorRuntimeType, OperatorType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::graph::registry::GraphRegistry;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ControlEvent` and `register`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::my_reg::{ControlEvent, register};
[INFO] [stdout]    |                     ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::future::FutureExt`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use fastrace::future::FutureExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::Instrument`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use tracing::Instrument;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]  --> src/operators/op_wrapper.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::graph;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRefRead`, `OperatorRef`, `OperatorRole`, and `OperatorRuntimeType`
[INFO] [stdout]  --> src/operators/op_wrapper.rs:6:37
[INFO] [stdout]   |
[INFO] [stdout] 6 |     GraphOperatorContext, Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 7 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stdout]  --> src/operators/op_wrapper.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::graph::registry::GraphRegistry;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::de`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use serde::de;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::any::Any;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `elided_named_lifetimes` has been renamed to `mismatched_lifetime_syntaxes`
[INFO] [stdout]    --> src/operators/op_wrapper.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |         elided_named_lifetimes,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `mismatched_lifetime_syntaxes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `elided_named_lifetimes` has been renamed to `mismatched_lifetime_syntaxes`
[INFO] [stdout]    --> src/operators/op_wrapper.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |         elided_named_lifetimes,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `mismatched_lifetime_syntaxes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/passthrough.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/passthrough.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/operators/passthrough.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tracing::{debug, info};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stdout]  --> src/operators/passthrough.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/settings.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/settings.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/operators/settings.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::channel::oneshot`
[INFO] [stdout]  --> src/operators/settings.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::channel::oneshot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]  --> src/operators/settings.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde_json::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/settings.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorState`
[INFO] [stdout]   --> src/operators/settings.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]    |                                     ^^^^^^^^^^^                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ControlCommand` and `OriginMessage`
[INFO] [stdout]   --> src/operators/settings.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph::message::{ControlCommand, Message, OriginMessage};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::operators::shell::resources::get_instance`
[INFO] [stdout]  --> src/operators/shell/process.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::operators::shell::resources::get_instance;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]   --> src/operators/shell/process.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::thread::sleep;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io`
[INFO] [stdout]   --> src/operators/shell/process.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tokio::io;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]   --> src/operators/shell/process.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |               ^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::warn`
[INFO] [stdout]  --> src/operators/shell/resources.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::warn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/shell/shell.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/shell/shell.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/operators/shell/shell.rs:5:35
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]   --> src/operators/shell/shell.rs:11:37
[INFO] [stdout]    |
[INFO] [stdout] 11 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/stub.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/stub.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::de::value`
[INFO] [stdout]  --> src/operators/stub.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::de::value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/operators/stub.rs:5:29
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, warn};
[INFO] [stdout]   |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/stub.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/template.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/template.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/template.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/terminate.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/terminate.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/terminate.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/timer.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]  --> src/operators/timer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/timer.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRefRead`, `OperatorRef`, and `OperatorState`
[INFO] [stdout]   --> src/operators/timer.rs:16:37
[INFO] [stdout]    |
[INFO] [stdout] 16 |     GraphOperatorContext, Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stdout]    |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/graph/processors/mod.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             ProcessorType::Basic { processor } => processor.req_reply().await,
[INFO] [stdout]    |             ---------------------------------- matches all the relevant values
[INFO] [stdout] 34 |             _ => {
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> src/operators/op_wrapper.rs:286:5
[INFO] [stdout]     |
[INFO] [stdout] 286 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> src/operators/op_wrapper.rs:325:5
[INFO] [stdout]     |
[INFO] [stdout] 325 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::operator_types::ai_tool::AIToolOperator`
[INFO] [stdout]   --> src/graph/graph.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | use super::operator_types::ai_tool::AIToolOperator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::ai_tool::AIToolOperator`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use super::ai_tool::AIToolOperator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::operator_types::ai_tool::AIToolOperator`
[INFO] [stdout]  --> src/operators/ai_agent/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::graph::operator_types::ai_tool::AIToolOperator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Operator`
[INFO] [stdout]  --> src/operators/op_actor.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType, OperatorType,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncHandleTrait`
[INFO] [stdout]   --> src/operators/op_actor.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 |     graph::{AsyncHandleTrait, Graph},
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufRead`
[INFO] [stdout]  --> src/operators/shell/process.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{BufRead, Write};
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/operators/shell/process.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{BufRead, Write};
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_node`
[INFO] [stdout]    --> src/graph/graph.rs:761:9
[INFO] [stdout]     |
[INFO] [stdout] 761 |         start_node: String,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_node`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]    --> src/graph/operator.rs:105:24
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]    --> src/graph/operator.rs:105:43
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         values: serde_yaml::Value,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/graph/watcher.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 53 |                     _ => {
[INFO] [stdout]    |                     ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/graph/watcher.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                     ControlEventType::Notice => {
[INFO] [stdout]    |                     ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 38 |                     ControlEventType::OperatorUpdated => {
[INFO] [stdout]    |                     --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 47 |                     ControlEventType::GraphReplaced => {
[INFO] [stdout]    |                     ------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 53 |                     _ => {
[INFO] [stdout]    |                     ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]    --> src/operators/buffer_to_json.rs:126:39
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> src/operators/buffer_to_json.rs:167:22
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn handle(&self, message: Message) -> Message {
[INFO] [stdout]     |                      ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/json_to_buffer.rs:40:39
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/global_space/global_space.rs:46:39
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/noop.rs:47:39
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]    --> src/operators/op_actor_handle.rs:107:39
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph_name`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new<T>(graph_name: String, id: String, operator: T) -> Self
[INFO] [stdout]    |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_graph_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:61:24
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:61:43
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/passthrough.rs:39:39
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/stub.rs:48:39
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {}
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/template.rs:41:39
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/terminate.rs:41:39
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EdgeDestination` is never constructed
[INFO] [stdout]   --> src/graph/experimental.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct EdgeDestination {
[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 `on_init`, `on_finalize`, and `on_call` are never used
[INFO] [stdout]   --> src/graph/hooks.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait GraphHook: Send + Sync + Debug {
[INFO] [stdout]    |           --------- methods in this trait
[INFO] [stdout] 11 |     /// Called when the graph is initialized.
[INFO] [stdout] 12 |     fn on_init(&self, graph: &mut Graph);
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn on_finalize(&self, graph: &mut Graph);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn on_call(&self, graph: &mut Graph, message: &str);
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `session`, `span`, and `context` are never read
[INFO] [stdout]   --> src/graph/message.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct OriginMessageV2<T> {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 41 |     session: Option<String>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 42 |     span: Option<DebuggableSpan>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 43 |     context: T,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OriginMessageV2` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `XProcessor` is never used
[INFO] [stdout]   --> src/graph/processors/mod.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub(crate) trait XProcessor: Send + Sync + Debug {
[INFO] [stdout]    |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ProcessorType` is never used
[INFO] [stdout]   --> src/graph/processors/mod.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum ProcessorType {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_basic` and `req_reply` are never used
[INFO] [stdout]   --> src/graph/processors/mod.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl ProcessorType {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 20 |     pub fn new_basic(graph: &mut Graph) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub async fn req_reply(&mut self) -> Message {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `end` is never read
[INFO] [stdout]   --> src/graph/processors/port.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Port {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 11 |     end: Receiver<Message>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Port` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `req_reply`, and `wait` are never used
[INFO] [stdout]   --> src/graph/processors/port.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Port {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 15 |     pub fn new(graph: &mut Graph, id: String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub async fn req_reply(&mut self) -> Message {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub async fn wait(&mut self) -> Option<Message> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RawGraph` is never constructed
[INFO] [stdout]   --> src/graph/serde.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(super) struct RawGraph {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RawNode` is never constructed
[INFO] [stdout]   --> src/graph/serde.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct RawNode {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Edge` is never constructed
[INFO] [stdout]   --> src/graph/serde.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct Edge {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `load_yaml` and `load_yaml_from_value` are never used
[INFO] [stdout]   --> src/graph/serde.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl RawGraph {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn load_yaml(file_path: &str) -> Result<RawGraph, Box<dyn std::error::Error>> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn load_yaml_from_value(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/operators/canodamo_sample.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct ThisModel {
[INFO] [stdout]   |        --------- field in this struct
[INFO] [stdout] 8 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ThisModel` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_empty` is never used
[INFO] [stdout]   --> src/operators/ai_agent/mod.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn default_empty() -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThisModel` is never constructed
[INFO] [stdout]   --> src/operators/ai_agent/mod.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct ThisModel {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_empty` is never used
[INFO] [stdout]  --> src/operators/ai_tool/mod.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn default_empty() -> String {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThisModel` is never constructed
[INFO] [stdout]   --> src/operators/ai_tool/mod.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct ThisModel {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `setup_routes` is never used
[INFO] [stdout]    --> src/operators/fan_out/fan_out.rs:456:8
[INFO] [stdout]     |
[INFO] [stdout]  91 | impl FanOut {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 456 |     fn setup_routes(&self, _start: OperatorRef) {}
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `drop_instance` is never used
[INFO] [stdout]   --> src/operators/global_space/resource.rs:41:19
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl WidgetsSharedService {
[INFO] [stdout]    | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub(crate) fn drop_instance() {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `graph_name` and `id` are never read
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub(crate) struct OperatorActorHandle {
[INFO] [stdout]    |                   ------------------- fields in this struct
[INFO] [stdout] 33 |     //sender: mpsc::Sender<Message>,
[INFO] [stdout] 34 |     graph_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 35 |     id: String,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OperatorActorHandle` 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 `id` is never read
[INFO] [stdout]   --> src/operators/op_wrapper.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct OperatorWrapper {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 22 |     id: String,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OperatorWrapper` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `child` is never read
[INFO] [stdout]   --> src/operators/shell/process.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ShellProcess {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 24 |     child: Option<tokio::process::Child>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ShellProcess` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `batching` is never used
[INFO] [stdout]    --> src/operators/shell/process.rs:301:10
[INFO] [stdout]     |
[INFO] [stdout] 301 | async fn batching(
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_batch` is never used
[INFO] [stdout]    --> src/operators/shell/process.rs:380:10
[INFO] [stdout]     |
[INFO] [stdout] 380 | async fn process_batch(buffer: &mut Vec<String>, forward_to: &mut FuturesMPSC::Sender<Message>) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Template` is never constructed
[INFO] [stdout]   --> src/operators/template.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) struct Template;
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     async fn end_to_end(&self, message: Vec<u8>) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout]    = note: `#[warn(async_fn_in_trait)]` on by default
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 13 -     async fn end_to_end(&self, message: Vec<u8>) -> Message;
[INFO] [stdout] 13 +     fn end_to_end(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     async fn end_to_end_json(&self, message: Value) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 14 -     async fn end_to_end_json(&self, message: Value) -> Message;
[INFO] [stdout] 14 +     fn end_to_end_json(&self, message: Value) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     async fn end_to_end_standard(&self, message: Vec<u8>) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 15 -     async fn end_to_end_standard(&self, message: Vec<u8>) -> Message;
[INFO] [stdout] 15 +     fn end_to_end_standard(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     async fn end_to_end_2(&self, message: Vec<u8>) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 17 -     async fn end_to_end_2(&self, message: Vec<u8>) -> Message;
[INFO] [stdout] 17 +     fn end_to_end_2(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/operators/shell/process.rs:155:29
[INFO] [stdout]     |
[INFO] [stdout] 155 |                 for line in err_reader.next_line().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 155 -                 for line in err_reader.next_line().await {
[INFO] [stdout] 155 +                 while let Ok(line) = err_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 155 -                 for line in err_reader.next_line().await {
[INFO] [stdout] 155 +                 if let Ok(line) = err_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/operators/shell/process.rs:193:29
[INFO] [stdout]     |
[INFO] [stdout] 193 |                 for line in out_reader.next_line().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 193 -                 for line in out_reader.next_line().await {
[INFO] [stdout] 193 +                 while let Ok(line) = out_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 193 -                 for line in out_reader.next_line().await {
[INFO] [stdout] 193 +                 if let Ok(line) = out_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling saasexpress-core v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::graph::graph::GraphMod`
[INFO] [stdout]  --> src/lib.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::graph::graph::GraphMod;
[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: `broadcast_event`
[INFO] [stdout]  --> src/lib.rs:7:46
[INFO] [stdout]   |
[INFO] [stdout] 7 | use my_reg::{ControlEvent, ControlEventType, broadcast_event, deregister, register};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver` and `Sender`
[INFO] [stdout]   --> src/lib.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 |     broadcast::{Receiver, Sender},
[INFO] [stdout]    |                 ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Display`
[INFO] [stdout]  --> src/graph/graph.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::{Debug, Display};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::prelude::SpanContext`
[INFO] [stdout]  --> src/graph/graph.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use fastrace::prelude::SpanContext;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::channel::oneshot`
[INFO] [stdout]  --> src/graph/graph.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::channel::oneshot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `json`
[INFO] [stdout]  --> src/graph/graph.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use serde_json::{Value, json};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver` and `Sender`
[INFO] [stdout]   --> src/graph/graph.rs:10:30
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::sync::broadcast::{Receiver, Sender};
[INFO] [stdout]    |                              ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc`
[INFO] [stdout]   --> src/graph/graph.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio::sync::mpsc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/graph/graph.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::operator_types::canonical_model::CanonicalModel`
[INFO] [stdout]   --> src/graph/graph.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph::operator_types::canonical_model::CanonicalModel;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `register`
[INFO] [stdout]   --> src/graph/graph.rs:20:70
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::my_reg::{ControlEvent, ControlEventType, broadcast_event, register};
[INFO] [stdout]    |                                                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SharedService`
[INFO] [stdout]   --> src/graph/graph.rs:24:30
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::shared_resource::{SharedService, SharedServiceRef};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DebuggableSpan`, `OriginMessage`, and `self`
[INFO] [stdout]   --> src/graph/graph.rs:29:22
[INFO] [stdout]    |
[INFO] [stdout] 29 | use super::message::{self, DebuggableSpan, Message, OriginMessage};
[INFO] [stdout]    |                      ^^^^  ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::operator_types::canonical_model::CanonicalModelService`
[INFO] [stdout]   --> src/graph/graph.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | use super::operator_types::canonical_model::CanonicalModelService;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::processors::port::Port`
[INFO] [stdout]   --> src/graph/graph.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | use super::processors::port::Port;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]   --> src/graph/graph.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | use std::ops::Deref;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]  --> src/graph/graph_run.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::graph::{Graph, GraphRunner};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRefRead`, `OperatorRef`, `OperatorRole`, `OperatorRuntime`, and `Operator`
[INFO] [stdout]   --> src/graph/message.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime, OperatorRuntimeType,
[INFO] [stdout]    |     ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/graph/operator.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub type OperatorRef = Arc<Mutex<(dyn Operator + 'static)>>;
[INFO] [stdout]    |                                  ^                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 14 - pub type OperatorRef = Arc<Mutex<(dyn Operator + 'static)>>;
[INFO] [stdout] 14 + pub type OperatorRef = Arc<Mutex<dyn Operator + 'static >>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::Span`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use fastrace::Span;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Canceled`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:2:39
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::channel::oneshot::{self, Canceled};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::{Error, Value, json};
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mpsc` and `oneshot::Receiver`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::sync::{mpsc, oneshot::Receiver};
[INFO] [stdout]   |                   ^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/graph/operator_types/ai_agent.rs:5:35
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphStatus`, `OperatorRef`, `my_reg::register`, `registry::GraphRegistry`, and `settings::settings::env_settings`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:9:42
[INFO] [stdout]    |
[INFO] [stdout]  9 |         graph::{AsyncHandleTrait, Graph, GraphStatus},
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |             GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |         registry::GraphRegistry,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     },
[INFO] [stdout] 18 |     my_reg::register,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 19 |     settings::settings::env_settings,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::panic`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use core::panic;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `Mutex`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:23:28
[INFO] [stdout]    |
[INFO] [stdout] 23 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                            ^^^^^^^
[INFO] [stdout] 24 |     fmt::Debug,
[INFO] [stdout] 25 |     sync::{Arc, Mutex},
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Value`
[INFO] [stdout]  --> src/graph/operator_types/ai_tool.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde_yaml::{Error, Value};
[INFO] [stdout]   |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorState`
[INFO] [stdout]  --> src/graph/operator_types/ai_tool.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 |         GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                         ^^^^^^^^^^^                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> src/graph/operator_types/ai_tool.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                   ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/graph/operator_types/canonical_model.rs:9:41
[INFO] [stdout]   |
[INFO] [stdout] 9 |         GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                         ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> src/graph/operator_types/canonical_model.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     collections::{HashMap, HashSet},
[INFO] [stdout]    |                   ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread::spawn`
[INFO] [stdout]  --> src/graph/registry.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     thread::spawn,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/graph/registry.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tracing::{error, info, warn};
[INFO] [stdout]   |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphMod`
[INFO] [stdout]  --> src/graph/registry.rs:9:27
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::graph::{Graph, GraphMod};
[INFO] [stdout]   |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::graph::Graph`
[INFO] [stdout]  --> src/graph/serde.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use super::graph::Graph;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graph::graph::GraphStatus`
[INFO] [stdout]  --> src/graph/watcher.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     graph::graph::GraphStatus,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Serialize`
[INFO] [stdout]  --> src/graph/watcher.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::Serialize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/graph/watcher.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::JoinHandle`
[INFO] [stdout]  --> src/my_reg.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::task::JoinHandle;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `event`
[INFO] [stdout]  --> src/my_reg.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tracing::{debug, error, event, info};
[INFO] [stdout]   |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/buffer_to_json.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/operators/buffer_to_json.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/buffer_to_json.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stdout]   --> src/operators/buffer_to_json.rs:13:54
[INFO] [stdout]    |
[INFO] [stdout] 13 |     Filter2Operator, GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                                      ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/operators/factory.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncHandleTrait`
[INFO] [stdout]  --> src/operators/factory.rs:4:27
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::graph::graph::{AsyncHandleTrait, Graph};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, `OperatorState`, `OperatorType`, and `Operator`
[INFO] [stdout]  --> src/operators/factory.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::graph::operator::{Operator, OperatorRef, OperatorRole, OperatorState, OperatorType};
[INFO] [stdout]   |                              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/json_to_buffer.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/json_to_buffer.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]   --> src/operators/json_to_buffer.rs:12:37
[INFO] [stdout]    |
[INFO] [stdout] 12 |     GraphOperatorContext, Operator, OperatorRef, OperatorRuntime, OperatorType,
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/callout.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/callout.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chrono::Duration`
[INFO] [stdout]  --> src/operators/callout.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use chrono::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `broadcast`
[INFO] [stdout]  --> src/operators/callout.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::sync::{broadcast, mpsc};
[INFO] [stdout]   |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time::sleep`
[INFO] [stdout]  --> src/operators/callout.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::time::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/operators/callout.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/callout.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphMod`
[INFO] [stdout]   --> src/operators/callout.rs:13:52
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::graph::graph::{AsyncHandleTrait, Graph, GraphMod, GraphRunner, GraphStatus};
[INFO] [stdout]    |                                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]   --> src/operators/callout.rs:15:37
[INFO] [stdout]    |
[INFO] [stdout] 15 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]  --> src/operators/ai_agent/mod.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 |     operator::{OperatorRef, OperatorRole},
[INFO] [stdout]   |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::json`
[INFO] [stdout]  --> src/operators/ai_tool/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde_json::json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/claim_check/claim_check.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/claim_check/claim_check.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]  --> src/operators/claim_check/claim_check.rs:9:54
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Filter2Operator, GraphOperatorContext, Operator, OperatorRef, OperatorRuntime, OperatorType,
[INFO] [stdout]   |                                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::local::LocalSpan`
[INFO] [stdout]  --> src/operators/fan_out/fan_out.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use fastrace::local::LocalSpan;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/fan_out/fan_out.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `info` and `span`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:10:29
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::{debug, error, info, span, warn};
[INFO] [stdout]    |                             ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRuntimeType`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:15:71
[INFO] [stdout]    |
[INFO] [stdout] 15 |     GraphOperatorContext, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType,
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stdout]   --> src/operators/fan_out/fan_out.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::graph::registry::GraphRegistry;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/global_space/global_space.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/global_space/global_space.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/global_space/global_space.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 9 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stdout]   |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OnceLock` and `collections::HashMap`
[INFO] [stdout]  --> src/operators/global_space/resource.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::HashMap,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     sync::{Arc, Mutex, OnceLock},
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/noop.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/noop.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::channel::oneshot`
[INFO] [stdout]  --> src/operators/noop.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::channel::oneshot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stdout]   --> src/operators/noop.rs:10:37
[INFO] [stdout]    |
[INFO] [stdout] 10 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stdout]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutex` and `thread::sleep`
[INFO] [stdout]  --> src/operators/op_actor.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 |     sync::{Arc, Mutex},
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 3 |     thread::sleep,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]  --> src/operators/op_actor.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType, OperatorType,
[INFO] [stdout]   |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]   --> src/operators/op_actor.rs:10:31
[INFO] [stdout]    |
[INFO] [stdout] 10 |     graph::{AsyncHandleTrait, Graph},
[INFO] [stdout]    |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `local::LocalSpan`
[INFO] [stdout]   --> src/operators/op_actor.rs:14:22
[INFO] [stdout]    |
[INFO] [stdout] 14 | use fastrace::{Span, local::LocalSpan, prelude::SpanContext};
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `info_span`, `instrument`, `span`, and `warn`
[INFO] [stdout]   --> src/operators/op_actor.rs:16:35
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tracing::{debug, error, info, info_span, instrument, span, warn};
[INFO] [stdout]    |                                   ^^^^^^^^^  ^^^^^^^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::Instrument`
[INFO] [stdout]   --> src/operators/op_actor.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use tracing::Instrument;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::local::LocalSpan`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use fastrace::local::LocalSpan;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::prelude::SpanContext`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use fastrace::prelude::SpanContext;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Span`
[INFO] [stdout]  --> src/operators/op_actor_handle.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 | use fastrace::{Span, trace};
[INFO] [stdout]   |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn_blocking`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::task::spawn_blocking;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `info_span`, `info`, `instrument`, and `warn`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:11:29
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tracing::{debug, error, info, info_span, instrument, warn};
[INFO] [stdout]    |                             ^^^^  ^^^^^^^^^  ^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorRuntimeType`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:16:37
[INFO] [stdout]    |
[INFO] [stdout] 16 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 17 |     OperatorRuntimeType, OperatorType,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::graph::registry::GraphRegistry;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ControlEvent` and `register`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::my_reg::{ControlEvent, register};
[INFO] [stdout]    |                     ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrace::future::FutureExt`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use fastrace::future::FutureExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::Instrument`
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use tracing::Instrument;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]  --> src/operators/op_wrapper.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::graph;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRefRead`, `OperatorRef`, `OperatorRole`, and `OperatorRuntimeType`
[INFO] [stdout]  --> src/operators/op_wrapper.rs:6:37
[INFO] [stdout]   |
[INFO] [stdout] 6 |     GraphOperatorContext, Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 7 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stdout]  --> src/operators/op_wrapper.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::graph::registry::GraphRegistry;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::de`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use serde::de;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::any::Any;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]    |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `elided_named_lifetimes` has been renamed to `mismatched_lifetime_syntaxes`
[INFO] [stdout]    --> src/operators/op_wrapper.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |         elided_named_lifetimes,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `mismatched_lifetime_syntaxes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `elided_named_lifetimes` has been renamed to `mismatched_lifetime_syntaxes`
[INFO] [stdout]    --> src/operators/op_wrapper.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |         elided_named_lifetimes,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `mismatched_lifetime_syntaxes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/passthrough.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/passthrough.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/operators/passthrough.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tracing::{debug, info};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stdout]  --> src/operators/passthrough.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/settings.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/settings.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]  --> src/operators/settings.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread::sleep;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::channel::oneshot`
[INFO] [stdout]  --> src/operators/settings.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures::channel::oneshot;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]  --> src/operators/settings.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde_json::Value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph`
[INFO] [stdout]   --> src/operators/settings.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::graph;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef` and `OperatorState`
[INFO] [stdout]   --> src/operators/settings.rs:14:37
[INFO] [stdout]    |
[INFO] [stdout] 14 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]    |                                     ^^^^^^^^^^^                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ControlCommand` and `OriginMessage`
[INFO] [stdout]   --> src/operators/settings.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph::message::{ControlCommand, Message, OriginMessage};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::operators::shell::resources::get_instance`
[INFO] [stdout]  --> src/operators/shell/process.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::operators::shell::resources::get_instance;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]   --> src/operators/shell/process.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::thread::sleep;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io`
[INFO] [stdout]   --> src/operators/shell/process.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tokio::io;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug` and `warn`
[INFO] [stdout]   --> src/operators/shell/process.rs:20:15
[INFO] [stdout]    |
[INFO] [stdout] 20 | use tracing::{debug, error, info, warn};
[INFO] [stdout]    |               ^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::warn`
[INFO] [stdout]  --> src/operators/shell/resources.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tracing::warn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/shell/shell.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/shell/shell.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/operators/shell/shell.rs:5:35
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OperatorRef`
[INFO] [stdout]   --> src/operators/shell/shell.rs:11:37
[INFO] [stdout]    |
[INFO] [stdout] 11 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/stub.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/stub.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::de::value`
[INFO] [stdout]  --> src/operators/stub.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde::de::value;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/operators/stub.rs:5:29
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tracing::{debug, error, warn};
[INFO] [stdout]   |                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/stub.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/template.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/template.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/template.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/terminate.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/terminate.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stdout]  --> src/operators/terminate.rs:8:37
[INFO] [stdout]   |
[INFO] [stdout] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stdout]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/operators/timer.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]  --> src/operators/timer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::iter;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/operators/timer.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OperatorRefRead`, `OperatorRef`, and `OperatorState`
[INFO] [stdout]   --> src/operators/timer.rs:16:37
[INFO] [stdout]    |
[INFO] [stdout] 16 |     GraphOperatorContext, Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime,
[INFO] [stdout]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stdout]    |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]    --> src/lib.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |     use std::thread::sleep;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Level`
[INFO] [stdout]    --> src/lib.rs:176:19
[INFO] [stdout]     |
[INFO] [stdout] 176 |     use tracing::{Level, debug, info, instrument};
[INFO] [stdout]     |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/graph/processors/mod.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             ProcessorType::Basic { processor } => processor.req_reply().await,
[INFO] [stdout]    |             ---------------------------------- matches all the relevant values
[INFO] [stdout] 34 |             _ => {
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> src/operators/op_wrapper.rs:286:5
[INFO] [stdout]     |
[INFO] [stdout] 286 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> src/operators/op_wrapper.rs:325:5
[INFO] [stdout]     |
[INFO] [stdout] 325 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::operator_types::ai_tool::AIToolOperator`
[INFO] [stdout]   --> src/graph/graph.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | use super::operator_types::ai_tool::AIToolOperator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::ai_tool::AIToolOperator`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use super::ai_tool::AIToolOperator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graph::operator_types::ai_tool::AIToolOperator`
[INFO] [stdout]  --> src/operators/ai_agent/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::graph::operator_types::ai_tool::AIToolOperator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Operator`
[INFO] [stdout]  --> src/operators/op_actor.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType, OperatorType,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncHandleTrait`
[INFO] [stdout]   --> src/operators/op_actor.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 |     graph::{AsyncHandleTrait, Graph},
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BufRead`
[INFO] [stdout]  --> src/operators/shell/process.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{BufRead, Write};
[INFO] [stdout]   |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/operators/shell/process.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::{BufRead, Write};
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_node`
[INFO] [stdout]    --> src/graph/graph.rs:761:9
[INFO] [stdout]     |
[INFO] [stdout] 761 |         start_node: String,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_node`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]    --> src/graph/operator.rs:105:24
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]    --> src/graph/operator.rs:105:43
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `values`
[INFO] [stdout]   --> src/graph/operator_types/ai_agent.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         values: serde_yaml::Value,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/graph/watcher.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 53 |                     _ => {
[INFO] [stdout]    |                     ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/graph/watcher.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                     ControlEventType::Notice => {
[INFO] [stdout]    |                     ------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 38 |                     ControlEventType::OperatorUpdated => {
[INFO] [stdout]    |                     --------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 47 |                     ControlEventType::GraphReplaced => {
[INFO] [stdout]    |                     ------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 53 |                     _ => {
[INFO] [stdout]    |                     ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]    --> src/operators/buffer_to_json.rs:126:39
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `message`
[INFO] [stdout]    --> src/operators/buffer_to_json.rs:167:22
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn handle(&self, message: Message) -> Message {
[INFO] [stdout]     |                      ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/json_to_buffer.rs:40:39
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/global_space/global_space.rs:46:39
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/noop.rs:47:39
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]    --> src/operators/op_actor_handle.rs:107:39
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]     |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph_name`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new<T>(graph_name: String, id: String, operator: T) -> Self
[INFO] [stdout]    |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_graph_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `graph`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:61:24
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/op_wrapper.rs:61:43
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/passthrough.rs:39:39
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/stub.rs:48:39
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {}
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/template.rs:41:39
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_meta`
[INFO] [stdout]   --> src/operators/terminate.rs:41:39
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stdout]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EdgeDestination` is never constructed
[INFO] [stdout]   --> src/graph/experimental.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct EdgeDestination {
[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 `on_init`, `on_finalize`, and `on_call` are never used
[INFO] [stdout]   --> src/graph/hooks.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait GraphHook: Send + Sync + Debug {
[INFO] [stdout]    |           --------- methods in this trait
[INFO] [stdout] 11 |     /// Called when the graph is initialized.
[INFO] [stdout] 12 |     fn on_init(&self, graph: &mut Graph);
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn on_finalize(&self, graph: &mut Graph);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn on_call(&self, graph: &mut Graph, message: &str);
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `session`, `span`, and `context` are never read
[INFO] [stdout]   --> src/graph/message.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct OriginMessageV2<T> {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 41 |     session: Option<String>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 42 |     span: Option<DebuggableSpan>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 43 |     context: T,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OriginMessageV2` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `XProcessor` is never used
[INFO] [stdout]   --> src/graph/processors/mod.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub(crate) trait XProcessor: Send + Sync + Debug {
[INFO] [stdout]    |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ProcessorType` is never used
[INFO] [stdout]   --> src/graph/processors/mod.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum ProcessorType {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_basic` and `req_reply` are never used
[INFO] [stdout]   --> src/graph/processors/mod.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl ProcessorType {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 20 |     pub fn new_basic(graph: &mut Graph) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub async fn req_reply(&mut self) -> Message {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `end` is never read
[INFO] [stdout]   --> src/graph/processors/port.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Port {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 11 |     end: Receiver<Message>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Port` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `req_reply`, and `wait` are never used
[INFO] [stdout]   --> src/graph/processors/port.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Port {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 15 |     pub fn new(graph: &mut Graph, id: String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub async fn req_reply(&mut self) -> Message {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub async fn wait(&mut self) -> Option<Message> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RawGraph` is never constructed
[INFO] [stdout]   --> src/graph/serde.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub(super) struct RawGraph {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RawNode` is never constructed
[INFO] [stdout]   --> src/graph/serde.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct RawNode {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Edge` is never constructed
[INFO] [stdout]   --> src/graph/serde.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct Edge {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `load_yaml` and `load_yaml_from_value` are never used
[INFO] [stdout]   --> src/graph/serde.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | impl RawGraph {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn load_yaml(file_path: &str) -> Result<RawGraph, Box<dyn std::error::Error>> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn load_yaml_from_value(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/operators/canodamo_sample.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct ThisModel {
[INFO] [stdout]   |        --------- field in this struct
[INFO] [stdout] 8 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ThisModel` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_empty` is never used
[INFO] [stdout]   --> src/operators/ai_agent/mod.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn default_empty() -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThisModel` is never constructed
[INFO] [stdout]   --> src/operators/ai_agent/mod.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct ThisModel {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_empty` is never used
[INFO] [stdout]  --> src/operators/ai_tool/mod.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn default_empty() -> String {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThisModel` is never constructed
[INFO] [stdout]   --> src/operators/ai_tool/mod.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct ThisModel {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `setup_routes` is never used
[INFO] [stdout]    --> src/operators/fan_out/fan_out.rs:456:8
[INFO] [stdout]     |
[INFO] [stdout]  91 | impl FanOut {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 456 |     fn setup_routes(&self, _start: OperatorRef) {}
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `graph_name` and `id` are never read
[INFO] [stdout]   --> src/operators/op_actor_handle.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub(crate) struct OperatorActorHandle {
[INFO] [stdout]    |                   ------------------- fields in this struct
[INFO] [stdout] 33 |     //sender: mpsc::Sender<Message>,
[INFO] [stdout] 34 |     graph_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 35 |     id: String,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OperatorActorHandle` 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 `id` is never read
[INFO] [stdout]   --> src/operators/op_wrapper.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct OperatorWrapper {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 22 |     id: String,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OperatorWrapper` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `child` is never read
[INFO] [stdout]   --> src/operators/shell/process.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ShellProcess {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 24 |     child: Option<tokio::process::Child>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ShellProcess` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `batching` is never used
[INFO] [stdout]    --> src/operators/shell/process.rs:301:10
[INFO] [stdout]     |
[INFO] [stdout] 301 | async fn batching(
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_batch` is never used
[INFO] [stdout]    --> src/operators/shell/process.rs:380:10
[INFO] [stdout]     |
[INFO] [stdout] 380 | async fn process_batch(buffer: &mut Vec<String>, forward_to: &mut FuturesMPSC::Sender<Message>) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Template` is never constructed
[INFO] [stdout]   --> src/operators/template.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) struct Template;
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup` is never used
[INFO] [stdout]    --> src/lib.rs:214:8
[INFO] [stdout]     |
[INFO] [stdout] 214 |     fn setup() {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_test` is never used
[INFO] [stdout]    --> src/lib.rs:223:8
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn run_test<T>(test: T) -> ()
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     async fn end_to_end(&self, message: Vec<u8>) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout]    = note: `#[warn(async_fn_in_trait)]` on by default
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 13 -     async fn end_to_end(&self, message: Vec<u8>) -> Message;
[INFO] [stdout] 13 +     fn end_to_end(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     async fn end_to_end_json(&self, message: Value) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 14 -     async fn end_to_end_json(&self, message: Value) -> Message;
[INFO] [stdout] 14 +     fn end_to_end_json(&self, message: Value) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     async fn end_to_end_standard(&self, message: Vec<u8>) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 15 -     async fn end_to_end_standard(&self, message: Vec<u8>) -> Message;
[INFO] [stdout] 15 +     fn end_to_end_standard(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stdout]   --> src/graph/graph_run.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     async fn end_to_end_2(&self, message: Vec<u8>) -> Message;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stdout] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stdout]    |
[INFO] [stdout] 17 -     async fn end_to_end_2(&self, message: Vec<u8>) -> Message;
[INFO] [stdout] 17 +     fn end_to_end_2(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/operators/shell/process.rs:155:29
[INFO] [stdout]     |
[INFO] [stdout] 155 |                 for line in err_reader.next_line().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 155 -                 for line in err_reader.next_line().await {
[INFO] [stdout] 155 +                 while let Ok(line) = err_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 155 -                 for line in err_reader.next_line().await {
[INFO] [stdout] 155 +                 if let Ok(line) = err_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/operators/shell/process.rs:193:29
[INFO] [stdout]     |
[INFO] [stdout] 193 |                 for line in out_reader.next_line().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 193 -                 for line in out_reader.next_line().await {
[INFO] [stdout] 193 +                 while let Ok(line) = out_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 193 -                 for line in out_reader.next_line().await {
[INFO] [stdout] 193 +                 if let Ok(line) = out_reader.next_line().await {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 10.19s
[INFO] running `Command { std: "docker" "inspect" "4a32cd5595e3ee814e2733f2d79bba2699a2be99a5252bac985a82e207ce5663", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4a32cd5595e3ee814e2733f2d79bba2699a2be99a5252bac985a82e207ce5663", kill_on_drop: false }`
[INFO] [stdout] 4a32cd5595e3ee814e2733f2d79bba2699a2be99a5252bac985a82e207ce5663
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-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" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 240afefabf7b3aded9a784d3cdf9f79702dcdaf4f37651c428a3ff75b1fe2aa1
[INFO] running `Command { std: "docker" "start" "-a" "240afefabf7b3aded9a784d3cdf9f79702dcdaf4f37651c428a3ff75b1fe2aa1", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `crate::graph::graph::GraphMod`
[INFO] [stderr]  --> src/lib.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::graph::graph::GraphMod;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph::graph_run::GraphRun`
[INFO] [stderr]  --> src/lib.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::graph::graph_run::GraphRun;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `broadcast_event`
[INFO] [stderr]  --> src/lib.rs:7:46
[INFO] [stderr]   |
[INFO] [stderr] 7 | use my_reg::{ControlEvent, ControlEventType, broadcast_event, deregister, register};
[INFO] [stderr]   |                                              ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Receiver`, `Sender`, and `mpsc`
[INFO] [stderr]   --> src/lib.rs:11:17
[INFO] [stderr]    |
[INFO] [stderr] 11 |     broadcast::{Receiver, Sender},
[INFO] [stderr]    |                 ^^^^^^^^  ^^^^^^
[INFO] [stderr] 12 |     mpsc,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Display`
[INFO] [stderr]  --> src/graph/graph.rs:2:23
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::fmt::{Debug, Display};
[INFO] [stderr]   |                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fastrace::prelude::SpanContext`
[INFO] [stderr]  --> src/graph/graph.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use fastrace::prelude::SpanContext;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `futures::channel::oneshot`
[INFO] [stderr]  --> src/graph/graph.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use futures::channel::oneshot;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `json`
[INFO] [stderr]  --> src/graph/graph.rs:9:25
[INFO] [stderr]   |
[INFO] [stderr] 9 | use serde_json::{Value, json};
[INFO] [stderr]   |                         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Receiver` and `Sender`
[INFO] [stderr]   --> src/graph/graph.rs:10:30
[INFO] [stderr]    |
[INFO] [stderr] 10 | use tokio::sync::broadcast::{Receiver, Sender};
[INFO] [stderr]    |                              ^^^^^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::sync::mpsc`
[INFO] [stderr]   --> src/graph/graph.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use tokio::sync::mpsc;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph`
[INFO] [stderr]   --> src/graph/graph.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use crate::graph;
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph::operator_types::canonical_model::CanonicalModel`
[INFO] [stderr]   --> src/graph/graph.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | use crate::graph::operator_types::canonical_model::CanonicalModel;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `register`
[INFO] [stderr]   --> src/graph/graph.rs:20:70
[INFO] [stderr]    |
[INFO] [stderr] 20 | use crate::my_reg::{ControlEvent, ControlEventType, broadcast_event, register};
[INFO] [stderr]    |                                                                      ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `SharedService`
[INFO] [stderr]   --> src/graph/graph.rs:24:30
[INFO] [stderr]    |
[INFO] [stderr] 24 | use crate::shared_resource::{SharedService, SharedServiceRef};
[INFO] [stderr]    |                              ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DebuggableSpan`, `OriginMessage`, and `self`
[INFO] [stderr]   --> src/graph/graph.rs:29:22
[INFO] [stderr]    |
[INFO] [stderr] 29 | use super::message::{self, DebuggableSpan, Message, OriginMessage};
[INFO] [stderr]    |                      ^^^^  ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::operator_types::canonical_model::CanonicalModelService`
[INFO] [stderr]   --> src/graph/graph.rs:33:5
[INFO] [stderr]    |
[INFO] [stderr] 33 | use super::operator_types::canonical_model::CanonicalModelService;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::processors::port::Port`
[INFO] [stderr]   --> src/graph/graph.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 | use super::processors::port::Port;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::Deref`
[INFO] [stderr]   --> src/graph/graph.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 | use std::ops::Deref;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Graph`
[INFO] [stderr]  --> src/graph/graph_run.rs:9:20
[INFO] [stderr]   |
[INFO] [stderr] 9 | use super::graph::{Graph, GraphRunner};
[INFO] [stderr]   |                    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRefRead`, `OperatorRef`, `OperatorRole`, `OperatorRuntime`, and `Operator`
[INFO] [stderr]   --> src/graph/message.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime, OperatorRuntimeType,
[INFO] [stderr]    |     ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/graph/operator.rs:14:34
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub type OperatorRef = Arc<Mutex<(dyn Operator + 'static)>>;
[INFO] [stderr]    |                                  ^                      ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 14 - pub type OperatorRef = Arc<Mutex<(dyn Operator + 'static)>>;
[INFO] [stderr] 14 + pub type OperatorRef = Arc<Mutex<dyn Operator + 'static >>;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fastrace::Span`
[INFO] [stderr]  --> src/graph/operator_types/ai_agent.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use fastrace::Span;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Canceled`
[INFO] [stderr]  --> src/graph/operator_types/ai_agent.rs:2:39
[INFO] [stderr]   |
[INFO] [stderr] 2 | use futures::channel::oneshot::{self, Canceled};
[INFO] [stderr]   |                                       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Error`
[INFO] [stderr]  --> src/graph/operator_types/ai_agent.rs:3:18
[INFO] [stderr]   |
[INFO] [stderr] 3 | use serde_json::{Error, Value, json};
[INFO] [stderr]   |                  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `mpsc` and `oneshot::Receiver`
[INFO] [stderr]  --> src/graph/operator_types/ai_agent.rs:4:19
[INFO] [stderr]   |
[INFO] [stderr] 4 | use tokio::sync::{mpsc, oneshot::Receiver};
[INFO] [stderr]   |                   ^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `warn`
[INFO] [stderr]  --> src/graph/operator_types/ai_agent.rs:5:35
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tracing::{debug, error, info, warn};
[INFO] [stderr]   |                                   ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `GraphStatus`, `OperatorRef`, `my_reg::register`, `registry::GraphRegistry`, and `settings::settings::env_settings`
[INFO] [stderr]   --> src/graph/operator_types/ai_agent.rs:9:42
[INFO] [stderr]    |
[INFO] [stderr]  9 |         graph::{AsyncHandleTrait, Graph, GraphStatus},
[INFO] [stderr]    |                                          ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 13 |             GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stderr]    |                                             ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 16 |         registry::GraphRegistry,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 17 |     },
[INFO] [stderr] 18 |     my_reg::register,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 19 |     settings::settings::env_settings,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::panic`
[INFO] [stderr]   --> src/graph/operator_types/ai_agent.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use core::panic;
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashSet` and `Mutex`
[INFO] [stderr]   --> src/graph/operator_types/ai_agent.rs:23:28
[INFO] [stderr]    |
[INFO] [stderr] 23 |     collections::{HashMap, HashSet},
[INFO] [stderr]    |                            ^^^^^^^
[INFO] [stderr] 24 |     fmt::Debug,
[INFO] [stderr] 25 |     sync::{Arc, Mutex},
[INFO] [stderr]    |                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Value`
[INFO] [stderr]  --> src/graph/operator_types/ai_tool.rs:1:25
[INFO] [stderr]   |
[INFO] [stderr] 1 | use serde_yaml::{Error, Value};
[INFO] [stderr]   |                         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef` and `OperatorState`
[INFO] [stderr]  --> src/graph/operator_types/ai_tool.rs:9:41
[INFO] [stderr]   |
[INFO] [stderr] 9 |         GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stderr]   |                                         ^^^^^^^^^^^                                 ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]   --> src/graph/operator_types/ai_tool.rs:15:19
[INFO] [stderr]    |
[INFO] [stderr] 15 |     collections::{HashMap, HashSet},
[INFO] [stderr]    |                   ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stderr]  --> src/graph/operator_types/canonical_model.rs:9:41
[INFO] [stderr]   |
[INFO] [stderr] 9 |         GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stderr]   |                                         ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]   --> src/graph/operator_types/canonical_model.rs:15:19
[INFO] [stderr]    |
[INFO] [stderr] 15 |     collections::{HashMap, HashSet},
[INFO] [stderr]    |                   ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `thread::spawn`
[INFO] [stderr]  --> src/graph/registry.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     thread::spawn,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `warn`
[INFO] [stderr]  --> src/graph/registry.rs:7:28
[INFO] [stderr]   |
[INFO] [stderr] 7 | use tracing::{error, info, warn};
[INFO] [stderr]   |                            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `GraphMod`
[INFO] [stderr]  --> src/graph/registry.rs:9:27
[INFO] [stderr]   |
[INFO] [stderr] 9 | use super::graph::{Graph, GraphMod};
[INFO] [stderr]   |                           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::graph::Graph`
[INFO] [stderr]  --> src/graph/serde.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use super::graph::Graph;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `graph::graph::GraphStatus`
[INFO] [stderr]  --> src/graph/watcher.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 |     graph::graph::GraphStatus,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde::Serialize`
[INFO] [stderr]  --> src/graph/watcher.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use serde::Serialize;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Arc` and `Mutex`
[INFO] [stderr]  --> src/graph/watcher.rs:6:17
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                 ^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::task::JoinHandle`
[INFO] [stderr]  --> src/my_reg.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use tokio::task::JoinHandle;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `event`
[INFO] [stderr]  --> src/my_reg.rs:8:29
[INFO] [stderr]   |
[INFO] [stderr] 8 | use tracing::{debug, error, event, info};
[INFO] [stderr]   |                             ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/buffer_to_json.rs:3:24
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]  --> src/operators/buffer_to_json.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::str::FromStr;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/buffer_to_json.rs:5:22
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stderr]   --> src/operators/buffer_to_json.rs:13:54
[INFO] [stderr]    |
[INFO] [stderr] 13 |     Filter2Operator, GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stderr]    |                                                      ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> src/operators/factory.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AsyncHandleTrait`
[INFO] [stderr]  --> src/operators/factory.rs:4:27
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::graph::graph::{AsyncHandleTrait, Graph};
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef`, `OperatorRole`, `OperatorState`, `OperatorType`, and `Operator`
[INFO] [stderr]  --> src/operators/factory.rs:5:30
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::graph::operator::{Operator, OperatorRef, OperatorRole, OperatorState, OperatorType};
[INFO] [stderr]   |                              ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/json_to_buffer.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/json_to_buffer.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `OperatorRef`
[INFO] [stderr]   --> src/operators/json_to_buffer.rs:12:37
[INFO] [stderr]    |
[INFO] [stderr] 12 |     GraphOperatorContext, Operator, OperatorRef, OperatorRuntime, OperatorType,
[INFO] [stderr]    |                                     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/callout.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/callout.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `chrono::Duration`
[INFO] [stderr]  --> src/operators/callout.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use chrono::Duration;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `broadcast`
[INFO] [stderr]  --> src/operators/callout.rs:8:19
[INFO] [stderr]   |
[INFO] [stderr] 8 | use tokio::sync::{broadcast, mpsc};
[INFO] [stderr]   |                   ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::time::sleep`
[INFO] [stderr]  --> src/operators/callout.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use tokio::time::sleep;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `error`
[INFO] [stderr]   --> src/operators/callout.rs:10:22
[INFO] [stderr]    |
[INFO] [stderr] 10 | use tracing::{debug, error, info, warn};
[INFO] [stderr]    |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph`
[INFO] [stderr]   --> src/operators/callout.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::graph;
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `GraphMod`
[INFO] [stderr]   --> src/operators/callout.rs:13:52
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::graph::graph::{AsyncHandleTrait, Graph, GraphMod, GraphRunner, GraphStatus};
[INFO] [stderr]    |                                                    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `OperatorRef`
[INFO] [stderr]   --> src/operators/callout.rs:15:37
[INFO] [stderr]    |
[INFO] [stderr] 15 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stderr]    |                                     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `OperatorRef`
[INFO] [stderr]  --> src/operators/ai_agent/mod.rs:7:16
[INFO] [stderr]   |
[INFO] [stderr] 7 |     operator::{OperatorRef, OperatorRole},
[INFO] [stderr]   |                ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde_json::json`
[INFO] [stderr]  --> src/operators/ai_tool/mod.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use serde_json::json;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/claim_check/claim_check.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/claim_check/claim_check.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `OperatorRef`
[INFO] [stderr]  --> src/operators/claim_check/claim_check.rs:9:54
[INFO] [stderr]   |
[INFO] [stderr] 9 |     Filter2Operator, GraphOperatorContext, Operator, OperatorRef, OperatorRuntime, OperatorType,
[INFO] [stderr]   |                                                      ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fastrace::local::LocalSpan`
[INFO] [stderr]  --> src/operators/fan_out/fan_out.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use fastrace::local::LocalSpan;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/fan_out/fan_out.rs:4:24
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `info` and `span`
[INFO] [stderr]   --> src/operators/fan_out/fan_out.rs:10:29
[INFO] [stderr]    |
[INFO] [stderr] 10 | use tracing::{debug, error, info, span, warn};
[INFO] [stderr]    |                             ^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph`
[INFO] [stderr]   --> src/operators/fan_out/fan_out.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::graph;
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `OperatorRuntimeType`
[INFO] [stderr]   --> src/operators/fan_out/fan_out.rs:15:71
[INFO] [stderr]    |
[INFO] [stderr] 15 |     GraphOperatorContext, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType,
[INFO] [stderr]    |                                                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stderr]   --> src/operators/fan_out/fan_out.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | use crate::graph::registry::GraphRegistry;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/global_space/global_space.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/global_space/global_space.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stderr]  --> src/operators/global_space/global_space.rs:8:37
[INFO] [stderr]   |
[INFO] [stderr] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stderr]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 9 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stderr]   |                          ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OnceLock` and `collections::HashMap`
[INFO] [stderr]  --> src/operators/global_space/resource.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 |     collections::HashMap,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 3 |     sync::{Arc, Mutex, OnceLock},
[INFO] [stderr]   |                        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/noop.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/noop.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `futures::channel::oneshot`
[INFO] [stderr]  --> src/operators/noop.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use futures::channel::oneshot;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stderr]   --> src/operators/noop.rs:10:37
[INFO] [stderr]    |
[INFO] [stderr] 10 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stderr]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Mutex` and `thread::sleep`
[INFO] [stderr]  --> src/operators/op_actor.rs:2:17
[INFO] [stderr]   |
[INFO] [stderr] 2 |     sync::{Arc, Mutex},
[INFO] [stderr]   |                 ^^^^^
[INFO] [stderr] 3 |     thread::sleep,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `OperatorRef`
[INFO] [stderr]  --> src/operators/op_actor.rs:7:15
[INFO] [stderr]   |
[INFO] [stderr] 7 |     Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType, OperatorType,
[INFO] [stderr]   |               ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Graph`
[INFO] [stderr]   --> src/operators/op_actor.rs:10:31
[INFO] [stderr]    |
[INFO] [stderr] 10 |     graph::{AsyncHandleTrait, Graph},
[INFO] [stderr]    |                               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `local::LocalSpan`
[INFO] [stderr]   --> src/operators/op_actor.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 | use fastrace::{Span, local::LocalSpan, prelude::SpanContext};
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `info_span`, `instrument`, `span`, and `warn`
[INFO] [stderr]   --> src/operators/op_actor.rs:16:35
[INFO] [stderr]    |
[INFO] [stderr] 16 | use tracing::{debug, error, info, info_span, instrument, span, warn};
[INFO] [stderr]    |                                   ^^^^^^^^^  ^^^^^^^^^^  ^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tracing::Instrument`
[INFO] [stderr]   --> src/operators/op_actor.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | use tracing::Instrument;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/op_actor_handle.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/op_actor_handle.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread::sleep`
[INFO] [stderr]  --> src/operators/op_actor_handle.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::thread::sleep;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]  --> src/operators/op_actor_handle.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::time::Duration;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fastrace::local::LocalSpan`
[INFO] [stderr]  --> src/operators/op_actor_handle.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use fastrace::local::LocalSpan;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fastrace::prelude::SpanContext`
[INFO] [stderr]  --> src/operators/op_actor_handle.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use fastrace::prelude::SpanContext;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Span`
[INFO] [stderr]  --> src/operators/op_actor_handle.rs:8:16
[INFO] [stderr]   |
[INFO] [stderr] 8 | use fastrace::{Span, trace};
[INFO] [stderr]   |                ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::task::spawn_blocking`
[INFO] [stderr]   --> src/operators/op_actor_handle.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use tokio::task::spawn_blocking;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `info_span`, `info`, `instrument`, and `warn`
[INFO] [stderr]   --> src/operators/op_actor_handle.rs:11:29
[INFO] [stderr]    |
[INFO] [stderr] 11 | use tracing::{debug, error, info, info_span, instrument, warn};
[INFO] [stderr]    |                             ^^^^  ^^^^^^^^^  ^^^^^^^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph`
[INFO] [stderr]   --> src/operators/op_actor_handle.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::graph;
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorRuntimeType`
[INFO] [stderr]   --> src/operators/op_actor_handle.rs:16:37
[INFO] [stderr]    |
[INFO] [stderr] 16 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime,
[INFO] [stderr]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 17 |     OperatorRuntimeType, OperatorType,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stderr]   --> src/operators/op_actor_handle.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | use crate::graph::registry::GraphRegistry;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ControlEvent` and `register`
[INFO] [stderr]   --> src/operators/op_actor_handle.rs:24:21
[INFO] [stderr]    |
[INFO] [stderr] 24 | use crate::my_reg::{ControlEvent, register};
[INFO] [stderr]    |                     ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fastrace::future::FutureExt`
[INFO] [stderr]   --> src/operators/op_actor_handle.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 28 | use fastrace::future::FutureExt;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tracing::Instrument`
[INFO] [stderr]   --> src/operators/op_actor_handle.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 29 | use tracing::Instrument;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph`
[INFO] [stderr]  --> src/operators/op_wrapper.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::graph;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRefRead`, `OperatorRef`, `OperatorRole`, and `OperatorRuntimeType`
[INFO] [stderr]  --> src/operators/op_wrapper.rs:6:37
[INFO] [stderr]   |
[INFO] [stderr] 6 |     GraphOperatorContext, Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime,
[INFO] [stderr]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 7 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph::registry::GraphRegistry`
[INFO] [stderr]  --> src/operators/op_wrapper.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::graph::registry::GraphRegistry;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde::de`
[INFO] [stderr]   --> src/operators/op_wrapper.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | use serde::de;
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::any::Any`
[INFO] [stderr]   --> src/operators/op_wrapper.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use std::any::Any;
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]   --> src/operators/op_wrapper.rs:16:24
[INFO] [stderr]    |
[INFO] [stderr] 16 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]    |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `info`
[INFO] [stderr]   --> src/operators/op_wrapper.rs:18:29
[INFO] [stderr]    |
[INFO] [stderr] 18 | use tracing::{debug, error, info, warn};
[INFO] [stderr]    |                             ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lint `elided_named_lifetimes` has been renamed to `mismatched_lifetime_syntaxes`
[INFO] [stderr]    --> src/operators/op_wrapper.rs:288:9
[INFO] [stderr]     |
[INFO] [stderr] 288 |         elided_named_lifetimes,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `mismatched_lifetime_syntaxes`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: lint `elided_named_lifetimes` has been renamed to `mismatched_lifetime_syntaxes`
[INFO] [stderr]    --> src/operators/op_wrapper.rs:327:9
[INFO] [stderr]     |
[INFO] [stderr] 327 |         elided_named_lifetimes,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: use the new name: `mismatched_lifetime_syntaxes`
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/passthrough.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/passthrough.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `info`
[INFO] [stderr]  --> src/operators/passthrough.rs:4:22
[INFO] [stderr]   |
[INFO] [stderr] 4 | use tracing::{debug, info};
[INFO] [stderr]   |                      ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef` and `OperatorRole`
[INFO] [stderr]  --> src/operators/passthrough.rs:9:37
[INFO] [stderr]   |
[INFO] [stderr] 9 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stderr]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/settings.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/settings.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread::sleep`
[INFO] [stderr]  --> src/operators/settings.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::thread::sleep;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `futures::channel::oneshot`
[INFO] [stderr]  --> src/operators/settings.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use futures::channel::oneshot;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde_json::Value`
[INFO] [stderr]  --> src/operators/settings.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use serde_json::Value;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph`
[INFO] [stderr]   --> src/operators/settings.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::graph;
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef` and `OperatorState`
[INFO] [stderr]   --> src/operators/settings.rs:14:37
[INFO] [stderr]    |
[INFO] [stderr] 14 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stderr]    |                                     ^^^^^^^^^^^                                 ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ControlCommand` and `OriginMessage`
[INFO] [stderr]   --> src/operators/settings.rs:18:29
[INFO] [stderr]    |
[INFO] [stderr] 18 | use crate::graph::message::{ControlCommand, Message, OriginMessage};
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::operators::shell::resources::get_instance`
[INFO] [stderr]  --> src/operators/shell/process.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::operators::shell::resources::get_instance;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread::sleep`
[INFO] [stderr]   --> src/operators/shell/process.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use std::thread::sleep;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::io`
[INFO] [stderr]   --> src/operators/shell/process.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use tokio::io;
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `debug` and `warn`
[INFO] [stderr]   --> src/operators/shell/process.rs:20:15
[INFO] [stderr]    |
[INFO] [stderr] 20 | use tracing::{debug, error, info, warn};
[INFO] [stderr]    |               ^^^^^               ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tracing::warn`
[INFO] [stderr]  --> src/operators/shell/resources.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tracing::warn;
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/shell/shell.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/shell/shell.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `warn`
[INFO] [stderr]  --> src/operators/shell/shell.rs:5:35
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tracing::{debug, error, info, warn};
[INFO] [stderr]   |                                   ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `OperatorRef`
[INFO] [stderr]   --> src/operators/shell/shell.rs:11:37
[INFO] [stderr]    |
[INFO] [stderr] 11 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorType,
[INFO] [stderr]    |                                     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/stub.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/stub.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde::de::value`
[INFO] [stderr]  --> src/operators/stub.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use serde::de::value;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `warn`
[INFO] [stderr]  --> src/operators/stub.rs:5:29
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tracing::{debug, error, warn};
[INFO] [stderr]   |                             ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stderr]  --> src/operators/stub.rs:9:37
[INFO] [stderr]   |
[INFO] [stderr] 9 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stderr]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/template.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/template.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stderr]  --> src/operators/template.rs:8:37
[INFO] [stderr]   |
[INFO] [stderr] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stderr]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/terminate.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/terminate.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRef`, `OperatorRole`, and `OperatorState`
[INFO] [stderr]  --> src/operators/terminate.rs:8:37
[INFO] [stderr]   |
[INFO] [stderr] 8 |     GraphOperatorContext, Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorState,
[INFO] [stderr]   |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stderr]  --> src/operators/timer.rs:1:24
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stderr]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::iter`
[INFO] [stderr]  --> src/operators/timer.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::iter;
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/operators/timer.rs:3:22
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `OperatorRefRead`, `OperatorRef`, and `OperatorState`
[INFO] [stderr]   --> src/operators/timer.rs:16:37
[INFO] [stderr]    |
[INFO] [stderr] 16 |     GraphOperatorContext, Operator, OperatorRef, OperatorRefRead, OperatorRole, OperatorRuntime,
[INFO] [stderr]    |                                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 17 |     OperatorRuntimeType, OperatorState, OperatorType,
[INFO] [stderr]    |                          ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/graph/processors/mod.rs:34:13
[INFO] [stderr]    |
[INFO] [stderr] 33 |             ProcessorType::Basic { processor } => processor.req_reply().await,
[INFO] [stderr]    |             ---------------------------------- matches all the relevant values
[INFO] [stderr] 34 |             _ => {
[INFO] [stderr]    |             ^ no value can reach this
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stderr]    --> src/operators/op_wrapper.rs:286:5
[INFO] [stderr]     |
[INFO] [stderr] 286 |     #[must_use]
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stderr]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stderr]    --> src/operators/op_wrapper.rs:325:5
[INFO] [stderr]     |
[INFO] [stderr] 325 |     #[must_use]
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::operator_types::ai_tool::AIToolOperator`
[INFO] [stderr]   --> src/graph/graph.rs:32:5
[INFO] [stderr]    |
[INFO] [stderr] 32 | use super::operator_types::ai_tool::AIToolOperator;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::ai_tool::AIToolOperator`
[INFO] [stderr]   --> src/graph/operator_types/ai_agent.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 28 | use super::ai_tool::AIToolOperator;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::graph::operator_types::ai_tool::AIToolOperator`
[INFO] [stderr]  --> src/operators/ai_agent/mod.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::graph::operator_types::ai_tool::AIToolOperator;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Operator`
[INFO] [stderr]  --> src/operators/op_actor.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     Operator, OperatorRef, OperatorRole, OperatorRuntime, OperatorRuntimeType, OperatorType,
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AsyncHandleTrait`
[INFO] [stderr]   --> src/operators/op_actor.rs:10:13
[INFO] [stderr]    |
[INFO] [stderr] 10 |     graph::{AsyncHandleTrait, Graph},
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BufRead`
[INFO] [stderr]  --> src/operators/shell/process.rs:8:15
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::io::{BufRead, Write};
[INFO] [stderr]   |               ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Write`
[INFO] [stderr]  --> src/operators/shell/process.rs:8:24
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::io::{BufRead, Write};
[INFO] [stderr]   |                        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `start_node`
[INFO] [stderr]    --> src/graph/graph.rs:761:9
[INFO] [stderr]     |
[INFO] [stderr] 761 |         start_node: String,
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_node`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `graph`
[INFO] [stderr]    --> src/graph/operator.rs:105:24
[INFO] [stderr]     |
[INFO] [stderr] 105 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]     |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]    --> src/graph/operator.rs:105:43
[INFO] [stderr]     |
[INFO] [stderr] 105 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]     |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `values`
[INFO] [stderr]   --> src/graph/operator_types/ai_agent.rs:59:9
[INFO] [stderr]    |
[INFO] [stderr] 59 |         values: serde_yaml::Value,
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_values`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/graph/watcher.rs:53:21
[INFO] [stderr]    |
[INFO] [stderr] 53 |                     _ => {
[INFO] [stderr]    |                     ^ no value can reach this
[INFO] [stderr]    |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]   --> src/graph/watcher.rs:53:21
[INFO] [stderr]    |
[INFO] [stderr] 32 |                     ControlEventType::Notice => {
[INFO] [stderr]    |                     ------------------------ matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 38 |                     ControlEventType::OperatorUpdated => {
[INFO] [stderr]    |                     --------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 47 |                     ControlEventType::GraphReplaced => {
[INFO] [stderr]    |                     ------------------------------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 53 |                     _ => {
[INFO] [stderr]    |                     ^ collectively making this unreachable
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]    --> src/operators/buffer_to_json.rs:126:39
[INFO] [stderr]     |
[INFO] [stderr] 126 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]     |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `message`
[INFO] [stderr]    --> src/operators/buffer_to_json.rs:167:22
[INFO] [stderr]     |
[INFO] [stderr] 167 |     fn handle(&self, message: Message) -> Message {
[INFO] [stderr]     |                      ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]   --> src/operators/json_to_buffer.rs:40:39
[INFO] [stderr]    |
[INFO] [stderr] 40 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]   --> src/operators/global_space/global_space.rs:46:39
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]   --> src/operators/noop.rs:47:39
[INFO] [stderr]    |
[INFO] [stderr] 47 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]    --> src/operators/op_actor_handle.rs:107:39
[INFO] [stderr]     |
[INFO] [stderr] 107 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]     |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `graph_name`
[INFO] [stderr]   --> src/operators/op_wrapper.rs:30:19
[INFO] [stderr]    |
[INFO] [stderr] 30 |     pub fn new<T>(graph_name: String, id: String, operator: T) -> Self
[INFO] [stderr]    |                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_graph_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `graph`
[INFO] [stderr]   --> src/operators/op_wrapper.rs:61:24
[INFO] [stderr]    |
[INFO] [stderr] 61 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]    |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_graph`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]   --> src/operators/op_wrapper.rs:61:43
[INFO] [stderr]    |
[INFO] [stderr] 61 |     fn init(&mut self, graph: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]    |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]   --> src/operators/passthrough.rs:39:39
[INFO] [stderr]    |
[INFO] [stderr] 39 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]   --> src/operators/stub.rs:48:39
[INFO] [stderr]    |
[INFO] [stderr] 48 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {}
[INFO] [stderr]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]   --> src/operators/template.rs:41:39
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node_meta`
[INFO] [stderr]   --> src/operators/terminate.rs:41:39
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn init(&mut self, _: &mut Graph, node_meta: &NodeMeta) {
[INFO] [stderr]    |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_meta`
[INFO] [stderr] 
[INFO] [stderr] warning: struct `EdgeDestination` is never constructed
[INFO] [stderr]   --> src/graph/experimental.rs:48:12
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub struct EdgeDestination {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `on_init`, `on_finalize`, and `on_call` are never used
[INFO] [stderr]   --> src/graph/hooks.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub trait GraphHook: Send + Sync + Debug {
[INFO] [stderr]    |           --------- methods in this trait
[INFO] [stderr] 11 |     /// Called when the graph is initialized.
[INFO] [stderr] 12 |     fn on_init(&self, graph: &mut Graph);
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 15 |     fn on_finalize(&self, graph: &mut Graph);
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 18 |     fn on_call(&self, graph: &mut Graph, message: &str);
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `session`, `span`, and `context` are never read
[INFO] [stderr]   --> src/graph/message.rs:41:5
[INFO] [stderr]    |
[INFO] [stderr] 40 | pub struct OriginMessageV2<T> {
[INFO] [stderr]    |            --------------- fields in this struct
[INFO] [stderr] 41 |     session: Option<String>,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 42 |     span: Option<DebuggableSpan>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 43 |     context: T,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `OriginMessageV2` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: trait `XProcessor` is never used
[INFO] [stderr]   --> src/graph/processors/mod.rs:10:18
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub(crate) trait XProcessor: Send + Sync + Debug {
[INFO] [stderr]    |                  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `ProcessorType` is never used
[INFO] [stderr]   --> src/graph/processors/mod.rs:16:10
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub enum ProcessorType {
[INFO] [stderr]    |          ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new_basic` and `req_reply` are never used
[INFO] [stderr]   --> src/graph/processors/mod.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl ProcessorType {
[INFO] [stderr]    | ------------------ associated items in this implementation
[INFO] [stderr] 20 |     pub fn new_basic(graph: &mut Graph) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 31 |     pub async fn req_reply(&mut self) -> Message {
[INFO] [stderr]    |                  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `end` is never read
[INFO] [stderr]   --> src/graph/processors/port.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct Port {
[INFO] [stderr]    |            ---- field in this struct
[INFO] [stderr] 11 |     end: Receiver<Message>,
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Port` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `req_reply`, and `wait` are never used
[INFO] [stderr]   --> src/graph/processors/port.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | impl Port {
[INFO] [stderr]    | --------- associated items in this implementation
[INFO] [stderr] 15 |     pub fn new(graph: &mut Graph, id: String) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 31 |     pub async fn req_reply(&mut self) -> Message {
[INFO] [stderr]    |                  ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 46 |     pub async fn wait(&mut self) -> Option<Message> {
[INFO] [stderr]    |                  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `RawGraph` is never constructed
[INFO] [stderr]   --> src/graph/serde.rs:11:19
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub(super) struct RawGraph {
[INFO] [stderr]    |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `RawNode` is never constructed
[INFO] [stderr]   --> src/graph/serde.rs:22:12
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub struct RawNode {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Edge` is never constructed
[INFO] [stderr]   --> src/graph/serde.rs:33:8
[INFO] [stderr]    |
[INFO] [stderr] 33 | struct Edge {
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `load_yaml` and `load_yaml_from_value` are never used
[INFO] [stderr]   --> src/graph/serde.rs:51:12
[INFO] [stderr]    |
[INFO] [stderr] 42 | impl RawGraph {
[INFO] [stderr]    | ------------- associated functions in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 51 |     pub fn load_yaml(file_path: &str) -> Result<RawGraph, Box<dyn std::error::Error>> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 67 |     pub fn load_yaml_from_value(
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `name` is never read
[INFO] [stderr]  --> src/operators/canodamo_sample.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct ThisModel {
[INFO] [stderr]   |        --------- field in this struct
[INFO] [stderr] 8 |     name: String,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `ThisModel` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `default_empty` is never used
[INFO] [stderr]   --> src/operators/ai_agent/mod.rs:22:4
[INFO] [stderr]    |
[INFO] [stderr] 22 | fn default_empty() -> String {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ThisModel` is never constructed
[INFO] [stderr]   --> src/operators/ai_agent/mod.rs:28:8
[INFO] [stderr]    |
[INFO] [stderr] 28 | struct ThisModel {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `default_empty` is never used
[INFO] [stderr]  --> src/operators/ai_tool/mod.rs:9:4
[INFO] [stderr]   |
[INFO] [stderr] 9 | fn default_empty() -> String {
[INFO] [stderr]   |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ThisModel` is never constructed
[INFO] [stderr]   --> src/operators/ai_tool/mod.rs:15:8
[INFO] [stderr]    |
[INFO] [stderr] 15 | struct ThisModel {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `setup_routes` is never used
[INFO] [stderr]    --> src/operators/fan_out/fan_out.rs:456:8
[INFO] [stderr]     |
[INFO] [stderr]  91 | impl FanOut {
[INFO] [stderr]     | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 456 |     fn setup_routes(&self, _start: OperatorRef) {}
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `drop_instance` is never used
[INFO] [stderr]   --> src/operators/global_space/resource.rs:41:19
[INFO] [stderr]    |
[INFO] [stderr] 15 | impl WidgetsSharedService {
[INFO] [stderr]    | ------------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 41 |     pub(crate) fn drop_instance() {
[INFO] [stderr]    |                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `graph_name` and `id` are never read
[INFO] [stderr]   --> src/operators/op_actor_handle.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub(crate) struct OperatorActorHandle {
[INFO] [stderr]    |                   ------------------- fields in this struct
[INFO] [stderr] 33 |     //sender: mpsc::Sender<Message>,
[INFO] [stderr] 34 |     graph_name: String,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 35 |     id: String,
[INFO] [stderr]    |     ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `OperatorActorHandle` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `id` is never read
[INFO] [stderr]   --> src/operators/op_wrapper.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct OperatorWrapper {
[INFO] [stderr]    |            --------------- field in this struct
[INFO] [stderr] 22 |     id: String,
[INFO] [stderr]    |     ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `OperatorWrapper` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `child` is never read
[INFO] [stderr]   --> src/operators/shell/process.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub struct ShellProcess {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] 24 |     child: Option<tokio::process::Child>,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ShellProcess` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `batching` is never used
[INFO] [stderr]    --> src/operators/shell/process.rs:301:10
[INFO] [stderr]     |
[INFO] [stderr] 301 | async fn batching(
[INFO] [stderr]     |          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `process_batch` is never used
[INFO] [stderr]    --> src/operators/shell/process.rs:380:10
[INFO] [stderr]     |
[INFO] [stderr] 380 | async fn process_batch(buffer: &mut Vec<String>, forward_to: &mut FuturesMPSC::Sender<Message>) {
[INFO] [stderr]     |          ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Template` is never constructed
[INFO] [stderr]   --> src/operators/template.rs:17:19
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub(crate) struct Template;
[INFO] [stderr]    |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stderr]   --> src/graph/graph_run.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     async fn end_to_end(&self, message: Vec<u8>) -> Message;
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stderr]    = note: `#[warn(async_fn_in_trait)]` on by default
[INFO] [stderr] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stderr]    |
[INFO] [stderr] 13 -     async fn end_to_end(&self, message: Vec<u8>) -> Message;
[INFO] [stderr] 13 +     fn end_to_end(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stderr]   --> src/graph/graph_run.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     async fn end_to_end_json(&self, message: Value) -> Message;
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stderr] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stderr]    |
[INFO] [stderr] 14 -     async fn end_to_end_json(&self, message: Value) -> Message;
[INFO] [stderr] 14 +     fn end_to_end_json(&self, message: Value) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stderr]   --> src/graph/graph_run.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 |     async fn end_to_end_standard(&self, message: Vec<u8>) -> Message;
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stderr] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stderr]    |
[INFO] [stderr] 15 -     async fn end_to_end_standard(&self, message: Vec<u8>) -> Message;
[INFO] [stderr] 15 +     fn end_to_end_standard(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: use of `async fn` in public traits is discouraged as auto trait bounds cannot be specified
[INFO] [stderr]   --> src/graph/graph_run.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     async fn end_to_end_2(&self, message: Vec<u8>) -> Message;
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: you can suppress this lint if you plan to use the trait only in your own code, or do not care about auto traits like `Send` on the `Future`
[INFO] [stderr] help: you can alternatively desugar to a normal `fn` that returns `impl Future` and add any desired bounds such as `Send`, but these cannot be relaxed without a breaking API change
[INFO] [stderr]    |
[INFO] [stderr] 17 -     async fn end_to_end_2(&self, message: Vec<u8>) -> Message;
[INFO] [stderr] 17 +     fn end_to_end_2(&self, message: Vec<u8>) -> impl std::future::Future<Output = Message> + Send;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stderr]    --> src/operators/shell/process.rs:155:29
[INFO] [stderr]     |
[INFO] [stderr] 155 |                 for line in err_reader.next_line().await {
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr]     |
[INFO] [stderr] 155 -                 for line in err_reader.next_line().await {
[INFO] [stderr] 155 +                 while let Ok(line) = err_reader.next_line().await {
[INFO] [stderr]     |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr]     |
[INFO] [stderr] 155 -                 for line in err_reader.next_line().await {
[INFO] [stderr] 155 +                 if let Ok(line) = err_reader.next_line().await {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: for loop over a `Result`. This is more readably written as an `if let` statement
[INFO] [stderr]    --> src/operators/shell/process.rs:193:29
[INFO] [stderr]     |
[INFO] [stderr] 193 |                 for line in out_reader.next_line().await {
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr]     |
[INFO] [stderr] 193 -                 for line in out_reader.next_line().await {
[INFO] [stderr] 193 +                 while let Ok(line) = out_reader.next_line().await {
[INFO] [stderr]     |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr]     |
[INFO] [stderr] 193 -                 for line in out_reader.next_line().await {
[INFO] [stderr] 193 +                 if let Ok(line) = out_reader.next_line().await {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Receiver` and `Sender`
[INFO] [stderr]   --> src/lib.rs:11:17
[INFO] [stderr]    |
[INFO] [stderr] 11 |     broadcast::{Receiver, Sender},
[INFO] [stderr]    |                 ^^^^^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread::sleep`
[INFO] [stderr]    --> src/lib.rs:173:9
[INFO] [stderr]     |
[INFO] [stderr] 173 |     use std::thread::sleep;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Level`
[INFO] [stderr]    --> src/lib.rs:176:19
[INFO] [stderr]     |
[INFO] [stderr] 176 |     use tracing::{Level, debug, info, instrument};
[INFO] [stderr]     |                   ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `setup` is never used
[INFO] [stderr]    --> src/lib.rs:214:8
[INFO] [stderr]     |
[INFO] [stderr] 214 |     fn setup() {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_test` is never used
[INFO] [stderr]    --> src/lib.rs:223:8
[INFO] [stderr]     |
[INFO] [stderr] 223 |     fn run_test<T>(test: T) -> ()
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `saasexpress-core` (lib) generated 206 warnings (run `cargo fix --lib -p saasexpress-core` to apply 166 suggestions)
[INFO] [stderr] warning: `saasexpress-core` (lib test) generated 208 warnings (203 duplicates) (run `cargo fix --lib -p saasexpress-core --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.30s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/saasexpress_core-98a526cce1944d2e)
[INFO] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stdout] test saasexpress_core_tests::it_works ... ok
[INFO] [stdout] test saasexpress_core_tests::env_settings_works ... ok
[INFO] [stdout] [2m2026-03-11T08:05:56.417729Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Graph: 
[INFO] [stdout]         name: settings
[INFO] [stdout]         nodes:
[INFO] [stdout]         - id: settings
[INFO] [stdout]           operator: Settings
[INFO] [stdout]         edges: []
[INFO] [stdout]         
[INFO] [stdout] [2m2026-03-11T08:05:56.417729Z[0m [32m INFO[0m ThreadId(14) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Graph: 
[INFO] [stdout]         name: g_callout
[INFO] [stdout]         nodes:
[INFO] [stdout]         - id: n_callout
[INFO] [stdout]           operator: Callout
[INFO] [stdout]           config:
[INFO] [stdout]             graph_name: worker
[INFO] [stdout]         edges: []
[INFO] [stdout]         
[INFO] [stdout] [2m2026-03-11T08:05:56.417997Z[0m [33m WARN[0m ThreadId(20) [2msaasexpress_core::operators::global_space::global_space[0m[2m:[0m Init Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.418024Z[0m [32m INFO[0m ThreadId(07) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Graph: 
[INFO] [stdout]         name: ai_agent
[INFO] [stdout]         nodes:
[INFO] [stdout]         - id: start
[INFO] [stdout]           operator: AIAgent
[INFO] [stdout]         - id: tool_a
[INFO] [stdout]           operator: Callout
[INFO] [stdout]           config:
[INFO] [stdout]             graph_name: ai_tool
[INFO] [stdout] 
[INFO] [stdout]         - id: system_prompt
[INFO] [stdout]           operator: Stub
[INFO] [stdout]           config:
[INFO] [stdout]             content: |
[INFO] [stdout]                 You are a shopping assistant. Use these functions:
[INFO] [stdout]                 
[INFO] [stdout]                 1. search_products: When user wants to find products (e.g., 'show me shirts')
[INFO] [stdout]                 2. get_product_details: When user asks about a specific product ID (e.g., 'tell me about product p1')
[INFO] [stdout]                 3. clarify_request: When user's request is unclear
[INFO] [stdout]                 
[INFO] [stdout] 
[INFO] [stdout]         - id: chatgpt_llm
[INFO] [stdout]           operator: Stub
[INFO] [stdout]           config:
[INFO] [stdout]             choices:
[INFO] [stdout]             - index: 0
[INFO] [stdout]               message:
[INFO] [stdout]                 role: assistant
[INFO] [stdout]                 annotations: []
[INFO] [stdout]                 content: |
[INFO] [stdout]                   {"something": {"returned": true}}
[INFO] [stdout]               finish_reason: stop
[INFO] [stdout]             created: 0
[INFO] [stdout]             id: chatgpt-123
[INFO] [stdout]             model: gpt-3.5-turbo
[INFO] [stdout]             object: chat.completion
[INFO] [stdout]             service_tier: free
[INFO] [stdout]             system_fingerprint: "fingerprint-123"
[INFO] [stdout]             usage:
[INFO] [stdout]               completion_tokens: 0
[INFO] [stdout]               completion_tokens_details:
[INFO] [stdout]                 accepted_prediction_tokens: 0
[INFO] [stdout]                 audio_tokens: 0
[INFO] [stdout]                 reasoning_tokens: 0
[INFO] [stdout]                 rejected_prediction_tokens: 0
[INFO] [stdout]               prompt_tokens: 0
[INFO] [stdout]               prompt_tokens_details:
[INFO] [stdout]                 audio_tokens: 0
[INFO] [stdout]                 cached_tokens: 0
[INFO] [stdout]               total_tokens: 0
[INFO] [stdout] 
[INFO] [stdout]         edges:
[INFO] [stdout]         - from: start
[INFO] [stdout]           to: tool_a
[INFO] [stdout]           role: tool
[INFO] [stdout]         - from: start
[INFO] [stdout]           to: system_prompt
[INFO] [stdout]           role: prompt
[INFO] [stdout]         - from: start
[INFO] [stdout]           to: chatgpt_llm
[INFO] [stdout]           role: llm
[INFO] [stdout]         
[INFO] [stdout] [2m2026-03-11T08:05:56.418527Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Settings(settings)
[INFO] [stdout] [2m2026-03-11T08:05:56.418582Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2026-03-11T08:05:56.418632Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [settings] REGISTER GRAPH
[INFO] [stdout] [2m2026-03-11T08:05:56.418662Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph settings is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.418674Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph settings TRANSITIONED TO Active
[INFO] [stdout] [2m2026-03-11T08:05:56.418685Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: settings
[INFO] [stdout] [2m2026-03-11T08:05:56.418763Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2026-03-11T08:05:56.418791Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.418811Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["settings"]
[INFO] [stdout] [2m2026-03-11T08:05:56.418841Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["settings"]
[INFO] [stdout] [2m2026-03-11T08:05:56.418925Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: settings (rev.1)
[INFO] [stdout] [2m2026-03-11T08:05:56.418958Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [settings] Getting next nodes for settings.settings(Settings)
[INFO] [stdout] [2m2026-03-11T08:05:56.419008Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2026-03-11T08:05:56.419025Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=settings] Pending count: 0
[INFO] [stdout] [2m2026-03-11T08:05:56.419038Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph settings
[INFO] [stdout] [2m2026-03-11T08:05:56.419052Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: settings : Manager:Active, Runner:Active
[INFO] [stdout] [2m2026-03-11T08:05:56.419114Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::my_reg[0m[2m:[0m [settings] Broadcasting to 1 (["startup"])
[INFO] [stdout] [2m2026-03-11T08:05:56.419223Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"KAJWM\",\"graph_name\":\"settings\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=0)
[INFO] [stdout] [2m2026-03-11T08:05:56.419259Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m All systems a go!
[INFO] [stdout] [2m2026-03-11T08:05:56.419276Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: settings
[INFO] [stdout] [2m2026-03-11T08:05:56.419292Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::settings[0m[2m:[0m Control
[INFO] [stdout] [2m2026-03-11T08:05:56.419316Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Post graph hook executed.
[INFO] [stdout] [2m2026-03-11T08:05:56.419364Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::operators::settings[0m[2m:[0m Handling! 1
[INFO] [stdout] [2m2026-03-11T08:05:56.419384Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph settings is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.419395Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: settings
[INFO] [stdout] [2m2026-03-11T08:05:56.419430Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::noop[0m[2m:[0m Finished.. sending to respond_to..
[INFO] [stdout] [2m2026-03-11T08:05:56.419460Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Response : JSON { message: Object {"name": String("Joe")}, origin: None }
[INFO] [stdout] [2m2026-03-11T08:05:56.419463Z[0m [32m INFO[0m ThreadId(07) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: AIAgent(start)
[INFO] [stdout] [2m2026-03-11T08:05:56.419496Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph settings
[INFO] [stdout] [2m2026-03-11T08:05:56.419506Z[0m [32m INFO[0m ThreadId(07) [2msaasexpress_core::my_reg[0m[2m:[0m [ai_agent.tool_a(Callout)] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.419569Z[0m [32m INFO[0m ThreadId(07) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Callout(tool_a)
[INFO] [stdout] [2m2026-03-11T08:05:56.419588Z[0m [33m WARN[0m ThreadId(07) [2msaasexpress_core::operators::callout[0m[2m:[0m Callout operator has no graph assigned yet
[INFO] [stdout] [2m2026-03-11T08:05:56.418033Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: ClaimCheck(start)
[INFO] [stdout] [2m2026-03-11T08:05:56.419663Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.419692Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2026-03-11T08:05:56.419715Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m [claim_check] REGISTER GRAPH
[INFO] [stdout] [2m2026-03-11T08:05:56.419732Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph claim_check is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.419742Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph claim_check TRANSITIONED TO Active
[INFO] [stdout] [2m2026-03-11T08:05:56.419761Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: claim_check
[INFO] [stdout] test saasexpress_core_tests::test_settings ... ok
[INFO] [stdout] [2m2026-03-11T08:05:56.419797Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2026-03-11T08:05:56.419814Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.419812Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph settings
[INFO] [stdout] [2m2026-03-11T08:05:56.419839Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(Settings)
[INFO] [stdout] [2m2026-03-11T08:05:56.419840Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: GlobalSpace(global)
[INFO] [stdout] [2m2026-03-11T08:05:56.419851Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2026-03-11T08:05:56.419855Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.419863Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph settings
[INFO] [stdout] [2m2026-03-11T08:05:56.419874Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2026-03-11T08:05:56.419885Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph claim_check
[INFO] [stdout] [2m2026-03-11T08:05:56.419897Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph claim_check
[INFO] [stdout] [2m2026-03-11T08:05:56.419973Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=[]
[INFO] [stdout] [2m2026-03-11T08:05:56.419999Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core[0m[2m:[0m Pending graphs: []
[INFO] [stdout] [2m2026-03-11T08:05:56.420013Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core[0m[2m:[0m No pending graphs to start.
[INFO] [stdout] [2m2026-03-11T08:05:56.420031Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core[0m[2m:[0m All systems a go!
[INFO] [stdout] [2m2026-03-11T08:05:56.420042Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core[0m[2m:[0m Post graph hook executed.
[INFO] [stdout] [2m2026-03-11T08:05:56.420057Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::registry[0m[2m:[0m Graph not found claim_check - might be fine
[INFO] [stdout] [2m2026-03-11T08:05:56.420071Z[0m [31mERROR[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph claim_check not found in registry
[INFO] [stdout] [2m2026-03-11T08:05:56.420090Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m [graph_1] REGISTER GRAPH
[INFO] [stdout] [2m2026-03-11T08:05:56.420105Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph graph_1 is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.420114Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph graph_1 TRANSITIONED TO Active
[INFO] [stdout] [2m2026-03-11T08:05:56.420112Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::buffer_to_json[0m[2m:[0m Init Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.420122Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: graph_1
[INFO] [stdout] [2m2026-03-11T08:05:56.420152Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: BufferToJSON(start)
[INFO] [stdout] [2m2026-03-11T08:05:56.420167Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.420187Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2026-03-11T08:05:56.420213Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m [buffer_to_json] REGISTER GRAPH
[INFO] [stdout] [2m2026-03-11T08:05:56.420233Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph buffer_to_json is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.420243Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph buffer_to_json TRANSITIONED TO Active
[INFO] [stdout] [2m2026-03-11T08:05:56.420253Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: buffer_to_json
[INFO] [stdout] [2m2026-03-11T08:05:56.420285Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2026-03-11T08:05:56.420319Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.420336Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["buffer_to_json", "graph_1"]
[INFO] [stdout] [2m2026-03-11T08:05:56.420354Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["buffer_to_json", "graph_1"]
[INFO] [stdout] [2m2026-03-11T08:05:56.420386Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: buffer_to_json (rev.1)
[INFO] [stdout] [2m2026-03-11T08:05:56.420418Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m [start] Getting next nodes for buffer_to_json.start(BufferToJSON)
[INFO] [stdout] [2m2026-03-11T08:05:56.420432Z[0m [33m WARN[0m ThreadId(20) [2msaasexpress_core::operators::global_space::global_space[0m[2m:[0m Init Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.420455Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: GlobalSpace(global)
[INFO] [stdout] [2m2026-03-11T08:05:56.420468Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.420489Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2026-03-11T08:05:56.420509Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=buffer_to_json] Pending count: 0
[INFO] [stdout] [2m2026-03-11T08:05:56.420519Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph buffer_to_json
[INFO] [stdout] [2m2026-03-11T08:05:56.420529Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: buffer_to_json : Manager:Active, Runner:Active
[INFO] [stdout] [2m2026-03-11T08:05:56.420568Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::my_reg[0m[2m:[0m [buffer_to_json] Broadcasting to 2 (["startup", "ai_agent.tool_a(Callout)"])
[INFO] [stdout] [2m2026-03-11T08:05:56.420664Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"LYGOO\",\"graph_name\":\"buffer_to_json\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=1)
[INFO] [stdout] [2m2026-03-11T08:05:56.420693Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["buffer_to_json", "graph_1"]
[INFO] [stdout] [2m2026-03-11T08:05:56.420720Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["graph_1"]
[INFO] [stdout] [2m2026-03-11T08:05:56.418274Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: AITool(start)
[INFO] [stdout] [2m2026-03-11T08:05:56.420949Z[0m [34mDEBUG[0m ThreadId(08) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2026-03-11T08:05:56.421086Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m [ai_tool] REGISTER GRAPH
[INFO] [stdout] [2m2026-03-11T08:05:56.421113Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph ai_tool is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.421130Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph ai_tool TRANSITIONED TO Active
[INFO] [stdout] [2m2026-03-11T08:05:56.421140Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: ai_tool
[INFO] [stdout] [2m2026-03-11T08:05:56.421181Z[0m [34mDEBUG[0m ThreadId(08) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2026-03-11T08:05:56.421218Z[0m [31mERROR[0m ThreadId(08) [2msaasexpress_core::my_reg[0m[2m:[0m Channel with name startup already exists - removing
[INFO] [stdout] [2m2026-03-11T08:05:56.421248Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.421264Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["buffer_to_json", "graph_1", "ai_tool"]
[INFO] [stdout] [2m2026-03-11T08:05:56.421280Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["graph_1", "ai_tool"]
[INFO] [stdout] [2m2026-03-11T08:05:56.421327Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: ai_tool (rev.1)
[INFO] [stdout] [2m2026-03-11T08:05:56.421366Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m [start] Getting next nodes for ai_tool.start(AITool)
[INFO] [stdout] [2m2026-03-11T08:05:56.421412Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2026-03-11T08:05:56.421434Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=ai_tool] Pending count: 0
[INFO] [stdout] [2m2026-03-11T08:05:56.421453Z[0m [34mDEBUG[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph ai_tool
[INFO] [stdout] [2m2026-03-11T08:05:56.421474Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: ai_tool : Manager:Active, Runner:Active
[INFO] [stdout] [2m2026-03-11T08:05:56.421512Z[0m [34mDEBUG[0m ThreadId(08) [2msaasexpress_core::my_reg[0m[2m:[0m [ai_tool] Broadcasting to 2 (["startup", "ai_agent.tool_a(Callout)"])
[INFO] [stdout] [2m2026-03-11T08:05:56.421602Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"XAJNA\",\"graph_name\":\"ai_tool\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=1)
[INFO] [stdout] [2m2026-03-11T08:05:56.421654Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["buffer_to_json", "graph_1", "ai_tool"]
[INFO] [stdout] [2m2026-03-11T08:05:56.421673Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["graph_1"]
[INFO] [stdout] [2m2026-03-11T08:05:56.418311Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Graph: 
[INFO] [stdout]         name: canonical_model
[INFO] [stdout]         nodes:
[INFO] [stdout]         - id: start
[INFO] [stdout]           operator: CanonicalModelSample
[INFO] [stdout]         edges: []
[INFO] [stdout]         
[INFO] [stdout] [2m2026-03-11T08:05:56.421738Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::operators::callout[0m[2m:[0m Received control event: ControlEvent { graph_id: "LYGOO", graph_name: "buffer_to_json", graph_status: Active, operator_names: [], event_type: GraphReplaced, reason: "Graph runner updated (rev.1)" }
[INFO] [stdout] [2m2026-03-11T08:05:56.421796Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: buffer_to_json
[INFO] [stdout] [2m2026-03-11T08:05:56.421813Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::operators::callout[0m[2m:[0m Received control event: ControlEvent { graph_id: "XAJNA", graph_name: "ai_tool", graph_status: Active, operator_names: [], event_type: GraphReplaced, reason: "Graph runner updated (rev.1)" }
[INFO] [stdout] [2m2026-03-11T08:05:56.421836Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: ai_tool
[INFO] [stdout] [2m2026-03-11T08:05:56.418114Z[0m [32m INFO[0m ThreadId(09) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Graph: 
[INFO] [stdout]         name: g_callout
[INFO] [stdout]         nodes:
[INFO] [stdout]         - id: n_callout
[INFO] [stdout]           operator: Callout
[INFO] [stdout]           config:
[INFO] [stdout]             graph_name: worker
[INFO] [stdout]         edges: []
[INFO] [stdout]         
[INFO] [stdout] [2m2026-03-11T08:05:56.421928Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: CanonicalModelSample(start)
[INFO] [stdout] [2m2026-03-11T08:05:56.421961Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.421990Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2026-03-11T08:05:56.422023Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m [canonical_model] REGISTER GRAPH
[INFO] [stdout] [2m2026-03-11T08:05:56.422054Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph canonical_model is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.422064Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph canonical_model TRANSITIONED TO Active
[INFO] [stdout] [2m2026-03-11T08:05:56.422073Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: canonical_model
[INFO] [stdout] [2m2026-03-11T08:05:56.422114Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2026-03-11T08:05:56.422142Z[0m [31mERROR[0m ThreadId(11) [2msaasexpress_core::my_reg[0m[2m:[0m Channel with name startup already exists - removing
[INFO] [stdout] [2m2026-03-11T08:05:56.418082Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Graph: 
[INFO] [stdout]         name: fan_out
[INFO] [stdout]         nodes:
[INFO] [stdout]         - id: fanout
[INFO] [stdout]           operator: FanOut
[INFO] [stdout]         - id: fanout_1
[INFO] [stdout]           operator: Passthrough
[INFO] [stdout]         - id: fanout_2
[INFO] [stdout]           operator: Passthrough
[INFO] [stdout]         edges:
[INFO] [stdout]         - from: fanout
[INFO] [stdout]           to: fanout_1
[INFO] [stdout]         - from: fanout
[INFO] [stdout]           to: fanout_2
[INFO] [stdout]         
[INFO] [stdout] [2m2026-03-11T08:05:56.422165Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.422217Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["canonical_model", "buffer_to_json", "graph_1", "ai_tool"]
[INFO] [stdout] [2m2026-03-11T08:05:56.422248Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["canonical_model", "graph_1"]
[INFO] [stdout] [2m2026-03-11T08:05:56.422286Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: canonical_model (rev.1)
[INFO] [stdout] [2m2026-03-11T08:05:56.422341Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m [start] Getting next nodes for canonical_model.start(CanonicalModelSample)
[INFO] [stdout] [2m2026-03-11T08:05:56.422499Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2026-03-11T08:05:56.422526Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=canonical_model] Pending count: 0
[INFO] [stdout] [2m2026-03-11T08:05:56.422530Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: FanOut(fanout)
[INFO] [stdout] [2m2026-03-11T08:05:56.422547Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph canonical_model
[INFO] [stdout] [2m2026-03-11T08:05:56.422559Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: canonical_model : Manager:Active, Runner:Active
[INFO] [stdout] [2m2026-03-11T08:05:56.422577Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::passthrough[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.422598Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Passthrough(fanout_1)
[INFO] [stdout] [2m2026-03-11T08:05:56.422648Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.422603Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::my_reg[0m[2m:[0m [canonical_model] Broadcasting to 2 (["startup", "ai_agent.tool_a(Callout)"])
[INFO] [stdout] [2m2026-03-11T08:05:56.422678Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::passthrough[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.422690Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Passthrough(fanout_2)
[INFO] [stdout] [2m2026-03-11T08:05:56.422701Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.422755Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Received control event: ControlEvent { graph_id: "CRWET", graph_name: "canonical_model", graph_status: Active, operator_names: [], event_type: GraphReplaced, reason: "Graph runner updated (rev.1)" }
[INFO] [stdout] [2m2026-03-11T08:05:56.422777Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2026-03-11T08:05:56.422788Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: canonical_model
[INFO] [stdout] [2m2026-03-11T08:05:56.422812Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m [fan_out] REGISTER GRAPH
[INFO] [stdout] [2m2026-03-11T08:05:56.422844Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph fan_out is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.422866Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph fan_out TRANSITIONED TO Active
[INFO] [stdout] [2m2026-03-11T08:05:56.422876Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: fan_out
[INFO] [stdout] [2m2026-03-11T08:05:56.422885Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"CRWET\",\"graph_name\":\"canonical_model\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=1)
[INFO] [stdout] [2m2026-03-11T08:05:56.422911Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["fan_out", "canonical_model", "buffer_to_json", "graph_1", "ai_tool"]
[INFO] [stdout] [2m2026-03-11T08:05:56.422950Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2026-03-11T08:05:56.422985Z[0m [31mERROR[0m ThreadId(13) [2msaasexpress_core::my_reg[0m[2m:[0m Channel with name startup already exists - removing
[INFO] [stdout] [2m2026-03-11T08:05:56.423004Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.423022Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["fan_out", "canonical_model", "buffer_to_json", "graph_1", "ai_tool"]
[INFO] [stdout] [2m2026-03-11T08:05:56.423057Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["fan_out", "graph_1"]
[INFO] [stdout] [2m2026-03-11T08:05:56.423114Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: fan_out (rev.1)
[INFO] [stdout] [2m2026-03-11T08:05:56.423162Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout_1] Getting next nodes for fan_out.fanout_1(Passthrough)
[INFO] [stdout] [2m2026-03-11T08:05:56.423248Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout] Getting next nodes for fan_out.fanout(FanOut)
[INFO] [stdout] [2m2026-03-11T08:05:56.423278Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout] Adding child fanout_1 (role default)
[INFO] [stdout] [2m2026-03-11T08:05:56.423306Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout_1] Getting next nodes for fan_out.fanout_1(Passthrough)
[INFO] [stdout] [2m2026-03-11T08:05:56.423379Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout] Adding child fanout_2 (role default)
[INFO] [stdout] [2m2026-03-11T08:05:56.423416Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout_2] Getting next nodes for fan_out.fanout_2(Passthrough)
[INFO] [stdout] [2m2026-03-11T08:05:56.423524Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout_2] Getting next nodes for fan_out.fanout_2(Passthrough)
[INFO] [stdout] [2m2026-03-11T08:05:56.423626Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2026-03-11T08:05:56.423656Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=fan_out] Pending count: 0
[INFO] [stdout] [2m2026-03-11T08:05:56.423667Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph fan_out
[INFO] [stdout] [2m2026-03-11T08:05:56.423678Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: fan_out : Manager:Active, Runner:Active
[INFO] [stdout] [2m2026-03-11T08:05:56.423748Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::my_reg[0m[2m:[0m [fan_out] Broadcasting to 2 (["startup", "ai_agent.tool_a(Callout)"])
[INFO] [stdout] [2m2026-03-11T08:05:56.423874Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"IUHNK\",\"graph_name\":\"fan_out\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=1)
[INFO] [stdout] [2m2026-03-11T08:05:56.423899Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["fan_out", "canonical_model", "buffer_to_json", "graph_1", "ai_tool"]
[INFO] [stdout] [2m2026-03-11T08:05:56.423920Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["graph_1"]
[INFO] [stdout] [2m2026-03-11T08:05:56.423917Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Received control event: ControlEvent { graph_id: "IUHNK", graph_name: "fan_out", graph_status: Active, operator_names: [], event_type: GraphReplaced, reason: "Graph runner updated (rev.1)" }
[INFO] [stdout] [2m2026-03-11T08:05:56.423959Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: fan_out
[INFO] [stdout] [2m2026-03-11T08:05:56.423967Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["graph_1"]
[INFO] [stdout] [2m2026-03-11T08:05:56.428820Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph fan_out
[INFO] [stdout] [2m2026-03-11T08:05:56.428857Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(Passthrough)
[INFO] [stdout] [2m2026-03-11T08:05:56.428870Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(FanOut)
[INFO] [stdout] [2m2026-03-11T08:05:56.428880Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(Passthrough)
[INFO] [stdout] [2m2026-03-11T08:05:56.428889Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2026-03-11T08:05:56.428901Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph fan_out
[INFO] [stdout] [2m2026-03-11T08:05:56.428921Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: Passthrough
[INFO] [stdout] [2m2026-03-11T08:05:56.428962Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: Passthrough
[INFO] [stdout] [2m2026-03-11T08:05:56.428987Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph canonical_model
[INFO] [stdout] [2m2026-03-11T08:05:56.428996Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2026-03-11T08:05:56.429005Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(CanonicalModelSample)
[INFO] [stdout] [2m2026-03-11T08:05:56.429014Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph canonical_model
[INFO] [stdout] [2m2026-03-11T08:05:56.429023Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: CanonicalModelSample
[INFO] [stdout] [2m2026-03-11T08:05:56.429038Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph buffer_to_json
[INFO] [stdout] [2m2026-03-11T08:05:56.429048Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(BufferToJSON)
[INFO] [stdout] [2m2026-03-11T08:05:56.429057Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2026-03-11T08:05:56.429066Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph buffer_to_json
[INFO] [stdout] [2m2026-03-11T08:05:56.429074Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: BufferToJSON
[INFO] [stdout] [2m2026-03-11T08:05:56.429090Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph graph_1
[INFO] [stdout] [2m2026-03-11T08:05:56.429100Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph graph_1
[INFO] [stdout] [2m2026-03-11T08:05:56.429110Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph ai_tool
[INFO] [stdout] [2m2026-03-11T08:05:56.429118Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(AITool)
[INFO] [stdout] [2m2026-03-11T08:05:56.429128Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2026-03-11T08:05:56.429136Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph ai_tool
[INFO] [stdout] [2m2026-03-11T08:05:56.429163Z[0m [32m INFO[0m ThreadId(15) [2msaasexpress_core::my_reg[0m[2m:[0m [my_channel] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.429183Z[0m [34mDEBUG[0m ThreadId(15) [2msaasexpress_core::my_reg[0m[2m:[0m [ai_agent] Broadcasting to 3 (["startup", "ai_agent.tool_a(Callout)", "my_channel"])
[INFO] [stdout] test saasexpress_core_tests::test_reg_example ... ok
[INFO] [stdout] [2m2026-03-11T08:05:56.429449Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"ai_agent\",\"graph_name\":\"ai_agent\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"Notice\",\"reason\":\"Test event\"}") (Remaining=1)
[INFO] [stdout] [2m2026-03-11T08:05:56.429479Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=[]
[INFO] [stdout] [2m2026-03-11T08:05:56.429490Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m Pending graphs: []
[INFO] [stdout] [2m2026-03-11T08:05:56.429499Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m No pending graphs to start.
[INFO] [stdout] [2m2026-03-11T08:05:56.429516Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m All systems a go!
[INFO] [stdout] [2m2026-03-11T08:05:56.429527Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core[0m[2m:[0m Post graph hook executed.
[INFO] [stdout] [2m2026-03-11T08:05:56.429540Z[0m [32m INFO[0m ThreadId(13) [2msaasexpress_core::graph::registry[0m[2m:[0m Graph not found fan_out - might be fine
[INFO] [stdout] [2m2026-03-11T08:05:56.429549Z[0m [31mERROR[0m ThreadId(13) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph fan_out not found in registry
[INFO] [stdout] [2m2026-03-11T08:05:56.429660Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Received control event: ControlEvent { graph_id: "ai_agent", graph_name: "ai_agent", graph_status: Active, operator_names: [], event_type: Notice, reason: "Test event" }
[INFO] [stdout] [2m2026-03-11T08:05:56.429678Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: ai_agent
[INFO] [stdout] [2m2026-03-11T08:05:56.432714Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Graph: 
[INFO] [stdout]         name: canonical_model_err
[INFO] [stdout]         nodes:
[INFO] [stdout]         - id: start
[INFO] [stdout]           operator: CanonicalModelSample
[INFO] [stdout]         edges: []
[INFO] [stdout]         
[INFO] [stdout] [2m2026-03-11T08:05:56.433065Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: CanonicalModelSample(start)
[INFO] [stdout] [2m2026-03-11T08:05:56.433117Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.433149Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2026-03-11T08:05:56.433190Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m [canonical_model_err] REGISTER GRAPH
[INFO] [stdout] [2m2026-03-11T08:05:56.433230Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph canonical_model_err is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.433242Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph canonical_model_err TRANSITIONED TO Active
[INFO] [stdout] [2m2026-03-11T08:05:56.433254Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: canonical_model_err
[INFO] [stdout] [2m2026-03-11T08:05:56.433317Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2026-03-11T08:05:56.433356Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.433386Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["canonical_model_err"]
[INFO] [stdout] [2m2026-03-11T08:05:56.433409Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["canonical_model_err"]
[INFO] [stdout] [2m2026-03-11T08:05:56.433475Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: canonical_model_err (rev.1)
[INFO] [stdout] [2m2026-03-11T08:05:56.433541Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m [start] Getting next nodes for canonical_model_err.start(CanonicalModelSample)
[INFO] [stdout] [2m2026-03-11T08:05:56.433625Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2026-03-11T08:05:56.433647Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=canonical_model_err] Pending count: 0
[INFO] [stdout] [2m2026-03-11T08:05:56.433660Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph canonical_model_err
[INFO] [stdout] [2m2026-03-11T08:05:56.433671Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: canonical_model_err : Manager:Active, Runner:Active
[INFO] [stdout] [2m2026-03-11T08:05:56.433733Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core::my_reg[0m[2m:[0m [canonical_model_err] Broadcasting to 3 (["startup", "ai_agent.tool_a(Callout)", "my_channel"])
[INFO] [stdout] [2m2026-03-11T08:05:56.433822Z[0m [31mERROR[0m ThreadId(10) [2msaasexpress_core::my_reg[0m[2m:[0m [broadcast] Failed to send message to my_channel: channel closed
[INFO] [stdout] [2m2026-03-11T08:05:56.433882Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Received control event: ControlEvent { graph_id: "V3N9E", graph_name: "canonical_model_err", graph_status: Active, operator_names: [], event_type: GraphReplaced, reason: "Graph runner updated (rev.1)" }
[INFO] [stdout] [2m2026-03-11T08:05:56.433915Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: canonical_model_err
[INFO] [stdout] [2m2026-03-11T08:05:56.433907Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"V3N9E\",\"graph_name\":\"canonical_model_err\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=0)
[INFO] [stdout] [2m2026-03-11T08:05:56.433939Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core[0m[2m:[0m All systems a go!
[INFO] [stdout] [2m2026-03-11T08:05:56.433953Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: canonical_model_err
[INFO] [stdout] [2m2026-03-11T08:05:56.433973Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Control message received - sending to operator: Control { command: Start { runtime: OperatorWrapperRuntime { name: "RuntimeWrapper(Wrapper(CanonicalModelSample))", upstream_runtime: OperatorActorHandleRuntime { sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x799f3400e540, tail_position: 0 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 8 }, rx_waker: AtomicWaker, tx_count: 1, rx_fields: "..." } } }, name: "CanonicalModelSample" } } }, origin: None }
[INFO] [stdout] [2m2026-03-11T08:05:56.434005Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core[0m[2m:[0m Post graph hook executed.
[INFO] [stdout] [2m2026-03-11T08:05:56.434050Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Message sent to CanonicalModelSample
[INFO] [stdout] [2m2026-03-11T08:05:56.434076Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Received!
[INFO] [stdout] [2m2026-03-11T08:05:56.434092Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Handle "CanonicalModelSample" CanonicalModel
[INFO] [stdout] [2m2026-03-11T08:05:56.434125Z[0m [31mERROR[0m ThreadId(10) [2msaasexpress_core::graph::operator_types::canonical_model[0m[2m:[0m Error deserializing JSON to CanonicalModel: missing field `name`
[INFO] [stdout] [2m2026-03-11T08:05:56.434145Z[0m [31mERROR[0m ThreadId(10) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m Error in operator RuntimeWrapper(Wrapper(NOOP)): Canonical Model Validation Error - missing field `name`
[INFO] [stdout] [2m2026-03-11T08:05:56.434156Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core::operators::noop[0m[2m:[0m Finished.. sending to respond_to..
[INFO] [stdout] [2m2026-03-11T08:05:56.434201Z[0m [32m INFO[0m ThreadId(10) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Response : Error { error: "Canonical Model Validation Error - missing field `name`", origin: None }
[INFO] [stdout] [2m2026-03-11T08:05:56.434234Z[0m [34mDEBUG[0m ThreadId(10) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: CanonicalModelSample
[INFO] [stdout] test saasexpress_core_tests::test_canodamo_sample_error ... ok
[INFO] [stdout] [2m2026-03-11T08:05:56.479913Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph canonical_model_err
[INFO] [stdout] [2m2026-03-11T08:05:56.479978Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2026-03-11T08:05:56.479994Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(CanonicalModelSample)
[INFO] [stdout] [2m2026-03-11T08:05:56.480008Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph canonical_model_err
[INFO] [stdout] [2m2026-03-11T08:05:56.480020Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: CanonicalModelSample
[INFO] [stdout] [2m2026-03-11T08:05:56.480455Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::buffer_to_json[0m[2m:[0m Init Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.480497Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: BufferToJSON(start)
[INFO] [stdout] [2m2026-03-11T08:05:56.480515Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.480556Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::operators::shell::shell[0m[2m:[0m Initializing shell operator with command: bash 
[INFO] [stdout] [2m2026-03-11T08:05:56.480576Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Shell(shell)
[INFO] [stdout] [2m2026-03-11T08:05:56.480624Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2026-03-11T08:05:56.480648Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m [shell] REGISTER GRAPH
[INFO] [stdout] [2m2026-03-11T08:05:56.480669Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph shell is now active
[INFO] [stdout] [2m2026-03-11T08:05:56.480678Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph shell TRANSITIONED TO Active
[INFO] [stdout] [2m2026-03-11T08:05:56.480688Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: shell
[INFO] [stdout] [2m2026-03-11T08:05:56.480740Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2026-03-11T08:05:56.480756Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2026-03-11T08:05:56.480771Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["shell"]
[INFO] [stdout] [2m2026-03-11T08:05:56.480789Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["shell"]
[INFO] [stdout] [2m2026-03-11T08:05:56.480833Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: shell (rev.1)
[INFO] [stdout] [2m2026-03-11T08:05:56.480864Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m [start] Getting next nodes for shell.start(BufferToJSON)
[INFO] [stdout] [2m2026-03-11T08:05:56.480876Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m [start] Adding child shell (role default)
[INFO] [stdout] [2m2026-03-11T08:05:56.480897Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m [shell] Getting next nodes for shell.shell(Shell)
[INFO] [stdout] [2m2026-03-11T08:05:56.480970Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m [shell] Getting next nodes for shell.shell(Shell)
[INFO] [stdout] [2m2026-03-11T08:05:56.481009Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2026-03-11T08:05:56.481023Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=shell] Pending count: 0
[INFO] [stdout] [2m2026-03-11T08:05:56.481033Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph shell
[INFO] [stdout] [2m2026-03-11T08:05:56.481043Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: shell : Manager:Active, Runner:Active
[INFO] [stdout] [2m2026-03-11T08:05:56.481092Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::my_reg[0m[2m:[0m [shell] Broadcasting to 3 (["startup", "ai_agent.tool_a(Callout)", "my_channel"])
[INFO] [stdout] [2m2026-03-11T08:05:56.481171Z[0m [31mERROR[0m ThreadId(06) [2msaasexpress_core::my_reg[0m[2m:[0m [broadcast] Failed to send message to my_channel: channel closed
[INFO] [stdout] [2m2026-03-11T08:05:56.481241Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"ZEEW3\",\"graph_name\":\"shell\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=0)
[INFO] [stdout] [2m2026-03-11T08:05:56.481265Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m All systems a go!
[INFO] [stdout] [2m2026-03-11T08:05:56.481277Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: shell
[INFO] [stdout] [2m2026-03-11T08:05:56.481290Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Control message received - sending to operator: Control { command: Start { runtime: OperatorWrapperRuntime { name: "RuntimeWrapper(Wrapper(BufferToJSON))", upstream_runtime: OperatorActorHandleRuntime { sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x799f340122c0, tail_position: 0 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 8 }, rx_waker: AtomicWaker, tx_count: 1, rx_fields: "..." } } }, name: "BufferToJSON" } } }, origin: None }
[INFO] [stdout] [2m2026-03-11T08:05:56.481323Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::buffer_to_json[0m[2m:[0m Control Not implemented
[INFO] [stdout] [2m2026-03-11T08:05:56.481287Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Received control event: ControlEvent { graph_id: "ZEEW3", graph_name: "shell", graph_status: Active, operator_names: [], event_type: GraphReplaced, reason: "Graph runner updated (rev.1)" }
[INFO] [stdout] [2m2026-03-11T08:05:56.481343Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m Post graph hook executed.
[INFO] [stdout] [2m2026-03-11T08:05:56.481350Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: shell
[INFO] [stdout] [2m2026-03-11T08:05:56.481377Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Message sent to BufferToJSON
[INFO] [stdout] [2m2026-03-11T08:05:56.481397Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Received!
[INFO] [stdout] [2m2026-03-11T08:05:56.481411Z[0m [31mERROR[0m ThreadId(06) [2msaasexpress_core::operators::op_actor[0m[2m:[0m No span found op_actor_handler (BufferToJSON)
[INFO] [stdout] [2m2026-03-11T08:05:56.481422Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Handle "BufferToJSON" Filter2 { operator: BufferToJSON }
[INFO] [stdout] [2m2026-03-11T08:05:56.481434Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Filter2 operator
[INFO] [stdout] [2m2026-03-11T08:05:56.481444Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::buffer_to_json[0m[2m:[0m Standard not expected
[INFO] [stdout] [2m2026-03-11T08:05:56.481473Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::operators::shell::shell[0m[2m:[0m Message for session ID "0"
[INFO] [stdout] [2m2026-03-11T08:05:56.520796Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::operators::shell::process[0m[2m:[0m PID = 45
[INFO] [stdout] [2m2026-03-11T08:05:56.520896Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::operators::shell::process[0m[2m:[0m Total handlers = 3
[INFO] [stdout] [2m2026-03-11T08:05:56.520953Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::noop[0m[2m:[0m Finished.. sending to respond_to..
[INFO] [stdout] [2m2026-03-11T08:05:56.520966Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::noop[0m[2m:[0m NOOP - NoOp message
[INFO] [stdout] [2m2026-03-11T08:05:56.521007Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::operators::shell::process[0m[2m:[0m Waiting for error lines
[INFO] [stdout] [2m2026-03-11T08:05:56.539653Z[0m [34mDEBUG[0m ThreadId(14) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph worker
[INFO] [stdout] [2m2026-03-11T08:05:56.539778Z[0m [34mDEBUG[0m ThreadId(14) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph worker
[INFO] [stdout] test saasexpress_core_tests::test_graph_upgrade ... FAILED
[INFO] [stdout] [2m2026-03-11T08:05:56.543049Z[0m [34mDEBUG[0m ThreadId(09) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph worker
[INFO] [stdout] [2m2026-03-11T08:05:56.543092Z[0m [34mDEBUG[0m ThreadId(09) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph worker
[INFO] [stdout] test saasexpress_core_tests::test_callout ... [2m2026-03-11T08:05:56.543602Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph ai_agent
[INFO] [stdout] [2m2026-03-11T08:05:56.543678Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph worker
[INFO] [stdout] [2m2026-03-11T08:05:56.543739Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(GlobalSpace)
[INFO] [stdout] [2m2026-03-11T08:05:56.543829Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph worker
[INFO] [stdout] [2m2026-03-11T08:05:56.543795Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(Callout)
[INFO] [stdout] [2m2026-03-11T08:05:56.544121Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::operators::callout[0m[2m:[0m DROP Callout operator: tool_a
[INFO] [stdout] [2m2026-03-11T08:05:56.544153Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: CanonicalModelSample
[INFO] [stdout] FAILED
[INFO] [stdout] [2m2026-03-11T08:05:56.543760Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph claim_check
[INFO] [stdout] [2m2026-03-11T08:05:56.544408Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2026-03-11T08:05:56.544448Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: BufferToJSON
[INFO] [stdout] [2m2026-03-11T08:05:56.544466Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: Passthrough
[INFO] [stdout] [2m2026-03-11T08:05:56.544468Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(ClaimCheck)
[INFO] [stdout] [2m2026-03-11T08:05:56.544561Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::operators::callout[0m[2m:[0m Control channel closed for ai_agent.tool_a(Callout)
[INFO] [stdout] test saasexpress_core_tests::test_canodamo_sample_ok ... FAILED
[INFO] [stdout] test saasexpress_core_tests::buffertojson_works ... FAILED
[INFO] [stdout] [2m2026-03-11T08:05:56.544303Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph graph_1
[INFO] [stdout] [2m2026-03-11T08:05:56.544353Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(AIAgent)
[INFO] [stdout] [2m2026-03-11T08:05:56.544502Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: Passthrough
[INFO] [stdout] [2m2026-03-11T08:05:56.545063Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph ai_agent
[INFO] [stdout] [2m2026-03-11T08:05:56.545092Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: Passthrough
[INFO] [stdout] [2m2026-03-11T08:05:56.545123Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: Passthrough
[INFO] [stdout] [2m2026-03-11T08:05:56.545139Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: Passthrough
[INFO] [stdout] [2m2026-03-11T08:05:56.545152Z[0m [34mDEBUG[0m ThreadId(13) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: Passthrough
[INFO] [stdout] [2m2026-03-11T08:05:56.545354Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(GlobalSpace)
[INFO] [stdout] [2m2026-03-11T08:05:56.545417Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] test saasexpress_core_tests::claimcheck_works ... FAILED
[INFO] [stdout] test saasexpress_core_tests::test_ai_tool ... FAILED
[INFO] [stdout] test saasexpress_core_tests::test_fan_out ... FAILED
[INFO] [stdout] test saasexpress_core_tests::test_shared_resources ... FAILED
[INFO] [stdout] test saasexpress_core_tests::test_ai_agent ... FAILED
[INFO] [stdout] test saasexpress_core_tests::shell_works has been running for over 60 seconds
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "240afefabf7b3aded9a784d3cdf9f79702dcdaf4f37651c428a3ff75b1fe2aa1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "240afefabf7b3aded9a784d3cdf9f79702dcdaf4f37651c428a3ff75b1fe2aa1", kill_on_drop: false }`
[INFO] [stdout] 240afefabf7b3aded9a784d3cdf9f79702dcdaf4f37651c428a3ff75b1fe2aa1
