[INFO] fetching crate saasexpress-core 0.2.0...
[INFO] testing saasexpress-core-0.2.0 against beta-2025-09-21 for beta-1.91-3
[INFO] extracting crate saasexpress-core 0.2.0 into /workspace/builds/worker-7-tc2/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-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate saasexpress-core 0.2.0 on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "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" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 27a4df715d260518fe4df5284bb94941baed3a975f3f1a4aafcdd6c22a84cb3f
[INFO] running `Command { std: "docker" "start" "-a" "27a4df715d260518fe4df5284bb94941baed3a975f3f1a4aafcdd6c22a84cb3f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "27a4df715d260518fe4df5284bb94941baed3a975f3f1a4aafcdd6c22a84cb3f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "27a4df715d260518fe4df5284bb94941baed3a975f3f1a4aafcdd6c22a84cb3f", kill_on_drop: false }`
[INFO] [stdout] 27a4df715d260518fe4df5284bb94941baed3a975f3f1a4aafcdd6c22a84cb3f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6ab00b40db7615400e4736521256140c095e3991281d391f35623bd0a21fb910
[INFO] running `Command { std: "docker" "start" "-a" "6ab00b40db7615400e4736521256140c095e3991281d391f35623bd0a21fb910", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.100
[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 anyhow v1.0.98
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling adler2 v2.0.0
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling miniz_oxide v0.8.8
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.8
[INFO] [stderr]    Compiling small_ctor v0.1.2
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling rand v0.9.1
[INFO] [stderr]    Compiling fastant v0.1.10
[INFO] [stderr]    Compiling humantime v2.2.0
[INFO] [stderr]    Compiling rtrb v0.3.2
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling dotenv v0.15.0
[INFO] [stderr]    Compiling hdrhistogram v7.5.4
[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 async-stream v0.3.6
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio v1.46.1
[INFO] [stderr]    Compiling fastrace-macro v0.7.9
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling pin-project v1.1.10
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling prost v0.13.5
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling thiserror v1.0.69
[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 serde_json v1.0.140
[INFO] [stderr]    Compiling fastrace v0.7.9
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling uuid v1.16.0
[INFO] [stderr]    Compiling tokio-util v0.7.15
[INFO] [stderr]    Compiling axum v0.7.9
[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, functions, unions, required trait methods, provided trait methods, inherent methods, foreign functions, and traits
[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, functions, unions, required trait methods, provided trait methods, inherent methods, foreign functions, and traits
[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 46s
[INFO] running `Command { std: "docker" "inspect" "6ab00b40db7615400e4736521256140c095e3991281d391f35623bd0a21fb910", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6ab00b40db7615400e4736521256140c095e3991281d391f35623bd0a21fb910", kill_on_drop: false }`
[INFO] [stdout] 6ab00b40db7615400e4736521256140c095e3991281d391f35623bd0a21fb910
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b4f93e190f680ec5a2c2b85116b3f808323c9ba6fa4e65a112ddf35fa7ca1fa9
[INFO] running `Command { std: "docker" "start" "-a" "b4f93e190f680ec5a2c2b85116b3f808323c9ba6fa4e65a112ddf35fa7ca1fa9", 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, functions, unions, required trait methods, provided trait methods, inherent methods, foreign functions, and traits
[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, functions, unions, required trait methods, provided trait methods, inherent methods, foreign functions, and traits
[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] [stderr]    Compiling saasexpress-core v0.2.0 (/opt/rustwide/workdir)
[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] [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, functions, unions, required trait methods, provided trait methods, inherent methods, foreign functions, and traits
[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, functions, unions, required trait methods, provided trait methods, inherent methods, foreign functions, and traits
[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 13.64s
[INFO] running `Command { std: "docker" "inspect" "b4f93e190f680ec5a2c2b85116b3f808323c9ba6fa4e65a112ddf35fa7ca1fa9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b4f93e190f680ec5a2c2b85116b3f808323c9ba6fa4e65a112ddf35fa7ca1fa9", kill_on_drop: false }`
[INFO] [stdout] b4f93e190f680ec5a2c2b85116b3f808323c9ba6fa4e65a112ddf35fa7ca1fa9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 54f638102d730ab9f1fc50e79080b182e593c4ea5332aa0e8c3d3defe7d79a50
[INFO] running `Command { std: "docker" "start" "-a" "54f638102d730ab9f1fc50e79080b182e593c4ea5332aa0e8c3d3defe7d79a50", 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, functions, unions, required trait methods, provided trait methods, inherent methods, foreign functions, and traits
[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, functions, unions, required trait methods, provided trait methods, inherent methods, foreign functions, and traits
[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 149 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.29s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/saasexpress_core-31da67892e172c58)
[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] [2m2025-10-01T13:11:58.409297Z[0m [32m INFO[0m ThreadId(11) [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] [2m2025-10-01T13:11:58.409570Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::buffer_to_json[0m[2m:[0m Init Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.409621Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: BufferToJSON(start)
[INFO] [stdout] [2m2025-10-01T13:11:58.409638Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.409660Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2025-10-01T13:11:58.409646Z[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] [2m2025-10-01T13:11:58.409684Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m [buffer_to_json] REGISTER GRAPH
[INFO] [stdout] [2m2025-10-01T13:11:58.409702Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph buffer_to_json is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.409710Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph buffer_to_json TRANSITIONED TO Active
[INFO] [stdout] [2m2025-10-01T13:11:58.409717Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: buffer_to_json
[INFO] [stdout] [2m2025-10-01T13:11:58.409783Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2025-10-01T13:11:58.409806Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.409823Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["buffer_to_json"]
[INFO] [stdout] [2m2025-10-01T13:11:58.409838Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["buffer_to_json"]
[INFO] [stdout] [2m2025-10-01T13:11:58.409914Z[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] [2m2025-10-01T13:11:58.409936Z[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] [2m2025-10-01T13:11:58.410004Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2025-10-01T13:11:58.409967Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph buffer_to_json
[INFO] [stdout] [2m2025-10-01T13:11:58.410035Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(BufferToJSON)
[INFO] [stdout] [2m2025-10-01T13:11:58.410045Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2025-10-01T13:11:58.410056Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph buffer_to_json
[INFO] [stdout] [2m2025-10-01T13:11:58.410122Z[0m [32m INFO[0m ThreadId(16) [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] [2m2025-10-01T13:11:58.410769Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: ClaimCheck(start)
[INFO] [stdout] [2m2025-10-01T13:11:58.410802Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.410822Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2025-10-01T13:11:58.410395Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::graph::registry[0m[2m:[0m Graph not found buffer_to_json - might be fine
[INFO] [stdout] [2m2025-10-01T13:11:58.411168Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: CanonicalModelSample(start)
[INFO] [stdout] [2m2025-10-01T13:11:58.412690Z[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] [2m2025-10-01T13:11:58.412709Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.412733Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2025-10-01T13:11:58.412748Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m [canonical_model_err] REGISTER GRAPH
[INFO] [stdout] [2m2025-10-01T13:11:58.412759Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph canonical_model_err is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.412765Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph canonical_model_err TRANSITIONED TO Active
[INFO] [stdout] [2m2025-10-01T13:11:58.412771Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: canonical_model_err
[INFO] [stdout] [2m2025-10-01T13:11:58.412798Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2025-10-01T13:11:58.412821Z[0m [31mERROR[0m ThreadId(11) [2msaasexpress_core::my_reg[0m[2m:[0m Channel with name startup already exists - removing
[INFO] [stdout] [2m2025-10-01T13:11:58.412838Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.412847Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["canonical_model_err"]
[INFO] [stdout] [2m2025-10-01T13:11:58.412859Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["canonical_model_err"]
[INFO] [stdout] [2m2025-10-01T13:11:58.412886Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: canonical_model_err (rev.1)
[INFO] [stdout] [2m2025-10-01T13:11:58.412916Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m [start] Getting next nodes for canonical_model_err.start(CanonicalModelSample)
[INFO] [stdout] [2m2025-10-01T13:11:58.412958Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2025-10-01T13:11:58.412976Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=canonical_model_err] Pending count: 0
[INFO] [stdout] [2m2025-10-01T13:11:58.412983Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph canonical_model_err
[INFO] [stdout] [2m2025-10-01T13:11:58.412991Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: canonical_model_err : Manager:Active, Runner:Active
[INFO] [stdout] [2m2025-10-01T13:11:58.413053Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::my_reg[0m[2m:[0m [canonical_model_err] Broadcasting to 1 (["startup"])
[INFO] [stdout] [2m2025-10-01T13:11:58.413224Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::buffer_to_json[0m[2m:[0m Init Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.413242Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: BufferToJSON(start)
[INFO] [stdout] [2m2025-10-01T13:11:58.413252Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.413319Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::operators::shell::shell[0m[2m:[0m Initializing shell operator with command: bash 
[INFO] [stdout] [2m2025-10-01T13:11:58.413335Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Shell(shell)
[INFO] [stdout] [2m2025-10-01T13:11:58.413361Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2025-10-01T13:11:58.413374Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m [shell] REGISTER GRAPH
[INFO] [stdout] [2m2025-10-01T13:11:58.413504Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph shell is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.413517Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph shell TRANSITIONED TO Active
[INFO] [stdout] [2m2025-10-01T13:11:58.413524Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: shell
[INFO] [stdout] [2m2025-10-01T13:11:58.411279Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: CanonicalModelSample(start)
[INFO] [stdout] [2m2025-10-01T13:11:58.413815Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.413888Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2025-10-01T13:11:58.413965Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::graph::graph[0m[2m:[0m [canonical_model] REGISTER GRAPH
[INFO] [stdout] [2m2025-10-01T13:11:58.414010Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph canonical_model is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.414055Z[0m [31mERROR[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph buffer_to_json not found in registry
[INFO] [stdout] [2m2025-10-01T13:11:58.414069Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph canonical_model TRANSITIONED TO Active
[INFO] [stdout] [2m2025-10-01T13:11:58.414075Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph buffer_to_json
[INFO] [stdout] [2m2025-10-01T13:11:58.414079Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: canonical_model
[INFO] [stdout] [2m2025-10-01T13:11:58.414088Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: BufferToJSON
[INFO] [stdout] [2m2025-10-01T13:11:58.414974Z[0m [32m INFO[0m ThreadId(02) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Received!
[INFO] [stdout] [2m2025-10-01T13:11:58.414994Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::op_actor[0m[2m:[0m OperatorActor is stopping for BufferToJSON
[INFO] [stdout] [2m2025-10-01T13:11:58.415012Z[0m [34mDEBUG[0m ThreadId(02) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: BufferToJSON
[INFO] [stdout] [2m2025-10-01T13:11:58.414123Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2025-10-01T13:11:58.414158Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m [claim_check] REGISTER GRAPH
[INFO] [stdout] [2m2025-10-01T13:11:58.415110Z[0m [31mERROR[0m ThreadId(16) [2msaasexpress_core::my_reg[0m[2m:[0m Channel with name startup already exists - removing
[INFO] [stdout] [2m2025-10-01T13:11:58.415129Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.415142Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["canonical_model_err", "canonical_model", "claim_check", "shell"]
[INFO] [stdout] [2m2025-10-01T13:11:58.415147Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph claim_check is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.415161Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph claim_check TRANSITIONED TO Active
[INFO] [stdout] [2m2025-10-01T13:11:58.415167Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: claim_check
[INFO] [stdout] [2m2025-10-01T13:11:58.415203Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2025-10-01T13:11:58.415248Z[0m [31mERROR[0m ThreadId(03) [2msaasexpress_core::my_reg[0m[2m:[0m Channel with name startup already exists - removing
[INFO] [stdout] [2m2025-10-01T13:11:58.415260Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.415269Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["canonical_model_err", "canonical_model", "claim_check", "shell"]
[INFO] [stdout] [2m2025-10-01T13:11:58.415303Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["canonical_model", "claim_check", "shell"]
[INFO] [stdout] [2m2025-10-01T13:11:58.415328Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: claim_check (rev.1)
[INFO] [stdout] [2m2025-10-01T13:11:58.415347Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m [start] Getting next nodes for claim_check.start(ClaimCheck)
[INFO] [stdout] [2m2025-10-01T13:11:58.411373Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: AITool(start)
[INFO] [stdout] [2m2025-10-01T13:11:58.415417Z[0m [34mDEBUG[0m ThreadId(08) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2025-10-01T13:11:58.415443Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m [ai_tool] REGISTER GRAPH
[INFO] [stdout] [2m2025-10-01T13:11:58.415478Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph ai_tool is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.415492Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph ai_tool TRANSITIONED TO Active
[INFO] [stdout] [2m2025-10-01T13:11:58.415498Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: ai_tool
[INFO] [stdout] [2m2025-10-01T13:11:58.415523Z[0m [34mDEBUG[0m ThreadId(08) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2025-10-01T13:11:58.415567Z[0m [31mERROR[0m ThreadId(08) [2msaasexpress_core::my_reg[0m[2m:[0m Channel with name startup already exists - removing
[INFO] [stdout] [2m2025-10-01T13:11:58.415584Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.415594Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["canonical_model_err", "canonical_model", "claim_check", "ai_tool", "shell"]
[INFO] [stdout] [2m2025-10-01T13:11:58.415611Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["canonical_model", "claim_check", "ai_tool", "shell"]
[INFO] [stdout] [2m2025-10-01T13:11:58.415700Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2025-10-01T13:11:58.415755Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: ai_tool (rev.1)
[INFO] [stdout] [2m2025-10-01T13:11:58.415782Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m [start] Getting next nodes for ai_tool.start(AITool)
[INFO] [stdout] [2m2025-10-01T13:11:58.413554Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2025-10-01T13:11:58.415858Z[0m [31mERROR[0m ThreadId(06) [2msaasexpress_core::my_reg[0m[2m:[0m Channel with name startup already exists - removing
[INFO] [stdout] [2m2025-10-01T13:11:58.415876Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.415887Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["canonical_model_err", "canonical_model", "claim_check", "ai_tool", "shell"]
[INFO] [stdout] [2m2025-10-01T13:11:58.413164Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"OHIT7\",\"graph_name\":\"canonical_model_err\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=0)
[INFO] [stdout] [2m2025-10-01T13:11:58.415947Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m All systems a go!
[INFO] [stdout] [2m2025-10-01T13:11:58.415962Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: canonical_model_err
[INFO] [stdout] [2m2025-10-01T13:11:58.415973Z[0m [34mDEBUG[0m ThreadId(11) [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: 0x729b0000b070, 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] [2m2025-10-01T13:11:58.416035Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: canonical_model
[INFO] [stdout] [2m2025-10-01T13:11:58.416049Z[0m [31mERROR[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m No start node runtime found in graph canonical_model
[INFO] [stdout] [2m2025-10-01T13:11:58.415717Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=claim_check] Pending count: 0
[INFO] [stdout] [2m2025-10-01T13:11:58.416069Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph claim_check
[INFO] [stdout] [2m2025-10-01T13:11:58.416076Z[0m [32m INFO[0m ThreadId(03) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: claim_check : Manager:Active, Runner:Active
[INFO] [stdout] [2m2025-10-01T13:11:58.416127Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2025-10-01T13:11:58.415210Z[0m [32m INFO[0m ThreadId(16) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["canonical_model", "claim_check", "shell"]
[INFO] [stdout] [2m2025-10-01T13:11:58.416207Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: claim_check
[INFO] [stdout] [2m2025-10-01T13:11:58.416223Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Control message received - sending to operator: Control { command: Start { runtime: OperatorWrapperRuntime { name: "RuntimeWrapper(Wrapper(ClaimCheck))", upstream_runtime: OperatorActorHandleRuntime { sender: Sender { chan: Tx { inner: Chan { tx: Tx { block_tail: 0x729b1800b440, tail_position: 0 }, semaphore: Semaphore { semaphore: Semaphore { permits: 8 }, bound: 8 }, rx_waker: AtomicWaker, tx_count: 1, rx_fields: "..." } } }, name: "ClaimCheck" } } }, origin: None }
[INFO] [stdout] [2m2025-10-01T13:11:58.416248Z[0m [33m WARN[0m ThreadId(11) [2msaasexpress_core::operators::claim_check::claim_check[0m[2m:[0m Control Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.416256Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: ai_tool
[INFO] [stdout] [2m2025-10-01T13:11:58.416317Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::my_reg[0m[2m:[0m [claim_check] Broadcasting to 0 ([])
[INFO] [stdout] [2m2025-10-01T13:11:58.416264Z[0m [31mERROR[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m No start node runtime found in graph ai_tool
[INFO] [stdout] [2m2025-10-01T13:11:58.416489Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: shell
[INFO] [stdout] [2m2025-10-01T13:11:58.416503Z[0m [31mERROR[0m ThreadId(11) [2msaasexpress_core::graph::graph[0m[2m:[0m No start node runtime found in graph shell
[INFO] [stdout] [2m2025-10-01T13:11:58.416521Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core[0m[2m:[0m Post graph hook executed.
[INFO] [stdout] [2m2025-10-01T13:11:58.416689Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=ai_tool] Pending count: 0
[INFO] [stdout] [2m2025-10-01T13:11:58.416707Z[0m [34mDEBUG[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph ai_tool
[INFO] [stdout] [2m2025-10-01T13:11:58.416715Z[0m [32m INFO[0m ThreadId(08) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: ai_tool : Manager:Active, Runner:Active
[INFO] [stdout] [2m2025-10-01T13:11:58.416782Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Message sent to CanonicalModelSample
[INFO] [stdout] [2m2025-10-01T13:11:58.416806Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Received!
[INFO] [stdout] [2m2025-10-01T13:11:58.416819Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Handle "CanonicalModelSample" CanonicalModel
[INFO] [stdout] [2m2025-10-01T13:11:58.416868Z[0m [32m INFO[0m ThreadId(06) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["canonical_model", "shell"]
[INFO] [stdout] [2m2025-10-01T13:11:58.416951Z[0m [34mDEBUG[0m ThreadId(08) [2msaasexpress_core::my_reg[0m[2m:[0m [ai_tool] Broadcasting to 0 ([])
[INFO] [stdout] [2m2025-10-01T13:11:58.417056Z[0m [31mERROR[0m ThreadId(11) [2msaasexpress_core::graph::operator_types::canonical_model[0m[2m:[0m Error deserializing JSON to CanonicalModel: missing field `name`
[INFO] [stdout] [2m2025-10-01T13:11:58.417081Z[0m [31mERROR[0m ThreadId(11) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m Error in operator RuntimeWrapper(Wrapper(NOOP)): Canonical Model Validation Error - missing field `name`
[INFO] [stdout] [2m2025-10-01T13:11:58.417210Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::operators::noop[0m[2m:[0m Finished.. sending to respond_to..
[INFO] [stdout] [2m2025-10-01T13:11:58.417263Z[0m [32m INFO[0m ThreadId(11) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Response : Error { error: "Canonical Model Validation Error - missing field `name`", origin: None }
[INFO] [stdout] [2m2025-10-01T13:11:58.417416Z[0m [34mDEBUG[0m ThreadId(11) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: CanonicalModelSample
[INFO] [stdout] [2m2025-10-01T13:11:58.418603Z[0m [32m INFO[0m ThreadId(07) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: AIAgent(start)
[INFO] [stdout] [2m2025-10-01T13:11:58.418645Z[0m [32m INFO[0m ThreadId(07) [2msaasexpress_core::my_reg[0m[2m:[0m [ai_agent.tool_a(Callout)] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.418684Z[0m [32m INFO[0m ThreadId(07) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Callout(tool_a)
[INFO] [stdout] [2m2025-10-01T13:11:58.418699Z[0m [33m WARN[0m ThreadId(07) [2msaasexpress_core::operators::callout[0m[2m:[0m Callout operator has no graph assigned yet
[INFO] [stdout] test saasexpress_core_tests::test_canodamo_sample_error ... ok
[INFO] [stdout] [2m2025-10-01T13:11:58.419816Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph canonical_model_err
[INFO] [stdout] [2m2025-10-01T13:11:58.419837Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2025-10-01T13:11:58.419847Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(CanonicalModelSample)
[INFO] [stdout] [2m2025-10-01T13:11:58.419855Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph canonical_model_err
[INFO] [stdout] [2m2025-10-01T13:11:58.419863Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: CanonicalModelSample
[INFO] [stdout] [2m2025-10-01T13:11:58.419904Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph canonical_model
[INFO] [stdout] [2m2025-10-01T13:11:58.419912Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph canonical_model
[INFO] [stdout] [2m2025-10-01T13:11:58.419922Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph claim_check
[INFO] [stdout] [2m2025-10-01T13:11:58.419929Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(ClaimCheck)
[INFO] [stdout] [2m2025-10-01T13:11:58.419936Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2025-10-01T13:11:58.419943Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph claim_check
[INFO] [stdout] [2m2025-10-01T13:11:58.419950Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: ClaimCheck
[INFO] [stdout] [2m2025-10-01T13:11:58.419964Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph ai_tool
[INFO] [stdout] [2m2025-10-01T13:11:58.419970Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(AITool)
[INFO] [stdout] [2m2025-10-01T13:11:58.419977Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2025-10-01T13:11:58.419983Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph ai_tool
[INFO] [stdout] [2m2025-10-01T13:11:58.419994Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph shell
[INFO] [stdout] [2m2025-10-01T13:11:58.420001Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph shell
[INFO] [stdout] [2m2025-10-01T13:11:58.420023Z[0m [32m INFO[0m ThreadId(17) [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] [2m2025-10-01T13:11:58.420363Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: FanOut(fanout)
[INFO] [stdout] [2m2025-10-01T13:11:58.420422Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::passthrough[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.420437Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Passthrough(fanout_1)
[INFO] [stdout] [2m2025-10-01T13:11:58.420447Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.420462Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::passthrough[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.420473Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Passthrough(fanout_2)
[INFO] [stdout] [2m2025-10-01T13:11:58.420483Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.420515Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2025-10-01T13:11:58.420534Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [fan_out] REGISTER GRAPH
[INFO] [stdout] [2m2025-10-01T13:11:58.420548Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph fan_out is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.420555Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph fan_out TRANSITIONED TO Active
[INFO] [stdout] [2m2025-10-01T13:11:58.420562Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: fan_out
[INFO] [stdout] [2m2025-10-01T13:11:58.420594Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2025-10-01T13:11:58.420608Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.420619Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["fan_out"]
[INFO] [stdout] [2m2025-10-01T13:11:58.420632Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["fan_out"]
[INFO] [stdout] [2m2025-10-01T13:11:58.420658Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: fan_out (rev.1)
[INFO] [stdout] [2m2025-10-01T13:11:58.420684Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout_1] Getting next nodes for fan_out.fanout_1(Passthrough)
[INFO] [stdout] [2m2025-10-01T13:11:58.420744Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout_2] Getting next nodes for fan_out.fanout_2(Passthrough)
[INFO] [stdout] [2m2025-10-01T13:11:58.420804Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout] Getting next nodes for fan_out.fanout(FanOut)
[INFO] [stdout] [2m2025-10-01T13:11:58.420820Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout] Adding child fanout_2 (role default)
[INFO] [stdout] [2m2025-10-01T13:11:58.420844Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout_2] Getting next nodes for fan_out.fanout_2(Passthrough)
[INFO] [stdout] [2m2025-10-01T13:11:58.420892Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout] Adding child fanout_1 (role default)
[INFO] [stdout] [2m2025-10-01T13:11:58.420914Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [fanout_1] Getting next nodes for fan_out.fanout_1(Passthrough)
[INFO] [stdout] [2m2025-10-01T13:11:58.420998Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2025-10-01T13:11:58.421020Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=fan_out] Pending count: 0
[INFO] [stdout] [2m2025-10-01T13:11:58.421027Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph fan_out
[INFO] [stdout] [2m2025-10-01T13:11:58.421034Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: fan_out : Manager:Active, Runner:Active
[INFO] [stdout] [2m2025-10-01T13:11:58.421078Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::my_reg[0m[2m:[0m [fan_out] Broadcasting to 2 (["startup", "ai_agent.tool_a(Callout)"])
[INFO] [stdout] [2m2025-10-01T13:11:58.421177Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"1ZQLE\",\"graph_name\":\"fan_out\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=0)
[INFO] [stdout] [2m2025-10-01T13:11:58.421197Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m All systems a go!
[INFO] [stdout] [2m2025-10-01T13:11:58.421208Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: fan_out
[INFO] [stdout] [2m2025-10-01T13:11:58.421223Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m Control
[INFO] [stdout] [2m2025-10-01T13:11:58.421232Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core[0m[2m:[0m Post graph hook executed.
[INFO] [stdout] [2m2025-10-01T13:11:58.421256Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m FanOut::next JSON { message: Object {"name": String("joe")}, origin: Some(OriginMessage { respond_to: Some(Sender { complete: false }), session: Some("0"), mpsc_respond_to: None, span: Some(Span(Debug not implemented)), temp: Mutex { data: Null, poisoned: false, .. } }) }
[INFO] [stdout] [2m2025-10-01T13:11:58.421280Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m FanOut::next - data: Mutex { data: Null, poisoned: false, .. }
[INFO] [stdout] [2m2025-10-01T13:11:58.421309Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m Sending message to sender 1
[INFO] [stdout] [2m2025-10-01T13:11:58.421329Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m Message sent to sender 1
[INFO] [stdout] [2m2025-10-01T13:11:58.421337Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m Sending message to sender 2
[INFO] [stdout] [2m2025-10-01T13:11:58.421348Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m Message sent to sender 2
[INFO] [stdout] [2m2025-10-01T13:11:58.421369Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Message sent to Passthrough
[INFO] [stdout] [2m2025-10-01T13:11:58.421384Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Message sent to Passthrough
[INFO] [stdout] [2m2025-10-01T13:11:58.421396Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Received!
[INFO] [stdout] [2m2025-10-01T13:11:58.421405Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Handle "Passthrough" Filter
[INFO] [stdout] [2m2025-10-01T13:11:58.421413Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::noop[0m[2m:[0m Finished.. sending to respond_to..
[INFO] [stdout] [2m2025-10-01T13:11:58.421430Z[0m [32m INFO[0m ThreadId(17) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Received!
[INFO] [stdout] [2m2025-10-01T13:11:58.421438Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor[0m[2m:[0m Handle "Passthrough" Filter
[INFO] [stdout] [2m2025-10-01T13:11:58.421444Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::noop[0m[2m:[0m Finished.. sending to respond_to..
[INFO] [stdout] [2m2025-10-01T13:11:58.421466Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m Received response JSON { message: Object {"name": String("joe")}, origin: None }
[INFO] [stdout] [2m2025-10-01T13:11:58.421476Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m Received response JSON { message: Object {"name": String("joe")}, origin: None }
[INFO] [stdout] [2m2025-10-01T13:11:58.421487Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::fan_out::fan_out[0m[2m:[0m Merged results: [Object {"name": String("joe")}, Object {"name": String("joe")}]
[INFO] [stdout] [2m2025-10-01T13:11:58.421535Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: Passthrough
[INFO] [stdout] [2m2025-10-01T13:11:58.421555Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: Passthrough
[INFO] [stdout] [2m2025-10-01T13:11:58.421569Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: Passthrough
[INFO] [stdout] [2m2025-10-01T13:11:58.421579Z[0m [34mDEBUG[0m ThreadId(17) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: Passthrough
[INFO] [stdout] test saasexpress_core_tests::test_fan_out ... ok
[INFO] [stdout] [2m2025-10-01T13:11:58.421830Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph fan_out
[INFO] [stdout] [2m2025-10-01T13:11:58.421849Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(Passthrough)
[INFO] [stdout] [2m2025-10-01T13:11:58.421857Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(Passthrough)
[INFO] [stdout] [2m2025-10-01T13:11:58.421863Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(FanOut)
[INFO] [stdout] [2m2025-10-01T13:11:58.421870Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2025-10-01T13:11:58.421877Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph fan_out
[INFO] [stdout] [2m2025-10-01T13:11:58.421883Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: Passthrough
[INFO] [stdout] [2m2025-10-01T13:11:58.421894Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: Passthrough
[INFO] [stdout] [2m2025-10-01T13:11:58.421901Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: Passthrough
[INFO] [stdout] [2m2025-10-01T13:11:58.421911Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m DROP OperatorActorHandleRuntime: Passthrough
[INFO] [stdout] [2m2025-10-01T13:11:58.421943Z[0m [32m INFO[0m ThreadId(18) [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] [2m2025-10-01T13:11:58.432235Z[0m [32m INFO[0m ThreadId(12) [2msaasexpress_core::operators::callout[0m[2m:[0m Received control event: ControlEvent { graph_id: "1ZQLE", graph_name: "fan_out", graph_status: Active, operator_names: [], event_type: GraphReplaced, reason: "Graph runner updated (rev.1)" }
[INFO] [stdout] [2m2025-10-01T13:11:58.432389Z[0m [32m INFO[0m ThreadId(12) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: fan_out
[INFO] [stdout] [2m2025-10-01T13:11:58.532957Z[0m [34mDEBUG[0m ThreadId(09) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph worker
[INFO] [stdout] [2m2025-10-01T13:11:58.533044Z[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 ... FAILED
[INFO] [stdout] test saasexpress_core_tests::buffertojson_works ... FAILED
[INFO] [stdout] [2m2025-10-01T13:11:58.534553Z[0m [32m INFO[0m ThreadId(20) [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] [2m2025-10-01T13:11:58.534815Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: Settings(settings)
[INFO] [stdout] [2m2025-10-01T13:11:58.534847Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2025-10-01T13:11:58.534865Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m [settings] REGISTER GRAPH
[INFO] [stdout] [2m2025-10-01T13:11:58.534878Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph settings is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.534885Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph settings TRANSITIONED TO Active
[INFO] [stdout] [2m2025-10-01T13:11:58.534891Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: settings
[INFO] [stdout] [2m2025-10-01T13:11:58.534923Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core[0m[2m:[0m Starting graphs...
[INFO] [stdout] [2m2025-10-01T13:11:58.534936Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::my_reg[0m[2m:[0m [startup] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.534947Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core[0m[2m:[0m GetPending graph_list=["settings"]
[INFO] [stdout] [2m2025-10-01T13:11:58.534960Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core[0m[2m:[0m Pending graphs: ["settings"]
[INFO] [stdout] [2m2025-10-01T13:11:58.534989Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Generating new runtimes for graph: settings (rev.1)
[INFO] [stdout] [2m2025-10-01T13:11:58.535011Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m [settings] Getting next nodes for settings.settings(Settings)
[INFO] [stdout] [2m2025-10-01T13:11:58.535043Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Done new runtimes
[INFO] [stdout] [2m2025-10-01T13:11:58.535052Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m [Graph=settings] Pending count: 0
[INFO] [stdout] [2m2025-10-01T13:11:58.535059Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph settings
[INFO] [stdout] [2m2025-10-01T13:11:58.535065Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph BUILT: settings : Manager:Active, Runner:Active
[INFO] [stdout] [2m2025-10-01T13:11:58.535117Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::my_reg[0m[2m:[0m [settings] Broadcasting to 2 (["startup", "ai_agent.tool_a(Callout)"])
[INFO] [stdout] [2m2025-10-01T13:11:58.535209Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core[0m[2m:[0m Received Event: Ok("{\"graph_id\":\"MO6XU\",\"graph_name\":\"settings\",\"graph_status\":\"Active\",\"operator_names\":[],\"event_type\":\"GraphReplaced\",\"reason\":\"Graph runner updated (rev.1)\"}") (Remaining=0)
[INFO] [stdout] [2m2025-10-01T13:11:58.535227Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core[0m[2m:[0m All systems a go!
[INFO] [stdout] [2m2025-10-01T13:11:58.535236Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core[0m[2m:[0m Post start hook for graph: settings
[INFO] [stdout] [2m2025-10-01T13:11:58.535249Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::operators::settings[0m[2m:[0m Control
[INFO] [stdout] [2m2025-10-01T13:11:58.535257Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core[0m[2m:[0m Post graph hook executed.
[INFO] [stdout] [2m2025-10-01T13:11:58.535284Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::operators::settings[0m[2m:[0m Handling! 1
[INFO] [stdout] [2m2025-10-01T13:11:58.535297Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph settings is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.535303Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: settings
[INFO] [stdout] [2m2025-10-01T13:11:58.535325Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::operators::noop[0m[2m:[0m Finished.. sending to respond_to..
[INFO] [stdout] [2m2025-10-01T13:11:58.535348Z[0m [32m INFO[0m ThreadId(20) [2msaasexpress_core::saasexpress_core_tests[0m[2m:[0m Response : JSON { message: Object {"name": String("Joe")}, origin: None }
[INFO] [stdout] [2m2025-10-01T13:11:58.535371Z[0m [34mDEBUG[0m ThreadId(20) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph settings
[INFO] [stdout] test saasexpress_core_tests::test_settings ... ok
[INFO] [stdout] [2m2025-10-01T13:11:58.535665Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph settings
[INFO] [stdout] [2m2025-10-01T13:11:58.535693Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(Settings)
[INFO] [stdout] [2m2025-10-01T13:11:58.535703Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2025-10-01T13:11:58.535711Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph settings
[INFO] [stdout] [2m2025-10-01T13:11:58.535894Z[0m [33m WARN[0m ThreadId(21) [2msaasexpress_core::operators::global_space::global_space[0m[2m:[0m Init Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.535918Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: GlobalSpace(global)
[INFO] [stdout] [2m2025-10-01T13:11:58.535930Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.535945Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::graph::processors::basic[0m[2m:[0m Creating Basic Processor - and adding _end node
[INFO] [stdout] [2m2025-10-01T13:11:58.535961Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m [graph_1] REGISTER GRAPH
[INFO] [stdout] [2m2025-10-01T13:11:58.535971Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph graph_1 is now active
[INFO] [stdout] [2m2025-10-01T13:11:58.535976Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m Graph graph_1 TRANSITIONED TO Active
[INFO] [stdout] [2m2025-10-01T13:11:58.535982Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m Replacing runner for graph: graph_1
[INFO] [stdout] [2m2025-10-01T13:11:58.536232Z[0m [33m WARN[0m ThreadId(21) [2msaasexpress_core::operators::global_space::global_space[0m[2m:[0m Init Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.536225Z[0m [34mDEBUG[0m ThreadId(19) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph graph_1
[INFO] [stdout] [2m2025-10-01T13:11:58.536284Z[0m [34mDEBUG[0m ThreadId(19) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph graph_1
[INFO] [stdout] [2m2025-10-01T13:11:58.536316Z[0m [32m INFO[0m ThreadId(19) [2msaasexpress_core::my_reg[0m[2m:[0m [my_channel] REGISTERED
[INFO] [stdout] [2m2025-10-01T13:11:58.536341Z[0m [34mDEBUG[0m ThreadId(19) [2msaasexpress_core::my_reg[0m[2m:[0m [ai_agent] Broadcasting to 2 (["my_channel", "ai_agent.tool_a(Callout)"])
[INFO] [stdout] [2m2025-10-01T13:11:58.535805Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph canonical_model
[INFO] [stdout] [2m2025-10-01T13:11:58.536440Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(CanonicalModelSample)
[INFO] [stdout] [2m2025-10-01T13:11:58.536262Z[0m [32m INFO[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m Node: GlobalSpace(global)
[INFO] [stdout] [2m2025-10-01T13:11:58.536542Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::operators::op_actor_handle[0m[2m:[0m Not implemented
[INFO] [stdout] [2m2025-10-01T13:11:58.536520Z[0m [34mDEBUG[0m ThreadId(16) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2025-10-01T13:11:58.539178Z[0m [32m INFO[0m ThreadId(12) [2msaasexpress_core::operators::callout[0m[2m:[0m Received control event: ControlEvent { graph_id: "MO6XU", graph_name: "settings", graph_status: Active, operator_names: [], event_type: GraphReplaced, reason: "Graph runner updated (rev.1)" }
[INFO] [stdout] [2m2025-10-01T13:11:58.539205Z[0m [32m INFO[0m ThreadId(12) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: settings
[INFO] [stdout] [2m2025-10-01T13:11:58.539215Z[0m [32m INFO[0m ThreadId(12) [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] [2m2025-10-01T13:11:58.539223Z[0m [32m INFO[0m ThreadId(12) [2msaasexpress_core::operators::callout[0m[2m:[0m Ignoring control event for different graph: ai_agent
[INFO] [stdout] test saasexpress_core_tests::test_reg_example ... ok
[INFO] [stdout] test saasexpress_core_tests::test_canodamo_sample_ok ... FAILED
[INFO] [stdout] [2m2025-10-01T13:11:58.539964Z[0m [34mDEBUG[0m ThreadId(03) [2msaasexpress_core::operators::op_actor[0m[2m:[0m DROP OpActor: ClaimCheck
[INFO] [stdout] [2m2025-10-01T13:11:58.541296Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph shell
[INFO] [stdout] [2m2025-10-01T13:11:58.541321Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2025-10-01T13:11:58.541334Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(BufferToJSON)
[INFO] [stdout] [2m2025-10-01T13:11:58.541342Z[0m [34mDEBUG[0m ThreadId(06) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(Shell)
[INFO] [stdout] test saasexpress_core_tests::claimcheck_works ... FAILED
[INFO] [stdout] test saasexpress_core_tests::shell_works ... FAILED
[INFO] [stdout] test saasexpress_core_tests::test_ai_tool ... FAILED
[INFO] [stdout] [2m2025-10-01T13:11:58.552424Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph ai_agent
[INFO] [stdout] [2m2025-10-01T13:11:58.552463Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(Callout)
[INFO] [stdout] [2m2025-10-01T13:11:58.552484Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::operators::callout[0m[2m:[0m DROP Callout operator: tool_a
[INFO] [stdout] [2m2025-10-01T13:11:58.558158Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(AIAgent)
[INFO] [stdout] [2m2025-10-01T13:11:58.558367Z[0m [34mDEBUG[0m ThreadId(07) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph ai_agent
[INFO] [stdout] [2m2025-10-01T13:11:58.558339Z[0m [32m INFO[0m ThreadId(12) [2msaasexpress_core::operators::callout[0m[2m:[0m Control channel closed for ai_agent.tool_a(Callout)
[INFO] [stdout] [2m2025-10-01T13:11:58.558543Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph worker
[INFO] [stdout] [2m2025-10-01T13:11:58.558566Z[0m [34mDEBUG[0m ThreadId(18) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph worker
[INFO] [stdout] test saasexpress_core_tests::test_graph_upgrade ... FAILED
[INFO] [stdout] [2m2025-10-01T13:11:58.558812Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP Graph for graph worker
[INFO] [stdout] [2m2025-10-01T13:11:58.558828Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(GlobalSpace)
[INFO] [stdout] [2m2025-10-01T13:11:58.558837Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph worker
[INFO] [stdout] [2m2025-10-01T13:11:58.558886Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::graph::graph[0m[2m:[0m DROP GraphRunner for graph graph_1
[INFO] [stdout] [2m2025-10-01T13:11:58.558896Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(NOOP)
[INFO] [stdout] [2m2025-10-01T13:11:58.558909Z[0m [34mDEBUG[0m ThreadId(21) [2msaasexpress_core::operators::op_wrapper[0m[2m:[0m DROP OperatorWrapper: Wrapper(GlobalSpace)
[INFO] [stdout] test saasexpress_core_tests::test_ai_agent ... FAILED
[INFO] [stdout] test saasexpress_core_tests::test_shared_resources ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- saasexpress_core_tests::test_callout stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'saasexpress_core_tests::test_callout' (23) panicked at src/operators/stub.rs:24:38:
[INFO] [stdout] called `Option::unwrap()` on a `None` value
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b7e031b7542 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b7e031b7542 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b7e031b7542 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5b7e031b7542 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5b7e031c9c4f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5b7e031c9c4f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5b7e031837b1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5b7e031837b1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5b7e0318ff52 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5b7e0319504f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5b7e03194ee1 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5b7e02d6a4ae - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5b7e02d6a4ae - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b7e031957bf - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5b7e031957bf - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5b7e03195536 - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:700:13
[INFO] [stdout]   16:     0x5b7e03190089 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5b7e03176f9d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5b7e031d3c20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5b7e031d3bfc - core::panicking::panic::h355c5fec13755e30
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:145:5
[INFO] [stdout]   20:     0x5b7e031d2d69 - core::option::unwrap_failed::h9039d211b71a576a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/option.rs:2169:5
[INFO] [stdout]   21:     0x5b7e02c518d9 - core::option::Option<T>::unwrap::h65d66ebbb1389894
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/option.rs:1010:21
[INFO] [stdout]   22:     0x5b7e02c518d9 - <saasexpress_core::operators::stub::Stub as core::convert::From<&serde_yaml::value::Value>>::from::h853e60044a2aed08
[INFO] [stdout]                                at /opt/rustwide/workdir/src/operators/stub.rs:24:38
[INFO] [stdout]   23:     0x5b7e02c699cf - saasexpress_core::operators::factory::add_node_to_graph::h80069b9716ae8ab4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/operators/factory.rs:86:38
[INFO] [stdout]   24:     0x5b7e02b7596e - saasexpress_core::build_graph::h1fb531dc6bde2bb1
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:36:9
[INFO] [stdout]   25:     0x5b7e02b7e013 - saasexpress_core::saasexpress_core_tests::test_callout::{{closure}}::h4fa3fd877f1fc0f8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:420:17
[INFO] [stdout]   26:     0x5b7e02bfe7e2 - <core::pin::Pin<P> as core::future::future::Future>::poll::he827746a3284eb29
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   27:     0x5b7e02bfe25d - <core::pin::Pin<P> as core::future::future::Future>::poll::h1412433d425a1a25
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   28:     0x5b7e02d1fc5d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h1f7cef340cdb4c2c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   29:     0x5b7e02d1fa0b - tokio::task::coop::with_budget::h128074d483c8182a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   30:     0x5b7e02d1fa0b - tokio::task::coop::budget::h02008e2bce7c5d12
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   31:     0x5b7e02d1fa0b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h78d0db8691589150
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   32:     0x5b7e02d1d330 - tokio::runtime::scheduler::current_thread::Context::enter::hf5ea61da59f08ca6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   33:     0x5b7e02d1f0cd - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hd4f3dca45c46d284
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   34:     0x5b7e02d1e304 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::hea4b956a476f44df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   35:     0x5b7e02c9ce7b - tokio::runtime::context::scoped::Scoped<T>::set::h055bc29f5411b9d8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   36:     0x5b7e02cc9109 - tokio::runtime::context::set_scheduler::{{closure}}::h76f0a9c26f7be2b3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:38
[INFO] [stdout]   37:     0x5b7e02cbd0a2 - std::thread::local::LocalKey<T>::try_with::h60c9378534598024
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   38:     0x5b7e02cbaa4e - std::thread::local::LocalKey<T>::with::ha6bcaf0a6dc551a3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   39:     0x5b7e02cc907d - tokio::runtime::context::set_scheduler::h01f487bc29f3b74e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:17
[INFO] [stdout]   40:     0x5b7e02d1e090 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hfa9c3543a627e06b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   41:     0x5b7e02d1e323 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h5c7e21197d8f5241
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   42:     0x5b7e02d14350 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h473aeff23ae8809b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   43:     0x5b7e02d13580 - tokio::runtime::context::runtime::enter_runtime::h8febae1b823a3098
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   44:     0x5b7e02d14111 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h7af3973a09f830f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   45:     0x5b7e02bcd194 - tokio::runtime::runtime::Runtime::block_on_inner::hb8d8ebdcc7aeac62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:356:52
[INFO] [stdout]   46:     0x5b7e02bcd46c - tokio::runtime::runtime::Runtime::block_on::hf47e97651f9c3062
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   47:     0x5b7e02b7d870 - saasexpress_core::saasexpress_core_tests::test_callout::h32725a8a93a5a2eb
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:462:30
[INFO] [stdout]   48:     0x5b7e02b7d907 - saasexpress_core::saasexpress_core_tests::test_callout::{{closure}}::h19e598131a6f9f4c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:396:28
[INFO] [stdout]   49:     0x5b7e02c2ce36 - core::ops::function::FnOnce::call_once::hdb333d33589cb347
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   50:     0x5b7e02d6a26b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   51:     0x5b7e02d6a26b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   52:     0x5b7e02d7fed5 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   53:     0x5b7e02d7fed5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   54:     0x5b7e02d7fed5 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   55:     0x5b7e02d7fed5 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   56:     0x5b7e02d7fed5 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   57:     0x5b7e02d7fed5 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   58:     0x5b7e02d7fed5 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   59:     0x5b7e02d566c4 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   60:     0x5b7e02d566c4 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   61:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   62:     0x5b7e02d59f8a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   63:     0x5b7e02d59f8a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   64:     0x5b7e02d59f8a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   65:     0x5b7e02d59f8a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   66:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   67:     0x5b7e02d59f8a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   68:     0x5b7e0318b0cf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   69:     0x5b7e0318b0cf - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   70:     0x729b36866aa4 - <unknown>
[INFO] [stdout]   71:     0x729b368f3a34 - clone
[INFO] [stdout]   72:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- saasexpress_core_tests::buffertojson_works stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'saasexpress_core_tests::buffertojson_works' (16) panicked at src/lib.rs:137:21:
[INFO] [stdout] No message received
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b7e031b7542 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b7e031b7542 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b7e031b7542 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5b7e031b7542 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5b7e031c9c4f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5b7e031c9c4f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5b7e031837b1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5b7e031837b1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5b7e0318ff52 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5b7e0319504f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5b7e03194ee1 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5b7e02d6a4ae - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5b7e02d6a4ae - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b7e031957bf - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5b7e031957bf - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5b7e03195536 - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:700:13
[INFO] [stdout]   16:     0x5b7e03190089 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5b7e03176f9d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5b7e031d3c20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5b7e02b78c82 - saasexpress_core::start_graphs::{{closure}}::h8ac796fe4ab251b0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:137:21
[INFO] [stdout]   20:     0x5b7e02b85f57 - saasexpress_core::saasexpress_core_tests::buffertojson_works::{{closure}}::h5379a6eb290b0a98
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:257:24
[INFO] [stdout]   21:     0x5b7e02bfe7e2 - <core::pin::Pin<P> as core::future::future::Future>::poll::he827746a3284eb29
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   22:     0x5b7e02bfe25d - <core::pin::Pin<P> as core::future::future::Future>::poll::h1412433d425a1a25
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x5b7e02d1fc5d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h1f7cef340cdb4c2c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   24:     0x5b7e02d1fa0b - tokio::task::coop::with_budget::h128074d483c8182a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   25:     0x5b7e02d1fa0b - tokio::task::coop::budget::h02008e2bce7c5d12
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   26:     0x5b7e02d1fa0b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h78d0db8691589150
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   27:     0x5b7e02d1d330 - tokio::runtime::scheduler::current_thread::Context::enter::hf5ea61da59f08ca6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   28:     0x5b7e02d1f0cd - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hd4f3dca45c46d284
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   29:     0x5b7e02d1e304 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::hea4b956a476f44df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   30:     0x5b7e02c9ce7b - tokio::runtime::context::scoped::Scoped<T>::set::h055bc29f5411b9d8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   31:     0x5b7e02cc9109 - tokio::runtime::context::set_scheduler::{{closure}}::h76f0a9c26f7be2b3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:38
[INFO] [stdout]   32:     0x5b7e02cbd0a2 - std::thread::local::LocalKey<T>::try_with::h60c9378534598024
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   33:     0x5b7e02cbaa4e - std::thread::local::LocalKey<T>::with::ha6bcaf0a6dc551a3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   34:     0x5b7e02cc907d - tokio::runtime::context::set_scheduler::h01f487bc29f3b74e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:17
[INFO] [stdout]   35:     0x5b7e02d1e090 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hfa9c3543a627e06b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   36:     0x5b7e02d1e323 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h5c7e21197d8f5241
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   37:     0x5b7e02d14350 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h473aeff23ae8809b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   38:     0x5b7e02d13580 - tokio::runtime::context::runtime::enter_runtime::h8febae1b823a3098
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   39:     0x5b7e02d14111 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h7af3973a09f830f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   40:     0x5b7e02bcd194 - tokio::runtime::runtime::Runtime::block_on_inner::hb8d8ebdcc7aeac62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:356:52
[INFO] [stdout]   41:     0x5b7e02bcd46c - tokio::runtime::runtime::Runtime::block_on::hf47e97651f9c3062
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   42:     0x5b7e02b85b80 - saasexpress_core::saasexpress_core_tests::buffertojson_works::hee58a4eedac253cd
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:270:55
[INFO] [stdout]   43:     0x5b7e02b85c17 - saasexpress_core::saasexpress_core_tests::buffertojson_works::{{closure}}::h08c23040dde86581
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:246:34
[INFO] [stdout]   44:     0x5b7e02c2aa66 - core::ops::function::FnOnce::call_once::h80206f5066e53d19
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5b7e02d6a26b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x5b7e02d6a26b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   47:     0x5b7e02d7fed5 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   48:     0x5b7e02d7fed5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   49:     0x5b7e02d7fed5 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   50:     0x5b7e02d7fed5 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   51:     0x5b7e02d7fed5 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   52:     0x5b7e02d7fed5 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   53:     0x5b7e02d7fed5 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   54:     0x5b7e02d566c4 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   55:     0x5b7e02d566c4 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   56:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   57:     0x5b7e02d59f8a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   58:     0x5b7e02d59f8a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   59:     0x5b7e02d59f8a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   60:     0x5b7e02d59f8a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   61:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   62:     0x5b7e02d59f8a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   63:     0x5b7e0318b0cf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   64:     0x5b7e0318b0cf - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   65:     0x729b36866aa4 - <unknown>
[INFO] [stdout]   66:     0x729b368f3a34 - clone
[INFO] [stdout]   67:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- saasexpress_core_tests::test_canodamo_sample_ok stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'saasexpress_core_tests::test_canodamo_sample_ok' (30) panicked at src/lib.rs:137:21:
[INFO] [stdout] No message received
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b7e031b7542 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b7e031b7542 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b7e031b7542 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5b7e031b7542 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5b7e031c9c4f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5b7e031c9c4f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5b7e031837b1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5b7e031837b1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5b7e0318ff52 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5b7e0319504f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5b7e03194ee1 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5b7e02d6a4ae - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5b7e02d6a4ae - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b7e031957bf - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5b7e031957bf - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5b7e03195536 - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:700:13
[INFO] [stdout]   16:     0x5b7e03190089 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5b7e03176f9d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5b7e031d3c20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5b7e02b78c82 - saasexpress_core::start_graphs::{{closure}}::h8ac796fe4ab251b0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:137:21
[INFO] [stdout]   20:     0x5b7e02b8bab3 - saasexpress_core::saasexpress_core_tests::test_canodamo_sample_ok::{{closure}}::hca89f1ed3118ea1e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:672:24
[INFO] [stdout]   21:     0x5b7e02bfe7e2 - <core::pin::Pin<P> as core::future::future::Future>::poll::he827746a3284eb29
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   22:     0x5b7e02bfe25d - <core::pin::Pin<P> as core::future::future::Future>::poll::h1412433d425a1a25
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x5b7e02d1fc5d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h1f7cef340cdb4c2c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   24:     0x5b7e02d1fa0b - tokio::task::coop::with_budget::h128074d483c8182a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   25:     0x5b7e02d1fa0b - tokio::task::coop::budget::h02008e2bce7c5d12
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   26:     0x5b7e02d1fa0b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h78d0db8691589150
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   27:     0x5b7e02d1d330 - tokio::runtime::scheduler::current_thread::Context::enter::hf5ea61da59f08ca6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   28:     0x5b7e02d1f0cd - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hd4f3dca45c46d284
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   29:     0x5b7e02d1e304 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::hea4b956a476f44df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   30:     0x5b7e02c9ce7b - tokio::runtime::context::scoped::Scoped<T>::set::h055bc29f5411b9d8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   31:     0x5b7e02cc9109 - tokio::runtime::context::set_scheduler::{{closure}}::h76f0a9c26f7be2b3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:38
[INFO] [stdout]   32:     0x5b7e02cbd0a2 - std::thread::local::LocalKey<T>::try_with::h60c9378534598024
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   33:     0x5b7e02cbaa4e - std::thread::local::LocalKey<T>::with::ha6bcaf0a6dc551a3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   34:     0x5b7e02cc907d - tokio::runtime::context::set_scheduler::h01f487bc29f3b74e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:17
[INFO] [stdout]   35:     0x5b7e02d1e090 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hfa9c3543a627e06b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   36:     0x5b7e02d1e323 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h5c7e21197d8f5241
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   37:     0x5b7e02d14350 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h473aeff23ae8809b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   38:     0x5b7e02d13580 - tokio::runtime::context::runtime::enter_runtime::h8febae1b823a3098
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   39:     0x5b7e02d14111 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h7af3973a09f830f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   40:     0x5b7e02bcd194 - tokio::runtime::runtime::Runtime::block_on_inner::hb8d8ebdcc7aeac62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:356:52
[INFO] [stdout]   41:     0x5b7e02bcd46c - tokio::runtime::runtime::Runtime::block_on::hf47e97651f9c3062
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   42:     0x5b7e02b8b1f0 - saasexpress_core::saasexpress_core_tests::test_canodamo_sample_ok::ha4c02ae68702e174
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:686:56
[INFO] [stdout]   43:     0x5b7e02b8b287 - saasexpress_core::saasexpress_core_tests::test_canodamo_sample_ok::{{closure}}::h713030e4273c7bf3
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:657:39
[INFO] [stdout]   44:     0x5b7e02c2bdf6 - core::ops::function::FnOnce::call_once::had6cce30fb543410
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5b7e02d6a26b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x5b7e02d6a26b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   47:     0x5b7e02d7fed5 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   48:     0x5b7e02d7fed5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   49:     0x5b7e02d7fed5 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   50:     0x5b7e02d7fed5 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   51:     0x5b7e02d7fed5 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   52:     0x5b7e02d7fed5 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   53:     0x5b7e02d7fed5 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   54:     0x5b7e02d566c4 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   55:     0x5b7e02d566c4 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   56:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   57:     0x5b7e02d59f8a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   58:     0x5b7e02d59f8a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   59:     0x5b7e02d59f8a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   60:     0x5b7e02d59f8a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   61:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   62:     0x5b7e02d59f8a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   63:     0x5b7e0318b0cf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   64:     0x5b7e0318b0cf - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   65:     0x729b36866aa4 - <unknown>
[INFO] [stdout]   66:     0x729b368f3a34 - clone
[INFO] [stdout]   67:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- saasexpress_core_tests::claimcheck_works stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'saasexpress_core_tests::claimcheck_works' (17) panicked at src/lib.rs:137:21:
[INFO] [stdout] No message received
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b7e031b7542 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b7e031b7542 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b7e031b7542 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5b7e031b7542 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5b7e031c9c4f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5b7e031c9c4f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5b7e031837b1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5b7e031837b1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5b7e0318ff52 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5b7e0319504f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5b7e03194ee1 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5b7e02d6a4ae - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5b7e02d6a4ae - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b7e031957bf - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5b7e031957bf - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5b7e03195536 - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:700:13
[INFO] [stdout]   16:     0x5b7e03190089 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5b7e03176f9d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5b7e031d3c20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5b7e02b78c82 - saasexpress_core::start_graphs::{{closure}}::h8ac796fe4ab251b0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:137:21
[INFO] [stdout]   20:     0x5b7e02b843c7 - saasexpress_core::saasexpress_core_tests::claimcheck_works::{{closure}}::h789b3a61c8e7f496
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:287:24
[INFO] [stdout]   21:     0x5b7e02bfe7e2 - <core::pin::Pin<P> as core::future::future::Future>::poll::he827746a3284eb29
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   22:     0x5b7e02bfe25d - <core::pin::Pin<P> as core::future::future::Future>::poll::h1412433d425a1a25
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x5b7e02d1fc5d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h1f7cef340cdb4c2c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   24:     0x5b7e02d1fa0b - tokio::task::coop::with_budget::h128074d483c8182a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   25:     0x5b7e02d1fa0b - tokio::task::coop::budget::h02008e2bce7c5d12
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   26:     0x5b7e02d1fa0b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h78d0db8691589150
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   27:     0x5b7e02d1d330 - tokio::runtime::scheduler::current_thread::Context::enter::hf5ea61da59f08ca6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   28:     0x5b7e02d1f0cd - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hd4f3dca45c46d284
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   29:     0x5b7e02d1e304 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::hea4b956a476f44df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   30:     0x5b7e02c9ce7b - tokio::runtime::context::scoped::Scoped<T>::set::h055bc29f5411b9d8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   31:     0x5b7e02cc9109 - tokio::runtime::context::set_scheduler::{{closure}}::h76f0a9c26f7be2b3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:38
[INFO] [stdout]   32:     0x5b7e02cbd0a2 - std::thread::local::LocalKey<T>::try_with::h60c9378534598024
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   33:     0x5b7e02cbaa4e - std::thread::local::LocalKey<T>::with::ha6bcaf0a6dc551a3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   34:     0x5b7e02cc907d - tokio::runtime::context::set_scheduler::h01f487bc29f3b74e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:17
[INFO] [stdout]   35:     0x5b7e02d1e090 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hfa9c3543a627e06b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   36:     0x5b7e02d1e323 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h5c7e21197d8f5241
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   37:     0x5b7e02d14350 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h473aeff23ae8809b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   38:     0x5b7e02d13580 - tokio::runtime::context::runtime::enter_runtime::h8febae1b823a3098
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   39:     0x5b7e02d14111 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h7af3973a09f830f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   40:     0x5b7e02bcd194 - tokio::runtime::runtime::Runtime::block_on_inner::hb8d8ebdcc7aeac62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:356:52
[INFO] [stdout]   41:     0x5b7e02bcd46c - tokio::runtime::runtime::Runtime::block_on::hf47e97651f9c3062
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   42:     0x5b7e02b83ff0 - saasexpress_core::saasexpress_core_tests::claimcheck_works::h4296524e887302e6
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:305:10
[INFO] [stdout]   43:     0x5b7e02b84087 - saasexpress_core::saasexpress_core_tests::claimcheck_works::{{closure}}::h380dbe5bfab41db1
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:276:32
[INFO] [stdout]   44:     0x5b7e02c28016 - core::ops::function::FnOnce::call_once::h0d87ffde1e3db91c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5b7e02d6a26b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x5b7e02d6a26b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   47:     0x5b7e02d7fed5 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   48:     0x5b7e02d7fed5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   49:     0x5b7e02d7fed5 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   50:     0x5b7e02d7fed5 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   51:     0x5b7e02d7fed5 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   52:     0x5b7e02d7fed5 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   53:     0x5b7e02d7fed5 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   54:     0x5b7e02d566c4 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   55:     0x5b7e02d566c4 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   56:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   57:     0x5b7e02d59f8a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   58:     0x5b7e02d59f8a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   59:     0x5b7e02d59f8a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   60:     0x5b7e02d59f8a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   61:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   62:     0x5b7e02d59f8a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   63:     0x5b7e0318b0cf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   64:     0x5b7e0318b0cf - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   65:     0x729b36866aa4 - <unknown>
[INFO] [stdout]   66:     0x729b368f3a34 - clone
[INFO] [stdout]   67:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- saasexpress_core_tests::shell_works stdout ----
[INFO] [stdout] [1;33mwarning[0m[1m:[0m [1msome trace filter directives would enable traces that are disabled statically[0m
[INFO] [stdout]  [1;38;5;21m|[0m `tokio=trace` would enable the TRACE level for the `tokio` target
[INFO] [stdout]  [1;38;5;21m|[0m `runtime=trace` would enable the TRACE level for the `runtime` target
[INFO] [stdout]  [1;38;5;21m=[0m [1mnote:[0m the static max level is `debug`
[INFO] [stdout]  [1;38;5;21m=[0m [1mhelp:[0m to enable TRACE logging, remove the `max_level_debug` feature from the `tracing` crate
[INFO] [stdout] 
[INFO] [stdout] thread 'saasexpress_core_tests::shell_works' (20) panicked at src/lib.rs:137:21:
[INFO] [stdout] No message received
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b7e031b7542 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b7e031b7542 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b7e031b7542 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5b7e031b7542 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5b7e031c9c4f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5b7e031c9c4f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5b7e031837b1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5b7e031837b1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5b7e0318ff52 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5b7e0319504f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5b7e03194ee1 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5b7e02d6a4ae - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5b7e02d6a4ae - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b7e031957bf - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5b7e031957bf - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5b7e03195536 - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:700:13
[INFO] [stdout]   16:     0x5b7e03190089 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5b7e03176f9d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5b7e031d3c20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5b7e02b78c82 - saasexpress_core::start_graphs::{{closure}}::h8ac796fe4ab251b0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:137:21
[INFO] [stdout]   20:     0x5b7e02b7b73f - saasexpress_core::saasexpress_core_tests::shell_works::{{closure}}::hf2c9e5e9065fa4c4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:332:24
[INFO] [stdout]   21:     0x5b7e02bfe7e2 - <core::pin::Pin<P> as core::future::future::Future>::poll::he827746a3284eb29
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   22:     0x5b7e02bfe25d - <core::pin::Pin<P> as core::future::future::Future>::poll::h1412433d425a1a25
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x5b7e02d1fc5d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h1f7cef340cdb4c2c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   24:     0x5b7e02d1fa0b - tokio::task::coop::with_budget::h128074d483c8182a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   25:     0x5b7e02d1fa0b - tokio::task::coop::budget::h02008e2bce7c5d12
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   26:     0x5b7e02d1fa0b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h78d0db8691589150
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   27:     0x5b7e02d1d330 - tokio::runtime::scheduler::current_thread::Context::enter::hf5ea61da59f08ca6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   28:     0x5b7e02d1f0cd - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hd4f3dca45c46d284
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   29:     0x5b7e02d1e304 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::hea4b956a476f44df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   30:     0x5b7e02c9ce7b - tokio::runtime::context::scoped::Scoped<T>::set::h055bc29f5411b9d8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   31:     0x5b7e02cc9109 - tokio::runtime::context::set_scheduler::{{closure}}::h76f0a9c26f7be2b3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:38
[INFO] [stdout]   32:     0x5b7e02cbd0a2 - std::thread::local::LocalKey<T>::try_with::h60c9378534598024
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   33:     0x5b7e02cbaa4e - std::thread::local::LocalKey<T>::with::ha6bcaf0a6dc551a3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   34:     0x5b7e02cc907d - tokio::runtime::context::set_scheduler::h01f487bc29f3b74e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:17
[INFO] [stdout]   35:     0x5b7e02d1e090 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hfa9c3543a627e06b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   36:     0x5b7e02d1e323 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h5c7e21197d8f5241
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   37:     0x5b7e02d14350 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h473aeff23ae8809b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   38:     0x5b7e02d13580 - tokio::runtime::context::runtime::enter_runtime::h8febae1b823a3098
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   39:     0x5b7e02d14111 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h7af3973a09f830f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   40:     0x5b7e02bcd194 - tokio::runtime::runtime::Runtime::block_on_inner::hb8d8ebdcc7aeac62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:356:52
[INFO] [stdout]   41:     0x5b7e02bcd46c - tokio::runtime::runtime::Runtime::block_on::hf47e97651f9c3062
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   42:     0x5b7e02b7b370 - saasexpress_core::saasexpress_core_tests::shell_works::h6cd24f32de9dbedd
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:348:57
[INFO] [stdout]   43:     0x5b7e02b7b407 - saasexpress_core::saasexpress_core_tests::shell_works::{{closure}}::hece36d060158d769
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:311:27
[INFO] [stdout]   44:     0x5b7e02c27d56 - core::ops::function::FnOnce::call_once::h02c3617d4f7755ce
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5b7e02d6a26b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x5b7e02d6a26b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   47:     0x5b7e02d7fed5 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   48:     0x5b7e02d7fed5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   49:     0x5b7e02d7fed5 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   50:     0x5b7e02d7fed5 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   51:     0x5b7e02d7fed5 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   52:     0x5b7e02d7fed5 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   53:     0x5b7e02d7fed5 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   54:     0x5b7e02d566c4 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   55:     0x5b7e02d566c4 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   56:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   57:     0x5b7e02d59f8a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   58:     0x5b7e02d59f8a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   59:     0x5b7e02d59f8a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   60:     0x5b7e02d59f8a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   61:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   62:     0x5b7e02d59f8a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   63:     0x5b7e0318b0cf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   64:     0x5b7e0318b0cf - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   65:     0x729b36866aa4 - <unknown>
[INFO] [stdout]   66:     0x729b368f3a34 - clone
[INFO] [stdout]   67:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- saasexpress_core_tests::test_ai_tool stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'saasexpress_core_tests::test_ai_tool' (22) panicked at src/lib.rs:137:21:
[INFO] [stdout] No message received
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b7e031b7542 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b7e031b7542 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b7e031b7542 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5b7e031b7542 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5b7e031c9c4f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5b7e031c9c4f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5b7e031837b1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5b7e031837b1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5b7e0318ff52 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5b7e0319504f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5b7e03194ee1 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5b7e02d6a4ae - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5b7e02d6a4ae - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b7e031957bf - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5b7e031957bf - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5b7e03195536 - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:700:13
[INFO] [stdout]   16:     0x5b7e03190089 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5b7e03176f9d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5b7e031d3c20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5b7e02b78c82 - saasexpress_core::start_graphs::{{closure}}::h8ac796fe4ab251b0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:137:21
[INFO] [stdout]   20:     0x5b7e02b7c89f - saasexpress_core::saasexpress_core_tests::test_ai_tool::{{closure}}::h7fa79eee667bf63e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:750:24
[INFO] [stdout]   21:     0x5b7e02bfe7e2 - <core::pin::Pin<P> as core::future::future::Future>::poll::he827746a3284eb29
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   22:     0x5b7e02bfe25d - <core::pin::Pin<P> as core::future::future::Future>::poll::h1412433d425a1a25
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x5b7e02d1fc5d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h1f7cef340cdb4c2c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   24:     0x5b7e02d1fa0b - tokio::task::coop::with_budget::h128074d483c8182a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   25:     0x5b7e02d1fa0b - tokio::task::coop::budget::h02008e2bce7c5d12
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   26:     0x5b7e02d1fa0b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h78d0db8691589150
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   27:     0x5b7e02d1d330 - tokio::runtime::scheduler::current_thread::Context::enter::hf5ea61da59f08ca6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   28:     0x5b7e02d1f0cd - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hd4f3dca45c46d284
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   29:     0x5b7e02d1e304 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::hea4b956a476f44df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   30:     0x5b7e02c9ce7b - tokio::runtime::context::scoped::Scoped<T>::set::h055bc29f5411b9d8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   31:     0x5b7e02cc9109 - tokio::runtime::context::set_scheduler::{{closure}}::h76f0a9c26f7be2b3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:38
[INFO] [stdout]   32:     0x5b7e02cbd0a2 - std::thread::local::LocalKey<T>::try_with::h60c9378534598024
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   33:     0x5b7e02cbaa4e - std::thread::local::LocalKey<T>::with::ha6bcaf0a6dc551a3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   34:     0x5b7e02cc907d - tokio::runtime::context::set_scheduler::h01f487bc29f3b74e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:17
[INFO] [stdout]   35:     0x5b7e02d1e090 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hfa9c3543a627e06b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   36:     0x5b7e02d1e323 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h5c7e21197d8f5241
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   37:     0x5b7e02d14350 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h473aeff23ae8809b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   38:     0x5b7e02d13580 - tokio::runtime::context::runtime::enter_runtime::h8febae1b823a3098
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   39:     0x5b7e02d14111 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h7af3973a09f830f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   40:     0x5b7e02bcd194 - tokio::runtime::runtime::Runtime::block_on_inner::hb8d8ebdcc7aeac62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:356:52
[INFO] [stdout]   41:     0x5b7e02bcd46c - tokio::runtime::runtime::Runtime::block_on::hf47e97651f9c3062
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   42:     0x5b7e02b7c4f0 - saasexpress_core::saasexpress_core_tests::test_ai_tool::h3b73894855c53036
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:767:10
[INFO] [stdout]   43:     0x5b7e02b7d6e7 - saasexpress_core::saasexpress_core_tests::test_ai_tool::{{closure}}::hcc887b67825f5f95
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:730:28
[INFO] [stdout]   44:     0x5b7e02c2c716 - core::ops::function::FnOnce::call_once::hc9a84e58cd7ace0c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5b7e02d6a26b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x5b7e02d6a26b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   47:     0x5b7e02d7fed5 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   48:     0x5b7e02d7fed5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   49:     0x5b7e02d7fed5 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   50:     0x5b7e02d7fed5 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   51:     0x5b7e02d7fed5 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   52:     0x5b7e02d7fed5 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   53:     0x5b7e02d7fed5 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   54:     0x5b7e02d566c4 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   55:     0x5b7e02d566c4 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   56:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   57:     0x5b7e02d59f8a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   58:     0x5b7e02d59f8a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   59:     0x5b7e02d59f8a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   60:     0x5b7e02d59f8a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   61:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   62:     0x5b7e02d59f8a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   63:     0x5b7e0318b0cf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   64:     0x5b7e0318b0cf - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   65:     0x729b36866aa4 - <unknown>
[INFO] [stdout]   66:     0x729b368f3a34 - clone
[INFO] [stdout]   67:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- saasexpress_core_tests::test_graph_upgrade stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'saasexpress_core_tests::test_graph_upgrade' (32) panicked at src/operators/stub.rs:24:38:
[INFO] [stdout] called `Option::unwrap()` on a `None` value
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b7e031b7542 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b7e031b7542 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b7e031b7542 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5b7e031b7542 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5b7e031c9c4f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5b7e031c9c4f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5b7e031837b1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5b7e031837b1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5b7e0318ff52 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5b7e0319504f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5b7e03194ee1 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5b7e02d6a4ae - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5b7e02d6a4ae - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b7e031957bf - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5b7e031957bf - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5b7e03195536 - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:700:13
[INFO] [stdout]   16:     0x5b7e03190089 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5b7e03176f9d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5b7e031d3c20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5b7e031d3bfc - core::panicking::panic::h355c5fec13755e30
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:145:5
[INFO] [stdout]   20:     0x5b7e031d2d69 - core::option::unwrap_failed::h9039d211b71a576a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/option.rs:2169:5
[INFO] [stdout]   21:     0x5b7e02c518d9 - core::option::Option<T>::unwrap::h65d66ebbb1389894
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/option.rs:1010:21
[INFO] [stdout]   22:     0x5b7e02c518d9 - <saasexpress_core::operators::stub::Stub as core::convert::From<&serde_yaml::value::Value>>::from::h853e60044a2aed08
[INFO] [stdout]                                at /opt/rustwide/workdir/src/operators/stub.rs:24:38
[INFO] [stdout]   23:     0x5b7e02c699cf - saasexpress_core::operators::factory::add_node_to_graph::h80069b9716ae8ab4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/operators/factory.rs:86:38
[INFO] [stdout]   24:     0x5b7e02b7596e - saasexpress_core::build_graph::h1fb531dc6bde2bb1
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:36:9
[INFO] [stdout]   25:     0x5b7e02b8745d - saasexpress_core::saasexpress_core_tests::test_graph_upgrade::{{closure}}::h05dbe56388bc26f0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:565:17
[INFO] [stdout]   26:     0x5b7e02bfe7e2 - <core::pin::Pin<P> as core::future::future::Future>::poll::he827746a3284eb29
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   27:     0x5b7e02bfe25d - <core::pin::Pin<P> as core::future::future::Future>::poll::h1412433d425a1a25
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   28:     0x5b7e02d1fc5d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h1f7cef340cdb4c2c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   29:     0x5b7e02d1fa0b - tokio::task::coop::with_budget::h128074d483c8182a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   30:     0x5b7e02d1fa0b - tokio::task::coop::budget::h02008e2bce7c5d12
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   31:     0x5b7e02d1fa0b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h78d0db8691589150
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   32:     0x5b7e02d1d330 - tokio::runtime::scheduler::current_thread::Context::enter::hf5ea61da59f08ca6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   33:     0x5b7e02d1f0cd - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hd4f3dca45c46d284
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   34:     0x5b7e02d1e304 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::hea4b956a476f44df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   35:     0x5b7e02c9ce7b - tokio::runtime::context::scoped::Scoped<T>::set::h055bc29f5411b9d8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   36:     0x5b7e02cc9109 - tokio::runtime::context::set_scheduler::{{closure}}::h76f0a9c26f7be2b3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:38
[INFO] [stdout]   37:     0x5b7e02cbd0a2 - std::thread::local::LocalKey<T>::try_with::h60c9378534598024
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   38:     0x5b7e02cbaa4e - std::thread::local::LocalKey<T>::with::ha6bcaf0a6dc551a3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   39:     0x5b7e02cc907d - tokio::runtime::context::set_scheduler::h01f487bc29f3b74e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:17
[INFO] [stdout]   40:     0x5b7e02d1e090 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hfa9c3543a627e06b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   41:     0x5b7e02d1e323 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h5c7e21197d8f5241
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   42:     0x5b7e02d14350 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h473aeff23ae8809b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   43:     0x5b7e02d13580 - tokio::runtime::context::runtime::enter_runtime::h8febae1b823a3098
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   44:     0x5b7e02d14111 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h7af3973a09f830f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   45:     0x5b7e02bcd194 - tokio::runtime::runtime::Runtime::block_on_inner::hb8d8ebdcc7aeac62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:356:52
[INFO] [stdout]   46:     0x5b7e02bcd46c - tokio::runtime::runtime::Runtime::block_on::hf47e97651f9c3062
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   47:     0x5b7e02b86ce0 - saasexpress_core::saasexpress_core_tests::test_graph_upgrade::hc72ec518bca3be5e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:618:19
[INFO] [stdout]   48:     0x5b7e02b87c47 - saasexpress_core::saasexpress_core_tests::test_graph_upgrade::{{closure}}::h660d4313e5fe5a3e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:539:34
[INFO] [stdout]   49:     0x5b7e02c27e96 - core::ops::function::FnOnce::call_once::h08ea6de77c96a19b
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   50:     0x5b7e02d6a26b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   51:     0x5b7e02d6a26b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   52:     0x5b7e02d7fed5 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   53:     0x5b7e02d7fed5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   54:     0x5b7e02d7fed5 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   55:     0x5b7e02d7fed5 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   56:     0x5b7e02d7fed5 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   57:     0x5b7e02d7fed5 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   58:     0x5b7e02d7fed5 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   59:     0x5b7e02d566c4 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   60:     0x5b7e02d566c4 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   61:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   62:     0x5b7e02d59f8a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   63:     0x5b7e02d59f8a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   64:     0x5b7e02d59f8a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   65:     0x5b7e02d59f8a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   66:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   67:     0x5b7e02d59f8a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   68:     0x5b7e0318b0cf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   69:     0x5b7e0318b0cf - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   70:     0x729b36866aa4 - <unknown>
[INFO] [stdout]   71:     0x729b368f3a34 - clone
[INFO] [stdout]   72:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- saasexpress_core_tests::test_ai_agent stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'saasexpress_core_tests::test_ai_agent' (21) panicked at src/operators/stub.rs:24:38:
[INFO] [stdout] called `Option::unwrap()` on a `None` value
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b7e031b7542 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b7e031b7542 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b7e031b7542 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5b7e031b7542 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5b7e031c9c4f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5b7e031c9c4f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5b7e031837b1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5b7e031837b1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5b7e0318ff52 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5b7e0319504f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5b7e03194ee1 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5b7e02d6a4ae - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5b7e02d6a4ae - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b7e031957bf - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5b7e031957bf - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5b7e03195536 - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:700:13
[INFO] [stdout]   16:     0x5b7e03190089 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5b7e03176f9d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5b7e031d3c20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5b7e031d3bfc - core::panicking::panic::h355c5fec13755e30
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:145:5
[INFO] [stdout]   20:     0x5b7e031d2d69 - core::option::unwrap_failed::h9039d211b71a576a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/option.rs:2169:5
[INFO] [stdout]   21:     0x5b7e02c518d9 - core::option::Option<T>::unwrap::h65d66ebbb1389894
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/option.rs:1010:21
[INFO] [stdout]   22:     0x5b7e02c518d9 - <saasexpress_core::operators::stub::Stub as core::convert::From<&serde_yaml::value::Value>>::from::h853e60044a2aed08
[INFO] [stdout]                                at /opt/rustwide/workdir/src/operators/stub.rs:24:38
[INFO] [stdout]   23:     0x5b7e02c699cf - saasexpress_core::operators::factory::add_node_to_graph::h80069b9716ae8ab4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/operators/factory.rs:86:38
[INFO] [stdout]   24:     0x5b7e02b7596e - saasexpress_core::build_graph::h1fb531dc6bde2bb1
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:36:9
[INFO] [stdout]   25:     0x5b7e02b81733 - saasexpress_core::saasexpress_core_tests::test_ai_agent::{{closure}}::{{closure}}::he5ce60028ccce0e4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:857:26
[INFO] [stdout]   26:     0x5b7e02b80f39 - saasexpress_core::saasexpress_core_tests::test_ai_agent::{{closure}}::hbaf5e8d7b5956066
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:772:5
[INFO] [stdout]   27:     0x5b7e02bfe7e2 - <core::pin::Pin<P> as core::future::future::Future>::poll::he827746a3284eb29
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   28:     0x5b7e02d0c70d - tokio::runtime::park::CachedParkThread::block_on::{{closure}}::h94fec97826b164f9
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/park.rs:285:71
[INFO] [stdout]   29:     0x5b7e02d0c122 - tokio::task::coop::with_budget::hd4022414d68fb17d
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   30:     0x5b7e02d0c122 - tokio::task::coop::budget::h2487684f4958372a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   31:     0x5b7e02d0c122 - tokio::runtime::park::CachedParkThread::block_on::hd544b6e3150c1d59
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/park.rs:285:31
[INFO] [stdout]   32:     0x5b7e02cc94b4 - tokio::runtime::context::blocking::BlockingRegionGuard::block_on::h9531601a848630fd
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/blocking.rs:66:14
[INFO] [stdout]   33:     0x5b7e02cf9668 - tokio::runtime::scheduler::multi_thread::MultiThread::block_on::{{closure}}::h68ac3f9de8e85f7a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/multi_thread/mod.rs:87:22
[INFO] [stdout]   34:     0x5b7e02d13846 - tokio::runtime::context::runtime::enter_runtime::hd211065e3525e33a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   35:     0x5b7e02cf9634 - tokio::runtime::scheduler::multi_thread::MultiThread::block_on::hbe6d93b79cbc3bb6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/multi_thread/mod.rs:86:9
[INFO] [stdout]   36:     0x5b7e02bcd164 - tokio::runtime::runtime::Runtime::block_on_inner::hb8d8ebdcc7aeac62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:358:50
[INFO] [stdout]   37:     0x5b7e02bcd46c - tokio::runtime::runtime::Runtime::block_on::hf47e97651f9c3062
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   38:     0x5b7e02b8073f - saasexpress_core::saasexpress_core_tests::test_ai_agent::h4675aeff76e6939d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:772:5
[INFO] [stdout]   39:     0x5b7e02b807d7 - saasexpress_core::saasexpress_core_tests::test_ai_agent::{{closure}}::h732b795763a6c1b5
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:772:18
[INFO] [stdout]   40:     0x5b7e02c2b976 - core::ops::function::FnOnce::call_once::ha40f4997313c5e00
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x5b7e02d6a26b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5b7e02d6a26b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   43:     0x5b7e02d7fed5 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   44:     0x5b7e02d7fed5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   45:     0x5b7e02d7fed5 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   46:     0x5b7e02d7fed5 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   47:     0x5b7e02d7fed5 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   48:     0x5b7e02d7fed5 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   49:     0x5b7e02d7fed5 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   50:     0x5b7e02d566c4 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   51:     0x5b7e02d566c4 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   52:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   53:     0x5b7e02d59f8a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   54:     0x5b7e02d59f8a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   55:     0x5b7e02d59f8a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   56:     0x5b7e02d59f8a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   57:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   58:     0x5b7e02d59f8a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   59:     0x5b7e0318b0cf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   60:     0x5b7e0318b0cf - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   61:     0x729b36866aa4 - <unknown>
[INFO] [stdout]   62:     0x729b368f3a34 - clone
[INFO] [stdout]   63:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- saasexpress_core_tests::test_shared_resources stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'saasexpress_core_tests::test_shared_resources' (35) panicked at src/operators/stub.rs:24:38:
[INFO] [stdout] called `Option::unwrap()` on a `None` value
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5b7e031b7542 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5b7e031b7542 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5b7e031b7542 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5b7e031b7542 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5b7e031c9c4f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5b7e031c9c4f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5b7e031837b1 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5b7e031837b1 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5b7e0318ff52 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5b7e0319504f - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5b7e03194ee1 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5b7e02d6a4ae - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5b7e02d6a4ae - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5b7e031957bf - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5b7e031957bf - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5b7e03195536 - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:700:13
[INFO] [stdout]   16:     0x5b7e03190089 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5b7e03176f9d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5b7e031d3c20 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5b7e031d3bfc - core::panicking::panic::h355c5fec13755e30
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:145:5
[INFO] [stdout]   20:     0x5b7e031d2d69 - core::option::unwrap_failed::h9039d211b71a576a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/option.rs:2169:5
[INFO] [stdout]   21:     0x5b7e02c518d9 - core::option::Option<T>::unwrap::h65d66ebbb1389894
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/option.rs:1010:21
[INFO] [stdout]   22:     0x5b7e02c518d9 - <saasexpress_core::operators::stub::Stub as core::convert::From<&serde_yaml::value::Value>>::from::h853e60044a2aed08
[INFO] [stdout]                                at /opt/rustwide/workdir/src/operators/stub.rs:24:38
[INFO] [stdout]   23:     0x5b7e02c699cf - saasexpress_core::operators::factory::add_node_to_graph::h80069b9716ae8ab4
[INFO] [stdout]                                at /opt/rustwide/workdir/src/operators/factory.rs:86:38
[INFO] [stdout]   24:     0x5b7e02b7596e - saasexpress_core::build_graph::h1fb531dc6bde2bb1
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:36:9
[INFO] [stdout]   25:     0x5b7e02b895ff - saasexpress_core::saasexpress_core_tests::test_shared_resources::{{closure}}::h22e7694c4fb012ef
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:494:26
[INFO] [stdout]   26:     0x5b7e02bfe7e2 - <core::pin::Pin<P> as core::future::future::Future>::poll::he827746a3284eb29
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   27:     0x5b7e02bfe25d - <core::pin::Pin<P> as core::future::future::Future>::poll::h1412433d425a1a25
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/future/future.rs:133:9
[INFO] [stdout]   28:     0x5b7e02d1fc5d - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::{{closure}}::h1f7cef340cdb4c2c
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:70
[INFO] [stdout]   29:     0x5b7e02d1fa0b - tokio::task::coop::with_budget::h128074d483c8182a
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   30:     0x5b7e02d1fa0b - tokio::task::coop::budget::h02008e2bce7c5d12
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   31:     0x5b7e02d1fa0b - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::{{closure}}::h78d0db8691589150
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:742:25
[INFO] [stdout]   32:     0x5b7e02d1d330 - tokio::runtime::scheduler::current_thread::Context::enter::hf5ea61da59f08ca6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:432:19
[INFO] [stdout]   33:     0x5b7e02d1f0cd - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::{{closure}}::hd4f3dca45c46d284
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:741:44
[INFO] [stdout]   34:     0x5b7e02d1e304 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::{{closure}}::hea4b956a476f44df
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:68
[INFO] [stdout]   35:     0x5b7e02c9ce7b - tokio::runtime::context::scoped::Scoped<T>::set::h055bc29f5411b9d8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   36:     0x5b7e02cc9109 - tokio::runtime::context::set_scheduler::{{closure}}::h76f0a9c26f7be2b3
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:38
[INFO] [stdout]   37:     0x5b7e02cbd0a2 - std::thread::local::LocalKey<T>::try_with::h60c9378534598024
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:315:12
[INFO] [stdout]   38:     0x5b7e02cbaa4e - std::thread::local::LocalKey<T>::with::ha6bcaf0a6dc551a3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/local.rs:279:20
[INFO] [stdout]   39:     0x5b7e02cc907d - tokio::runtime::context::set_scheduler::h01f487bc29f3b74e
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context.rs:176:17
[INFO] [stdout]   40:     0x5b7e02d1e090 - tokio::runtime::scheduler::current_thread::CoreGuard::enter::hfa9c3543a627e06b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:829:27
[INFO] [stdout]   41:     0x5b7e02d1e323 - tokio::runtime::scheduler::current_thread::CoreGuard::block_on::h5c7e21197d8f5241
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:729:24
[INFO] [stdout]   42:     0x5b7e02d14350 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::{{closure}}::h473aeff23ae8809b
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   43:     0x5b7e02d13580 - tokio::runtime::context::runtime::enter_runtime::h8febae1b823a3098
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   44:     0x5b7e02d14111 - tokio::runtime::scheduler::current_thread::CurrentThread::block_on::h7af3973a09f830f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   45:     0x5b7e02bcd194 - tokio::runtime::runtime::Runtime::block_on_inner::hb8d8ebdcc7aeac62
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:356:52
[INFO] [stdout]   46:     0x5b7e02bcd46c - tokio::runtime::runtime::Runtime::block_on::hf47e97651f9c3062
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.46.1/src/runtime/runtime.rs:330:18
[INFO] [stdout]   47:     0x5b7e02b89250 - saasexpress_core::saasexpress_core_tests::test_shared_resources::ha6619e3e2d01e91c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:535:39
[INFO] [stdout]   48:     0x5b7e02b89d37 - saasexpress_core::saasexpress_core_tests::test_shared_resources::{{closure}}::h824d465927602a20
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:468:37
[INFO] [stdout]   49:     0x5b7e02c2a866 - core::ops::function::FnOnce::call_once::h7bdfe345a2a617db
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   50:     0x5b7e02d6a26b - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   51:     0x5b7e02d6a26b - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   52:     0x5b7e02d7fed5 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   53:     0x5b7e02d7fed5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   54:     0x5b7e02d7fed5 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   55:     0x5b7e02d7fed5 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   56:     0x5b7e02d7fed5 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   57:     0x5b7e02d7fed5 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   58:     0x5b7e02d7fed5 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   59:     0x5b7e02d566c4 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   60:     0x5b7e02d566c4 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   61:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   62:     0x5b7e02d59f8a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   63:     0x5b7e02d59f8a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   64:     0x5b7e02d59f8a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   65:     0x5b7e02d59f8a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   66:     0x5b7e02d59f8a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   67:     0x5b7e02d59f8a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   68:     0x5b7e0318b0cf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   69:     0x5b7e0318b0cf - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   70:     0x729b36866aa4 - <unknown>
[INFO] [stdout]   71:     0x729b368f3a34 - clone
[INFO] [stdout]   72:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     saasexpress_core_tests::buffertojson_works
[INFO] [stdout]     saasexpress_core_tests::claimcheck_works
[INFO] [stdout]     saasexpress_core_tests::shell_works
[INFO] [stdout]     saasexpress_core_tests::test_ai_agent
[INFO] [stdout]     saasexpress_core_tests::test_ai_tool
[INFO] [stdout]     saasexpress_core_tests::test_callout
[INFO] [stdout]     saasexpress_core_tests::test_canodamo_sample_ok
[INFO] [stdout]     saasexpress_core_tests::test_graph_upgrade
[INFO] [stdout]     saasexpress_core_tests::test_shared_resources
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 6 passed; 9 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "54f638102d730ab9f1fc50e79080b182e593c4ea5332aa0e8c3d3defe7d79a50", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "54f638102d730ab9f1fc50e79080b182e593c4ea5332aa0e8c3d3defe7d79a50", kill_on_drop: false }`
[INFO] [stdout] 54f638102d730ab9f1fc50e79080b182e593c4ea5332aa0e8c3d3defe7d79a50
