[INFO] cloning repository https://github.com/gtnao/nano-decoder-only-transformer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/gtnao/nano-decoder-only-transformer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgtnao%2Fnano-decoder-only-transformer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgtnao%2Fnano-decoder-only-transformer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 33495b9e8f4296dd66072ec0ddc7d641a0ab8b45
[INFO] testing gtnao/nano-decoder-only-transformer against 1.95.0 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgtnao%2Fnano-decoder-only-transformer" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-6-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/gtnao/nano-decoder-only-transformer
[INFO] finished tweaking git repo https://github.com/gtnao/nano-decoder-only-transformer
[INFO] tweaked toml for git repo https://github.com/gtnao/nano-decoder-only-transformer written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/gtnao/nano-decoder-only-transformer on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/gtnao/nano-decoder-only-transformer 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.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 66 packages to latest Rust 1.95.0 compatible versions
[INFO] [stderr]       Adding accelerate-src v0.3.2
[INFO] [stderr]       Adding adler2 v2.0.1
[INFO] [stderr]       Adding base64 v0.22.1
[INFO] [stderr]       Adding base64ct v1.8.3
[INFO] [stderr]       Adding blas-src v0.14.0
[INFO] [stderr]       Adding bytes v1.11.1
[INFO] [stderr]       Adding cblas v0.5.0
[INFO] [stderr]       Adding cblas-sys v0.2.0
[INFO] [stderr]       Adding cc v1.2.61
[INFO] [stderr]       Adding core-foundation v0.10.1
[INFO] [stderr]       Adding core-foundation-sys v0.8.7
[INFO] [stderr]       Adding crc32fast v1.5.0
[INFO] [stderr]       Adding der v0.8.0
[INFO] [stderr]       Adding dirs v6.0.0
[INFO] [stderr]       Adding dirs-sys v0.5.0
[INFO] [stderr]       Adding errno v0.3.14
[INFO] [stderr]       Adding fastrand v2.4.1
[INFO] [stderr]       Adding filetime v0.2.27
[INFO] [stderr]       Adding find-msvc-tools v0.1.9
[INFO] [stderr]       Adding flate2 v1.1.9
[INFO] [stderr]       Adding foreign-types v0.3.2
[INFO] [stderr]       Adding foreign-types-shared v0.1.1
[INFO] [stderr]       Adding getrandom v0.2.17
[INFO] [stderr]       Adding http v1.4.0
[INFO] [stderr]       Adding httparse v1.10.1
[INFO] [stderr]       Adding libredox v0.1.16
[INFO] [stderr]       Adding linux-raw-sys v0.12.1
[INFO] [stderr]       Adding miniz_oxide v0.8.9
[INFO] [stderr]       Adding native-tls v0.2.18
[INFO] [stderr]       Adding num-complex v0.4.6
[INFO] [stderr]       Adding num-traits v0.2.19
[INFO] [stderr]       Adding once_cell v1.21.4
[INFO] [stderr]       Adding openblas-build v0.10.15
[INFO] [stderr]       Adding openblas-src v0.10.15
[INFO] [stderr]       Adding openssl v0.10.78
[INFO] [stderr]       Adding openssl-macros v0.1.1
[INFO] [stderr]       Adding openssl-probe v0.2.1
[INFO] [stderr]       Adding openssl-sys v0.9.114
[INFO] [stderr]       Adding option-ext v0.2.0
[INFO] [stderr]       Adding pem-rfc7468 v1.0.0
[INFO] [stderr]       Adding percent-encoding v2.3.2
[INFO] [stderr]       Adding pkg-config v0.3.33
[INFO] [stderr]       Adding plain v0.2.3
[INFO] [stderr]       Adding redox_syscall v0.7.4
[INFO] [stderr]       Adding redox_users v0.5.2
[INFO] [stderr]       Adding rustix v1.1.4
[INFO] [stderr]       Adding rustls-pki-types v1.14.1
[INFO] [stderr]       Adding schannel v0.1.29
[INFO] [stderr]       Adding security-framework v3.7.0
[INFO] [stderr]       Adding security-framework-sys v2.17.0
[INFO] [stderr]       Adding shlex v1.3.0
[INFO] [stderr]       Adding simd-adler32 v0.3.9
[INFO] [stderr]       Adding tar v0.4.45
[INFO] [stderr]       Adding tempfile v3.27.0
[INFO] [stderr]       Adding thiserror v2.0.18
[INFO] [stderr]       Adding thiserror-impl v2.0.18
[INFO] [stderr]       Adding ureq v3.3.0
[INFO] [stderr]       Adding ureq-proto v0.6.0
[INFO] [stderr]       Adding utf8-zero v0.8.1
[INFO] [stderr]       Adding vcpkg v0.2.15
[INFO] [stderr]       Adding wasi v0.11.1+wasi-snapshot-preview1
[INFO] [stderr]       Adding webpki-root-certs v1.0.7
[INFO] [stderr]       Adding windows-link v0.2.1
[INFO] [stderr]       Adding windows-sys v0.61.2
[INFO] [stderr]       Adding xattr v1.6.1
[INFO] [stderr]       Adding zeroize v1.8.2
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded matrixmultiply v0.3.10
[INFO] [stderr]   Downloaded utf8-zero v0.8.1
[INFO] [stderr]   Downloaded openblas-src v0.10.15
[INFO] [stderr]   Downloaded cblas-sys v0.2.0
[INFO] [stderr]   Downloaded libredox v0.1.16
[INFO] [stderr]   Downloaded accelerate-src v0.3.2
[INFO] [stderr]   Downloaded pem-rfc7468 v1.0.0
[INFO] [stderr]   Downloaded redox_syscall v0.7.4
[INFO] [stderr]   Downloaded native-tls v0.2.18
[INFO] [stderr]   Downloaded openblas-build v0.10.15
[INFO] [stderr]   Downloaded openssl-sys v0.9.114
[INFO] [stderr]   Downloaded der v0.8.0
[INFO] [stderr]   Downloaded ureq-proto v0.6.0
[INFO] [stderr]   Downloaded webpki-root-certs v1.0.7
[INFO] [stderr]   Downloaded ureq v3.3.0
[INFO] [stderr]   Downloaded blas-src v0.14.0
[INFO] [stderr]   Downloaded cblas v0.5.0
[INFO] [stderr]   Downloaded openssl v0.10.78
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0945ae9b4e4a59c2c43c079348db71c9ef13c0ddc44e4ad1fa002b684cdc07b3
[INFO] running `Command { std: "docker" "start" "-a" "0945ae9b4e4a59c2c43c079348db71c9ef13c0ddc44e4ad1fa002b684cdc07b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0945ae9b4e4a59c2c43c079348db71c9ef13c0ddc44e4ad1fa002b684cdc07b3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0945ae9b4e4a59c2c43c079348db71c9ef13c0ddc44e4ad1fa002b684cdc07b3", kill_on_drop: false }`
[INFO] [stdout] 0945ae9b4e4a59c2c43c079348db71c9ef13c0ddc44e4ad1fa002b684cdc07b3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d2177d812c9e2c6b0025e886fdc9cbb8a48be493cc29950da6eb467ad89c7de9
[INFO] running `Command { std: "docker" "start" "-a" "d2177d812c9e2c6b0025e886fdc9cbb8a48be493cc29950da6eb467ad89c7de9", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling rand_core v0.10.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling chacha20 v0.10.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling rand v0.10.0
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling nano-decoder-only-transformer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.61s
[INFO] running `Command { std: "docker" "inspect" "d2177d812c9e2c6b0025e886fdc9cbb8a48be493cc29950da6eb467ad89c7de9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d2177d812c9e2c6b0025e886fdc9cbb8a48be493cc29950da6eb467ad89c7de9", kill_on_drop: false }`
[INFO] [stdout] d2177d812c9e2c6b0025e886fdc9cbb8a48be493cc29950da6eb467ad89c7de9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d2e069374f13c1c7acb653b0f8ff4e2df288974938b45832a98fd608a5fc77d2
[INFO] running `Command { std: "docker" "start" "-a" "d2e069374f13c1c7acb653b0f8ff4e2df288974938b45832a98fd608a5fc77d2", kill_on_drop: false }`
[INFO] [stderr]    Compiling nano-decoder-only-transformer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `assert_approx` is never used
[INFO] [stdout]    --> src/loss.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 |     fn assert_approx(a: &[f32], b: &[f32], eps: f32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.82s
[INFO] running `Command { std: "docker" "inspect" "d2e069374f13c1c7acb653b0f8ff4e2df288974938b45832a98fd608a5fc77d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d2e069374f13c1c7acb653b0f8ff4e2df288974938b45832a98fd608a5fc77d2", kill_on_drop: false }`
[INFO] [stdout] d2e069374f13c1c7acb653b0f8ff4e2df288974938b45832a98fd608a5fc77d2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4935d24fe6570fa6e88d53b511f915fcd777cb42ca5503827eaac6cba028e49b
[INFO] running `Command { std: "docker" "start" "-a" "4935d24fe6570fa6e88d53b511f915fcd777cb42ca5503827eaac6cba028e49b", kill_on_drop: false }`
[INFO] [stderr] warning: function `assert_approx` is never used
[INFO] [stderr]    --> src/loss.rs:151:8
[INFO] [stderr]     |
[INFO] [stderr] 151 |     fn assert_approx(a: &[f32], b: &[f32], eps: f32) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `nano-decoder-only-transformer` (bin "nano-decoder-only-transformer" test) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/nano_decoder_only_transformer-bff8e735c1cdd383)
[INFO] [stdout] 
[INFO] [stdout] running 184 tests
[INFO] [stdout] test activation::tests::test_gelu_backward_numerical ... ok
[INFO] [stdout] test activation::tests::test_gelu_known_values ... ok
[INFO] [stdout] test activation::tests::test_gelu_positive_large ... ok
[INFO] [stdout] test activation::tests::test_gelu_preserves_shape ... ok
[INFO] [stdout] test activation::tests::test_gelu_zero ... ok
[INFO] [stdout] test activation::tests::test_relu_backward_mixed ... ok
[INFO] [stdout] test activation::tests::test_relu_backward_negative ... ok
[INFO] [stdout] test activation::tests::test_relu_mixed ... ok
[INFO] [stdout] test activation::tests::test_relu_backward_positive ... ok
[INFO] [stdout] test activation::tests::test_relu_negative ... ok
[INFO] [stdout] test activation::tests::test_relu_positive ... ok
[INFO] [stdout] test activation::tests::test_relu_preserves_shape ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_encode_empty ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_encode_unknown_chars ... ok
[INFO] [stdout] test attention::tests::test_causal_mask_values ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_encode_decode_roundtrip ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_japanese_merges ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_japanese_roundtrip ... ok
[INFO] [stdout] test attention::tests::test_causal_mask_shape ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_train_basic ... ok
[INFO] [stdout] test dropout::tests::test_dropout_backward_matches_mask ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_vocab_size_limit ... ok
[INFO] [stdout] test attention::tests::test_attention_identity_like ... ok
[INFO] [stdout] test attention::tests::test_attention_scaling ... ok
[INFO] [stdout] test attention::tests::test_attention_causal_first_token ... ok
[INFO] [stdout] test attention::tests::test_attention_causal_second_token ... ok
[INFO] [stdout] test attention::tests::test_attention_backward_numerical_with_mask ... ok
[INFO] [stdout] test dropout::tests::test_dropout_shape_preserved ... ok
[INFO] [stdout] test embedding::tests::test_backward_multiple ... ok
[INFO] [stdout] test attention::tests::test_attention_backward_numerical_no_mask ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_merges_reduce_tokens ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_train_merges_most_frequent ... ok
[INFO] [stdout] test embedding::tests::test_backward_duplicate_ids ... ok
[INFO] [stdout] test dropout::tests::test_dropout_zero_rate ... ok
[INFO] [stdout] test attention::tests::test_attention_backward_shapes ... ok
[INFO] [stdout] test embedding::tests::test_backward_numerical ... ok
[INFO] [stdout] test embedding::tests::test_backward_shape ... ok
[INFO] [stdout] test dropout::tests::test_dropout_zeros_some_elements ... ok
[INFO] [stdout] test embedding::tests::test_forward_single ... ok
[INFO] [stdout] test embedding::tests::test_backward_simple ... ok
[INFO] [stdout] test embedding::tests::test_forward_multiple ... ok
[INFO] [stdout] test embedding::tests::test_forward_duplicate_ids ... ok
[INFO] [stdout] test embedding::tests::test_new ... ok
[INFO] [stdout] test feed_forward::tests::test_backward_numerical_d_l1_weight ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_save_load_with_newlines ... ok
[INFO] [stdout] test feed_forward::tests::test_backward_numerical_d_x ... ok
[INFO] [stdout] test bpe_tokenizer::tests::test_save_load_roundtrip ... ok
[INFO] [stdout] test feed_forward::tests::test_forward_position_wise ... ok
[INFO] [stdout] test generate::tests::test_argmax_first ... ok
[INFO] [stdout] test generate::tests::test_argmax_last ... ok
[INFO] [stdout] test feed_forward::tests::test_forward_deterministic ... ok
[INFO] [stdout] test feed_forward::tests::test_forward_known_values ... ok
[INFO] [stdout] test feed_forward::tests::test_rand_shapes ... ok
[INFO] [stdout] test feed_forward::tests::test_forward_shape ... ok
[INFO] [stdout] test generate::tests::test_argmax_negative ... ok
[INFO] [stdout] test generate::tests::test_argmax_basic ... ok
[INFO] [stdout] test embedding::tests::test_rand_shape ... ok
[INFO] [stdout] test attention::tests::test_attention_no_mask_shape ... ok
[INFO] [stdout] test feed_forward::tests::test_backward_shapes ... ok
[INFO] [stdout] test dropout::tests::test_dropout_preserves_expected_value ... ok
[INFO] [stdout] test generate::tests::test_sample_low_temperature ... ok
[INFO] [stdout] test layer_norm::tests::test_forward_known_values ... ok
[INFO] [stdout] test layer_norm::tests::test_backward_numerical_d_input ... ok
[INFO] [stdout] test layer_norm::tests::test_forward_3d ... ok
[INFO] [stdout] test generate::tests::test_sample_returns_valid_index ... ok
[INFO] [stdout] test layer_norm::tests::test_forward_with_gamma_beta ... ok
[INFO] [stdout] test layer_norm::tests::test_backward_numerical_d_gamma ... ok
[INFO] [stdout] test layer_norm::tests::test_backward_shapes ... ok
[INFO] [stdout] test layer_norm::tests::test_forward_zero_mean_unit_var ... ok
[INFO] [stdout] test layer_norm::tests::test_forward_batch ... ok
[INFO] [stdout] test linear::tests::test_new ... ok
[INFO] [stdout] test linear::tests::test_forward ... ok
[INFO] [stdout] test linear::tests::test_forward_batch ... ok
[INFO] [stdout] test linear::tests::test_rand_shape ... ok
[INFO] [stdout] test loss::tests::test_averaged_over_positions ... ok
[INFO] [stdout] test loss::tests::test_backward_sums_to_zero_per_row ... ok
[INFO] [stdout] test generate::tests::test_generate_max_tokens ... ok
[INFO] [stdout] test loss::tests::test_backward_numerical_gradient ... ok
[INFO] [stdout] test loss::tests::test_backward_shape ... ok
[INFO] [stdout] test loss::tests::test_numerical_stability ... ok
[INFO] [stdout] test loss::tests::test_perfect_prediction ... ok
[INFO] [stdout] test loss::tests::test_single_position ... ok
[INFO] [stdout] test loss::tests::test_uniform_prediction ... ok
[INFO] [stdout] test loss::tests::test_worst_prediction ... ok
[INFO] [stdout] test generate::tests::test_generate_returns_string ... ok
[INFO] [stdout] test loss::tests::test_backward_target_position_negative ... ok
[INFO] [stdout] test multi_head_attention::tests::test_forward_causal_shape ... ok
[INFO] [stdout] test multi_head_attention::tests::test_backward_shapes ... ok
[INFO] [stdout] test linear::tests::test_backward_shapes ... ok
[INFO] [stdout] test multi_head_attention::tests::test_forward_shape ... ok
[INFO] [stdout] test multi_head_attention::tests::test_forward_single_head_equals_attention ... ok
[INFO] [stdout] test multi_head_attention::tests::test_rand_shapes ... ok
[INFO] [stdout] test optimizer::tests::test_adam_basic ... ok
[INFO] [stdout] test multi_head_attention::tests::test_forward_deterministic ... ok
[INFO] [stdout] test optimizer::tests::test_adam_multiple_params ... ok
[INFO] [stdout] test generate::tests::test_generate_greedy_deterministic ... ok
[INFO] [stdout] test optimizer::tests::test_adam_convergence ... ok
[INFO] [stdout] test optimizer::tests::test_clip_grad_norm_clips ... ok
[INFO] [stdout] test optimizer::tests::test_clip_grad_norm_multiple_slices ... ok
[INFO] [stdout] test multi_head_attention::tests::test_backward_numerical_d_x ... ok
[INFO] [stdout] test multi_head_attention::tests::test_backward_numerical_d_wo_weight ... ok
[INFO] [stdout] test optimizer::tests::test_clip_grad_norm_no_clip ... ok
[INFO] [stdout] test optimizer::tests::test_lr_schedule_warmup ... ok
[INFO] [stdout] test optimizer::tests::test_sgd_basic ... ok
[INFO] [stdout] test optimizer::tests::test_sgd_convergence ... ok
[INFO] [stdout] test optimizer::tests::test_sgd_zero_gradient ... ok
[INFO] [stdout] test positional_encoding::tests::test_deterministic ... ok
[INFO] [stdout] test positional_encoding::tests::test_different_positions_differ ... ok
[INFO] [stdout] test positional_encoding::tests::test_first_dim_is_sin ... ok
[INFO] [stdout] test positional_encoding::tests::test_position_zero ... ok
[INFO] [stdout] test optimizer::tests::test_lr_schedule_warmup_then_decay ... ok
[INFO] [stdout] test positional_encoding::tests::test_shape ... ok
[INFO] [stdout] test softmax::tests::test_softmax_1d ... ok
[INFO] [stdout] test softmax::tests::test_softmax_2d_row_wise ... ok
[INFO] [stdout] test softmax::tests::test_softmax_3d ... ok
[INFO] [stdout] test positional_encoding::tests::test_values_in_range ... ok
[INFO] [stdout] test softmax::tests::test_softmax_backward_shape ... ok
[INFO] [stdout] test softmax::tests::test_softmax_backward_2d_numerical ... ok
[INFO] [stdout] test softmax::tests::test_softmax_backward_numerical ... ok
[INFO] [stdout] test softmax::tests::test_softmax_numerical_stability ... ok
[INFO] [stdout] test optimizer::tests::test_adam_bias_correction ... ok
[INFO] [stdout] test tensor::tests::test_add ... ok
[INFO] [stdout] test tensor::tests::test_get_2d ... ok
[INFO] [stdout] test softmax::tests::test_softmax_uniform ... ok
[INFO] [stdout] test tensor::tests::test_matmul ... ok
[INFO] [stdout] test activation::tests::test_gelu_negative_large ... ok
[INFO] [stdout] test layer_norm::tests::test_new ... ok
[INFO] [stdout] test linear::tests::test_backward_numerical_gradient ... ok
[INFO] [stdout] test optimizer::tests::test_clip_grad_norm_preserves_direction ... ok
[INFO] [stdout] test optimizer::tests::test_lr_schedule_cosine_decay ... ok
[INFO] [stdout] test tensor::tests::test_get_3d ... ok
[INFO] [stdout] test tensor::tests::test_matmul_non_square ... ok
[INFO] [stdout] test tensor::tests::test_mul ... ok
[INFO] [stdout] test tensor::tests::test_new ... ok
[INFO] [stdout] test tensor::tests::test_set ... ok
[INFO] [stdout] test tensor::tests::test_transpose ... ok
[INFO] [stdout] test tensor::tests::test_zeros ... ok
[INFO] [stdout] test tokenizer::tests::test_corpus_with_spaces_and_newlines ... ok
[INFO] [stdout] test tokenizer::tests::test_decode_roundtrip ... ok
[INFO] [stdout] test tokenizer::tests::test_decode_special_tokens ... ok
[INFO] [stdout] test tokenizer::tests::test_encode_basic ... ok
[INFO] [stdout] test tokenizer::tests::test_encode_empty ... ok
[INFO] [stdout] test tokenizer::tests::test_encode_unknown_char ... ok
[INFO] [stdout] test tokenizer::tests::test_from_corpus ... ok
[INFO] [stdout] test tokenizer::tests::test_from_corpus_dedup ... ok
[INFO] [stdout] test tokenizer::tests::test_sorted_vocab ... ok
[INFO] [stdout] test train::tests::test_prepare_data_basic ... ok
[INFO] [stdout] test train::tests::test_prepare_data_exact ... ok
[INFO] [stdout] test train::tests::test_prepare_data_too_short ... ok
[INFO] [stdout] test embedding::tests::test_new_not_2d - should panic ... ok
[INFO] [stdout] test embedding::tests::test_forward_out_of_range - should panic ... ok
[INFO] [stdout] test train::tests::test_zeros_like_shapes ... ok
[INFO] [stdout] test transformer::tests::test_backward_gradients_nonzero ... ok
[INFO] [stdout] test linear::tests::test_forward_shape_mismatch - should panic ... ok
[INFO] [stdout] test train::tests::test_train_step_batch_returns_finite_loss ... ok
[INFO] [stdout] test train::tests::test_train_step_returns_finite_loss ... ok
[INFO] [stdout] test linear::tests::test_new_bias_shape_mismatch - should panic ... ok
[INFO] [stdout] test transformer::tests::test_forward_deterministic ... ok
[INFO] [stdout] test transformer::tests::test_forward_shape ... ok
[INFO] [stdout] test multi_head_attention::tests::test_d_model_not_divisible_by_n_heads - should panic ... ok
[INFO] [stdout] test tensor::tests::test_matmul_shape_mismatch - should panic ... ok
[INFO] [stdout] test linear::tests::test_new_weight_not_2d - should panic ... ok
[INFO] [stdout] test transformer::tests::test_backward_numerical_d_lm_head_weight ... ok
[INFO] [stdout] test tensor::tests::test_add_shape_mismatch - should panic ... ok
[INFO] [stdout] test transformer::tests::test_rand_structure ... ok
[INFO] [stdout] test tensor::tests::test_new_shape_mismatch - should panic ... ok
[INFO] [stdout] test transformer::tests::test_forward_different_inputs_differ ... ok
[INFO] [stdout] test transformer_block::tests::test_forward_deterministic ... ok
[INFO] [stdout] test transformer_block::tests::test_backward_shapes ... ok
[INFO] [stdout] test transformer::tests::test_forward_logits_are_finite ... ok
[INFO] [stdout] test transformer::tests::test_forward_single_token ... ok
[INFO] [stdout] test transformer_block::tests::test_forward_with_dropout ... ok
[INFO] [stdout] test transformer_block::tests::test_rand ... ok
[INFO] [stdout] test transformer_block::tests::test_forward_different_inputs_differ ... ok
[INFO] [stdout] test transformer_block::tests::test_forward_shape ... ok
[INFO] [stdout] test transformer_block::tests::test_forward_no_dropout_in_eval ... ok
[INFO] [stdout] test transformer::tests::test_backward_shapes ... ok
[INFO] [stdout] test transformer_block::tests::test_residual_connection ... ok
[INFO] [stdout] test transformer_block::tests::test_backward_numerical_d_x ... ok
[INFO] [stdout] test transformer::tests::test_save_load_roundtrip ... ok
[INFO] [stdout] test activation::tests::test_gelu_backward_scales_with_d_output ... ok
[INFO] [stdout] test train::tests::test_train_loss_decreases ... ok
[INFO] [stdout] test train::tests::test_train_with_batch_loss_decreases ... ok
[INFO] [stdout] test train::tests::test_overfit_tiny_sequence ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 184 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.61s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "4935d24fe6570fa6e88d53b511f915fcd777cb42ca5503827eaac6cba028e49b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4935d24fe6570fa6e88d53b511f915fcd777cb42ca5503827eaac6cba028e49b", kill_on_drop: false }`
[INFO] [stdout] 4935d24fe6570fa6e88d53b511f915fcd777cb42ca5503827eaac6cba028e49b
