[INFO] cloning repository https://github.com/needmoretruth/needmoretruthknowledge
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/needmoretruth/needmoretruthknowledge" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fneedmoretruth%2Fneedmoretruthknowledge", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fneedmoretruth%2Fneedmoretruthknowledge'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b148f11d63de3bb9f4c28f667763aaa882ac1b1b
[INFO] testing needmoretruth/needmoretruthknowledge/b148f11d63de3bb9f4c28f667763aaa882ac1b1b against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fneedmoretruth%2Fneedmoretruthknowledge" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-0-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/needmoretruth/needmoretruthknowledge
[INFO] finished tweaking git repo https://github.com/needmoretruth/needmoretruthknowledge
[INFO] tweaked toml for git repo https://github.com/needmoretruth/needmoretruthknowledge written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/needmoretruth/needmoretruthknowledge on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/needmoretruth/needmoretruthknowledge already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca
[INFO] running `Command { std: "docker" "start" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca", 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" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling rustversion v1.0.23
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling bitflags v2.13.2
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling winnow v1.0.4
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.23
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling toml_parser v1.1.3+spec-1.1.0
[INFO] [stderr]    Compiling toml_writer v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling syn v3.0.5
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling rand_core v0.10.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling cpufeatures v0.3.1
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling instability v0.3.13
[INFO] [stderr]    Compiling radium v0.7.0
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.21
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling compact_str v0.9.1
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling lru v0.18.4
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling unicode-truncate v2.0.1
[INFO] [stderr]    Compiling hybrid-array v0.4.15
[INFO] [stderr]    Compiling log v0.4.34
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling tap v1.0.1
[INFO] [stderr]    Compiling smallvec v1.16.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.8
[INFO] [stderr]    Compiling toml v0.9.12+spec-1.1.0
[INFO] [stderr]    Compiling critical-section v1.2.0
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling mio v1.2.3
[INFO] [stderr]    Compiling wyz v0.5.1
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling num-conv v0.2.2
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling funty v2.0.0
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling time-core v0.1.9
[INFO] [stderr]    Compiling darling_core v0.24.1
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling bitvec v1.1.1
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling time v0.3.55
[INFO] [stderr]    Compiling crypto-common v0.2.2
[INFO] [stderr]    Compiling block-buffer v0.12.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling line-clipping v0.3.8
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling const-oid v0.10.2
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling digest v0.11.3
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling chacha20 v0.10.2
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling rand v0.10.2
[INFO] [stderr]    Compiling kasuari v0.4.12
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling darling_macro v0.24.1
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling darling v0.24.1
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling ff v0.13.1
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling ratatui-core v0.1.2
[INFO] [stderr]    Compiling constant_time_eq v0.4.2
[INFO] [stderr]    Compiling arrayvec v0.7.8
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling spin v0.9.9
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling blake2b_simd v1.0.5
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling group v0.13.0
[INFO] [stderr]    Compiling rand v0.8.8
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling pasta_curves v0.5.2
[INFO] [stderr]    Compiling ff v0.14.0
[INFO] [stderr]    Compiling maybe-rayon v0.1.1
[INFO] [stderr]    Compiling group v0.14.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling ratatui-widgets v0.3.2
[INFO] [stderr]    Compiling ratatui-crossterm v0.1.2
[INFO] [stderr]    Compiling nmtk-core v0.5.1 (/opt/rustwide/workdir/crates/nmtk-core)
[INFO] [stderr]    Compiling nmtk-i18n v0.5.1 (/opt/rustwide/workdir/crates/nmtk-i18n)
[INFO] [stderr]    Compiling nmtk-pow v0.5.1 (/opt/rustwide/workdir/crates/nmtk-pow)
[INFO] [stderr]    Compiling nmtk-transformer v0.5.1 (/opt/rustwide/workdir/crates/nmtk-transformer)
[INFO] [stderr]    Compiling nmtk-ledger v0.5.1 (/opt/rustwide/workdir/crates/nmtk-ledger)
[INFO] [stderr]    Compiling halo2_proofs v0.3.5
[INFO] [stderr]    Compiling ratatui-macros v0.7.2
[INFO] [stderr]    Compiling ratatui v0.30.2
[INFO] [stderr]    Compiling nmtk-kq v0.5.1 (/opt/rustwide/workdir/crates/nmtk-kq)
[INFO] [stderr]    Compiling kq-ledgers v0.5.1 (/opt/rustwide/workdir/crates/kq-ledgers)
[INFO] [stderr]    Compiling kq-proof-of-work v0.5.1 (/opt/rustwide/workdir/crates/kq-proof-of-work)
[INFO] [stderr]    Compiling kq-transformer v0.5.1 (/opt/rustwide/workdir/crates/kq-transformer)
[INFO] [stderr]    Compiling nmtk-zk v0.5.1 (/opt/rustwide/workdir/crates/nmtk-zk)
[INFO] [stderr]    Compiling kq-zero-knowledge v0.5.1 (/opt/rustwide/workdir/crates/kq-zero-knowledge)
[INFO] [stderr]    Compiling nmtk-tui v0.5.1 (/opt/rustwide/workdir/crates/nmtk-tui)
[INFO] [stderr]    Compiling nmtk v0.5.1 (/opt/rustwide/workdir/crates/nmtk)
[INFO] [stderr] warning: unused dependency `nmtk-i18n`
[INFO] [stderr]   --> crates/nmtk-kq/Cargo.toml:11:1
[INFO] [stderr]    |
[INFO] [stderr] 11 | nmtk-i18n = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `nmtk-i18n`
[INFO] [stderr] warning: `nmtk-kq` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `nmtk-core`
[INFO] [stderr]   --> crates/nmtk-ledger/Cargo.toml:10:1
[INFO] [stderr]    |
[INFO] [stderr] 10 | nmtk-core = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `nmtk-core`
[INFO] [stderr] warning: `nmtk-ledger` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `group`
[INFO] [stderr]   --> crates/nmtk-zk/Cargo.toml:14:1
[INFO] [stderr]    |
[INFO] [stderr] 14 | group = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `group`
[INFO] [stderr] warning: `nmtk-zk` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 3m 01s
[INFO] running `Command { std: "docker" "inspect" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling nmtk-transformer v0.5.1 (/opt/rustwide/workdir/crates/nmtk-transformer)
[INFO] [stderr]    Compiling kq-proof-of-work v0.5.1 (/opt/rustwide/workdir/crates/kq-proof-of-work)
[INFO] [stderr]    Compiling kq-ledgers v0.5.1 (/opt/rustwide/workdir/crates/kq-ledgers)
[INFO] [stderr]    Compiling nmtk-zk v0.5.1 (/opt/rustwide/workdir/crates/nmtk-zk)
[INFO] [stderr]    Compiling kq-transformer v0.5.1 (/opt/rustwide/workdir/crates/kq-transformer)
[INFO] [stderr]    Compiling nmtk-kq v0.5.1 (/opt/rustwide/workdir/crates/nmtk-kq)
[INFO] [stderr]    Compiling kq-zero-knowledge v0.5.1 (/opt/rustwide/workdir/crates/kq-zero-knowledge)
[INFO] [stderr]    Compiling nmtk v0.5.1 (/opt/rustwide/workdir/crates/nmtk)
[INFO] [stderr]    Compiling nmtk-tui v0.5.1 (/opt/rustwide/workdir/crates/nmtk-tui)
[INFO] [stderr]    Compiling nmtk-pow v0.5.1 (/opt/rustwide/workdir/crates/nmtk-pow)
[INFO] [stderr]    Compiling nmtk-ledger v0.5.1 (/opt/rustwide/workdir/crates/nmtk-ledger)
[INFO] [stderr]    Compiling nmtk-i18n v0.5.1 (/opt/rustwide/workdir/crates/nmtk-i18n)
[INFO] [stderr]    Compiling nmtk-core v0.5.1 (/opt/rustwide/workdir/crates/nmtk-core)
[INFO] [stderr] warning: unused dependency `nmtk-i18n`
[INFO] [stderr]   --> crates/nmtk-kq/Cargo.toml:11:1
[INFO] [stderr]    |
[INFO] [stderr] 11 | nmtk-i18n = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `nmtk-i18n`
[INFO] [stderr] warning: `nmtk-kq` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `nmtk-core`
[INFO] [stderr]   --> crates/nmtk-ledger/Cargo.toml:10:1
[INFO] [stderr]    |
[INFO] [stderr] 10 | nmtk-core = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `nmtk-core`
[INFO] [stderr] warning: `nmtk-ledger` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `group`
[INFO] [stderr]   --> crates/nmtk-zk/Cargo.toml:14:1
[INFO] [stderr]    |
[INFO] [stderr] 14 | group = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `group`
[INFO] [stderr] warning: `nmtk-zk` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 5m 21s
[INFO] running `Command { std: "docker" "inspect" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unused dependency `nmtk-i18n`
[INFO] [stderr]   --> crates/nmtk-kq/Cargo.toml:11:1
[INFO] [stderr]    |
[INFO] [stderr] 11 | nmtk-i18n = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `nmtk-i18n`
[INFO] [stderr] warning: `nmtk-kq` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `nmtk-core`
[INFO] [stderr]   --> crates/nmtk-ledger/Cargo.toml:10:1
[INFO] [stderr]    |
[INFO] [stderr] 10 | nmtk-core = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `nmtk-core`
[INFO] [stderr] warning: `nmtk-ledger` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `group`
[INFO] [stderr]   --> crates/nmtk-zk/Cargo.toml:14:1
[INFO] [stderr]    |
[INFO] [stderr] 14 | group = { workspace = true }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `group`
[INFO] [stderr] warning: `nmtk-zk` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.35s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/kq-ledgers/a322b42418decab0/out/kq_ledgers-a322b42418decab0)
[INFO] [stdout] 
[INFO] [stdout] running 39 tests
[INFO] [stdout] test session::tests::enter_at_the_end_of_the_sending_stage_sends_again_rather_than_walking_away ... ok
[INFO] [stdout] test session::tests::a_recipient_typed_out_of_range_is_named_where_it_landed ... ok
[INFO] [stdout] test session::tests::a_typed_amount_is_taken_and_one_past_the_end_lands_on_the_end ... ok
[INFO] [stdout] test session::tests::every_beat_of_the_whole_quest_is_one_or_two_sentences ... ok
[INFO] [stdout] test session::tests::a_stage_opens_with_one_sentence_and_not_a_wall ... ok
[INFO] [stdout] test session::tests::each_stage_starts_its_ledgers_fresh ... ok
[INFO] [stdout] test session::tests::breaking_a_coin_grows_every_model_that_has_to_make_change ... ok
[INFO] [stdout] test session::tests::a_stage_says_when_it_has_nothing_more_to_say ... ok
[INFO] [stdout] test session::tests::making_change_costs_the_three_models_different_amounts ... ok
[INFO] [stdout] test session::tests::reset_puts_the_coins_back_and_the_conversation_to_its_first_line ... ok
[INFO] [stdout] test session::tests::every_beat_of_every_stage_is_short_in_both_languages ... ok
[INFO] [stdout] test session::tests::every_phrase_is_one_or_two_sentences_in_both_languages ... ok
[INFO] [stdout] test session::tests::every_phrase_has_its_own_korean ... ok
[INFO] [stdout] test session::tests::r_forgets_this_stages_run_and_leaves_the_others_alone ... ok
[INFO] [stdout] test session::tests::the_change_row_lines_up_with_the_counts_above_it ... ok
[INFO] [stdout] test session::tests::the_last_beat_of_the_quest_can_go_no_further ... ok
[INFO] [stdout] test session::tests::the_opening_ledgers_hold_what_the_first_stage_says ... ok
[INFO] [stdout] test session::tests::knobs_are_only_offered_where_there_is_something_to_turn ... ok
[INFO] [stdout] test session::tests::spending_twice_is_stopped_by_all_three_for_different_reasons ... ok
[INFO] [stdout] test session::tests::the_panel_says_whose_the_counts_under_the_balance_are ... ok
[INFO] [stdout] test session::tests::sending_one_whole_coin_is_taken_by_all_three ... ok
[INFO] [stdout] test session::tests::the_recap_is_built_from_everything_the_reader_did ... ok
[INFO] [stdout] test session::tests::no_word_reaches_the_panel_before_it_is_explained ... ok
[INFO] [stdout] test session::tests::the_run_beats_carry_a_verdict_the_reader_can_see_without_colour ... ok
[INFO] [stdout] test session::tests::the_recap_shows_what_the_reader_did_rather_than_the_opening_coins ... ok
[INFO] [stdout] test session::tests::the_tuning_steps_the_tests_name_are_where_the_script_has_them ... ok
[INFO] [stdout] test session::tests::what_is_said_about_one_whole_coin_is_what_the_engine_did ... ok
[INFO] [stdout] test session::tests::two_sends_that_show_no_difference_are_told_so ... ok
[INFO] [stdout] test session::tests::what_is_said_after_a_send_is_about_the_send_that_happened ... ok
[INFO] [stdout] test session::tests::what_is_said_about_change_is_what_the_engine_did ... ok
[INFO] [stdout] test tests::it_has_a_name_in_both_languages ... ok
[INFO] [stdout] test tests::the_id_names_the_category_it_sits_in ... ok
[INFO] [stdout] test tests::the_quest_declares_what_the_list_needs ... ok
[INFO] [stdout] test tests::the_quest_opens_gently_and_gets_harder ... ok
[INFO] [stdout] test session::tests::the_readers_own_amount_is_what_gets_sent ... ok
[INFO] [stdout] test session::tests::whether_a_coin_was_broken_is_read_from_the_transfer_not_the_coin_count ... ok
[INFO] [stdout] test session::tests::the_words_about_the_attack_match_what_the_engine_actually_said ... ok
[INFO] [stdout] test tests::every_stage_is_named ... ok
[INFO] [stdout] test session::tests::the_panel_reads_whole_at_80_by_24_in_both_languages ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 39 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/kq-proof-of-work/d344e9f8f812efde/out/kq_proof_of_work-d344e9f8f812efde)
[INFO] [stdout] 
[INFO] [stdout] running 64 tests
[INFO] [stdout] test phrases::tests::every_miner_has_a_name_and_a_share_label ... ok
[INFO] [stdout] test phrases::tests::every_refusal_the_engine_can_report_has_words ... ok
[INFO] [stdout] test phrases::tests::english_is_never_missing ... ok
[INFO] [stdout] test phrases::tests::korean_falls_back_to_english_rather_than_a_blank ... ok
[INFO] [stdout] test session::tests::a_knob_turned_before_this_visits_first_run_does_not_offer_to_run_it_again ... ok
[INFO] [stdout] test session::tests::a_recap_with_nothing_to_tell_draws_no_blank_beat ... ok
[INFO] [stdout] test session::tests::a_reader_can_jump_to_every_stage_and_each_one_draws_something ... ok
[INFO] [stdout] test session::tests::a_typed_number_beats_the_presets_and_one_past_the_end_says_where_it_landed ... ok
[INFO] [stdout] test session::tests::a_typed_number_is_answered_even_after_the_stage_has_said_two_dozen_blocks ... ok
[INFO] [stdout] test session::tests::a_stage_opens_with_one_sentence_and_not_a_wall ... ok
[INFO] [stdout] test session::tests::an_attack_above_half_that_ran_out_of_time_is_not_called_a_win ... ok
[INFO] [stdout] test phrases::tests::every_phase_and_outcome_the_engine_can_report_has_words ... ok
[INFO] [stdout] test session::tests::both_answers_in_the_puzzle_start_their_sentences_in_one_column ... ok
[INFO] [stdout] test session::tests::changing_the_miner_count_changes_how_many_shares_there_are_to_set ... ok
[INFO] [stdout] test session::tests::a_tie_is_not_described_as_either_side_of_half ... ok
[INFO] [stdout] test session::tests::enter_on_a_stage_with_nothing_to_run_is_left_to_the_shell ... ok
[INFO] [stdout] test session::tests::enter_at_the_end_of_a_stage_with_knobs_runs_it_again_rather_than_walking_away ... ok
[INFO] [stdout] test session::tests::asking_for_fewer_threads_than_miners_is_refused_in_words ... ok
[INFO] [stdout] test session::tests::a_value_set_for_the_next_run_starts_that_run_rather_than_redoing_the_last ... ok
[INFO] [stdout] test session::tests::a_run_starts_real_threads_and_closing_brings_them_home ... ok
[INFO] [stdout] test session::tests::every_beat_of_every_stage_is_short_in_both_languages ... ok
[INFO] [stdout] test session::tests::every_beat_the_quest_can_say_is_two_sentences_at_most_and_short ... ok
[INFO] [stdout] test session::tests::every_stage_with_knobs_offers_them_and_the_others_offer_none ... ok
[INFO] [stdout] test session::tests::a_block_height_is_drawn_whole_however_many_digits_it_has ... ok
[INFO] [stdout] test session::tests::r_forgets_this_stages_numbers_and_leaves_the_others_alone ... ok
[INFO] [stdout] test session::tests::the_attack_split_stays_on_the_side_of_half_it_was_asked_for ... ok
[INFO] [stdout] test session::tests::the_attack_stage_says_the_share_the_attacker_will_really_hold_before_anything_starts ... ok
[INFO] [stdout] test session::tests::the_attack_started_line_gives_the_share_the_threads_really_hold ... ok
[INFO] [stdout] test session::tests::how_the_attack_ended_is_on_the_smallest_screen_in_every_language ... ok
[INFO] [stdout] test session::tests::the_difficulty_reads_label_first_in_both_languages_at_eighty_by_twenty_four ... ok
[INFO] [stdout] test session::tests::the_loser_of_a_race_is_not_said_as_another_block ... ok
[INFO] [stdout] test session::tests::the_mining_stage_waits_for_a_block_rather_than_talking_over_it ... ok
[INFO] [stdout] test session::tests::the_opening_line_of_a_run_says_how_many_miners_there_are ... ok
[INFO] [stdout] test session::tests::the_attack_takes_the_threads_its_share_needs_and_only_the_machine_it_was_given ... ok
[INFO] [stdout] test session::tests::the_puzzle_panel_costs_a_block_at_eighty_by_twenty_four ... ok
[INFO] [stdout] test session::tests::the_recap_admits_what_has_not_been_run_instead_of_inventing_it ... ok
[INFO] [stdout] test session::tests::r_pressed_while_mining_takes_the_run_off_the_panel_and_out_of_the_record ... ok
[INFO] [stdout] test session::tests::the_recap_claims_nothing_the_reader_did_not_do ... ok
[INFO] [stdout] test session::tests::the_recap_counts_the_whole_quest_and_not_the_last_run ... ok
[INFO] [stdout] test session::tests::the_opening_stage_draws_the_list_it_talks_about_and_not_the_puzzle ... ok
[INFO] [stdout] test session::tests::the_recap_recalls_the_newest_attacks_and_counts_the_rest ... ok
[INFO] [stdout] test session::tests::the_recap_says_the_numbers_were_changed_when_the_runs_were_run_with_other_numbers ... ok
[INFO] [stdout] test session::tests::the_sentence_after_a_run_is_about_that_run_even_after_the_knob_moves_back ... ok
[INFO] [stdout] test session::tests::the_split_is_worked_out_before_anything_is_started ... ok
[INFO] [stdout] test session::tests::the_value_the_reader_is_pointing_at_shows_both_ends_of_its_range ... ok
[INFO] [stdout] test session::tests::a_stopped_run_puts_every_block_it_found_into_the_record ... ok
[INFO] [stdout] test session::tests::tune_shows_the_share_that_was_asked_for_beside_the_share_that_was_got ... ok
[INFO] [stdout] test session::tests::turning_a_knob_while_the_work_runs_makes_enter_start_it_over ... ok
[INFO] [stdout] test session::tests::the_words_that_carry_the_meaning_survive_the_narrowest_panel ... ok
[INFO] [stdout] test session::tests::what_is_said_after_a_run_is_read_off_the_run ... ok
[INFO] [stdout] test session::tests::what_was_said_about_the_first_attack_survives_the_second_one ... ok
[INFO] [stdout] test tests::every_stage_is_named_in_every_language ... ok
[INFO] [stdout] test tests::it_has_a_name_and_a_summary_before_anything_is_opened ... ok
[INFO] [stdout] test tests::opening_it_starts_on_the_first_stage_with_nothing_running ... ok
[INFO] [stdout] test session::tests::walking_out_of_a_stage_stops_what_it_started ... ok
[INFO] [stdout] test tests::the_quest_declares_what_the_list_needs ... ok
[INFO] [stdout] test tests::the_id_names_the_category_and_the_subcategory_it_sits_in ... ok
[INFO] [stdout] test tests::the_quest_opens_gently_and_ends_steeply ... ok
[INFO] [stdout] test session::tests::r_forgets_only_this_stages_record_and_tab_keeps_every_stages ... ok
[INFO] [stdout] test session::tests::the_second_run_on_a_stage_announces_its_blocks_after_the_first_filled_the_cap ... ok
[INFO] [stdout] test session::tests::the_recap_keeps_the_numbers_the_reader_made_on_the_way_to_it ... ok
[INFO] [stdout] test session::tests::no_line_of_any_stage_is_cut_at_the_panel_edge_in_either_language ... ok
[INFO] [stdout] test session::tests::no_word_reaches_the_panel_before_it_is_explained ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/kq-transformer/fabb20064bf6248d/out/kq_transformer-fabb20064bf6248d)
[INFO] [stdout] test session::tests::a_block_that_arrives_is_reported_where_the_reader_is_looking ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 64 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.52s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 61 tests
[INFO] [stdout] test phrases::tests::every_reason_a_run_can_be_refused_has_words ... ok
[INFO] [stdout] test phrases::tests::korean_is_never_blank ... ok
[INFO] [stdout] test session::tests::a_collapse_names_the_character_it_fell_onto_and_the_numbers_that_show_it ... ok
[INFO] [stdout] test session::tests::a_choice_is_typed_counting_from_one_and_lands_in_words ... ok
[INFO] [stdout] test session::tests::a_grid_with_no_room_for_a_row_draws_nothing_rather_than_a_heading ... ok
[INFO] [stdout] test session::tests::a_panel_with_more_to_say_than_rows_marks_the_line_it_stops_on ... ok
[INFO] [stdout] test phrases::tests::english_is_never_missing ... ok
[INFO] [stdout] test session::tests::a_lesson_about_an_attack_is_only_said_when_that_attack_is_what_ran ... ok
[INFO] [stdout] test session::tests::a_lesson_is_only_said_when_the_run_really_did_it ... ok
[INFO] [stdout] test session::tests::a_number_past_the_end_of_a_knob_says_where_it_landed ... ok
[INFO] [stdout] test session::tests::a_refused_run_does_not_stop_the_conversation ... ok
[INFO] [stdout] test session::tests::a_wait_for_a_step_the_run_never_reaches_ends_when_the_run_does ... ok
[INFO] [stdout] test session::tests::a_run_that_dipped_and_climbed_back_is_not_said_to_have_never_fallen ... ok
[INFO] [stdout] test session::tests::a_weight_of_nothing_and_a_weight_of_everything_look_different ... ok
[INFO] [stdout] test session::tests::a_sentence_already_said_keeps_the_numbers_it_was_about ... ok
[INFO] [stdout] test session::tests::a_typed_number_changes_the_model_that_would_be_built ... ok
[INFO] [stdout] test session::tests::composed_beats_are_short_in_both_languages ... ok
[INFO] [stdout] test session::tests::each_attack_changes_one_thing_and_the_multiplier_reaches_all_three ... ok
[INFO] [stdout] test session::tests::an_answer_of_nothing_but_spaces_is_said_in_words ... ok
[INFO] [stdout] test session::tests::a_series_longer_than_the_panel_is_thinned_to_fit_and_keeps_its_ends ... ok
[INFO] [stdout] test session::tests::a_narrow_panel_draws_rather_than_panicking ... ok
[INFO] [stdout] test session::tests::every_fixed_beat_is_two_sentences_at_most ... ok
[INFO] [stdout] test session::tests::every_happening_of_a_long_stage_is_kept ... ok
[INFO] [stdout] test session::tests::every_line_is_translated_into_korean ... ok
[INFO] [stdout] test session::tests::every_beat_of_every_stage_is_short_in_both_languages ... ok
[INFO] [stdout] test session::tests::enter_at_the_end_of_a_stage_with_knobs_runs_it_again_rather_than_walking_away ... ok
[INFO] [stdout] test session::tests::every_stage_draws_inside_80_by_24 ... ok
[INFO] [stdout] test session::tests::choosing_another_head_and_pressing_enter_does_not_restart_training ... ok
[INFO] [stdout] test session::tests::every_arrow_the_panel_draws_is_the_same_arrow ... ok
[INFO] [stdout] test session::tests::it_opens_on_one_sentence_and_walks_to_every_stage ... ok
[INFO] [stdout] test session::tests::settings_that_do_not_describe_a_model_say_so_instead_of_a_number ... ok
[INFO] [stdout] test session::tests::pausing_and_resuming_reach_the_run ... ok
[INFO] [stdout] test session::tests::the_attack_raises_the_learning_rate_and_r_puts_it_back ... ok
[INFO] [stdout] test session::tests::sentences_about_a_run_that_blew_up_say_so ... ok
[INFO] [stdout] test session::tests::the_added_keys_are_hints_rather_than_sentences ... ok
[INFO] [stdout] test session::tests::only_the_stages_with_something_to_turn_have_knobs ... ok
[INFO] [stdout] test session::tests::the_attention_grid_is_explained_while_it_is_on_screen ... ok
[INFO] [stdout] test session::tests::the_reader_moves_through_the_knobs_and_wraps ... ok
[INFO] [stdout] test session::tests::the_recap_is_the_whole_quest_rather_than_the_last_run ... ok
[INFO] [stdout] test session::tests::the_four_numbers_on_the_panel_are_each_given_a_meaning ... ok
[INFO] [stdout] test session::tests::the_numbers_the_prose_names_are_the_engines_numbers ... ok
[INFO] [stdout] test session::tests::the_grid_names_exactly_as_many_columns_as_its_label_counts ... ok
[INFO] [stdout] test session::tests::the_recap_reads_the_loss_from_one_end_of_the_run_to_the_other ... ok
[INFO] [stdout] test session::tests::the_suggested_width_is_a_change_on_every_machine ... ok
[INFO] [stdout] test session::tests::the_settings_verdict_reads_the_two_runs_rather_than_assuming_one ... ok
[INFO] [stdout] test session::tests::the_run_panel_draws_the_numbers_the_curve_and_the_answer_at_80_by_24 ... ok
[INFO] [stdout] test session::tests::the_words_that_carry_the_meaning_survive_the_narrowest_panel ... ok
[INFO] [stdout] test session::tests::the_values_worth_trying_sit_under_the_knob_they_belong_to ... ok
[INFO] [stdout] test session::tests::a_second_run_replaces_the_first_rather_than_being_ignored ... ok
[INFO] [stdout] test session::tests::the_values_worth_trying_fold_rather_than_filling_the_last_column ... ok
[INFO] [stdout] test session::tests::words_are_explained_before_they_are_used ... ok
[INFO] [stdout] test tests::every_stage_is_named_in_every_language ... ok
[INFO] [stdout] test tests::it_opens_on_one_sentence_with_nothing_running ... ok
[INFO] [stdout] test tests::the_id_names_the_category_it_sits_in ... ok
[INFO] [stdout] test tests::the_quest_declares_what_the_list_needs ... ok
[INFO] [stdout] test session::tests::walking_out_of_the_training_stage_stops_the_trainer ... ok
[INFO] [stdout] test session::tests::walking_into_the_training_stage_and_pressing_enter_starts_a_real_run ... ok
[INFO] [stdout] test session::tests::no_line_of_any_stage_is_cut_at_the_panel_edge_in_either_language ... ok
[INFO] [stdout] test session::tests::a_run_left_half_way_still_reaches_the_recap ... ok
[INFO] [stdout] test session::tests::r_throws_the_run_in_progress_away ... ok
[INFO] [stdout] test session::tests::the_runaway_rate_really_collapses_the_model ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 61 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.51s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/kq-zero-knowledge/99a6e157ad6214f5/out/kq_zero_knowledge-99a6e157ad6214f5)
[INFO] [stdout] 
[INFO] [stdout] running 47 tests
[INFO] [stdout] test session::tests::a_dropped_runner_takes_its_thread_with_it ... ok
[INFO] [stdout] test session::tests::a_party_row_too_wide_for_the_panel_wraps_under_itself ... ok
[INFO] [stdout] test session::tests::a_run_that_finished_between_ticks_still_reaches_the_record ... ok
[INFO] [stdout] test session::tests::every_beat_of_every_stage_is_short_in_both_languages ... ok
[INFO] [stdout] test session::tests::every_word_is_explained_before_it_is_used_in_its_stage ... ok
[INFO] [stdout] test session::tests::no_korean_line_says_helps_where_it_means_runs ... ok
[INFO] [stdout] test session::tests::a_system_typed_past_the_end_says_which_system_it_landed_on ... ok
[INFO] [stdout] test session::tests::a_new_stage_does_not_announce_the_runs_before_it ... ok
[INFO] [stdout] test session::tests::a_panel_too_short_for_every_party_says_so_rather_than_losing_rows_in_silence ... ok
[INFO] [stdout] test session::tests::a_short_recap_drops_whole_rows_and_never_half_a_list ... ok
[INFO] [stdout] test session::tests::the_break_stage_admits_the_seed_fixes_the_challenge_too ... ok
[INFO] [stdout] test session::tests::a_label_too_wide_for_its_column_folds_instead_of_being_cut ... ok
[INFO] [stdout] test session::tests::a_long_title_leaves_the_panel_its_border ... ok
[INFO] [stdout] test session::tests::r_on_one_stage_keeps_what_the_other_stages_measured ... ok
[INFO] [stdout] test session::tests::the_four_sides_panel_stays_inside_its_column_in_both_languages ... ok
[INFO] [stdout] test session::tests::the_panel_and_the_table_give_one_proof_one_size ... ok
[INFO] [stdout] test session::tests::the_recap_reads_the_whole_quest_and_not_the_last_run ... ok
[INFO] [stdout] test session::tests::the_system_chosen_while_tuning_does_not_follow_the_reader_elsewhere ... ok
[INFO] [stdout] test session::tests::the_attack_table_stays_inside_its_column_in_both_languages ... ok
[INFO] [stdout] test session::tests::the_notice_about_dropped_rows_is_never_itself_trimmed ... ok
[INFO] [stdout] test session::tests::the_size_column_carries_one_unit ... ok
[INFO] [stdout] test session::tests::the_attack_stage_says_how_many_got_through_from_the_run_itself ... ok
[INFO] [stdout] test tests::english_is_never_missing ... ok
[INFO] [stdout] test tests::every_beat_is_short_enough_to_read_in_one_go ... ok
[INFO] [stdout] test session::tests::the_conversation_writes_a_time_in_the_unit_its_column_uses ... ok
[INFO] [stdout] test session::tests::walking_to_another_stage_keeps_what_the_runs_measured ... ok
[INFO] [stdout] test tests::every_enum_the_engine_returns_has_a_word_for_it ... ok
[INFO] [stdout] test tests::it_has_a_name_and_a_summary_in_both_languages ... ok
[INFO] [stdout] test tests::every_stage_is_named_in_every_language ... ok
[INFO] [stdout] test tests::korean_is_never_blank_either ... ok
[INFO] [stdout] test tests::only_the_tune_stage_offers_knobs_and_every_one_takes_a_typed_number ... ok
[INFO] [stdout] test tests::it_opens_on_one_sentence_with_nothing_running ... ok
[INFO] [stdout] test tests::the_id_names_the_category_and_the_subcategory_it_sits_in ... ok
[INFO] [stdout] test tests::the_messages_stage_walks_the_protocol_one_message_at_a_time ... ok
[INFO] [stdout] test tests::the_quest_declares_what_the_list_needs ... ok
[INFO] [stdout] test session::tests::the_quest_ends_on_numbers_this_machine_measured ... ok
[INFO] [stdout] test session::tests::the_tuning_and_message_panels_keep_their_columns_in_both_languages ... ok
[INFO] [stdout] test tests::the_session_moves_through_every_stage_it_declares ... ok
[INFO] [stdout] test tests::a_run_finishes_and_the_stage_can_be_reset ... ok
[INFO] [stdout] test tests::the_break_stage_shows_the_toxic_waste_holder_being_accepted ... ok
[INFO] [stdout] test tests::the_sides_stage_shows_four_at_once_and_the_onlooker_sees_no_amount ... ok
[INFO] [stdout] test tests::the_run_reports_all_four_systems_as_they_finish ... ok
[INFO] [stdout] test tests::the_run_stage_puts_the_three_numbers_on_one_screen_at_eighty_by_twenty_four ... ok
[INFO] [stdout] test session::tests::what_the_width_did_is_said_from_the_run ... ok
[INFO] [stdout] test tests::the_tune_stage_answers_the_knobs ... ok
[INFO] [stdout] test session::tests::no_panel_loses_rows_without_saying_so ... ok
[INFO] [stdout] test tests::every_stage_draws_inside_the_smallest_screen ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 47 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.55s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/build/nmtk/ca1fc44fa723c4ff/out/nmtk-ca1fc44fa723c4ff)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test tests::no_arguments_opens_the_program ... ok
[INFO] [stdout] test tests::anything_else_is_named_back ... ok
[INFO] [stdout] test tests::the_help_names_every_flag_it_accepts ... ok
[INFO] [stdout] test tests::both_spellings_of_each_flag_work ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/nmtk-core/20f10e461492d0dd/out/nmtk_core-20f10e461492d0dd)
[INFO] [stdout] running 32 tests
[INFO] [stdout] test format::tests::percent_handles_division_by_zero ... ok
[INFO] [stdout] test language::tests::codes_survive_a_round_trip ... ok
[INFO] [stdout] test format::tests::counts_get_separators_only_where_needed ... ok
[INFO] [stdout] test format::tests::hashrate_survives_nonsense ... ok
[INFO] [stdout] test format::tests::hashrate_climbs_through_the_units ... ok
[INFO] [stdout] test format::tests::long_spans_read_as_years ... ok
[INFO] [stdout] test language::tests::every_language_has_a_distinct_code ... ok
[INFO] [stdout] test language::tests::a_language_names_itself_in_its_own_language ... ok
[INFO] [stdout] test language::tests::english_is_the_default_and_comes_first ... ok
[INFO] [stdout] test language::tests::the_tag_is_what_the_title_bar_shows ... ok
[INFO] [stdout] test machine::tests::a_cgroup_limit_is_read_and_no_limit_is_none ... ok
[INFO] [stdout] test machine::tests::a_chosen_thread_count_reaches_the_work_as_its_default ... ok
[INFO] [stdout] test machine::tests::memory_holds_a_machine_back_from_the_larger_class ... ok
[INFO] [stdout] test machine::tests::detect_never_reports_more_memory_available_than_there_is ... ok
[INFO] [stdout] test machine::tests::one_core_still_gets_one_worker ... ok
[INFO] [stdout] test machine::tests::small_machines_land_in_small ... ok
[INFO] [stdout] test machine::tests::detect_reports_at_least_one_core ... ok
[INFO] [stdout] test machine::tests::meminfo_without_a_total_is_unknown_and_nonsense_does_not_overflow ... ok
[INFO] [stdout] test settings::tests::a_damaged_file_gives_defaults_rather_than_a_crash ... ok
[INFO] [stdout] test settings::tests::a_thread_count_is_never_zero_even_on_a_machine_that_reports_none ... ok
[INFO] [stdout] test machine::tests::a_core_is_left_for_the_screen ... ok
[INFO] [stdout] test settings::tests::a_chosen_thread_count_cannot_exceed_the_machine ... ok
[INFO] [stdout] test machine::tests::a_line_without_a_colon_does_not_lose_the_memory ... ok
[INFO] [stdout] test settings::tests::a_syntax_error_costs_only_the_line_it_is_on ... ok
[INFO] [stdout] test settings::tests::a_missing_file_is_a_first_launch_and_a_damaged_one_is_not ... ok
[INFO] [stdout] test settings::tests::an_unknown_field_does_not_throw_the_rest_away ... ok
[INFO] [stdout] test settings::tests::a_damaged_file_is_kept_as_settings_toml_bad_before_it_is_written_over ... ok
[INFO] [stdout] test settings::tests::what_is_written_is_what_is_read ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/nmtk-i18n/7a7d720e45419047/out/nmtk_i18n-7a7d720e45419047)
[INFO] [stdout] test settings::tests::zero_threads_means_ask_the_machine ... ok
[INFO] [stdout] test settings::tests::settings_survive_a_round_trip ... ok
[INFO] [stdout] test settings::tests::one_bad_line_keeps_the_rest_of_the_file ... ok
[INFO] [stdout] test settings::tests::no_color_starts_colour_off_until_the_reader_chooses_colour ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 32 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test tests::running_is_never_written_the_way_helping_is ... ok
[INFO] [stdout] test tests::the_motto_is_the_owners_sentence ... ok
[INFO] [stdout] test tests::english_is_never_missing ... ok
[INFO] [stdout] test tests::every_line_of_the_shell_is_translated_into_korean ... ok
[INFO] [stdout] test tests::korean_falls_back_to_english_rather_than_blank ... ok
[INFO] [stdout] test tests::sorting_and_filtering_are_two_different_words ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/nmtk-kq/c4a701d8714ab785/out/nmtk_kq-c4a701d8714ab785)
[INFO] [stdout] 
[INFO] [stdout] running 45 tests
[INFO] [stdout] test conversation::tests::nothing_is_drawn_wider_than_the_panel ... ok
[INFO] [stdout] test conversation::tests::beats_are_separated_by_a_blank_line ... ok
[INFO] [stdout] test knob::tests::a_choice_wraps_because_it_has_no_ends ... ok
[INFO] [stdout] test knob::tests::a_number_past_the_end_lands_on_the_end_and_says_where ... ok
[INFO] [stdout] test knob::tests::a_run_can_tell_a_changed_knob_from_an_unchanged_one ... ok
[INFO] [stdout] test knob::tests::a_count_stops_at_its_ends_rather_than_wrapping ... ok
[INFO] [stdout] test meta::tests::a_quest_needs_three_stages ... ok
[INFO] [stdout] test meta::tests::a_stamp_is_utc_to_the_second ... ok
[INFO] [stdout] test meta::tests::fit_separates_recommended_from_merely_possible ... ok
[INFO] [stdout] test meta::tests::five_difficulties_each_have_their_own_marks ... ok
[INFO] [stdout] test knob::tests::what_is_not_a_number_leaves_the_value_alone ... ok
[INFO] [stdout] test meta::tests::the_steepest_stage_is_what_a_reader_is_signing_up_for ... ok
[INFO] [stdout] test conversation::tests::korean_beats_wrap_within_the_panel ... ok
[INFO] [stdout] test knob::tests::the_draft_is_visible_while_typing_and_gone_after_cancel ... ok
[INFO] [stdout] test conversation::tests::a_long_beat_keeps_its_prefix_on_the_first_line_only ... ok
[INFO] [stdout] test text::tests::a_korean_column_is_padded_by_cells_rather_than_characters ... ok
[INFO] [stdout] test knob::tests::a_share_is_typed_the_way_it_is_shown ... ok
[INFO] [stdout] test knob::tests::typing_a_number_beats_the_presets ... ok
[INFO] [stdout] test knob::tests::letters_never_reach_the_draft ... ok
[INFO] [stdout] test text::tests::a_column_never_swallows_the_gap_after_it ... ok
[INFO] [stdout] test meta::tests::versions_order_the_way_people_expect ... ok
[INFO] [stdout] test text::tests::a_line_break_in_the_text_is_kept ... ok
[INFO] [stdout] test text::tests::a_word_longer_than_the_line_is_cut_rather_than_lost ... ok
[INFO] [stdout] test text::tests::a_wide_glyph_never_lands_in_a_one_cell_line ... ok
[INFO] [stdout] test meta::tests::unknown_memory_never_holds_a_machine_back ... ok
[INFO] [stdout] test text::tests::combining_and_zero_width_characters_take_no_cells ... ok
[INFO] [stdout] test text::tests::a_column_is_exactly_as_wide_as_it_was_asked_for ... ok
[INFO] [stdout] test text::tests::columns_hold_their_width_for_awkward_text ... ok
[INFO] [stdout] test text::tests::korean_glyphs_count_as_two_cells ... ok
[INFO] [stdout] test text::tests::wrapping_keeps_words_whole ... ok
[INFO] [stdout] test text::tests::text_already_wide_enough_is_left_alone ... ok
[INFO] [stdout] test text::tests::wrapping_never_exceeds_the_width_it_was_given ... ok
[INFO] [stdout] test text::tests::padding_lines_both_languages_up_to_the_same_column ... ok
[INFO] [stdout] test text::tests::width_agrees_with_what_the_drawing_library_draws ... ok
[INFO] [stdout] test theme::tests::colour_off_sets_no_colour_on_any_style ... ok
[INFO] [stdout] test text::tests::wrapping_empty_text_still_gives_one_line ... ok
[INFO] [stdout] test theme::tests::colour_on_keeps_the_quiet_grey ... ok
[INFO] [stdout] test text::tests::wrapping_never_splits_a_grapheme_or_overruns ... ok
[INFO] [stdout] test text::tests::truncation_never_exceeds_the_width_it_was_given ... ok
[INFO] [stdout] test widgets::tests::a_small_fall_still_shows_as_a_fall ... ok
[INFO] [stdout] test widgets::tests::an_empty_curve_draws_a_panel_instead_of_dividing_by_zero ... ok
[INFO] [stdout] test widgets::tests::stats_line_their_values_up ... ok
[INFO] [stdout] test text::tests::truncation_never_splits_a_grapheme_or_overruns ... ok
[INFO] [stdout] test widgets::tests::a_bar_of_nonsense_draws_empty_rather_than_panicking ... ok
[INFO] [stdout] test widgets::tests::a_full_bar_fills_the_width ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 45 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/nmtk-ledger/3653a2e9085e5da7/out/nmtk_ledger-3653a2e9085e5da7)
[INFO] [stdout] 
[INFO] [stdout] running 25 tests
[INFO] [stdout] test account::tests::a_nonce_at_the_end_of_its_range_refuses_rather_than_replaying ... ok
[INFO] [stdout] test crypto::tests::a_key_signs_for_its_own_address_and_no_other ... ok
[INFO] [stdout] test crypto::tests::changing_the_message_breaks_the_signature ... ok
[INFO] [stdout] test tests::a_transfer_touches_a_different_number_of_entries_in_each_model ... ok
[INFO] [stdout] test tests::a_whole_coin_spent_twice_is_refused_for_the_reason_the_facts_promise ... ok
[INFO] [stdout] test tests::asking_for_a_coin_the_sender_does_not_have_is_refused_at_build_time ... ok
[INFO] [stdout] test tests::balances_agree_across_models_after_the_same_sequence_of_valid_transfers ... ok
[INFO] [stdout] test tests::genesis_opens_every_model_on_the_same_money ... ok
[INFO] [stdout] test crypto::tests::the_same_seed_always_gives_the_same_address ... ok
[INFO] [stdout] test tests::handing_over_a_whole_object_costs_no_new_entry_and_paying_a_pool_frees_one ... ok
[INFO] [stdout] test tests::paying_exactly_two_coins_worth_moves_all_of_it_in_every_model ... ok
[INFO] [stdout] test tests::paying_yourself_does_not_mint_money ... ok
[INFO] [stdout] test tests::a_signature_from_the_wrong_key_is_refused_before_the_numbers_are_checked ... ok
[INFO] [stdout] test tests::changing_a_transfer_after_it_is_signed_is_refused ... ok
[INFO] [stdout] test tests::state_grows_the_way_each_model_actually_grows ... ok
[INFO] [stdout] test tests::a_transfer_bigger_than_the_sender_holds_is_refused_by_every_model ... ok
[INFO] [stdout] test tests::two_transfers_from_one_sender_run_at_once_in_two_models_and_queue_in_the_third ... ok
[INFO] [stdout] test tests::a_shared_object_cannot_be_spent_as_if_somebody_owned_it ... ok
[INFO] [stdout] test tests::a_transaction_built_for_one_model_is_refused_by_another ... ok
[INFO] [stdout] test tests::what_a_model_says_about_double_spends_matches_what_it_does ... ok
[INFO] [stdout] test tests::the_models_disagree_about_where_a_balance_is_kept ... ok
[INFO] [stdout] test tests::the_same_double_spend_is_refused_by_all_three_for_three_different_reasons ... ok
[INFO] [stdout] test tests::a_replayed_account_transfer_is_refused_even_when_the_balance_would_cover_it ... ok
[INFO] [stdout] test tests::paying_into_the_shared_object_bumps_its_version_every_time ... ok
[INFO] [stdout] test tests::two_payments_into_the_shared_object_queue_only_where_the_object_is_shared ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 75 tests
[INFO] [stdout] test attack::tests::a_run_with_no_threads_for_one_side_is_refused ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/nmtk-pow/456f9735554ce32a/out/nmtk_pow-456f9735554ce32a)
[INFO] [stdout] test attack::tests::an_attacker_already_ahead_when_the_goods_go_publishes_rather_than_giving_up ... ok
[INFO] [stdout] test block::tests::rolling_the_extra_nonce_moves_the_merkle_root_and_the_hash ... ok
[INFO] [stdout] test block::tests::two_spends_of_one_coin_to_different_payees_are_different_transactions ... ok
[INFO] [stdout] test block::tests::the_real_genesis_header_hashes_to_the_hash_everyone_knows ... ok
[INFO] [stdout] test attack::tests::the_payment_is_not_handed_out_again_once_a_block_carries_it ... ok
[INFO] [stdout] test block::tests::a_block_commits_to_its_transactions ... ok
[INFO] [stdout] test chain::tests::a_block_that_did_no_work_is_refused ... ok
[INFO] [stdout] test chain::tests::a_block_whose_header_lies_about_its_transactions_is_refused ... ok
[INFO] [stdout] test block::tests::a_header_is_exactly_eighty_bytes_in_bitcoins_order ... ok
[INFO] [stdout] test chain::tests::a_block_nobody_has_the_parent_of_is_an_orphan_and_a_repeat_is_a_duplicate ... ok
[INFO] [stdout] test chain::tests::a_mined_block_really_validates_and_extends_the_chain ... ok
[INFO] [stdout] test chain::tests::a_branch_from_a_block_a_reorg_threw_out_is_carried_over_and_can_still_win ... ok
[INFO] [stdout] test chain::tests::a_reorg_unconfirms_the_payment_and_confirms_the_conflicting_spend ... ok
[INFO] [stdout] test chain::tests::a_block_on_a_block_inside_a_branch_starts_a_branch_rather_than_being_an_orphan ... ok
[INFO] [stdout] test chain::tests::a_coin_spent_inside_a_branch_cannot_be_spent_again_by_a_fork_of_that_branch ... ok
[INFO] [stdout] test attack::tests::an_overwhelming_share_really_undoes_a_confirmed_payment ... ok
[INFO] [stdout] test chain::tests::a_target_hard_enough_saturates_the_work_count_which_is_why_heights_decide ... ok
[INFO] [stdout] test chain::tests::a_block_on_an_older_tip_starts_a_branch_and_a_longer_branch_replaces_the_chain ... ok
[INFO] [stdout] test chain::tests::a_winning_fork_of_a_fork_reports_only_the_blocks_it_really_rolled_back ... ok
[INFO] [stdout] test chain::tests::forking_at_a_height_gives_a_chain_that_does_not_know_the_blocks_above_it ... ok
[INFO] [stdout] test attack::tests::the_merchant_waits_for_the_confirmations_it_was_told_to ... ok
[INFO] [stdout] test engine::tests::measured_process_cpu_stays_within_the_budget_while_threads_take_turns ... ignored, reads the whole process's CPU time, so it has to run alone
[INFO] [stdout] test engine::tests::exactly_the_budget_of_turns_is_open_at_every_moment_and_each_thread_gets_its_share ... ok
[INFO] [stdout] test engine::tests::the_search_loop_and_the_plain_header_hash_agree ... ok
[INFO] [stdout] test engine::tests::giving_up_early_returns_nothing_rather_than_a_bad_block ... ok
[INFO] [stdout] test engine::tests::a_turn_says_when_it_ends_and_a_wait_says_when_it_opens ... ok
[INFO] [stdout] test estimate::tests::difficulty_one_takes_about_ten_minutes_at_the_networks_original_rate ... ok
[INFO] [stdout] test engine::tests::a_block_found_by_the_search_is_really_under_the_target ... ok
[INFO] [stdout] test chain::tests::one_coin_cannot_be_spent_twice_on_the_same_chain ... ok
[INFO] [stdout] test estimate::tests::the_median_is_shorter_than_the_average_because_the_tail_is_long ... ok
[INFO] [stdout] test estimate::tests::waiting_for_ever_is_a_certainty_and_waiting_for_nothing_is_no_chance ... ok
[INFO] [stdout] test estimate::tests::waiting_the_average_is_only_a_sixty_three_percent_chance ... ok
[INFO] [stdout] test hash::tests::a_single_leaf_is_its_own_root ... ok
[INFO] [stdout] test estimate::tests::a_practice_difficulty_is_seconds_rather_than_centuries ... ok
[INFO] [stdout] test hash::tests::changing_one_leaf_changes_the_root ... ok
[INFO] [stdout] test hash::tests::double_sha256_matches_a_known_vector ... ok
[INFO] [stdout] test hash::tests::leading_zero_bits_reads_the_number_the_way_bitcoin_does ... ok
[INFO] [stdout] test estimate::tests::doubling_the_hash_rate_halves_the_wait ... ok
[INFO] [stdout] test estimate::tests::nothing_hashing_means_no_block_ever_rather_than_a_panic ... ok
[INFO] [stdout] test hash::tests::an_odd_level_duplicates_its_last_leaf ... ok
[INFO] [stdout] test hash::tests::the_midstate_gives_the_same_hash_as_hashing_all_80_bytes ... ok
[INFO] [stdout] test engine::tests::a_thread_waiting_for_its_turn_answers_a_stop_or_a_pause_in_milliseconds ... ok
[INFO] [stdout] test miners::tests::a_fifty_one_to_forty_nine_split_lands_on_the_percentages_when_threads_allow ... ok
[INFO] [stdout] test miners::tests::a_tiny_share_still_gets_a_thread_because_a_miner_with_none_is_not_mining ... ok
[INFO] [stdout] test miners::tests::bad_requests_are_refused ... ok
[INFO] [stdout] test miners::tests::raw_thread_counts_alone_leave_the_rest_of_the_budget_unused ... ok
[INFO] [stdout] test miners::tests::raw_thread_counts_are_taken_off_the_top_and_the_rest_is_divided ... ok
[INFO] [stdout] test miners::tests::shares_do_not_have_to_add_up_to_a_hundred ... ok
[INFO] [stdout] test miners::tests::the_parts_always_add_up_to_the_budget ... ok
[INFO] [stdout] test miners::tests::the_same_request_always_splits_the_same_way ... ok
[INFO] [stdout] test mining::tests::a_block_handed_in_as_the_run_stops_is_in_the_last_word ... ok
[INFO] [stdout] test mining::tests::a_run_that_cannot_be_divided_is_refused_before_a_thread_is_started ... ok
[INFO] [stdout] test mining::tests::a_snapshot_taken_before_anything_happens_is_still_readable ... ok
[INFO] [stdout] test mining::tests::finishing_a_run_hands_back_its_last_word_with_every_thread_stopped ... ok
[INFO] [stdout] test engine::tests::threads_taking_turns_still_stop_hashing_within_a_chunk_of_a_pause ... ok
[INFO] [stdout] test target::tests::a_hash_exactly_on_the_target_counts_and_one_step_over_does_not ... ok
[INFO] [stdout] test target::tests::a_mantissa_shifted_away_by_a_short_size_is_a_zero_target_not_a_target_of_zero ... ok
[INFO] [stdout] test target::tests::a_mantissa_with_its_top_bit_set_moves_up_an_exponent ... ok
[INFO] [stdout] test mining::tests::pausing_stops_the_hashing_and_resuming_starts_it_again ... ok
[INFO] [stdout] test mining::tests::real_threads_really_find_blocks_and_the_chain_grows ... ok
[INFO] [stdout] test target::tests::compact_bits_round_trip ... ok
[INFO] [stdout] test target::tests::difficulty_one_encodes_to_the_bits_bitcoin_started_with ... ok
[INFO] [stdout] test target::tests::a_non_canonical_encoding_decodes_the_same_and_re_encodes_canonically ... ok
[INFO] [stdout] test target::tests::expected_hashes_doubles_with_every_extra_zero_bit ... ok
[INFO] [stdout] test target::tests::harder_targets_are_smaller_numbers_and_carry_more_work ... ok
[INFO] [stdout] test target::tests::practice_bits_are_a_target_a_header_can_carry ... ok
[INFO] [stdout] test target::tests::the_encoding_of_the_largest_target_can_be_read_back ... ok
[INFO] [stdout] test target::tests::the_sign_bit_and_a_zero_mantissa_are_refused ... ok
[INFO] [stdout] test target::tests::the_zero_target_message_is_true_of_a_mantissa_that_was_shifted_away ... ok
[INFO] [stdout] test engine::tests::twenty_five_threads_within_two_keep_their_share_and_use_two_cores_at_most ... ok
[INFO] [stdout] test mining::tests::many_threads_on_one_miner_do_not_waste_their_work_on_heights_already_taken ... ok
[INFO] [stdout] test mining::tests::asking_for_more_threads_than_cores_delivers_a_share_the_cores_could_not ... ok
[INFO] [stdout] test mining::tests::the_miner_with_more_threads_does_more_of_the_hashing ... ok
[INFO] [stdout] test attack::tests::a_small_share_falls_behind_and_gives_up_with_the_payment_intact ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 74 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 4.48s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/nmtk-transformer/f8c88e81b1d6a7cb/out/nmtk_transformer-f8c88e81b1d6a7cb)
[INFO] [stdout] 
[INFO] [stdout] running 71 tests
[INFO] [stdout] test corpus::tests::need_more_is_not_always_followed_by_truth ... ok
[INFO] [stdout] test corpus::tests::the_expansion_appears_in_many_contexts ... ok
[INFO] [stdout] test corpus::tests::every_mention_expands_the_same_way ... ok
[INFO] [stdout] test generate::tests::a_model_of_nans_says_nothing ... ok
[INFO] [stdout] test generate::tests::a_score_that_is_not_a_number_is_never_chosen ... ok
[INFO] [stdout] test corpus::tests::the_vocabulary_stays_small_and_plain ... ok
[INFO] [stdout] test generate::tests::a_lower_temperature_concentrates_the_draws ... ok
[INFO] [stdout] test corpus::tests::the_corpus_outruns_the_longest_context ... ok
[INFO] [stdout] test generate::tests::a_seed_makes_sampling_repeat_itself ... ok
[INFO] [stdout] test generate::tests::sampling_follows_the_distribution ... ok
[INFO] [stdout] test layers::tests::layer_norm_gradient_matches_finite_differences ... ok
[INFO] [stdout] test layers::tests::gelu_gradient_matches_finite_differences ... ok
[INFO] [stdout] test generate::tests::temperature_zero_takes_the_highest_score ... ok
[INFO] [stdout] test layers::tests::a_constant_row_does_not_divide_by_zero ... ok
[INFO] [stdout] test layers::tests::gelu_and_its_gradient_stay_numbers_for_huge_inputs ... ok
[INFO] [stdout] test layers::tests::layer_norm_leaves_mean_zero_and_variance_one ... ok
[INFO] [stdout] test layers::tests::softmax_gradient_matches_finite_differences ... ok
[INFO] [stdout] test layers::tests::softmax_survives_scores_that_would_overflow ... ok
[INFO] [stdout] test matrix::tests::backward_kernels_match_a_naive_transpose ... ok
[INFO] [stdout] test matrix::tests::linear_forward_matches_pencil_and_paper ... ok
[INFO] [stdout] test layers::tests::layer_norm_ignores_a_shift_and_a_scale_of_its_input ... ok
[INFO] [stdout] test matrix::tests::the_parallel_path_gives_the_same_bits_as_the_serial_one ... ok
[INFO] [stdout] test layers::tests::softmax_ignores_a_constant_offset ... ok
[INFO] [stdout] test model::tests::a_seed_gives_the_same_weights_every_time ... ok
[INFO] [stdout] test layers::tests::softmax_of_an_infinite_score_is_still_a_distribution ... ok
[INFO] [stdout] test model::tests::an_untrained_model_starts_at_chance ... ok
[INFO] [stdout] test layers::tests::softmax_sums_to_one_and_keeps_the_order ... ok
[INFO] [stdout] test matrix::tests::a_dot_product_of_odd_length_still_uses_the_tail ... ok
[INFO] [stdout] test model::tests::attention_is_causal_and_normalised ... ok
[INFO] [stdout] test model::tests::backward_returns_the_same_loss_as_the_forward_pass ... ok
[INFO] [stdout] test model::tests::both_traversals_visit_the_same_tensors ... ok
[INFO] [stdout] test model::tests::changing_a_later_token_cannot_disturb_an_earlier_position ... ok
[INFO] [stdout] test model::tests::forward_refuses_input_it_cannot_index ... ok
[INFO] [stdout] test model::tests::gradient_check_attention_output_projection ... ok
[INFO] [stdout] test model::tests::gradient_check_attention_queries_keys_values ... ok
[INFO] [stdout] test model::tests::gradient_check_final_layer_norm ... ok
[INFO] [stdout] test model::tests::gradient_check_feed_forward ... ok
[INFO] [stdout] test model::tests::gradient_check_layer_norm_before_attention ... ok
[INFO] [stdout] test model::tests::gradient_check_output_head ... ok
[INFO] [stdout] test model::tests::gradient_check_position_embeddings ... ok
[INFO] [stdout] test model::tests::gradient_check_token_embeddings ... ok
[INFO] [stdout] test model::tests::gradient_check_layer_norm_before_feed_forward ... ok
[INFO] [stdout] test model::tests::heads_must_divide_the_width ... ok
[INFO] [stdout] test model::tests::an_untrained_model_spreads_its_attention_almost_evenly ... ok
[INFO] [stdout] test model::tests::the_counted_parameters_are_the_ones_that_exist ... ok
[INFO] [stdout] test optimizer::tests::a_gradient_too_long_to_square_in_f32_is_still_clipped ... ok
[INFO] [stdout] test optimizer::tests::adamw_takes_steps_of_about_the_learning_rate ... ok
[INFO] [stdout] test optimizer::tests::bias_correction_keeps_every_early_step_the_full_rate ... ok
[INFO] [stdout] test optimizer::tests::clipping_shortens_the_step_without_turning_it ... ok
[INFO] [stdout] test optimizer::tests::sgd_steps_in_proportion_to_the_gradient ... ok
[INFO] [stdout] test optimizer::tests::weight_decay_skips_biases_and_normalisation_scales ... ok
[INFO] [stdout] test tokenizer::tests::the_prompt_is_inside_the_vocabulary ... ok
[INFO] [stdout] test tokenizer::tests::unknown_characters_are_dropped_not_guessed ... ok
[INFO] [stdout] test tokenizer::tests::ids_are_assigned_in_sorted_order_so_two_runs_agree ... ok
[INFO] [stdout] test optimizer::tests::a_short_gradient_is_left_alone ... ok
[INFO] [stdout] test tokenizer::tests::the_corpus_survives_a_round_trip ... ok
[INFO] [stdout] test training::tests::a_machine_profile_decides_the_thread_count ... ok
[INFO] [stdout] test model::tests::gradient_check_every_group_at_a_trained_scale ... ok
[INFO] [stdout] test training::tests::an_absurd_context_is_refused_rather_than_overflowing ... ok
[INFO] [stdout] test training::tests::settings_that_cannot_be_built_are_refused_before_any_work ... ok
[INFO] [stdout] test training::tests::the_defaults_describe_a_model_that_can_be_built ... ok
[INFO] [stdout] test training::tests::a_paused_run_shows_the_step_it_really_stopped_at ... ok
[INFO] [stdout] test training::tests::the_learning_rate_ramps_up_then_decays ... ok
[INFO] [stdout] test training::tests::a_run_can_be_paused_resumed_and_stopped ... ok
[INFO] [stdout] test training::tests::a_snapshot_carries_a_completion_and_its_attention ... ok
[INFO] [stdout] test training::tests::a_finished_run_reports_itself_finished_and_keeps_the_weights ... ok
[INFO] [stdout] test training::tests::a_run_whose_weights_blow_up_finishes_without_inventing_an_answer ... ok
[INFO] [stdout] test training::tests::a_seed_makes_a_whole_run_repeat_itself ... ok
[INFO] [stdout] test training::tests::the_loss_falls_over_a_short_run ... ok
[INFO] [stdout] test training::tests::the_history_never_outgrows_its_cap ... ok
[INFO] [stdout] test training::tests::a_default_run_teaches_the_model_to_answer_the_prompt ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 55.83s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/nmtk-tui/9f1dc6ed82b5e09c/out/nmtk_tui-9f1dc6ed82b5e09c)
[INFO] [stdout] 
[INFO] [stdout] running 42 tests
[INFO] [stdout] test help::tests::every_key_the_shell_answers_to_is_on_this_screen ... ok
[INFO] [stdout] test help::tests::the_two_columns_break_where_a_group_does ... ok
[INFO] [stdout] test tests::a_held_arrow_repeats_and_a_held_enter_does_not ... ok
[INFO] [stdout] test tests::a_signal_or_ctrl_c_gives_the_terminal_back_before_closing_the_quest ... ok
[INFO] [stdout] test tests::a_finished_quest_is_marked_on_the_list_and_remembered ... ok
[INFO] [stdout] test tests::a_terminal_that_will_not_come_back_is_reported_and_the_quest_still_closes ... ok
[INFO] [stdout] test tests::a_damaged_settings_file_is_mentioned_whole_on_the_shelf ... ok
[INFO] [stdout] test tests::a_korean_conversation_reaches_the_reader_whole ... ok
[INFO] [stdout] test tests::a_terminal_shrunk_mid_quest_holds_the_quest_until_it_grows ... ok
[INFO] [stdout] test tests::a_thread_count_from_a_bigger_machine_is_shown_and_stepped_as_this_one ... ok
[INFO] [stdout] test terminal::tests::a_panic_off_the_drawing_thread_is_kept_for_after ... ok
[INFO] [stdout] test tests::changing_a_setting_keeps_the_sentence_that_explains_it ... ok
[INFO] [stdout] test tests::enter_on_the_first_launch_writes_the_settings_and_opens_the_shelf ... ok
[INFO] [stdout] test tests::a_typed_number_reaches_the_value_rather_than_jumping_a_stage ... ok
[INFO] [stdout] test tests::enter_adds_one_beat_at_a_time ... ok
[INFO] [stdout] test tests::sorting_and_filtering_do_not_lose_the_quest ... ok
[INFO] [stdout] test tests::stepping_right_from_auto_never_drops_to_one_thread ... ok
[INFO] [stdout] test tests::tab_walks_the_stages_and_stops_at_the_end ... ok
[INFO] [stdout] test tests::colour_off_draws_no_colour_on_any_screen ... ok
[INFO] [stdout] test tests::the_end_of_a_quest_says_so_and_stops_offering_enter ... ok
[INFO] [stdout] test tests::changing_threads_inside_a_quest_says_when_it_applies ... ok
[INFO] [stdout] test tests::a_small_terminal_says_so_instead_of_drawing_a_broken_screen ... ok
[INFO] [stdout] test tests::the_key_bar_fills_the_row_it_has ... ok
[INFO] [stdout] test tests::help_names_only_keys_that_do_something ... ok
[INFO] [stdout] test tests::opening_a_quest_starts_with_one_sentence_and_its_stages ... ok
[INFO] [stdout] test tests::the_first_launch_says_what_nmtk_is_and_offers_the_language_first ... ok
[INFO] [stdout] test tests::the_key_bar_keeps_the_way_out_at_the_smallest_screen ... ok
[INFO] [stdout] test tests::every_way_out_of_a_quest_closes_it_exactly_once ... ok
[INFO] [stdout] test tests::the_language_screen_lines_up_where_the_glyphs_are_wide ... ok
[INFO] [stdout] test tests::the_prompt_offers_tab_only_where_there_is_a_next_stage ... ok
[INFO] [stdout] test tests::the_keypress_that_reveals_the_last_beat_finishes_the_quest ... ok
[INFO] [stdout] test tests::the_korean_key_bar_keeps_whole_words_at_every_width ... ok
[INFO] [stdout] test tests::the_keys_help_calls_everywhere_work_on_every_screen ... ok
[INFO] [stdout] test tests::the_end_of_a_tuning_stage_shows_what_enter_does_in_both_languages ... ok
[INFO] [stdout] test tests::the_shelf_reads_in_korean_too ... ok
[INFO] [stdout] test tests::the_thread_count_in_settings_reaches_the_quest ... ok
[INFO] [stdout] test tests::the_smallest_screen_still_carries_the_version_the_sort_and_the_fit ... ok
[INFO] [stdout] test tests::the_title_bar_follows_the_language_inside_a_quest ... ok
[INFO] [stdout] test tests::the_shelf_shows_a_quest_at_the_smallest_screen ... ok
[INFO] [stdout] test tests::the_key_that_reveals_the_other_keys_survives_the_smallest_screen ... ok
[INFO] [stdout] test tests::every_screen_keeps_its_content_at_the_smallest_and_a_large_size ... ok
[INFO] [stdout] test tests::the_prompt_on_a_stage_with_knobs_says_what_enter_does_and_that_tab_walks_on ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 42 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 13.77s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/nmtk-zk/3fe7f1e7b69da281/out/nmtk_zk-3fe7f1e7b69da281)
[INFO] [stdout] 
[INFO] [stdout] running 62 tests
[INFO] [stdout] test curve::tests::length_prefixes_keep_neighbouring_parts_apart ... ok
[INFO] [stdout] test curve::tests::points_survive_a_round_trip ... ok
[INFO] [stdout] test fiat_shamir::tests::changing_the_context_invalidates_a_proof ... ok
[INFO] [stdout] test fiat_shamir::tests::an_honest_proof_verifies_under_both_bindings ... ok
[INFO] [stdout] test curve::tests::scalars_survive_a_round_trip ... ok
[INFO] [stdout] test fiat_shamir::tests::the_correct_binding_is_not ... ok
[INFO] [stdout] test curve::tests::the_domain_byte_changes_the_challenge ... ok
[INFO] [stdout] test halo2::tests::a_witness_that_does_not_add_up_does_not ... ok
[INFO] [stdout] test fiat_shamir::tests::the_weak_binding_is_forgeable ... ok
[INFO] [stdout] test halo2::tests::an_amount_above_the_range_does_not ... ok
[INFO] [stdout] test halo2::tests::an_honest_witness_satisfies_the_circuit ... ok
[INFO] [stdout] test fiat_shamir::tests::the_full_binding_moves_with_the_commitment ... ok
[INFO] [stdout] test halo2::tests::an_out_of_range_witness_does_not ... ok
[INFO] [stdout] test halo2::tests::an_amount_above_the_configured_range_is_refused_before_proving ... ok
[INFO] [stdout] test halo2::tests::every_supported_width_leaves_room_for_its_rows ... ok
[INFO] [stdout] test halo2::tests::widths_outside_the_supported_range_are_refused ... ok
[INFO] [stdout] test fiat_shamir::tests::the_run_reports_both_outcomes ... ok
[INFO] [stdout] test rng::tests::different_seeds_diverge ... ok
[INFO] [stdout] test rng::tests::the_same_seed_replays_the_same_bytes ... ok
[INFO] [stdout] test setup::tests::a_duplicated_contribution_does_not_stand_in_for_a_missing_one ... ok
[INFO] [stdout] test setup::tests::an_empty_ceremony_is_refused ... ok
[INFO] [stdout] test setup::tests::an_honest_opening_verifies ... ok
[INFO] [stdout] test setup::tests::knowing_your_own_opening_is_not_enough_without_the_waste ... ok
[INFO] [stdout] test halo2::tests::the_reported_shape_is_the_one_the_circuit_declares ... ok
[INFO] [stdout] test setup::tests::one_destroyed_factor_is_enough ... ok
[INFO] [stdout] test setup::tests::the_run_reports_both_attackers ... ok
[INFO] [stdout] test fiat_shamir::tests::a_weak_forgery_does_not_survive_being_checked_correctly ... ok
[INFO] [stdout] test setup::tests::the_toxic_waste_holder_opens_a_commitment_at_any_value ... ok
[INFO] [stdout] test setup::tests::without_the_waste_the_same_attempt_fails ... ok
[INFO] [stdout] test setup::tests::the_waste_attack_never_touches_the_honest_senders_opening ... ok
[INFO] [stdout] test sigma::tests::a_guessed_response_is_rejected ... ok
[INFO] [stdout] test sigma::tests::a_challenge_before_a_commitment_is_an_error ... ok
[INFO] [stdout] test sigma::tests::a_response_before_a_commitment_is_an_error ... ok
[INFO] [stdout] test sigma::tests::an_honest_proof_verifies ... ok
[INFO] [stdout] test sigma::tests::a_proof_for_someone_elses_statement_is_rejected ... ok
[INFO] [stdout] test sigma::tests::the_same_seed_replays_the_same_transcript ... ok
[INFO] [stdout] test sigma::tests::the_transcript_carries_all_four_messages ... ok
[INFO] [stdout] test sigma::tests::the_challenge_does_not_come_from_the_provers_generator ... ok
[INFO] [stdout] test tests::a_different_seed_gives_different_proof_bytes ... ok
[INFO] [stdout] test halo2::tests::a_proof_does_not_verify_against_a_different_total ... ok
[INFO] [stdout] test halo2::tests::a_tampered_proof_does_not_verify ... ok
[INFO] [stdout] test halo2::tests::an_overspending_proof_does_not ... ok
[INFO] [stdout] test tests::between_systems_only_the_proof_and_the_attacker_change ... ok
[INFO] [stdout] test tests::every_stage_reports_three_numbers ... ok
[INFO] [stdout] test halo2::tests::an_honest_proof_verifies ... ok
[INFO] [stdout] test tests::all_four_stages_run_together ... ok
[INFO] [stdout] test tests::every_stage_accepts_its_honest_proof ... ok
[INFO] [stdout] test tests::the_same_seed_gives_the_same_proof_bytes ... ok
[INFO] [stdout] test tests::only_stage_three_hands_the_attacker_a_secret ... ok
[INFO] [stdout] test tests::the_toxic_waste_holder_needs_nothing_more_and_uses_nothing_it_was_not_given ... ok
[INFO] [stdout] test tests::only_stage_three_depends_on_a_destroyed_secret ... ok
[INFO] [stdout] test tests::what_an_onlooker_sees_of_a_sigma_proof_is_the_proof_and_not_the_statement ... ok
[INFO] [stdout] test views::tests::a_different_amount_moves_the_commitment ... ok
[INFO] [stdout] test views::tests::the_input_value_is_the_amount_plus_the_change ... ok
[INFO] [stdout] test views::tests::the_scenario_is_reproducible ... ok
[INFO] [stdout] test tests::two_stages_never_draw_the_same_nonce ... ok
[INFO] [stdout] test tests::the_onlooker_never_sees_an_amount_or_an_address ... ok
[INFO] [stdout] test tests::only_the_toxic_waste_holder_gets_a_false_statement_accepted ... ok
[INFO] [stdout] test tests::only_the_first_stage_needs_the_verifier_present ... ok
[INFO] [stdout] test tests::the_receiver_learns_the_amount_and_not_the_sender ... ok
[INFO] [stdout] test tests::the_sizes_and_times_the_prose_promises_are_the_ones_measured ... ok
[INFO] [stdout] test tests::stage_four_at_a_chosen_width_is_the_same_run_as_stage_four ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 62 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.49s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests kq_ledgers
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests kq_proof_of_work
[INFO] [stderr]    Doc-tests kq_transformer
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests kq_zero_knowledge
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests nmtk_core
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test crates/nmtk-core/src/format.rs - format::hashrate (line 11) ... ok
[INFO] [stdout] test crates/nmtk-core/src/format.rs - format::bytes (line 24) ... ok
[INFO] [stdout] test crates/nmtk-core/src/format.rs - format::duration (line 69) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 3.29s; merged doctests compilation took 3.10s
[INFO] [stderr]    Doc-tests nmtk_i18n
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests nmtk_kq
[INFO] [stdout] running 1 test
[INFO] [stdout] test crates/nmtk-i18n/src/lib.rs - messages (line 18) ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 2.60s; merged doctests compilation took 2.60s
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests nmtk_ledger
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests nmtk_pow
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests nmtk_transformer
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test crates/nmtk-transformer/src/lib.rs - (line 22) - compile ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 3.20s; merged doctests compilation took 3.20s
[INFO] [stderr]    Doc-tests nmtk_tui
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests nmtk_zk
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca", kill_on_drop: false }`
[INFO] [stdout] 52f02c3288b6ef66cf950ec74e1c3af8b429d2e3e906a22bde70f07e291de5ca
