[INFO] cloning repository https://github.com/tensorspace-ai/gal
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tensorspace-ai/gal" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftensorspace-ai%2Fgal", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftensorspace-ai%2Fgal'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 817d57f2064ae9e44488dbcffdc58fed3c9f5ff6
[INFO] testing tensorspace-ai/gal against 1.100.0-beta.1 for beta-1.100-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftensorspace-ai%2Fgal" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tensorspace-ai/gal
[INFO] finished tweaking git repo https://github.com/tensorspace-ai/gal
[INFO] tweaked toml for git repo https://github.com/tensorspace-ai/gal written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tensorspace-ai/gal 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/tensorspace-ai/gal 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] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-core/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-core` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-server/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-server` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-ot/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-ot` (manifest) generated 1 warning
[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] 6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3
[INFO] running `Command { std: "docker" "start" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3", 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" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3" "/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" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3", 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" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-ot/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-ot` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-core/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-core` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-server/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-server` (manifest) generated 1 warning
[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 cfg-if v1.0.4
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling bytes v1.12.1
[INFO] [stderr]    Compiling memchr v2.8.3
[INFO] [stderr]    Compiling futures-core v0.3.33
[INFO] [stderr]    Compiling zerocopy v0.8.55
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling futures-sink v0.3.33
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling cc v1.4.0
[INFO] [stderr]    Compiling futures-channel v0.3.33
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling futures-io v0.3.33
[INFO] [stderr]    Compiling futures-task v0.3.33
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling litemap v0.8.2
[INFO] [stderr]    Compiling writeable v0.6.3
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling zmij v1.0.23
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling thiserror v2.0.19
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling http v1.4.2
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling rustls-pki-types v1.15.1
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling simd-adler32 v0.3.10
[INFO] [stderr]    Compiling rand_core v0.10.1
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]    Compiling rustls v0.23.43
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling socket2 v0.6.5
[INFO] [stderr]    Compiling mio v1.2.2
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling chacha20 v0.10.1
[INFO] [stderr]    Compiling compression-core v0.4.32
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling compression-codecs v0.4.38
[INFO] [stderr]    Compiling rand v0.10.2
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling data-encoding v2.11.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling http-body v1.1.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling rustls-native-certs v0.8.4
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling scheduled-thread-pool v0.2.7
[INFO] [stderr]    Compiling http-body-util v0.1.4
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling sha1 v0.10.7
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling anyhow v1.0.104
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling base64ct v1.8.3
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling blake2 v0.10.6
[INFO] [stderr]    Compiling r2d2 v0.8.10
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.10
[INFO] [stderr]    Compiling matchit v0.8.4
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling password-hash v0.5.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling argon2 v0.5.3
[INFO] [stderr]    Compiling uuid v1.24.0
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling thiserror-impl v2.0.19
[INFO] [stderr]    Compiling regex-automata v0.4.16
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling rand v0.9.5
[INFO] [stderr]    Compiling rand v0.8.7
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling dashmap v6.2.1
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling tokio-macros v2.7.1
[INFO] [stderr]    Compiling futures-macro v0.3.33
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling tungstenite v0.29.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling gal-ot v0.2.0 (/opt/rustwide/workdir/crates/gal-ot)
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling gal-core v0.2.0 (/opt/rustwide/workdir/crates/gal-core)
[INFO] [stderr]    Compiling futures-util v0.3.33
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling futures-executor v0.3.33
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling futures v0.3.33
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling hyper v1.11.0
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling async-compression v0.4.42
[INFO] [stderr]    Compiling tokio-util v0.7.19
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling tokio-tungstenite v0.29.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling r2d2_sqlite v0.25.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling axum v0.8.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling gal-server v0.2.0 (/opt/rustwide/workdir/crates/gal-server)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 16s
[INFO] running `Command { std: "docker" "inspect" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3", 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" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-ot/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-ot` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-core/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-core` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-server/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-server` (manifest) generated 1 warning
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling fastrand v2.5.0
[INFO] [stderr]    Compiling gal-core v0.2.0 (/opt/rustwide/workdir/crates/gal-core)
[INFO] [stderr]    Compiling gal-ot v0.2.0 (/opt/rustwide/workdir/crates/gal-ot)
[INFO] [stderr]    Compiling rusqlite v0.32.1
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling r2d2_sqlite v0.25.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling gal-server v0.2.0 (/opt/rustwide/workdir/crates/gal-server)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 17.85s
[INFO] running `Command { std: "docker" "inspect" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3", 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" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-ot/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-ot` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-core/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-core` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/gal-server/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `gal-server` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.23s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/gal-core/d5701e8346b872d7/out/gal_core-d5701e8346b872d7)
[INFO] [stdout] 
[INFO] [stdout] running 29 tests
[INFO] [stdout] test model::tests::a_frozen_wave_permits_nothing_any_other_mode_permits ... ok
[INFO] [stdout] test model::tests::an_unreadable_mode_is_rejected_rather_than_defaulted ... ok
[INFO] [stdout] test model::tests::announcement_restricts_posting_to_the_creator_but_stays_writable ... ok
[INFO] [stdout] test model::tests::a_thread_is_open_until_someone_is_recorded_as_closing_it ... ok
[INFO] [stdout] test model::tests::a_client_minted_comment_id_must_look_like_one ... ok
[INFO] [stdout] test model::tests::colour_is_stable_and_in_range ... ok
[INFO] [stdout] test model::tests::any_mode_that_can_open_a_thread_can_also_close_one ... ok
[INFO] [stdout] test model::tests::commenting_is_notepads_alone ... ok
[INFO] [stdout] test model::tests::chat_lets_you_edit_only_your_own_messages ... ok
[INFO] [stdout] test model::tests::document_mode_is_the_default_and_permits_everything ... ok
[INFO] [stdout] test model::tests::contributors_keep_first_contribution_order_without_duplicates ... ok
[INFO] [stdout] test model::tests::every_mode_round_trips_through_its_stored_value ... ok
[INFO] [stdout] test model::tests::frozen_permits_nothing ... ok
[INFO] [stdout] test model::tests::notepad_is_a_single_editable_page ... ok
[INFO] [stdout] test model::tests::only_document_and_announcement_thread ... ok
[INFO] [stdout] test model::tests::identifiers_are_unique_and_prefixed ... ok
[INFO] [stdout] test model::tests::preview_of_empty_document_is_empty ... ok
[INFO] [stdout] test model::tests::preview_takes_the_first_non_empty_line_and_truncates ... ok
[INFO] [stdout] test model::tests::resolving_outlives_the_mode_that_allowed_commenting ... ok
[INFO] [stdout] test model::tests::public_projection_omits_credentials ... ok
[INFO] [stdout] test protocol::tests::client_messages_use_tagged_camel_case ... ok
[INFO] [stdout] test protocol::tests::error_codes_serialise_as_stable_strings ... ok
[INFO] [stdout] test protocol::tests::unknown_message_types_are_rejected_not_ignored ... ok
[INFO] [stdout] test protocol::tests::optional_fields_may_be_omitted_by_the_client ... ok
[INFO] [stdout] test protocol::tests::correctly_spelled_messages_still_parse ... ok
[INFO] [stdout] test protocol::tests::unknown_message_fields_are_rejected_too ... ok
[INFO] [stdout] test protocol::tests::server_messages_round_trip ... ok
[INFO] [stdout] test protocol::tests::no_message_field_is_snake_case ... ok
[INFO] [stdout] test protocol::tests::every_client_message_round_trips ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 29 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/debug/build/gal-ot/11173acca48a1aa0/out/gal_ot-11173acca48a1aa0)
[INFO] [stdout] 
[INFO] [stdout] running 72 tests
[INFO] [stdout] test tests::chop_removes_trailing_bare_retain ... ok
[INFO] [stdout] test tests::compose_applies_delete_to_document ... ok
[INFO] [stdout] test attributes::tests::compose_lets_b_win_conflicts ... ok
[INFO] [stdout] test attributes::tests::compose_null_handling_depends_on_keep_null ... ok
[INFO] [stdout] test attributes::tests::compose_merges_disjoint_keys ... ok
[INFO] [stdout] test attributes::tests::invert_of_noop_is_empty ... ok
[INFO] [stdout] test attributes::tests::invert_restores_overwritten_and_removes_added ... ok
[INFO] [stdout] test attributes::tests::transform_with_priority_drops_conflicts ... ok
[INFO] [stdout] test attributes::tests::transform_without_priority_is_identity ... ok
[INFO] [stdout] test attributes::tests::invert_roundtrips_through_compose ... ok
[INFO] [stdout] test tests::compose_applies_insert_to_document ... ok
[INFO] [stdout] test tests::a_delta_with_a_misspelled_key_is_rejected_rather_than_read_as_empty ... ok
[INFO] [stdout] test tests::compose_applies_formatting ... ok
[INFO] [stdout] test tests::compose_is_associative ... ok
[INFO] [stdout] test tests::a_hostile_op_is_refused_without_touching_the_document ... ok
[INFO] [stdout] test tests::compose_of_insert_then_delete_cancels_out ... ok
[INFO] [stdout] test tests::compose_removes_formatting_with_null ... ok
[INFO] [stdout] test tests::cursor_at_insertion_point_respects_priority ... ok
[INFO] [stdout] test tests::concurrent_clients_converge_through_the_server ... ok
[INFO] [stdout] test tests::cursor_inside_deleted_range_collapses_to_its_start ... ok
[INFO] [stdout] test tests::cursor_shifts_past_earlier_insert ... ok
[INFO] [stdout] test tests::convergence_with_astral_characters ... ok
[INFO] [stdout] test tests::diff_of_identical_text_is_empty ... ok
[INFO] [stdout] test tests::diff_produces_minimal_affixes ... ok
[INFO] [stdout] test tests::diff_detects_common_edit_shapes ... ok
[INFO] [stdout] test tests::convergence_on_handpicked_cases ... ok
[INFO] [stdout] test tests::invert_undoes_delete_restoring_exact_text ... ok
[INFO] [stdout] test tests::invert_undoes_formatting ... ok
[INFO] [stdout] test tests::invert_undoes_insert ... ok
[INFO] [stdout] test tests::embeds_round_trip_and_occupy_one_unit ... ok
[INFO] [stdout] test tests::lengths_saturate_instead_of_wrapping ... ok
[INFO] [stdout] test tests::json_round_trips_in_quill_format ... ok
[INFO] [stdout] test tests::lengths_are_measured_correctly ... ok
[INFO] [stdout] test tests::invert_undoes_mixed_change ... ok
[INFO] [stdout] test tests::push_does_not_merge_across_differing_attributes ... ok
[INFO] [stdout] test tests::malformed_ops_are_rejected ... ok
[INFO] [stdout] test tests::push_orders_insert_before_delete_at_same_position ... ok
[INFO] [stdout] test tests::push_merges_adjacent_text ... ok
[INFO] [stdout] test tests::readme_example_is_correct ... ok
[INFO] [stdout] test tests::push_merges_adjacent_deletes_and_retains ... ok
[INFO] [stdout] test tests::rollback_on_an_empty_document_is_a_no_op ... ok
[INFO] [stdout] test tests::replay_from_op_log_matches_live_document ... ok
[INFO] [stdout] test tests::server_applies_sequential_ops ... ok
[INFO] [stdout] test tests::rollback_restores_the_exact_previous_state ... ok
[INFO] [stdout] test tests::server_playback_preserves_formatting_history ... ok
[INFO] [stdout] test tests::server_playback_reconstructs_earlier_revisions ... ok
[INFO] [stdout] test tests::server_rebases_a_stale_concurrent_op ... ok
[INFO] [stdout] test tests::server_rejects_ops_that_split_a_character ... ok
[INFO] [stdout] test tests::server_rejects_revisions_from_the_future ... ok
[INFO] [stdout] test tests::server_rejects_ops_longer_than_the_document ... ok
[INFO] [stdout] test tests::slice_extracts_a_range_preserving_attributes ... ok
[INFO] [stdout] test tests::transform_breaks_insert_ties_by_priority ... ok
[INFO] [stdout] test tests::transform_drops_ops_targeting_already_deleted_text ... ok
[INFO] [stdout] test tests::transform_of_two_deletes_does_not_double_delete ... ok
[INFO] [stdout] test tests::transform_shifts_concurrent_insert ... ok
[INFO] [stdout] test tests::validate_accepts_well_formed_changes ... ok
[INFO] [stdout] test tests::transform_resolves_attribute_conflicts_by_priority ... ok
[INFO] [stdout] test tests::validate_counts_an_embed_as_one_unit ... ok
[INFO] [stdout] test tests::validate_does_not_overflow_on_a_hostile_length ... ok
[INFO] [stdout] test tests::validate_rejects_boundary_inside_a_surrogate_pair ... ok
[INFO] [stdout] test tests::validate_rejects_changes_past_the_end ... ok
[INFO] [stdout] test tests::zero_length_ops_are_dropped ... ok
[INFO] [stdout] test text::tests::advance_is_incremental ... ok
[INFO] [stdout] test text::tests::ascii_lengths ... ok
[INFO] [stdout] test text::tests::astral_chars_count_as_two_units ... ok
[INFO] [stdout] test text::tests::bmp_multibyte_counts_as_one_unit ... ok
[INFO] [stdout] test text::tests::slicing_by_utf16_offsets ... ok
[INFO] [stdout] test text::tests::slicing_clamps_out_of_range ... ok
[INFO] [stdout] test text::tests::split_inside_surrogate_pair_rounds_up ... ok
[INFO] [stdout] test tests::server_converges_under_random_concurrent_load ... ok
[INFO] [stdout] test tests::invert_property_over_random_operations ... ok
[INFO] [stdout] test tests::convergence_property_over_random_operations ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 72 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/conformance.rs (/opt/rustwide/target/debug/build/gal-ot/552f037a795e65d1/out/conformance-552f037a795e65d1)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test the_rust_engine_reproduces_every_frozen_vector ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.22s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/gal-server/114a75b07715e814/out/gal_server-114a75b07715e814)
[INFO] [stdout] 
[INFO] [stdout] running 171 tests
[INFO] [stdout] test auth::tests::a_password_is_judged_on_more_than_its_length ... ok
[INFO] [stdout] test auth::tests::a_derived_name_always_passes_the_rule_it_was_derived_against ... ok
[INFO] [stdout] test auth::tests::clearing_cookie_expires_it_immediately ... ok
[INFO] [stdout] test auth::tests::a_provider_name_is_reduced_to_something_this_application_accepts ... ok
[INFO] [stdout] test auth::tests::cookie_is_httponly_and_respects_the_secure_switch ... ok
[INFO] [stdout] test auth::tests::cookie_parsing_finds_the_session_among_others ... ok
[INFO] [stdout] test auth::tests::every_common_password_is_long_enough_to_be_reachable ... ok
[INFO] [stdout] test auth::tests::malformed_stored_hash_fails_closed ... ok
[INFO] [stdout] test auth::tests::origin_check_allows_same_origin_and_configured_origins ... ok
[INFO] [stdout] test auth::tests::origin_check_rejects_foreign_and_sibling_origins ... ok
[INFO] [stdout] test auth::tests::signup_validation_normalises_and_rejects ... ok
[INFO] [stdout] test auth::tests::tokens_are_unique_and_hashing_is_stable ... ok
[INFO] [stdout] test config::tests::an_unrecognised_spelling_is_refused_rather_than_read_as_off ... ok
[INFO] [stdout] test config::tests::truthiness_accepts_common_spellings ... ok
[INFO] [stdout] test config::tests::urls_split_into_scheme_and_host ... ok
[INFO] [stdout] test config::tests::plain_http_is_permitted_only_to_this_machine ... ok
[INFO] [stdout] test config::tests::something_that_merely_looks_like_loopback_is_not ... ok
[INFO] [stdout] test config::tests::the_client_secret_stays_out_of_the_debug_output ... ok
[INFO] [stdout] test db::tests::a_database_that_is_not_recognisably_gal_is_refused ... ok
[INFO] [stdout] test db::tests::a_cancelled_database_caller_does_not_free_a_running_workers_slot ... ok
[INFO] [stdout] test db::tests::numbering_a_long_name_keeps_it_inside_the_rules ... ok
[INFO] [stdout] test db::tests::a_taken_name_is_numbered_rather_than_refused ... ok
[INFO] [stdout] test db::tests::an_attachment_is_readable_only_inside_the_wavelet_it_was_uploaded_to ... ok
[INFO] [stdout] test db::tests::an_attached_file_is_findable_by_its_name ... ok
[INFO] [stdout] test db::tests::an_external_identity_creates_an_account_once_and_is_known_after ... ok
[INFO] [stdout] test db::tests::flags_default_to_false_and_persist ... ok
[INFO] [stdout] test agent::tests::cancelling_the_http_handler_does_not_leave_memory_behind_storage ... ok
[INFO] [stdout] test db::tests::creating_a_wave_sets_up_a_root_wavelet ... ok
[INFO] [stdout] test db::tests::editing_a_blip_makes_it_unread_again ... ok
[INFO] [stdout] test db::tests::inbox_reports_snippet_counts_and_unread ... ok
[INFO] [stdout] test db::tests::a_corrupt_blip_is_reported_rather_than_read_as_empty ... ok
[INFO] [stdout] test db::tests::snippet_highlighting_escapes_markup_but_keeps_the_mark ... ok
[INFO] [stdout] test db::tests::deleting_an_annotated_blip_rolls_back_the_whole_thread_on_failure ... ok
[INFO] [stdout] test db::tests::playback_returns_ops_in_order ... ok
[INFO] [stdout] test db::tests::resolve_names_reports_unknown_users ... ok
[INFO] [stdout] test db::tests::removing_a_participant_hides_the_wave ... ok
[INFO] [stdout] test db::tests::search_input_with_punctuation_does_not_error ... ok
[INFO] [stdout] test db::tests::private_replies_are_invisible_to_outsiders ... ok
[INFO] [stdout] test db::tests::search_snippets_cannot_inject_html ... ok
[INFO] [stdout] test db::tests::sessions_expire_and_can_be_revoked ... ok
[INFO] [stdout] test db::tests::search_finds_edited_text_and_ignores_deleted_blips ... ok
[INFO] [stdout] test db::tests::search_matches_prefixes_for_type_ahead ... ok
[INFO] [stdout] test db::tests::two_providers_may_both_number_their_subjects_from_one ... ok
[INFO] [stdout] test db::tests::a_pre_versioning_database_is_migrated_not_mis_stamped ... ok
[INFO] [stdout] test db::tests::users_round_trip_and_names_are_unique ... ok
[INFO] [stdout] test db::tests::scoped_summaries_agree_with_the_bulk_inbox ... ok
[INFO] [stdout] test db::tests::a_fresh_database_and_an_upgraded_one_agree ... ok
[INFO] [stdout] test db::tests::upgrading_search_keys_preserves_results_and_targets_one_blip ... ok
[INFO] [stdout] test db::tests::the_upload_allowance_holds_against_concurrent_uploads ... ok
[INFO] [stdout] test e2e::a_bad_code_fails_without_repeating_the_provider_s_complaint ... ok
[INFO] [stdout] test e2e::a_callback_cannot_be_replayed ... ok
[INFO] [stdout] test e2e::a_callback_that_did_not_start_here_is_refused ... ok
[INFO] [stdout] test e2e::a_discovery_document_naming_another_issuer_is_refused ... ok
[INFO] [stdout] test e2e::a_first_provider_sign_in_creates_an_account_and_a_working_session ... ok
[INFO] [stdout] test e2e::a_disconnect_while_a_command_is_busy_is_not_lost ... ok
[INFO] [stdout] test e2e::a_failed_greeting_releases_the_connection_slot ... ok
[INFO] [stdout] test e2e::a_comment_cannot_be_hung_on_a_comment ... ok
[INFO] [stdout] test e2e::a_failed_agent_receipt_write_rolls_back_the_message_and_can_be_retried ... ok
[INFO] [stdout] test e2e::a_flood_of_expensive_commands_is_refused ... ok
[INFO] [stdout] test e2e::a_comment_id_the_server_would_not_mint_is_refused ... ok
[INFO] [stdout] test e2e::a_document_cannot_be_shattered_into_unlimited_runs ... ok
[INFO] [stdout] test e2e::a_mode_change_is_never_destructive ... ok
[INFO] [stdout] test e2e::a_blip_cannot_be_grown_past_its_limit_one_edit_at_a_time ... ok
[INFO] [stdout] test e2e::a_provider_name_that_is_not_a_username_still_yields_an_account ... ok
[INFO] [stdout] test e2e::a_provider_that_refuses_sends_the_browser_home_without_a_session ... ok
[INFO] [stdout] test e2e::a_comment_reaches_the_other_participant_live ... ok
[INFO] [stdout] test e2e::a_failed_private_reply_does_not_leave_a_wavelet_or_membership ... ok
[INFO] [stdout] test e2e::a_non_participant_cannot_mark_read_or_flag_a_wave ... ok
[INFO] [stdout] test e2e::a_frozen_wave_stays_frozen_inside_a_private_reply ... ok
[INFO] [stdout] test e2e::a_provider_name_already_taken_is_numbered ... ok
[INFO] [stdout] test e2e::a_replayed_op_is_still_acknowledged_after_the_wave_freezes ... ok
[INFO] [stdout] test e2e::a_remark_cannot_be_deleted_out_from_under_its_thread ... ok
[INFO] [stdout] test e2e::a_resolved_thread_refuses_a_remark_rather_than_hiding_it ... ok
[INFO] [stdout] test e2e::a_non_participant_cannot_open_a_wave ... ok
[INFO] [stdout] test auth::tests::password_verifies_only_against_itself ... ok
[INFO] [stdout] test auth::tests::hashes_are_salted_so_equal_passwords_differ ... ok
[INFO] [stdout] test e2e::a_panicking_command_takes_down_one_connection_and_no_more ... ok
[INFO] [stdout] test e2e::account_wide_signout_also_revokes_agent_credentials ... ok
[INFO] [stdout] test e2e::a_thread_can_still_be_settled_after_the_mode_moves_on ... ok
[INFO] [stdout] test e2e::a_rejected_edit_tells_the_client_which_message_to_reset ... ok
[INFO] [stdout] test e2e::a_comment_in_a_private_reply_stays_inside_it ... ok
[INFO] [stdout] test e2e::agent_context_is_bounded_scoped_and_tracks_committed_edits ... ok
[INFO] [stdout] test e2e::a_remark_does_not_become_the_inbox_preview ... ok
[INFO] [stdout] test e2e::a_wave_can_be_created_and_read_by_both_participants ... ok
[INFO] [stdout] test e2e::a_thread_can_be_closed_and_reopened_without_losing_anything ... ok
[INFO] [stdout] test e2e::agent_replies_are_delivered_once_and_replayed_after_freezing_and_restart ... ok
[INFO] [stdout] test e2e::agent_requests_reject_invalid_bounds_and_do_not_accept_session_credentials ... ok
[INFO] [stdout] test e2e::a_private_reply_is_never_sent_to_outsiders ... ok
[INFO] [stdout] test e2e::an_agent_credential_revoked_while_waiting_for_the_wave_lock_cannot_post ... ok
[INFO] [stdout] test e2e::an_oversized_embed_is_refused_by_name_and_leaves_the_blip_usable ... ok
[INFO] [stdout] test e2e::an_op_against_an_impossible_revision_is_refused_without_corrupting_the_document ... ok
[INFO] [stdout] test e2e::an_attribute_the_document_model_does_not_define_is_refused_by_name ... ok
[INFO] [stdout] test e2e::an_upgrade_finishing_after_shutdown_closes_too ... ok
[INFO] [stdout] test e2e::agent_credentials_cannot_outlive_membership_expiry_or_revocation ... ok
[INFO] [stdout] test e2e::adding_a_participant_grants_access_and_updates_their_inbox ... ok
[INFO] [stdout] test e2e::every_response_carries_a_request_id ... ok
[INFO] [stdout] test e2e::an_open_socket_closes_when_its_session_expires ... ok
[INFO] [stdout] test e2e::concurrent_upgrades_share_one_connection_allowance ... ok
[INFO] [stdout] test e2e::chat_mode_refuses_threaded_replies ... ok
[INFO] [stdout] test e2e::metrics_are_off_until_a_token_is_configured ... ok
[INFO] [stdout] test e2e::an_op_write_failure_restores_contributors_and_timestamps_too ... ok
[INFO] [stdout] test e2e::deleting_the_anchored_text_detaches_the_thread_but_keeps_it ... ok
[INFO] [stdout] test e2e::distinct_ops_with_different_ids_both_apply ... ok
[INFO] [stdout] test e2e::edits_survive_a_reconnect ... ok
[INFO] [stdout] test e2e::an_anchor_moves_with_its_text_when_someone_types_in_front_of_it ... ok
[INFO] [stdout] test e2e::failed_seed_writes_do_not_leave_partial_waves_or_messages ... ok
[INFO] [stdout] test e2e::agent_replies_obey_scope_wavelet_and_all_wave_modes ... ok
[INFO] [stdout] test e2e::every_content_command_is_refused_by_a_frozen_wave ... ok
[INFO] [stdout] test e2e::malformed_messages_do_not_kill_the_connection ... ok
[INFO] [stdout] test e2e::metrics_need_the_token_and_then_report_real_activity ... ok
[INFO] [stdout] test e2e::chat_mode_refuses_edits_to_someone_elses_message ... ok
[INFO] [stdout] test e2e::one_account_cannot_hold_unlimited_sockets ... ok
[INFO] [stdout] test e2e::playback_does_not_replay_a_deleted_blip ... ok
[INFO] [stdout] test e2e::playback_replays_the_whole_history ... ok
[INFO] [stdout] test e2e::concurrent_edits_to_one_blip_converge ... ok
[INFO] [stdout] test e2e::ordinary_typing_never_reaches_the_allowance ... ok
[INFO] [stdout] test e2e::frozen_mode_refuses_every_content_change ... ok
[INFO] [stdout] test e2e::concurrent_replies_get_distinct_positions_and_a_stable_order ... ok
[INFO] [stdout] test e2e::only_the_creator_can_remove_someone_else ... ok
[INFO] [stdout] test e2e::queued_password_work_does_not_block_live_sockets_or_bypass_account_lockout ... ok
[INFO] [stdout] test e2e::only_a_notepad_takes_comments ... ok
[INFO] [stdout] test e2e::only_the_creator_can_change_the_mode ... ok
[INFO] [stdout] test e2e::failed_metadata_writes_leave_the_resident_wave_unchanged ... ok
[INFO] [stdout] test e2e::the_login_screen_is_told_whether_a_provider_exists ... ok
[INFO] [stdout] test e2e::private_reply_creation_and_eviction_share_the_wave_lock ... ok
[INFO] [stdout] test e2e::the_websocket_requires_authentication ... ok
[INFO] [stdout] test e2e::the_same_subject_comes_back_to_the_same_account ... ok
[INFO] [stdout] test http::tests::an_image_is_recognised_by_its_bytes_and_nothing_else ... ok
[INFO] [stdout] test e2e::the_token_request_authenticates_the_client_and_carries_the_verifier ... ok
[INFO] [stdout] test http::tests::every_asset_is_non_empty_and_uniquely_routed ... ok
[INFO] [stdout] test http::tests::filenames_are_stripped_of_paths_and_anything_a_header_cannot_carry ... ok
[INFO] [stdout] test http::tests::non_ascii_filenames_survive_as_the_encoded_form ... ok
[INFO] [stdout] test http::tests::the_csp_never_widens_a_directive_to_a_whole_scheme ... ok
[INFO] [stdout] test http::tests::the_shell_answers_for_client_routes_and_nothing_else ... ok
[INFO] [stdout] test limit::tests::a_burst_is_allowed_then_refused ... ok
[INFO] [stdout] test limit::tests::a_large_active_map_is_pruned_once_per_interval ... ok
[INFO] [stdout] test limit::tests::allowance_refills_over_time ... ok
[INFO] [stdout] test limit::tests::forwarded_header_is_used_only_when_trusted ... ok
[INFO] [stdout] test limit::tests::keys_are_independent ... ok
[INFO] [stdout] test limit::tests::pruning_does_not_refill_an_account_before_its_tokens_are_due ... ok
[INFO] [stdout] test metrics::tests::gauges_come_back_down ... ok
[INFO] [stdout] test metrics::tests::the_exposition_is_well_formed ... ok
[INFO] [stdout] test e2e::replaying_an_op_after_a_reconnect_does_not_apply_it_twice ... ok
[INFO] [stdout] test oidc::tests::a_flow_can_be_spent_only_once ... ok
[INFO] [stdout] test oidc::tests::only_the_digest_of_the_flow_secret_is_held ... ok
[INFO] [stdout] test oidc::tests::the_flow_cookie_is_found_among_others ... ok
[INFO] [stdout] test oidc::tests::the_flow_cookie_is_scoped_and_out_of_reach_of_script ... ok
[INFO] [stdout] test oidc::tests::the_pkce_challenge_is_the_sha256_of_the_verifier ... ok
[INFO] [stdout] test oidc::tests::urlencoding_escapes_what_would_otherwise_break_the_query ... ok
[INFO] [stdout] test ws::tests::a_command_that_reads_the_disk_costs_more_than_one_that_does_not ... ok
[INFO] [stdout] test ws::tests::a_refused_edit_says_which_message_to_reload ... ok
[INFO] [stdout] test ws::tests::attributes_outside_the_document_model_are_refused ... ok
[INFO] [stdout] test ws::tests::embeds_must_be_small_objects ... ok
[INFO] [stdout] test ws::tests::ordinary_text_passes_the_embed_check ... ok
[INFO] [stdout] test ws::tests::the_formatting_the_client_uses_is_accepted ... ok
[INFO] [stdout] test ws::tests::titles_are_trimmed_bounded_and_never_empty ... ok
[INFO] [stdout] test e2e::search_finds_a_wave_by_its_contents ... ok
[INFO] [stdout] test e2e::seed_content_that_is_not_a_document_is_rejected ... ok
[INFO] [stdout] test e2e::registering_an_unrelated_account_does_not_expand_wave_caches ... ok
[INFO] [stdout] test e2e::shutting_down_closes_the_sockets_instead_of_dropping_them ... ok
[INFO] [stdout] test http::tests::dummy_hash_is_valid_so_timing_equalisation_actually_runs ... ok
[INFO] [stdout] test oidc::tests::flows_in_flight_are_capped ... ok
[INFO] [stdout] test e2e::the_greeting_carries_an_inbox_with_unread_counts ... ok
[INFO] [stdout] test e2e::changing_a_password_revokes_other_sessions ... ok
[INFO] [stdout] test e2e::presence_does_not_reveal_that_a_private_reply_exists ... ok
[INFO] [stdout] test e2e::removing_someone_from_a_wave_takes_their_private_replies_with_them ... ok
[INFO] [stdout] test e2e::threaded_replies_are_delivered_live ... ok
[INFO] [stdout] test e2e::sessions_can_be_revoked_without_changing_the_password ... ok
[INFO] [stdout] test e2e::rapid_interleaved_typing_converges ... ok
[INFO] [stdout] test e2e::repeated_wrong_guesses_lock_the_account_not_just_the_address ... ok
[INFO] [stdout] test e2e::session_revocation_closes_existing_sockets_and_preserves_other_sessions ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 171 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 14.70s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests gal_core
[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 gal_ot
[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" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3", kill_on_drop: false }`
[INFO] [stdout] 6377284afe55de72250348caecd7a0ab36e496ba62d82639ae9445e91f6d1fd3
