[INFO] cloning repository https://github.com/Kemboi14/chronosforge
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Kemboi14/chronosforge" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKemboi14%2Fchronosforge", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKemboi14%2Fchronosforge'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 72e49c9c9fb5da283d898796afad703667225b7c
[INFO] checking Kemboi14/chronosforge/72e49c9c9fb5da283d898796afad703667225b7c against da86f4d0726be475afbbffe40cb2f65741c51ad3 for pr-159877
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKemboi14%2Fchronosforge" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  48% (1768/3643)
Updating files:  49% (1786/3643)
Updating files:  50% (1822/3643)
Updating files:  51% (1858/3643)
Updating files:  52% (1895/3643)
Updating files:  53% (1931/3643)
Updating files:  54% (1968/3643)
Updating files:  55% (2004/3643)
Updating files:  56% (2041/3643)
Updating files:  57% (2077/3643)
Updating files:  58% (2113/3643)
Updating files:  59% (2150/3643)
Updating files:  59% (2181/3643)
Updating files:  60% (2186/3643)
Updating files:  61% (2223/3643)
Updating files:  62% (2259/3643)
Updating files:  62% (2291/3643)
Updating files:  63% (2296/3643)
Updating files:  64% (2332/3643)
Updating files:  65% (2368/3643)
Updating files:  65% (2390/3643)
Updating files:  66% (2405/3643)
Updating files:  67% (2441/3643)
Updating files:  68% (2478/3643)
Updating files:  68% (2494/3643)
Updating files:  69% (2514/3643)
Updating files:  70% (2551/3643)
Updating files:  71% (2587/3643)
Updating files:  71% (2589/3643)
Updating files:  72% (2623/3643)
Updating files:  73% (2660/3643)
Updating files:  74% (2696/3643)
Updating files:  75% (2733/3643)
Updating files:  76% (2769/3643)
Updating files:  77% (2806/3643)
Updating files:  78% (2842/3643)
Updating files:  79% (2878/3643)
Updating files:  80% (2915/3643)
Updating files:  81% (2951/3643)
Updating files:  82% (2988/3643)
Updating files:  83% (3024/3643)
Updating files:  84% (3061/3643)
Updating files:  85% (3097/3643)
Updating files:  86% (3133/3643)
Updating files:  87% (3170/3643)
Updating files:  88% (3206/3643)
Updating files:  89% (3243/3643)
Updating files:  90% (3279/3643)
Updating files:  91% (3316/3643)
Updating files:  92% (3352/3643)
Updating files:  93% (3388/3643)
Updating files:  94% (3425/3643)
Updating files:  95% (3461/3643)
Updating files:  96% (3498/3643)
Updating files:  97% (3534/3643)
Updating files:  98% (3571/3643)
Updating files:  99% (3607/3643)
Updating files: 100% (3643/3643)
Updating files: 100% (3643/3643), done.
[INFO] started tweaking git repo https://github.com/Kemboi14/chronosforge
[INFO] finished tweaking git repo https://github.com/Kemboi14/chronosforge
[INFO] tweaked toml for git repo https://github.com/Kemboi14/chronosforge written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Kemboi14/chronosforge on toolchain da86f4d0726be475afbbffe40cb2f65741c51ad3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da86f4d0726be475afbbffe40cb2f65741c51ad3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Kemboi14/chronosforge 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" "+da86f4d0726be475afbbffe40cb2f65741c51ad3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rsa v0.9.9
[INFO] [stderr]   Downloaded base64ct v1.8.2
[INFO] [stderr]   Downloaded zmij v1.0.10
[INFO] [stderr]   Downloaded syn v2.0.113
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1fa6594d87c8fa7b311925a7a77a16f539833322d9dfba4ce891f211db2f90b1" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8d792fc8ec8b023e0cab20ed36baacb98dea69bda518bc157fd37e8c24a02ce1
[INFO] running `Command { std: "docker" "start" "8d792fc8ec8b023e0cab20ed36baacb98dea69bda518bc157fd37e8c24a02ce1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8d792fc8ec8b023e0cab20ed36baacb98dea69bda518bc157fd37e8c24a02ce1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8d792fc8ec8b023e0cab20ed36baacb98dea69bda518bc157fd37e8c24a02ce1" "/opt/rustwide/cargo-home/bin/cargo" "+da86f4d0726be475afbbffe40cb2f65741c51ad3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8d792fc8ec8b023e0cab20ed36baacb98dea69bda518bc157fd37e8c24a02ce1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8d792fc8ec8b023e0cab20ed36baacb98dea69bda518bc157fd37e8c24a02ce1" "/opt/rustwide/cargo-home/bin/cargo" "+da86f4d0726be475afbbffe40cb2f65741c51ad3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.104
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling libc v0.2.179
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling find-msvc-tools v0.1.6
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling zmij v1.0.10
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde_json v1.0.148
[INFO] [stderr]     Checking indexmap v2.12.1
[INFO] [stderr]    Compiling litemap v0.8.1
[INFO] [stderr]    Compiling writeable v0.6.2
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling rustls v0.23.35
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling rustls-pki-types v1.13.2
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling cc v1.2.51
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling syn v2.0.113
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling bytes v1.11.0
[INFO] [stderr]    Compiling slab v0.4.11
[INFO] [stderr]    Compiling webpki-roots v1.0.5
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling crc-catalog v2.4.0
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling iana-time-zone v0.1.64
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling pest v2.8.5
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling crc v3.4.0
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling ryu v1.0.22
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling uuid v1.19.0
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking const-random v0.1.18
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]     Checking openssl-probe v0.1.6
[INFO] [stderr]    Compiling pest_meta v2.8.5
[INFO] [stderr]     Checking dlv-list v0.5.2
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking ordered-multimap v0.7.3
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]     Checking arraydeque v0.5.1
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking rust-ini v0.20.0
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking yaml-rust2 v0.8.1
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]     Checking convert_case v0.6.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling pest_generator v2.8.5
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling pest_derive v2.8.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]     Checking rustls-webpki v0.103.8
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking tower-http v0.5.2
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking json5 v0.4.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking cron v0.12.1
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking config v0.14.1
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking sqlx-core v0.8.6
[INFO] [stderr]     Checking tokio-test v0.4.5
[INFO] [stderr]     Checking sqlx-sqlite v0.8.6
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking hyper-util v0.1.19
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking chronosforge v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `crate::api::routes::CreateJobPath`
[INFO] [stdout]  --> src/api/handlers.rs:3:36
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::api::routes::{AppState, CreateJobPath, JobPath, JobQuery};
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^ no `CreateJobPath` in `api::routes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::api::routes::CreateJobPath`
[INFO] [stdout]  --> src/api/handlers.rs:3:36
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::api::routes::{AppState, CreateJobPath, JobPath, JobQuery};
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^ no `CreateJobPath` in `api::routes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:160:41
[INFO] [stdout]     |
[INFO] [stdout] 160 |     pub async fn get_job(&self, job_id: Uuid) -> Result<Option<Job>> {
[INFO] [stdout]     |                                         ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:256:44
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub async fn delete_job(&self, job_id: Uuid) -> Result<()> {
[INFO] [stdout]     |                                            ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:323:47
[INFO] [stdout]     |
[INFO] [stdout] 323 |     pub async fn get_worker(&self, worker_id: Uuid) -> Result<Option<Worker>> {
[INFO] [stdout]     |                                               ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:441:52
[INFO] [stdout]     |
[INFO] [stdout] 441 |     pub async fn get_job_executions(&self, job_id: Uuid, limit: i64) -> Result<Vec<JobExecution>> {
[INFO] [stdout]     |                                                    ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:475:17
[INFO] [stdout]     |
[INFO] [stdout] 475 |             id: Uuid::parse_str(&row.get::<String, _>("id"))?,
[INFO] [stdout]     |                 ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:496:17
[INFO] [stdout]     |
[INFO] [stdout] 496 |             id: Uuid::parse_str(&row.get::<String, _>("id"))?,
[INFO] [stdout]     |                 ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:512:17
[INFO] [stdout]     |
[INFO] [stdout] 512 |             id: Uuid::parse_str(&row.get::<String, _>("id"))?,
[INFO] [stdout]     |                 ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:513:21
[INFO] [stdout]     |
[INFO] [stdout] 513 |             job_id: Uuid::parse_str(&row.get::<String, _>("job_id"))?,
[INFO] [stdout]     |                     ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:514:24
[INFO] [stdout]     |
[INFO] [stdout] 514 |             worker_id: Uuid::parse_str(&row.get::<String, _>("worker_id"))?,
[INFO] [stdout]     |                        ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:160:41
[INFO] [stdout]     |
[INFO] [stdout] 160 |     pub async fn get_job(&self, job_id: Uuid) -> Result<Option<Job>> {
[INFO] [stdout]     |                                         ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:256:44
[INFO] [stdout]     |
[INFO] [stdout] 256 |     pub async fn delete_job(&self, job_id: Uuid) -> Result<()> {
[INFO] [stdout]     |                                            ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]   --> src/api/handlers.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use uuid::Uuid;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ApiConfig`
[INFO] [stdout]  --> src/api/server.rs:4:37
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::common::config::{Config, ApiConfig};
[INFO] [stdout]   |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `axum::Router`
[INFO] [stdout]  --> src/api/server.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use axum::Router;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:323:47
[INFO] [stdout]     |
[INFO] [stdout] 323 |     pub async fn get_worker(&self, worker_id: Uuid) -> Result<Option<Worker>> {
[INFO] [stdout]     |                                               ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/api/server.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tracing::{error, info};
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Timelike`
[INFO] [stdout]  --> src/scheduler/cron_utils.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use chrono::{DateTime, Utc, Timelike};
[INFO] [stdout]   |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Config`
[INFO] [stdout]  --> src/worker/core.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::common::config::{Config, WorkerConfig};
[INFO] [stdout]   |                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:441:52
[INFO] [stdout]     |
[INFO] [stdout] 441 |     pub async fn get_job_executions(&self, job_id: Uuid, limit: i64) -> Result<Vec<JobExecution>> {
[INFO] [stdout]     |                                                    ^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChronosForgeError`
[INFO] [stdout]  --> src/worker/heartbeat.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::common::error::{ChronosForgeError, Result};
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/worker/heartbeat.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/worker/heartbeat.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChronosForgeError`
[INFO] [stdout]  --> src/storage/database.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::common::error::{ChronosForgeError, Result};
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/storage/database.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error, info};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:475:17
[INFO] [stdout]     |
[INFO] [stdout] 475 |             id: Uuid::parse_str(&row.get::<String, _>("id"))?,
[INFO] [stdout]     |                 ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/common/types.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:496:17
[INFO] [stdout]     |
[INFO] [stdout] 496 |             id: Uuid::parse_str(&row.get::<String, _>("id"))?,
[INFO] [stdout]     |                 ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:512:17
[INFO] [stdout]     |
[INFO] [stdout] 512 |             id: Uuid::parse_str(&row.get::<String, _>("id"))?,
[INFO] [stdout]     |                 ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:513:21
[INFO] [stdout]     |
[INFO] [stdout] 513 |             job_id: Uuid::parse_str(&row.get::<String, _>("job_id"))?,
[INFO] [stdout]     |                     ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: cannot find type `Uuid` in this scope
[INFO] [stdout]    --> src/storage/database.rs:514:24
[INFO] [stdout]     |
[INFO] [stdout] 514 |             worker_id: Uuid::parse_str(&row.get::<String, _>("worker_id"))?,
[INFO] [stdout]     |                        ^^^^ use of undeclared type `Uuid`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]   3 + use sqlx::types::Uuid;
[INFO] [stdout]     |
[INFO] [stdout]   3 + use uuid::Uuid;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `uuid::Uuid`
[INFO] [stdout]   --> src/api/handlers.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use uuid::Uuid;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ApiConfig`
[INFO] [stdout]  --> src/api/server.rs:4:37
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::common::config::{Config, ApiConfig};
[INFO] [stdout]   |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `axum::Router`
[INFO] [stdout]  --> src/api/server.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use axum::Router;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/api/server.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tracing::{error, info};
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Timelike`
[INFO] [stdout]  --> src/scheduler/cron_utils.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use chrono::{DateTime, Utc, Timelike};
[INFO] [stdout]   |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Config`
[INFO] [stdout]  --> src/worker/core.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::common::config::{Config, WorkerConfig};
[INFO] [stdout]   |                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChronosForgeError`
[INFO] [stdout]  --> src/worker/heartbeat.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::common::error::{ChronosForgeError, Result};
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/worker/heartbeat.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/worker/heartbeat.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tracing::{debug, error, info, warn};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChronosForgeError`
[INFO] [stdout]  --> src/storage/database.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::common::error::{ChronosForgeError, Result};
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/storage/database.rs:9:22
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::{debug, error, info};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/common/types.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 19 | ) -> Result<Json<Job>, StatusCode> {
[INFO] [stdout]    |      ^^^^^^          ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:38:6
[INFO] [stdout]    |
[INFO] [stdout] 38 | ) -> Result<Json<Job>, StatusCode> {
[INFO] [stdout]    |      ^^^^^^          ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:55:6
[INFO] [stdout]    |
[INFO] [stdout] 55 | ) -> Result<Json<JobListResponse>, StatusCode> {
[INFO] [stdout]    |      ^^^^^^                      ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:75:6
[INFO] [stdout]    |
[INFO] [stdout] 75 | ) -> Result<Json<Job>, StatusCode> {
[INFO] [stdout]    |      ^^^^^^          ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:94:6
[INFO] [stdout]    |
[INFO] [stdout] 94 | ) -> Result<StatusCode, StatusCode> {
[INFO] [stdout]    |      ^^^^^^           ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]    --> src/api/handlers.rs:113:6
[INFO] [stdout]     |
[INFO] [stdout] 113 | ) -> Result<Json<Job>, StatusCode> {
[INFO] [stdout]     |      ^^^^^^          ------------ help: remove the unnecessary generic argument
[INFO] [stdout]     |      |
[INFO] [stdout]     |      expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]    --> src/common/error.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]     |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]    --> src/api/handlers.rs:133:6
[INFO] [stdout]     |
[INFO] [stdout] 133 | ) -> Result<Json<Vec<JobExecution>>, StatusCode> {
[INFO] [stdout]     |      ^^^^^^                        ------------ help: remove the unnecessary generic argument
[INFO] [stdout]     |      |
[INFO] [stdout]     |      expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]    --> src/common/error.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]     |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]    --> src/api/handlers.rs:159:6
[INFO] [stdout]     |
[INFO] [stdout] 159 | ) -> Result<Json<Value>, StatusCode> {
[INFO] [stdout]     |      ^^^^^^            ------------ help: remove the unnecessary generic argument
[INFO] [stdout]     |      |
[INFO] [stdout]     |      expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]    --> src/common/error.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]     |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 19 | ) -> Result<Json<Job>, StatusCode> {
[INFO] [stdout]    |      ^^^^^^          ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:38:6
[INFO] [stdout]    |
[INFO] [stdout] 38 | ) -> Result<Json<Job>, StatusCode> {
[INFO] [stdout]    |      ^^^^^^          ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:55:6
[INFO] [stdout]    |
[INFO] [stdout] 55 | ) -> Result<Json<JobListResponse>, StatusCode> {
[INFO] [stdout]    |      ^^^^^^                      ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:75:6
[INFO] [stdout]    |
[INFO] [stdout] 75 | ) -> Result<Json<Job>, StatusCode> {
[INFO] [stdout]    |      ^^^^^^          ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]   --> src/api/handlers.rs:94:6
[INFO] [stdout]    |
[INFO] [stdout] 94 | ) -> Result<StatusCode, StatusCode> {
[INFO] [stdout]    |      ^^^^^^           ------------ help: remove the unnecessary generic argument
[INFO] [stdout]    |      |
[INFO] [stdout]    |      expected 1 generic argument
[INFO] [stdout]    |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]   --> src/common/error.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]    |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]    --> src/api/handlers.rs:113:6
[INFO] [stdout]     |
[INFO] [stdout] 113 | ) -> Result<Json<Job>, StatusCode> {
[INFO] [stdout]     |      ^^^^^^          ------------ help: remove the unnecessary generic argument
[INFO] [stdout]     |      |
[INFO] [stdout]     |      expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]    --> src/common/error.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]     |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]    --> src/api/handlers.rs:133:6
[INFO] [stdout]     |
[INFO] [stdout] 133 | ) -> Result<Json<Vec<JobExecution>>, StatusCode> {
[INFO] [stdout]     |      ^^^^^^                        ------------ help: remove the unnecessary generic argument
[INFO] [stdout]     |      |
[INFO] [stdout]     |      expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]    --> src/common/error.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]     |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: type alias takes 1 generic argument but 2 generic arguments were supplied
[INFO] [stdout]    --> src/api/handlers.rs:159:6
[INFO] [stdout]     |
[INFO] [stdout] 159 | ) -> Result<Json<Value>, StatusCode> {
[INFO] [stdout]     |      ^^^^^^            ------------ help: remove the unnecessary generic argument
[INFO] [stdout]     |      |
[INFO] [stdout]     |      expected 1 generic argument
[INFO] [stdout]     |
[INFO] [stdout] note: type alias defined here, with 1 generic parameter: `T`
[INFO] [stdout]    --> src/common/error.rs:42:10
[INFO] [stdout]     |
[INFO] [stdout]  42 | pub type Result<T> = std::result::Result<T, ChronosForgeError>;
[INFO] [stdout]     |          ^^^^^^ -
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |             |
[INFO] [stdout]    |             arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             ^^^^-----------------------^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |             |
[INFO] [stdout]    |             arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             ^^^^-----------------------^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:43:25
[INFO] [stdout]    |
[INFO] [stdout] 43 |         Ok(None) => Err(StatusCode::NOT_FOUND),
[INFO] [stdout]    |                     --- ^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |         Ok(None) => Err(StatusCode::NOT_FOUND),
[INFO] [stdout]    |                     ^^^^---------------------^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |             |
[INFO] [stdout]    |             arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             ^^^^-----------------------^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:43:25
[INFO] [stdout]    |
[INFO] [stdout] 43 |         Ok(None) => Err(StatusCode::NOT_FOUND),
[INFO] [stdout]    |                     --- ^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |         Ok(None) => Err(StatusCode::NOT_FOUND),
[INFO] [stdout]    |                     ^^^^---------------------^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |             |
[INFO] [stdout]    |             arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             ^^^^-----------------------^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `std::option::Option<u64>` doesn't implement `std::fmt::Display`
[INFO] [stdout]   --> src/api/handlers.rs:56:50
[INFO] [stdout]    |
[INFO] [stdout] 56 |     debug!("Listing jobs: page={}, per_page={}", query.page, query.per_page);
[INFO] [stdout]    |                                --                ^^^^^^^^^^ `std::option::Option<u64>` cannot be formatted with the default formatter
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                required by this formatting parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `std::fmt::Display` is not implemented for `std::option::Option<u64>`
[INFO] [stdout]    = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout]    = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `std::option::Option<u64>` doesn't implement `std::fmt::Display`
[INFO] [stdout]   --> src/api/handlers.rs:56:50
[INFO] [stdout]    |
[INFO] [stdout] 56 |     debug!("Listing jobs: page={}, per_page={}", query.page, query.per_page);
[INFO] [stdout]    |                                --                ^^^^^^^^^^ `std::option::Option<u64>` cannot be formatted with the default formatter
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                required by this formatting parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `std::fmt::Display` is not implemented for `std::option::Option<u64>`
[INFO] [stdout]    = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout]    = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `std::option::Option<u64>` doesn't implement `std::fmt::Display`
[INFO] [stdout]   --> src/api/handlers.rs:56:50
[INFO] [stdout]    |
[INFO] [stdout] 56 |     debug!("Listing jobs: page={}, per_page={}", query.page, query.per_page);
[INFO] [stdout]    |                                --                ^^^^^^^^^^ `std::option::Option<u64>` cannot be formatted with the default formatter
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                required by this formatting parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `std::fmt::Display` is not implemented for `std::option::Option<u64>`
[INFO] [stdout]    = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout]    = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `std::option::Option<u64>` doesn't implement `std::fmt::Display`
[INFO] [stdout]   --> src/api/handlers.rs:56:50
[INFO] [stdout]    |
[INFO] [stdout] 56 |     debug!("Listing jobs: page={}, per_page={}", query.page, query.per_page);
[INFO] [stdout]    |                                --                ^^^^^^^^^^ `std::option::Option<u64>` cannot be formatted with the default formatter
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                required by this formatting parameter
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `std::fmt::Display` is not implemented for `std::option::Option<u64>`
[INFO] [stdout]    = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stdout]    = note: this error originates in the macro `$crate::__macro_support::format_args` which comes from the expansion of the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:65:17
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |             |
[INFO] [stdout]    |             arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             ^^^^-----------------------^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:65:17
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |             |
[INFO] [stdout]    |             arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             ^^^^-----------------------^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:85:17
[INFO] [stdout]    |
[INFO] [stdout] 85 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |             |
[INFO] [stdout]    |             arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             ^^^^-----------------------^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/api/handlers.rs:85:17
[INFO] [stdout]    |
[INFO] [stdout] 85 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]    |             |
[INFO] [stdout]    |             arguments to this enum variant are incorrect
[INFO] [stdout]    |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]   --> src/api/handlers.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |             Err(map_error_to_status(&e))
[INFO] [stdout]    |             ^^^^-----------------------^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/api/handlers.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout] 104 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]    --> src/api/handlers.rs:104:13
[INFO] [stdout]     |
[INFO] [stdout] 104 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             ^^^^-----------------------^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/api/handlers.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout] 104 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]    --> src/api/handlers.rs:104:13
[INFO] [stdout]     |
[INFO] [stdout] 104 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             ^^^^-----------------------^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/api/handlers.rs:123:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]    --> src/api/handlers.rs:123:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             ^^^^-----------------------^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/api/handlers.rs:123:17
[INFO] [stdout]     |
[INFO] [stdout] 123 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]    --> src/api/handlers.rs:123:13
[INFO] [stdout]     |
[INFO] [stdout] 123 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             ^^^^-----------------------^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/api/handlers.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]    --> src/api/handlers.rs:142:13
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             ^^^^-----------------------^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/api/handlers.rs:142:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             --- ^^^^^^^^^^^^^^^^^^^^^^^ expected `ChronosForgeError`, found `StatusCode`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this enum variant are incorrect
[INFO] [stdout]     |
[INFO] [stdout] help: the type constructed contains `reqwest::StatusCode` due to the type of the argument passed
[INFO] [stdout]    --> src/api/handlers.rs:142:13
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Err(map_error_to_status(&e))
[INFO] [stdout]     |             ^^^^-----------------------^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this argument influences the type of `Err`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]    --> /rustc/da86f4d0726be475afbbffe40cb2f65741c51ad3/library/core/src/result.rs:566:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `id`
[INFO] [stdout]   --> src/worker/core.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |             id: self.get_worker_id(),
[INFO] [stdout]    |             ^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `name`
[INFO] [stdout]   --> src/worker/core.rs:75:13
[INFO] [stdout]    |
[INFO] [stdout] 75 |             name: self.config.name.clone(),
[INFO] [stdout]    |             ^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `endpoint`
[INFO] [stdout]   --> src/worker/core.rs:76:13
[INFO] [stdout]    |
[INFO] [stdout] 76 |             endpoint: self.config.endpoint.clone(),
[INFO] [stdout]    |             ^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `status`
[INFO] [stdout]   --> src/worker/core.rs:77:13
[INFO] [stdout]    |
[INFO] [stdout] 77 |             status: WorkerStatus::Online,
[INFO] [stdout]    |             ^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `capabilities`
[INFO] [stdout]   --> src/worker/core.rs:78:13
[INFO] [stdout]    |
[INFO] [stdout] 78 |             capabilities: self.config.capabilities.clone(),
[INFO] [stdout]    |             ^^^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `last_heartbeat`
[INFO] [stdout]   --> src/worker/core.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             last_heartbeat: Utc::now(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `current_jobs`
[INFO] [stdout]   --> src/worker/core.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |             current_jobs: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `max_concurrent_jobs`
[INFO] [stdout]   --> src/worker/core.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |             max_concurrent_jobs: self.config.max_concurrent_jobs,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `created_at`
[INFO] [stdout]   --> src/worker/core.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |             created_at: Utc::now(),
[INFO] [stdout]    |             ^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `worker::core::Worker`
[INFO] [stdout]   --> src/worker/core.rs:87:65
[INFO] [stdout]    |
[INFO] [stdout] 87 |         info!("Worker registered successfully: {}", worker_info.id);
[INFO] [stdout]    |                                                                 ^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `id`
[INFO] [stdout]   --> src/worker/core.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |             id: self.get_worker_id(),
[INFO] [stdout]    |             ^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `name`
[INFO] [stdout]   --> src/worker/core.rs:75:13
[INFO] [stdout]    |
[INFO] [stdout] 75 |             name: self.config.name.clone(),
[INFO] [stdout]    |             ^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `endpoint`
[INFO] [stdout]   --> src/worker/core.rs:76:13
[INFO] [stdout]    |
[INFO] [stdout] 76 |             endpoint: self.config.endpoint.clone(),
[INFO] [stdout]    |             ^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `status`
[INFO] [stdout]   --> src/worker/core.rs:77:13
[INFO] [stdout]    |
[INFO] [stdout] 77 |             status: WorkerStatus::Online,
[INFO] [stdout]    |             ^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `capabilities`
[INFO] [stdout]   --> src/worker/core.rs:78:13
[INFO] [stdout]    |
[INFO] [stdout] 78 |             capabilities: self.config.capabilities.clone(),
[INFO] [stdout]    |             ^^^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `last_heartbeat`
[INFO] [stdout]   --> src/worker/core.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             last_heartbeat: Utc::now(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `current_jobs`
[INFO] [stdout]   --> src/worker/core.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |             current_jobs: 0,
[INFO] [stdout]    |             ^^^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `max_concurrent_jobs`
[INFO] [stdout]   --> src/worker/core.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |             max_concurrent_jobs: self.config.max_concurrent_jobs,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0560]: struct `worker::core::Worker` has no field named `created_at`
[INFO] [stdout]   --> src/worker/core.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |             created_at: Utc::now(),
[INFO] [stdout]    |             ^^^^^^^^^^ `worker::core::Worker` does not have this field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `id` on type `worker::core::Worker`
[INFO] [stdout]   --> src/worker/core.rs:87:65
[INFO] [stdout]    |
[INFO] [stdout] 87 |         info!("Worker registered successfully: {}", worker_info.id);
[INFO] [stdout]    |                                                                 ^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `config`, `executor`, `heartbeat_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Json<_>) -> _ {create_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:45:30
[INFO] [stdout]      |
[INFO] [stdout]   45 |         .route("/jobs", post(handlers::create_job))
[INFO] [stdout]      |                         ---- ^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Json<CreateJobRequest>) -> _ {create_job}`
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `post`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `post`
[INFO] [stdout] ...
[INFO] [stdout]  443 | top_level_handler_fn!(post, POST);
[INFO] [stdout]      | ---------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-4b93917e3c551a49.long-type-5127832473524948930.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Query<JobQuery>) -> _ {list_jobs}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:46:29
[INFO] [stdout]      |
[INFO] [stdout]   46 |         .route("/jobs", get(handlers::list_jobs))
[INFO] [stdout]      |                         --- ^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Query<JobQuery>) -> _ {list_jobs}`
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `axum::routing::get`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `get`
[INFO] [stdout] ...
[INFO] [stdout]  439 | top_level_handler_fn!(get, GET);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-4b93917e3c551a49.long-type-17636380448133535012.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Path<JobPath>) -> _ {get_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:47:37
[INFO] [stdout]      |
[INFO] [stdout]   47 |         .route("/jobs/:job_id", get(handlers::get_job))
[INFO] [stdout]      |                                 --- ^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>) -> _ {get_job}`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `axum::routing::get`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `get`
[INFO] [stdout] ...
[INFO] [stdout]  439 | top_level_handler_fn!(get, GET);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-4b93917e3c551a49.long-type-3413490716956385702.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Path<_>, Json<_>) -> _ {update_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:48:37
[INFO] [stdout]      |
[INFO] [stdout]   48 |         .route("/jobs/:job_id", put(handlers::update_job))
[INFO] [stdout]      |                                 --- ^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>, Json<_>) -> _ {update_job}`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `put`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `put`
[INFO] [stdout] ...
[INFO] [stdout]  444 | top_level_handler_fn!(put, PUT);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-4b93917e3c551a49.long-type-8650497263967357332.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Path<JobPath>) -> _ {delete_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:49:40
[INFO] [stdout]      |
[INFO] [stdout]   49 |         .route("/jobs/:job_id", delete(handlers::delete_job))
[INFO] [stdout]      |                                 ------ ^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>) -> _ {delete_job}`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `delete`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `delete`
[INFO] [stdout] ...
[INFO] [stdout]  438 | top_level_handler_fn!(delete, DELETE);
[INFO] [stdout]      | -------------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-4b93917e3c551a49.long-type-7393819972323619354.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Path<JobPath>) -> _ {retry_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:50:44
[INFO] [stdout]      |
[INFO] [stdout]   50 |         .route("/jobs/:job_id/retry", post(handlers::retry_job))
[INFO] [stdout]      |                                       ---- ^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>) -> _ {retry_job}`
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `post`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `post`
[INFO] [stdout] ...
[INFO] [stdout]  443 | top_level_handler_fn!(post, POST);
[INFO] [stdout]      | ---------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-4b93917e3c551a49.long-type-14077525959887147494.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<_>, Path<_>, Query<_>) -> _ {get_job_executions}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:51:48
[INFO] [stdout]      |
[INFO] [stdout]   51 |         .route("/jobs/:job_id/executions", get(handlers::get_job_executions))
[INFO] [stdout]      |                                            --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>, Query<_>) -> _ {get_job_executions}`
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `axum::routing::get`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `get`
[INFO] [stdout] ...
[INFO] [stdout]  439 | top_level_handler_fn!(get, GET);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-4b93917e3c551a49.long-type-16245649446347431801.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>) -> _ {get_metrics}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:55:32
[INFO] [stdout]      |
[INFO] [stdout]   55 |         .route("/metrics", get(handlers::get_metrics))
[INFO] [stdout]      |                            --- ^^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>) -> impl Future<Output = _> {get_metrics}`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `axum::routing::get`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `get`
[INFO] [stdout] ...
[INFO] [stdout]  439 | top_level_handler_fn!(get, GET);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-4b93917e3c551a49.long-type-9073494448277643493.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Json<_>) -> _ {create_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:45:30
[INFO] [stdout]      |
[INFO] [stdout]   45 |         .route("/jobs", post(handlers::create_job))
[INFO] [stdout]      |                         ---- ^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Json<CreateJobRequest>) -> _ {create_job}`
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `post`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `post`
[INFO] [stdout] ...
[INFO] [stdout]  443 | top_level_handler_fn!(post, POST);
[INFO] [stdout]      | ---------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-b3c1f24d3df5b525.long-type-15017684672440972789.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Query<JobQuery>) -> _ {list_jobs}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:46:29
[INFO] [stdout]      |
[INFO] [stdout]   46 |         .route("/jobs", get(handlers::list_jobs))
[INFO] [stdout]      |                         --- ^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Query<JobQuery>) -> _ {list_jobs}`
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `axum::routing::get`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `get`
[INFO] [stdout] ...
[INFO] [stdout]  439 | top_level_handler_fn!(get, GET);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-b3c1f24d3df5b525.long-type-2972380469303636998.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Path<JobPath>) -> _ {get_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:47:37
[INFO] [stdout]      |
[INFO] [stdout]   47 |         .route("/jobs/:job_id", get(handlers::get_job))
[INFO] [stdout]      |                                 --- ^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>) -> _ {get_job}`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `axum::routing::get`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `get`
[INFO] [stdout] ...
[INFO] [stdout]  439 | top_level_handler_fn!(get, GET);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-b3c1f24d3df5b525.long-type-18363721971719465783.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Path<_>, Json<_>) -> _ {update_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:48:37
[INFO] [stdout]      |
[INFO] [stdout]   48 |         .route("/jobs/:job_id", put(handlers::update_job))
[INFO] [stdout]      |                                 --- ^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>, Json<_>) -> _ {update_job}`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `put`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `put`
[INFO] [stdout] ...
[INFO] [stdout]  444 | top_level_handler_fn!(put, PUT);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-b3c1f24d3df5b525.long-type-3443444105703619856.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Path<JobPath>) -> _ {delete_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:49:40
[INFO] [stdout]      |
[INFO] [stdout]   49 |         .route("/jobs/:job_id", delete(handlers::delete_job))
[INFO] [stdout]      |                                 ------ ^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>) -> _ {delete_job}`
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `delete`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `delete`
[INFO] [stdout] ...
[INFO] [stdout]  438 | top_level_handler_fn!(delete, DELETE);
[INFO] [stdout]      | -------------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-b3c1f24d3df5b525.long-type-4934840834110126574.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>, Path<JobPath>) -> _ {retry_job}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:50:44
[INFO] [stdout]      |
[INFO] [stdout]   50 |         .route("/jobs/:job_id/retry", post(handlers::retry_job))
[INFO] [stdout]      |                                       ---- ^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>) -> _ {retry_job}`
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `post`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `post`
[INFO] [stdout] ...
[INFO] [stdout]  443 | top_level_handler_fn!(post, POST);
[INFO] [stdout]      | ---------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-b3c1f24d3df5b525.long-type-11510377779145290111.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<_>, Path<_>, Query<_>) -> _ {get_job_executions}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:51:48
[INFO] [stdout]      |
[INFO] [stdout]   51 |         .route("/jobs/:job_id/executions", get(handlers::get_job_executions))
[INFO] [stdout]      |                                            --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>, Path<JobPath>, Query<_>) -> _ {get_job_executions}`
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `axum::routing::get`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `get`
[INFO] [stdout] ...
[INFO] [stdout]  439 | top_level_handler_fn!(get, GET);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-b3c1f24d3df5b525.long-type-4261814917563986553.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `fn(State<AppState>) -> _ {get_metrics}: Handler<_, _>` is not satisfied
[INFO] [stdout]     --> src/api/routes.rs:55:32
[INFO] [stdout]      |
[INFO] [stdout]   55 |         .route("/metrics", get(handlers::get_metrics))
[INFO] [stdout]      |                            --- ^^^^^^^^^^^^^^^^^^^^^ the trait `Handler<_, _>` is not implemented for fn item `fn(State<AppState>) -> impl Future<Output = _> {get_metrics}`
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout]      = note: Consider using `#[axum::debug_handler]` to improve the error message
[INFO] [stdout] help: the following other types implement trait `Handler<T, S>`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:1309:1
[INFO] [stdout]      |
[INFO] [stdout] 1309 | / impl<S> Handler<(), S> for MethodRouter<S>
[INFO] [stdout] 1310 | | where
[INFO] [stdout] 1311 | |     S: Clone + 'static,
[INFO] [stdout]      | |_______________________^ `MethodRouter<S>` implements `Handler<(), S>`
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/handler/mod.rs:303:1
[INFO] [stdout]      |
[INFO] [stdout]  303 | / impl<H, S, T, L> Handler<T, S> for Layered<L, H, T, S>
[INFO] [stdout]  304 | | where
[INFO] [stdout]  305 | |     L: Layer<HandlerService<H, T, S>> + Clone + Send + 'static,
[INFO] [stdout]  306 | |     H: Handler<T, S>,
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | |     T: 'static,
[INFO] [stdout]  311 | |     S: 'static,
[INFO] [stdout]      | |_______________^ `Layered<L, H, T, S>` implements `Handler<T, S>`
[INFO] [stdout] note: required by a bound in `axum::routing::get`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/axum-0.7.9/src/routing/method_routing.rs:166:16
[INFO] [stdout]      |
[INFO] [stdout]  166 |             H: Handler<T, S>,
[INFO] [stdout]      |                ^^^^^^^^^^^^^ required by this bound in `get`
[INFO] [stdout] ...
[INFO] [stdout]  439 | top_level_handler_fn!(get, GET);
[INFO] [stdout]      | -------------------------------
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     required by a bound in this function
[INFO] [stdout]      | in this macro invocation
[INFO] [stdout]      = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chronosforge-b3c1f24d3df5b525.long-type-3802255640801556988.txt'
[INFO] [stdout]      = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]      = note: this error originates in the macro `top_level_handler_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `ChronosForgeError`
[INFO] [stdout]    --> src/common/config.rs:129:65
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn load_config() -> crate::common::error::Result<Config> {
[INFO] [stdout]     |                         ------------------------------------ expected `ChronosForgeError` because of this
[INFO] [stdout] 128 |     let mut config = config::Config::builder()
[INFO] [stdout] 129 |         .add_source(config::Config::try_from(&Config::default())?)
[INFO] [stdout]     |                     --------------------------------------------^ the trait `From<ConfigError>` is not implemented for `ChronosForgeError`
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this can't be annotated with `?` because it has type `Result<_, ConfigError>`
[INFO] [stdout]     |
[INFO] [stdout] note: `ChronosForgeError` needs to implement `From<ConfigError>`
[INFO] [stdout]    --> src/common/error.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub enum ChronosForgeError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout] help: `ChronosForgeError` implements trait `From<T>`
[INFO] [stdout]    --> src/common/error.rs:6:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | #[derive(Error, Debug)]
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `From<reqwest::Error>`
[INFO] [stdout]     |          `From<serde_json::Error>`
[INFO] [stdout]     |          `From<sqlx::Error>`
[INFO] [stdout]     |          `From<std::io::Error>`
[INFO] [stdout]     = note: this error originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `ChronosForgeError`
[INFO] [stdout]    --> src/common/config.rs:131:17
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn load_config() -> crate::common::error::Result<Config> {
[INFO] [stdout]     |                         ------------------------------------ expected `ChronosForgeError` because of this
[INFO] [stdout] ...
[INFO] [stdout] 131 |         .build()?;
[INFO] [stdout]     |          -------^ the trait `From<ConfigError>` is not implemented for `ChronosForgeError`
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this can't be annotated with `?` because it has type `Result<_, ConfigError>`
[INFO] [stdout]     |
[INFO] [stdout] note: `ChronosForgeError` needs to implement `From<ConfigError>`
[INFO] [stdout]    --> src/common/error.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub enum ChronosForgeError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout] help: `ChronosForgeError` implements trait `From<T>`
[INFO] [stdout]    --> src/common/error.rs:6:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | #[derive(Error, Debug)]
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `From<reqwest::Error>`
[INFO] [stdout]     |          `From<serde_json::Error>`
[INFO] [stdout]     |          `From<sqlx::Error>`
[INFO] [stdout]     |          `From<std::io::Error>`
[INFO] [stdout]     = note: this error originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChronosForgeError: From<ConfigError>` is not satisfied
[INFO] [stdout]    --> src/common/config.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     config.try_deserialize::<Config>().map_err(Into::into)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `From<ConfigError>` is not implemented for `ChronosForgeError`
[INFO] [stdout]    --> src/common/error.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub enum ChronosForgeError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: `ChronosForgeError` implements trait `From<T>`
[INFO] [stdout]    --> src/common/error.rs:6:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | #[derive(Error, Debug)]
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `From<reqwest::Error>`
[INFO] [stdout]     |          `From<serde_json::Error>`
[INFO] [stdout]     |          `From<sqlx::Error>`
[INFO] [stdout]     |          `From<std::io::Error>`
[INFO] [stdout]     = note: required for `ConfigError` to implement `Into<ChronosForgeError>`
[INFO] [stdout]     = note: this error originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChronosForgeError: From<ConfigError>` is not satisfied
[INFO] [stdout]    --> src/common/config.rs:133:48
[INFO] [stdout]     |
[INFO] [stdout] 133 |     config.try_deserialize::<Config>().map_err(Into::into)
[INFO] [stdout]     |                                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `From<ConfigError>` is not implemented for `ChronosForgeError`
[INFO] [stdout]    --> src/common/error.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub enum ChronosForgeError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: `ChronosForgeError` implements trait `From<T>`
[INFO] [stdout]    --> src/common/error.rs:6:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | #[derive(Error, Debug)]
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `From<reqwest::Error>`
[INFO] [stdout]     |          `From<serde_json::Error>`
[INFO] [stdout]     |          `From<sqlx::Error>`
[INFO] [stdout]     |          `From<std::io::Error>`
[INFO] [stdout]     = note: required for `ConfigError` to implement `Into<ChronosForgeError>`
[INFO] [stdout]     = note: this error originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_connections`
[INFO] [stdout]   --> src/storage/database.rs:19:42
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub async fn new(database_url: &str, max_connections: u32) -> Result<Self> {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_connections`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: lifetime may not live long enough
[INFO] [stdout]   --> src/scheduler/core.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |       fn select_worker(&self, workers: &[Worker], job: &Job) -> Option<&Worker> {
[INFO] [stdout]    |                        -               - let's call the lifetime of this reference `'1`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        let's call the lifetime of this reference `'2`
[INFO] [stdout] ...
[INFO] [stdout] 93 | /         workers
[INFO] [stdout] 94 | |             .iter()
[INFO] [stdout] 95 | |             .find(|w| w.current_jobs < w.max_concurrent_jobs)
[INFO] [stdout]    | |_____________________________________________________________^ method was supposed to return data with lifetime `'2` but it is returning data with lifetime `'1`
[INFO] [stdout]    |
[INFO] [stdout] help: consider introducing a named lifetime parameter and update trait if needed
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn select_worker<'a>(&self, workers: &'a [Worker], job: &Job) -> Option<&'a Worker> {
[INFO] [stdout]    |                     ++++                  ++                                 ++
[INFO] [stdout] help: consider adding 'move' keyword before the nested closure
[INFO] [stdout]    |
[INFO] [stdout] 95 |             .find(move |w| w.current_jobs < w.max_concurrent_jobs)
[INFO] [stdout]    |                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `job`
[INFO] [stdout]   --> src/scheduler/core.rs:85:49
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn select_worker(&self, workers: &[Worker], job: &Job) -> Option<&Worker> {
[INFO] [stdout]    |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_job`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `ChronosForgeError`
[INFO] [stdout]    --> src/common/config.rs:129:65
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn load_config() -> crate::common::error::Result<Config> {
[INFO] [stdout]     |                         ------------------------------------ expected `ChronosForgeError` because of this
[INFO] [stdout] 128 |     let mut config = config::Config::builder()
[INFO] [stdout] 129 |         .add_source(config::Config::try_from(&Config::default())?)
[INFO] [stdout]     |                     --------------------------------------------^ the trait `From<ConfigError>` is not implemented for `ChronosForgeError`
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this can't be annotated with `?` because it has type `Result<_, ConfigError>`
[INFO] [stdout]     |
[INFO] [stdout] note: `ChronosForgeError` needs to implement `From<ConfigError>`
[INFO] [stdout]    --> src/common/error.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub enum ChronosForgeError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout] help: `ChronosForgeError` implements trait `From<T>`
[INFO] [stdout]    --> src/common/error.rs:6:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | #[derive(Error, Debug)]
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `From<reqwest::Error>`
[INFO] [stdout]     |          `From<serde_json::Error>`
[INFO] [stdout]     |          `From<sqlx::Error>`
[INFO] [stdout]     |          `From<std::io::Error>`
[INFO] [stdout]     = note: this error originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `ChronosForgeError`
[INFO] [stdout]    --> src/common/config.rs:131:17
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn load_config() -> crate::common::error::Result<Config> {
[INFO] [stdout]     |                         ------------------------------------ expected `ChronosForgeError` because of this
[INFO] [stdout] ...
[INFO] [stdout] 131 |         .build()?;
[INFO] [stdout]     |          -------^ the trait `From<ConfigError>` is not implemented for `ChronosForgeError`
[INFO] [stdout]     |          |
[INFO] [stdout]     |          this can't be annotated with `?` because it has type `Result<_, ConfigError>`
[INFO] [stdout]     |
[INFO] [stdout] note: `ChronosForgeError` needs to implement `From<ConfigError>`
[INFO] [stdout]    --> src/common/error.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub enum ChronosForgeError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout] help: `ChronosForgeError` implements trait `From<T>`
[INFO] [stdout]    --> src/common/error.rs:6:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | #[derive(Error, Debug)]
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `From<reqwest::Error>`
[INFO] [stdout]     |          `From<serde_json::Error>`
[INFO] [stdout]     |          `From<sqlx::Error>`
[INFO] [stdout]     |          `From<std::io::Error>`
[INFO] [stdout]     = note: this error originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChronosForgeError: From<ConfigError>` is not satisfied
[INFO] [stdout]    --> src/common/config.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     config.try_deserialize::<Config>().map_err(Into::into)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `From<ConfigError>` is not implemented for `ChronosForgeError`
[INFO] [stdout]    --> src/common/error.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub enum ChronosForgeError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: `ChronosForgeError` implements trait `From<T>`
[INFO] [stdout]    --> src/common/error.rs:6:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | #[derive(Error, Debug)]
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `From<reqwest::Error>`
[INFO] [stdout]     |          `From<serde_json::Error>`
[INFO] [stdout]     |          `From<sqlx::Error>`
[INFO] [stdout]     |          `From<std::io::Error>`
[INFO] [stdout]     = note: required for `ConfigError` to implement `Into<ChronosForgeError>`
[INFO] [stdout]     = note: this error originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `heartbeat`
[INFO] [stdout]   --> src/worker/heartbeat.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let heartbeat = WorkerHeartbeat {
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heartbeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `ChronosForgeError: From<ConfigError>` is not satisfied
[INFO] [stdout]    --> src/common/config.rs:133:48
[INFO] [stdout]     |
[INFO] [stdout] 133 |     config.try_deserialize::<Config>().map_err(Into::into)
[INFO] [stdout]     |                                                ^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `From<ConfigError>` is not implemented for `ChronosForgeError`
[INFO] [stdout]    --> src/common/error.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub enum ChronosForgeError {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: `ChronosForgeError` implements trait `From<T>`
[INFO] [stdout]    --> src/common/error.rs:6:10
[INFO] [stdout]     |
[INFO] [stdout]   6 | #[derive(Error, Debug)]
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `From<reqwest::Error>`
[INFO] [stdout]     |          `From<serde_json::Error>`
[INFO] [stdout]     |          `From<sqlx::Error>`
[INFO] [stdout]     |          `From<std::io::Error>`
[INFO] [stdout]     = note: required for `ConfigError` to implement `Into<ChronosForgeError>`
[INFO] [stdout]     = note: this error originates in the derive macro `Error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_connections`
[INFO] [stdout]   --> src/storage/database.rs:19:42
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub async fn new(database_url: &str, max_connections: u32) -> Result<Self> {
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_connections`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: lifetime may not live long enough
[INFO] [stdout]   --> src/scheduler/core.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |       fn select_worker(&self, workers: &[Worker], job: &Job) -> Option<&Worker> {
[INFO] [stdout]    |                        -               - let's call the lifetime of this reference `'1`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        let's call the lifetime of this reference `'2`
[INFO] [stdout] ...
[INFO] [stdout] 93 | /         workers
[INFO] [stdout] 94 | |             .iter()
[INFO] [stdout] 95 | |             .find(|w| w.current_jobs < w.max_concurrent_jobs)
[INFO] [stdout]    | |_____________________________________________________________^ method was supposed to return data with lifetime `'2` but it is returning data with lifetime `'1`
[INFO] [stdout]    |
[INFO] [stdout] help: consider introducing a named lifetime parameter and update trait if needed
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn select_worker<'a>(&self, workers: &'a [Worker], job: &Job) -> Option<&'a Worker> {
[INFO] [stdout]    |                     ++++                  ++                                 ++
[INFO] [stdout] help: consider adding 'move' keyword before the nested closure
[INFO] [stdout]    |
[INFO] [stdout] 95 |             .find(move |w| w.current_jobs < w.max_concurrent_jobs)
[INFO] [stdout]    |                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `job`
[INFO] [stdout]   --> src/scheduler/core.rs:85:49
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn select_worker(&self, workers: &[Worker], job: &Job) -> Option<&Worker> {
[INFO] [stdout]    |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_job`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `heartbeat`
[INFO] [stdout]   --> src/worker/heartbeat.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let heartbeat = WorkerHeartbeat {
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heartbeat`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0277, E0308, E0425, E0432, E0433, E0560, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `chronosforge` (lib) due to 51 previous errors; 15 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `chronosforge` (lib test) due to 51 previous errors; 15 warnings emitted
[INFO] [stdout] Some errors have detailed explanations: E0107, E0277, E0308, E0425, E0432, E0433, E0560, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8d792fc8ec8b023e0cab20ed36baacb98dea69bda518bc157fd37e8c24a02ce1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8d792fc8ec8b023e0cab20ed36baacb98dea69bda518bc157fd37e8c24a02ce1", kill_on_drop: false }`
[INFO] [stdout] 8d792fc8ec8b023e0cab20ed36baacb98dea69bda518bc157fd37e8c24a02ce1
