[INFO] fetching crate research-agent 0.2.6...
[INFO] testing research-agent-0.2.6 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate research-agent 0.2.6 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate research-agent 0.2.6
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate research-agent 0.2.6
[INFO] tweaked toml for crates.io crate research-agent 0.2.6 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate research-agent 0.2.6 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 crates.io crate research-agent 0.2.6 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]    --> Cargo.toml:117:12
[INFO] [stderr]     |
[INFO] [stderr] 117 | homepage = "https://github.com/epicsagas/research-agent"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 122 | repository = "https://github.com/epicsagas/research-agent"
[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: `research-agent` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78
[INFO] running `Command { std: "docker" "start" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78", 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" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78" "/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" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78", 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" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78" "/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]    --> Cargo.toml:117:12
[INFO] [stderr]     |
[INFO] [stderr] 117 | homepage = "https://github.com/epicsagas/research-agent"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 122 | repository = "https://github.com/epicsagas/research-agent"
[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: `research-agent` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling syn v3.0.5
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling cc v1.2.63
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling aws-lc-rs v1.18.1
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling http v1.4.1
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling litemap v0.8.2
[INFO] [stderr]    Compiling writeable v0.6.3
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rand_core v0.10.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling bitflags v2.12.1
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling aws-lc-sys v0.45.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling rustls v0.23.45
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling block-padding v0.3.3
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling tinyvec v1.11.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling darling_core v0.24.1
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling base64 v0.23.1
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling chacha20 v0.10.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.38.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling rustls-native-certs v0.8.4
[INFO] [stderr]    Compiling darling_macro v0.24.1
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling unicode-properties v0.1.4
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling pom v1.1.0
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling stringprep v0.1.5
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling darling v0.24.1
[INFO] [stderr]    Compiling rand v0.10.2
[INFO] [stderr]    Compiling ureq-proto v0.6.2
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling cbc v0.1.2
[INFO] [stderr]    Compiling ecb v0.1.2
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling webpki-roots v1.0.9
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling winnow v1.0.3
[INFO] [stderr]    Compiling weezl v0.1.12
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling utf8-zero v0.8.1
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling rangemap v1.7.1
[INFO] [stderr]    Compiling rmcp v3.2.0
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling ttf-parser v0.25.1
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling console v0.16.4
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling clap_builder v4.6.6
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling rmcp-macros v3.2.0
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling hashlink v0.11.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling type1-encoding-parser v0.1.1
[INFO] [stderr]    Compiling lopdf v0.42.0
[INFO] [stderr]    Compiling adobe-cmap-parser v0.4.1
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling clap_derive v4.6.4
[INFO] [stderr]    Compiling euclid v0.20.14
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling uuid v1.23.2
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling unscanny v0.1.0
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling roman-numerals-rs v3.1.0
[INFO] [stderr]    Compiling pastey v0.2.3
[INFO] [stderr]    Compiling cff-parser v0.2.0
[INFO] [stderr]    Compiling postscript v0.14.1
[INFO] [stderr]    Compiling clap v4.6.6
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling biblatex v0.12.0
[INFO] [stderr]    Compiling dialoguer v0.12.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling quick-xml v0.42.0
[INFO] [stderr]    Compiling pdf-extract v0.12.0
[INFO] [stderr]    Compiling rusqlite v0.40.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.15
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.7.0
[INFO] [stderr]    Compiling ureq v3.4.1
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling reqwest v0.13.4
[INFO] [stderr]    Compiling llm-kernel v0.31.3
[INFO] [stderr]    Compiling research-agent v0.2.6 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 05s
[INFO] running `Command { std: "docker" "inspect" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78", 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" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78" "/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]    --> Cargo.toml:117:12
[INFO] [stderr]     |
[INFO] [stderr] 117 | homepage = "https://github.com/epicsagas/research-agent"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 122 | repository = "https://github.com/epicsagas/research-agent"
[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: `research-agent` (manifest) generated 1 warning
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crossbeam-utils v0.8.23
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.21
[INFO] [stderr]    Compiling zerocopy v0.8.56
[INFO] [stderr]    Compiling zerocopy-derive v0.8.56
[INFO] [stderr]    Compiling crossbeam-deque v0.8.8
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling euclid v0.20.14
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling pdf-extract v0.12.0
[INFO] [stderr]    Compiling criterion-plot v0.6.0
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling rmcp v3.2.0
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling criterion v0.7.0
[INFO] [stderr]    Compiling research-agent v0.2.6 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 12s
[INFO] running `Command { std: "docker" "inspect" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78", 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" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78" "/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]    --> Cargo.toml:117:12
[INFO] [stderr]     |
[INFO] [stderr] 117 | homepage = "https://github.com/epicsagas/research-agent"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 122 | repository = "https://github.com/epicsagas/research-agent"
[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: `research-agent` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.58s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/research-agent/b43fbc70b1a76319/out/research_agent-b43fbc70b1a76319)
[INFO] [stdout] 
[INFO] [stdout] running 224 tests
[INFO] [stdout] test adapters::arxiv_source::tests::parse_atom_empty_feed ... ok
[INFO] [stdout] test adapters::bib_importer::tests::bibtex_keeps_abstract_and_keywords ... ok
[INFO] [stdout] test adapters::arxiv_source::tests::parse_atom_returns_papers ... ok
[INFO] [stdout] test adapters::bib_importer::tests::csl_accepts_zotero_string_date_parts ... ok
[INFO] [stdout] test adapters::bib_importer::tests::csl_keeps_abstract_and_keywords ... ok
[INFO] [stdout] test adapters::arxiv_source::tests::parse_atom_unescapes_entities ... ok
[INFO] [stdout] test adapters::bib_importer::tests::csl_parse_error_is_typed ... ok
[INFO] [stdout] test adapters::bib_importer::tests::json_dispatch_picks_parser_by_content ... ok
[INFO] [stdout] test adapters::bib_importer::tests::bibtex_garbage_yields_no_papers ... ok
[INFO] [stdout] test adapters::bib_importer::tests::malformed_zotero_item_fails_loudly ... ok
[INFO] [stdout] test adapters::bib_importer::tests::normalizes_doi_forms_to_one_key ... ok
[INFO] [stdout] test adapters::bib_importer::tests::parses_bibtex_entry ... ok
[INFO] [stdout] test adapters::europepmc_source::live_tests::live_search_returns_papers ... ignored
[INFO] [stdout] test adapters::bib_importer::tests::splits_keywords_on_commas_and_semicolons ... ok
[INFO] [stdout] test adapters::bib_importer::tests::year_parsed_from_free_form_zotero_dates ... ok
[INFO] [stdout] test adapters::europepmc_source::tests::hit_without_title_is_skipped ... ok
[INFO] [stdout] test adapters::europepmc_source::tests::parses_epmc_hit ... ok
[INFO] [stdout] test adapters::bib_importer::tests::zotero_api_json_with_data_wrapper_imports ... ok
[INFO] [stdout] test adapters::europepmc_source::tests::empty_result_list_ok ... ok
[INFO] [stdout] test adapters::bib_importer::tests::parses_csl_json ... ok
[INFO] [stdout] test adapters::bib_importer::tests::parses_zotero_native_json ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::complete_parsed_fails_explicitly_after_two_violations ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::parse_gaps_empty_response_is_ok_empty ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::complete_parsed_retries_once_after_a_format_violation ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::parse_gaps_errors_on_unparseable_response ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::parse_gaps_reads_valid_lines ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::parse_keywords_accepts_empty_response ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::parse_keywords_rejects_unparseable_nonempty_response ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::parse_keywords_skips_lines_without_separator ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::parse_keywords_maps_ids_to_keyword_strings ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::generate_report_fallback_returns_sections ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::analyze_gaps_fallback_returns_heuristic ... ok
[INFO] [stdout] test adapters::openalex_source::tests::extracts_reference_ids_from_urls ... ok
[INFO] [stdout] test adapters::openalex_source::tests::hydrates_referenced_works ... ok
[INFO] [stdout] test adapters::openalex_source::tests::missing_fields_tolerated ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::gap_context_empty_topic_does_not_leak_arbitrary_papers ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::gap_context_scopes_to_requested_topic ... ok
[INFO] [stdout] test adapters::openalex_source::tests::reconstructs_abstract_from_inverted_index ... ok
[INFO] [stdout] test adapters::openalex_source::tests::parses_openalex_work ... ok
[INFO] [stdout] test adapters::pdf_source::tests::collect_paths_directory ... ok
[INFO] [stdout] test adapters::pdf_source::tests::collect_paths_nonexistent_errors ... ok
[INFO] [stdout] test adapters::pdf_source::tests::collect_paths_single_file ... ok
[INFO] [stdout] test adapters::pdf_source::tests::empty_page_list_yields_no_body ... ok
[INFO] [stdout] test adapters::pdf_source::tests::garbage_pdf_yields_error_not_panic ... ok
[INFO] [stdout] test adapters::pdf_source::tests::joins_pages_with_markers ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::report_context_includes_all_linked_papers_within_budget ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::report_context_scopes_to_requested_topic ... ok
[INFO] [stdout] test adapters::pdf_source::tests::page_markers_survive_prepare_body ... ok
[INFO] [stdout] test adapters::pdf_source::tests::source_name ... ok
[INFO] [stdout] test adapters::semantic_scholar_source::tests::parse_s2_empty ... ok
[INFO] [stdout] test adapters::semantic_scholar_source::tests::edge_without_paper_is_skipped ... ok
[INFO] [stdout] test adapters::llm_research_engine::tests::report_context_empty_topic_does_not_leak_arbitrary_papers ... ok
[INFO] [stdout] test adapters::semantic_scholar_source::tests::parses_both_citation_edge_shapes ... ok
[INFO] [stdout] test adapters::semantic_scholar_source::tests::parse_s2_null_data ... ok
[INFO] [stdout] test adapters::semantic_scholar_source::tests::parse_s2_json ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::body_evidence_anchors_the_matched_occurrence_not_the_first ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::body_evidence_carries_snippet_and_anchor ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::body_evidence_empty_for_nonmatching_or_blank_query ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::body_evidence_returns_the_best_matches_under_a_limit ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::body_text_is_stored_searched_and_readable ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::body_evidence_scoped_to_paper_survives_a_crowded_library ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::find_paper_by_doi ... ok
[INFO] [stdout] test adapters::arxiv_source::tests::source_name ... ok
[INFO] [stdout] test adapters::openalex_source::tests::source_name ... ok
[INFO] [stdout] test adapters::semantic_scholar_source::tests::citation_intents_rejects_unknown_direction ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::find_paper_by_doi_matches_across_stored_forms ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::citations_roundtrip_and_dedupe ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::find_paper_by_openalex_id ... ok
[INFO] [stdout] test adapters::semantic_scholar_source::tests::source_name ... ok
[INFO] [stdout] test adapters::semantic_scholar_source::tests::citation_intents_requires_identity ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::get_missing_paper_returns_none ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::force_queue_advances_instead_of_repeating_its_head ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::gap_crud ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::init_schema_idempotent ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::init_schema_marks_target_version_and_is_idempotent ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::list_papers_by_topic_empty_for_topic_with_no_papers ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::list_papers_by_topic_orders_by_relevance_then_respects_limit ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::init_schema_tolerates_rating_present_but_version_zero ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::insert_and_get_paper ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::init_schema_migrates_legacy_v0_database ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::locate_snippet_anchors_through_leading_whitespace ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::locate_snippet_ignores_literal_citation_brackets ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::locate_snippet_points_at_the_match_not_the_window ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::link_paper_to_topic ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::list_papers_by_topic_returns_only_linked_papers ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::init_schema_migrates_legacy_v2_to_keywords_fts ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::list_topics_orders_parents_before_children ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::list_papers_with_limit ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::report_crud ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::find_paper_by_doi_matches_every_normalized_prefix ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::rebuild_index ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::search_papers_fts ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::research_state_upsert ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::search_papers_fts_hyphen_and_keyword_tokens ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::set_paper_keywords_is_searchable_and_listed_as_missing_before ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::update_paper_status ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::topic_hierarchy_depth ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::set_paper_pdf_path_roundtrips ... ok
[INFO] [stdout] test adapters::europepmc_source::tests::source_names ... ok
[INFO] [stdout] test adapters::zotero_source::tests::empty_api_response_yields_no_papers ... ok
[INFO] [stdout] test adapters::zotero_source::tests::fetches_live_zotero_library ... ignored, hits the live Zotero local API (needs Zotero running)
[INFO] [stdout] test adapters::sqlite_store::tests::topic_crud ... ok
[INFO] [stdout] test adapters::zotero_source::tests::forbidden_status_names_the_preference ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::update_rating_roundtrip ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::update_status_missing_paper_errors ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::update_rating_missing_paper_errors ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::topic_missing_keywords_filters_in_sql_not_in_a_window ... ok
[INFO] [stdout] test adapters::zotero_source::tests::items_params_empty_query_omits_q ... ok
[INFO] [stdout] test adapters::zotero_source::tests::items_params_search_all_fields ... ok
[INFO] [stdout] test adapters::zotero_source::tests::parses_nested_api_items_and_drops_attachments ... ok
[INFO] [stdout] test adapters::zotero_write::tests::forbidden_status_names_the_preference ... ok
[INFO] [stdout] test adapters::sqlite_store::tests::update_reading_status ... ok
[INFO] [stdout] test adapters::zotero_write::tests::live_library_read_returns_items ... ignored, hits the live Zotero local API (needs Zotero running)
[INFO] [stdout] test adapters::zotero_write::tests::payload_is_patch_shaped_and_only_tags ... ok
[INFO] [stdout] test adapters::zotero_write::tests::host_of_unwraps_ipv6_and_strips_port ... ok
[INFO] [stdout] test adapters::zotero_write::tests::merge_drops_empty_and_whitespace_tags ... ok
[INFO] [stdout] test adapters::zotero_write::tests::merge_keeps_existing_order_then_appends_new ... ok
[INFO] [stdout] test adapters::zotero_write::tests::merge_with_no_overlap_preserves_both_sides ... ok
[INFO] [stdout] test application::gap_analyzer::tests::collect_brief_gathers_topic_data ... ok
[INFO] [stdout] test application::gap_analyzer::tests::record_gaps_persists_and_updates_state ... ok
[INFO] [stdout] test application::gap_analyzer::tests::analyze_stores_gaps ... ok
[INFO] [stdout] test application::identity::tests::find_already_stored_returns_the_stored_row ... ok
[INFO] [stdout] test application::ingest_pipeline::tests::ingest_fetches_live_arxiv ... ignored, hits the live arXiv API (network + rate limits)
[INFO] [stdout] test application::identity::tests::title_key_does_not_fire_when_a_stronger_key_exists ... ok
[INFO] [stdout] test application::identity::tests::pdf_path_key_matches_before_title_is_consulted ... ok
[INFO] [stdout] test application::ingest_pipeline::tests::ingest_respects_limit ... ok
[INFO] [stdout] test application::identity::tests::title_key_matches_ignoring_case_whitespace_and_punctuation ... ok
[INFO] [stdout] test application::ingest_pipeline::tests::ingest_skips_papers_already_stored_by_doi_or_title ... ok
[INFO] [stdout] test application::ingest_pipeline::tests::rerun_returns_stored_rows_with_their_real_ids ... ok
[INFO] [stdout] test application::ingest_pipeline::tests::ingest_stores_papers ... ok
[INFO] [stdout] test application::paper_import::tests::bad_file_is_reported_not_fatal ... ok
[INFO] [stdout] test application::ingest_pipeline::tests::run_sources_survives_partial_failure ... ok
[INFO] [stdout] test application::paper_import::tests::nonexistent_path_errors ... ok
[INFO] [stdout] test application::references::tests::live_sync_citation_intents ... ignored
[INFO] [stdout] test application::references::tests::live_sync_cited_by ... ignored
[INFO] [stdout] test application::references::tests::live_sync_references ... ignored
[INFO] [stdout] test application::identity::tests::genuinely_new_paper_is_not_a_duplicate ... ok
[INFO] [stdout] test application::references::tests::dedupes_referenced_paper_by_openalex_id ... ok
[INFO] [stdout] test application::references::tests::set_citation_contexts_scoped_to_existing_edges ... ok
[INFO] [stdout] test application::paper_import::tests::imports_bib_and_skips_doi_duplicates ... ok
[INFO] [stdout] test application::references::tests::link_related_builds_directional_edges ... ok
[INFO] [stdout] test adapters::zotero_source::tests::refused_connection_says_zotero_may_not_be_running ... ok
[INFO] [stdout] test application::report_generator::tests::save_report_splits_markdown_sections ... ok
[INFO] [stdout] test adapters::zotero_source::tests::base_url_gets_trailing_slash ... ok
[INFO] [stdout] test application::report_generator::tests::generate_stores_report ... ok
[INFO] [stdout] test adapters::zotero_write::tests::base_url_gets_trailing_slash ... ok
[INFO] [stdout] test application::references::tests::unknown_identity_errors_before_any_write ... ok
[INFO] [stdout] test application::zotero_export::tests::apply_merges_and_writes_union ... ok
[INFO] [stdout] test application::zotero_export::tests::ambiguous_doi_skips_instead_of_guessing ... ok
[INFO] [stdout] test application::zotero_export::tests::summary_names_every_bucket ... ok
[INFO] [stdout] test application::zotero_export::tests::ambiguous_doi_counts_every_sibling_paper ... ok
[INFO] [stdout] test application::zotero_export::tests::conflicting_item_is_not_retried_for_sibling_doi ... ok
[INFO] [stdout] test application::zotero_export::tests::doi_matching_ignores_case_and_resolver_prefix ... ok
[INFO] [stdout] test application::zotero_export::tests::dry_run_reports_without_writing ... ok
[INFO] [stdout] test config::tests::config_without_llm_section_loads_ok ... ok
[INFO] [stdout] test config::tests::default_db_is_under_home_research ... ok
[INFO] [stdout] test config::tests::default_template_roundtrips_with_optional_keys_commented ... ok
[INFO] [stdout] test config::tests::legacy_search_section_is_ignored_not_fatal ... ok
[INFO] [stdout] test config::tests::llm_config_roundtrip ... ok
[INFO] [stdout] test application::zotero_export::tests::sibling_papers_on_one_doi_contribute_all_their_tags ... ok
[INFO] [stdout] test config::tests::load_creates_default_when_missing ... ok
[INFO] [stdout] test config::tests::loopback_check_parses_the_host_instead_of_prefix_matching ... ok
[INFO] [stdout] test config::tests::roundtrip_save_load ... ok
[INFO] [stdout] test config::tests::malformed_config_errors_instead_of_falling_back ... ok
[INFO] [stdout] test config::tests::set_sections_render_live_and_parse_back ... ok
[INFO] [stdout] test config::tests::template_quotes_paths_safely ... ok
[INFO] [stdout] test application::zotero_export::tests::sibling_papers_adding_nothing_are_all_unchanged ... ok
[INFO] [stdout] test application::zotero_export::tests::skips_are_counted_by_reason ... ok
[INFO] [stdout] test application::zotero_export::tests::update_count_ignores_whitespace_only_item_tags ... ok
[INFO] [stdout] test application::zotero_export::tests::unchanged_items_are_counted_not_written ... ok
[INFO] [stdout] test application::zotero_export::tests::version_conflicts_skip_and_count ... ok
[INFO] [stdout] test application::zotero_export::tests::whitespace_only_tag_difference_counts_as_unchanged ... ok
[INFO] [stdout] test dashboard::tests::config_endpoint_omits_secret_values ... ok
[INFO] [stdout] test dashboard::tests::history_sorts_newest_first ... ok
[INFO] [stdout] test dashboard::tests::history_streams_seed_entries ... ok
[INFO] [stdout] test dashboard::tests::parse_models_reads_openai_shape ... ok
[INFO] [stdout] test dashboard::tests::non_loopback_host_is_rejected ... ok
[INFO] [stdout] test dashboard::tests::models_endpoint_is_host_guarded ... ok
[INFO] [stdout] test dashboard::tests::overview_counts_seed_data ... ok
[INFO] [stdout] test dashboard::tests::paper_body_endpoint_serves_stored_text_or_404 ... ok
[INFO] [stdout] test dashboard::tests::paper_pdf_endpoint_serves_stored_file_or_404 ... ok
[INFO] [stdout] test dashboard::tests::papers_endpoint_lists_seed ... ok
[INFO] [stdout] test dashboard::tests::papers_endpoint_filters_by_topic_query ... ok
[INFO] [stdout] test dashboard::tests::patch_null_rating_clears ... ok
[INFO] [stdout] test dashboard::tests::patch_rejects_bad_input ... ok
[INFO] [stdout] test dashboard::tests::patch_updates_reading_status_and_rating ... ok
[INFO] [stdout] test dashboard::tests::put_config_absent_sections_leave_config_untouched ... ok
[INFO] [stdout] test dashboard::tests::pipeline_reports_stage_distribution ... ok
[INFO] [stdout] test dashboard::tests::put_config_adds_changes_and_removes_llm ... ok
[INFO] [stdout] test dashboard::tests::put_config_dashboard_generates_token_for_network_bind ... ok
[INFO] [stdout] test domain::anchor::tests::later_heading_beats_the_opening_heading ... ok
[INFO] [stdout] test domain::anchor::tests::legacy_body_resolves_section_without_page ... ok
[INFO] [stdout] test domain::anchor::tests::literal_marker_inside_text_is_not_a_page_boundary ... ok
[INFO] [stdout] test domain::anchor::tests::offsets_are_clamped_and_snapped ... ok
[INFO] [stdout] test domain::anchor::tests::resolves_section_and_page ... ok
[INFO] [stdout] test domain::anchor::tests::section_carries_across_a_page_break ... ok
[INFO] [stdout] test domain::anchor::tests::text_before_any_marker_has_no_anchor ... ok
[INFO] [stdout] test domain::anchor::tests::truncated_trailing_marker_falls_through ... ok
[INFO] [stdout] test domain::citation::tests::citation_new ... ok
[INFO] [stdout] test domain::knowledge_gap::tests::gap_new ... ok
[INFO] [stdout] test domain::knowledge_gap::tests::gap_type_roundtrip ... ok
[INFO] [stdout] test domain::paper::tests::paper_new_generates_id_and_timestamps ... ok
[INFO] [stdout] test domain::paper::tests::paper_serialization_roundtrip ... ok
[INFO] [stdout] test domain::paper::tests::paper_status_roundtrip ... ok
[INFO] [stdout] test domain::paper::tests::rating_accepts_valid_range ... ok
[INFO] [stdout] test domain::paper::tests::rating_deserialize_enforces_bounds ... ok
[INFO] [stdout] test domain::paper::tests::rating_rejects_out_of_range ... ok
[INFO] [stdout] test dashboard::tests::put_config_rejects_bad_input ... ok
[INFO] [stdout] test domain::paper::tests::reading_status_roundtrip ... ok
[INFO] [stdout] test domain::research_report::tests::parse_sections_roundtrip ... ok
[INFO] [stdout] test domain::research_report::tests::report_to_markdown ... ok
[INFO] [stdout] test domain::research_state::tests::state_new_defaults ... ok
[INFO] [stdout] test domain::research_topic::tests::new_subtopic_inherits_parent_and_depth ... ok
[INFO] [stdout] test domain::research_topic::tests::topic_new_generates_fields ... ok
[INFO] [stdout] test mcp::guard::tests::answers_unknown_request_with_id ... ok
[INFO] [stdout] test mcp::guard::tests::forwards_garbage_and_responses ... ok
[INFO] [stdout] test mcp::guard::tests::forwards_initialize_and_ping ... ok
[INFO] [stdout] test mcp::guard::tests::ignores_unknown_notification ... ok
[INFO] [stdout] test dashboard::tests::put_config_workspace_updates_path ... ok
[INFO] [stdout] test dashboard::tests::results_include_gaps_reports_topics ... ok
[INFO] [stdout] test dashboard::tests::root_serves_html ... ok
[INFO] [stdout] test dashboard::tests::store_error_yields_500 ... ok
[INFO] [stdout] test dashboard::tests::token_guard_blocks_and_login_issued_cookie ... ok
[INFO] [stdout] test dashboard::tests::unknown_path_is_404_and_post_is_405 ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/research-agent/b8021272f5ed3668/out/research-b8021272f5ed3668)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 217 passed; 0 failed; 7 ignored; 0 measured; 0 filtered out; finished in 2.01s
[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]      Running tests/search_quality.rs (/opt/rustwide/target/debug/build/research-agent/c4fc364901ddf950/out/search_quality-c4fc364901ddf950)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test keyword_matches_do_not_displace_literal_matches ... ok
[INFO] [stdout] test literal_queries_hit_without_any_keywords ... ok
[INFO] [stdout] test rewriting_keywords_drops_the_old_terms ... ok
[INFO] [stdout] test paraphrase_queries_need_keywords ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests research_agent
[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" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78", kill_on_drop: false }`
[INFO] [stdout] 0ef787a7540d200a1015b61415d9b8397344196ae857f9c1a6f5e40970748a78
