[INFO] cloning repository https://github.com/eric8810/section [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/eric8810/section" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feric8810%2Fsection", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feric8810%2Fsection'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 1944ab69e4fd47dc58ba098d16431cc128a3c59b [INFO] testing eric8810/section against beta-2026-04-21 for beta-1.96-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feric8810%2Fsection" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/eric8810/section [INFO] finished tweaking git repo https://github.com/eric8810/section [INFO] tweaked toml for git repo https://github.com/eric8810/section written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/eric8810/section on toolchain beta-2026-04-21 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/eric8810/section 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a7e7cc0110fb70435974c00cb37ae02f08989a5c4e1281bb9b9f5c3bcd13b076 [INFO] running `Command { std: "docker" "start" "-a" "a7e7cc0110fb70435974c00cb37ae02f08989a5c4e1281bb9b9f5c3bcd13b076", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a7e7cc0110fb70435974c00cb37ae02f08989a5c4e1281bb9b9f5c3bcd13b076", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a7e7cc0110fb70435974c00cb37ae02f08989a5c4e1281bb9b9f5c3bcd13b076", kill_on_drop: false }` [INFO] [stdout] a7e7cc0110fb70435974c00cb37ae02f08989a5c4e1281bb9b9f5c3bcd13b076 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5832db8a669771a2499ac88bf1f24c1e50ecb7a0cde9b61f1878453fe5368606 [INFO] running `Command { std: "docker" "start" "-a" "5832db8a669771a2499ac88bf1f24c1e50ecb7a0cde9b61f1878453fe5368606", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling stable_deref_trait v1.2.1 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling zerocopy v0.8.40 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling itoa v1.0.17 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling futures-io v0.3.32 [INFO] [stderr] Compiling slab v0.4.12 [INFO] [stderr] Compiling futures-task v0.3.32 [INFO] [stderr] Compiling writeable v0.6.2 [INFO] [stderr] Compiling crunchy v0.2.4 [INFO] [stderr] Compiling litemap v0.8.1 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling icu_normalizer_data v2.1.1 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling icu_properties_data v2.1.2 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling rustls v0.23.37 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.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 num-traits v0.2.19 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling ipnet v2.12.0 [INFO] [stderr] Compiling const-random-macro v0.1.16 [INFO] [stderr] Compiling tower-layer v0.3.3 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling const-random v0.1.18 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling iri-string v0.7.10 [INFO] [stderr] Compiling dlv-list v0.5.2 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling crc32c v0.6.8 [INFO] [stderr] Compiling libsqlite3-sys v0.30.1 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling home v0.5.12 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling option-ext v0.2.0 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling uuid v1.22.0 [INFO] [stderr] Compiling md-5 v0.10.6 [INFO] [stderr] Compiling jiff v0.2.23 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling rustls-webpki v0.103.9 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling fallible-iterator v0.3.0 [INFO] [stderr] Compiling fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling anstream v0.6.21 [INFO] [stderr] Compiling dirs v6.0.0 [INFO] [stderr] Compiling clap_lex v1.0.0 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling zerocopy-derive v0.8.40 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling tokio-macros v2.6.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling tokio v1.50.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling quick-xml v0.37.5 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling quick-xml v0.38.4 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling hyper v1.8.1 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling ordered-multimap v0.7.3 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling rust-ini v0.21.3 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling backon v1.6.0 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling rusqlite v0.32.1 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling nix v0.29.0 [INFO] [stderr] Compiling xattr v1.6.1 [INFO] [stderr] Compiling fuser v0.15.1 [INFO] [stderr] Compiling page_size v0.6.0 [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling reqsign v0.16.5 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling opendal v0.55.0 [INFO] [stderr] Compiling section-core v0.1.0 (/opt/rustwide/workdir/crates/section-core) [INFO] [stderr] Compiling section-provider v0.1.0 (/opt/rustwide/workdir/crates/section-provider) [INFO] [stderr] Compiling sectiond v0.1.0 (/opt/rustwide/workdir/crates/sectiond) [INFO] [stderr] Compiling section-cli v0.1.0 (/opt/rustwide/workdir/crates/section-cli) [INFO] [stderr] Compiling section-fuse v0.1.0 (/opt/rustwide/workdir/crates/section-fuse) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 10s [INFO] running `Command { std: "docker" "inspect" "5832db8a669771a2499ac88bf1f24c1e50ecb7a0cde9b61f1878453fe5368606", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5832db8a669771a2499ac88bf1f24c1e50ecb7a0cde9b61f1878453fe5368606", kill_on_drop: false }` [INFO] [stdout] 5832db8a669771a2499ac88bf1f24c1e50ecb7a0cde9b61f1878453fe5368606 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f0b2ac616e7ca865ef2276f36e16507fbed423dfbb136da17703fdf254957308 [INFO] running `Command { std: "docker" "start" "-a" "f0b2ac616e7ca865ef2276f36e16507fbed423dfbb136da17703fdf254957308", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling backon v1.6.0 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling bytecount v0.6.9 [INFO] [stderr] Compiling sealed v0.6.0 [INFO] [stderr] Compiling convert_case v0.10.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling quick-xml v0.37.5 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling quick-xml v0.38.4 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling terminal_size v0.4.3 [INFO] [stderr] Compiling xattr v1.6.1 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling hyper-util v0.1.20 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Compiling tower-http v0.6.8 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling nom v8.0.0 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.22 [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling synthez-core v0.4.0 [INFO] [stderr] Compiling reqsign v0.16.5 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling peg-runtime v0.6.3 [INFO] [stderr] Compiling opendal v0.55.0 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling peg-macros v0.6.3 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling derive_more v2.1.1 [INFO] [stderr] Compiling nom_locate v5.0.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling synthez-codegen v0.4.0 [INFO] [stderr] Compiling gherkin v0.15.0 [INFO] [stderr] Compiling typed-builder-macro v0.23.2 [INFO] [stderr] Compiling ref-cast v1.0.25 [INFO] [stderr] Compiling unicode-linebreak v0.1.5 [INFO] [stderr] Compiling smawk v0.3.2 [INFO] [stderr] Compiling cucumber-expressions v0.5.0 [INFO] [stderr] Compiling synthez v0.4.0 [INFO] [stderr] Compiling ignore v0.4.25 [INFO] [stderr] Compiling peg v0.6.3 [INFO] [stderr] Compiling textwrap v0.16.2 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling ref-cast-impl v1.0.25 [INFO] [stderr] Compiling pin-project-internal v1.1.11 [INFO] [stderr] Compiling inflections v1.1.1 [INFO] [stderr] Compiling globwalk v0.9.1 [INFO] [stderr] Compiling console v0.16.2 [INFO] [stderr] Compiling smart-default v0.7.1 [INFO] [stderr] Compiling typed-builder v0.23.2 [INFO] [stderr] Compiling humantime v2.3.0 [INFO] [stderr] Compiling pin-project v1.1.11 [INFO] [stderr] Compiling linked-hash-map v0.5.6 [INFO] [stderr] Compiling inventory v0.3.22 [INFO] [stderr] Compiling cucumber-codegen v0.22.1 [INFO] [stderr] Compiling fuser v0.15.1 [INFO] [stderr] Compiling cucumber v0.22.1 [INFO] [stderr] Compiling section-core v0.1.0 (/opt/rustwide/workdir/crates/section-core) [INFO] [stderr] Compiling section-provider v0.1.0 (/opt/rustwide/workdir/crates/section-provider) [INFO] [stderr] Compiling sectiond v0.1.0 (/opt/rustwide/workdir/crates/sectiond) [INFO] [stderr] Compiling section-cli v0.1.0 (/opt/rustwide/workdir/crates/section-cli) [INFO] [stderr] Compiling section-fuse v0.1.0 (/opt/rustwide/workdir/crates/section-fuse) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 17s [INFO] running `Command { std: "docker" "inspect" "f0b2ac616e7ca865ef2276f36e16507fbed423dfbb136da17703fdf254957308", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f0b2ac616e7ca865ef2276f36e16507fbed423dfbb136da17703fdf254957308", kill_on_drop: false }` [INFO] [stdout] f0b2ac616e7ca865ef2276f36e16507fbed423dfbb136da17703fdf254957308 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 1d0be21665c0bdd0172af865c0c7e22f1ac54525ca72766da45c305f04db6ef2 [INFO] running `Command { std: "docker" "start" "-a" "1d0be21665c0bdd0172af865c0c7e22f1ac54525ca72766da45c305f04db6ef2", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.57s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/section-2fb8e1b715416d29) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test cmd::mount::tests::unmount_command_list_is_platform_aware ... ok [INFO] [stdout] test cmd::mount::tests::executable_lookup_finds_binary_in_paths ... ok [INFO] [stdout] test cmd::mount::tests::mount_command_forwards_explicit_config_path ... ok [INFO] [stdout] test cmd::mount::tests::mount_output_parser_handles_linux_format ... ok [INFO] [stdout] test cmd::mount::tests::mount_output_parser_handles_macos_format ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/bdd.rs (/opt/rustwide/target/debug/deps/bdd-17a5655f57f019d8) [INFO] [stdout] 功能: 缓存刷新 [INFO] [stdout] 场景: 读取后外部修改再刷新 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-cache" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "cached" 使用 provider "fs" 选项 "root=/tmp/section-test-cache" [INFO] [stdout] ✔ 当我执行 "section cat cached/hello.txt" [INFO] [stdout] ✔ 那么输出应该等于 "Hello Section" [INFO] [stdout] ✔ 假如外部直接修改文件 "/tmp/section-test-cache/hello.txt" 内容为 "updated" [INFO] [stdout] ✔ 当我执行 "section refresh cached/" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section cat cached/hello.txt" [INFO] [stdout] ✔ 那么输出应该等于 "updated" [INFO] [stdout] 功能: 文件拷贝 [INFO] [stdout] 场景: 跨 source 拷贝单个文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-src" 包含拷贝源测试文件 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-dst" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "src" 使用 provider "fs" 选项 "root=/tmp/section-test-src" [INFO] [stdout] ✔> 假如已添加数据源 "dst" 使用 provider "fs" 选项 "root=/tmp/section-test-dst" [INFO] [stdout] ✔ 当我执行 "section cp src/report.pdf dst/report.pdf" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section cat dst/report.pdf" [INFO] [stdout] ✔ 那么输出应该等于 "PDF_CONTENT" [INFO] [stdout] 场景: 跨 source 拷贝子目录中的文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-src" 包含拷贝源测试文件 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-dst" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "src" 使用 provider "fs" 选项 "root=/tmp/section-test-src" [INFO] [stdout] ✔> 假如已添加数据源 "dst" 使用 provider "fs" 选项 "root=/tmp/section-test-dst" [INFO] [stdout] ✔ 当我执行 "section cp src/data/a.csv dst/data/a.csv" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section cat dst/data/a.csv" [INFO] [stdout] ✔ 那么输出应该等于 "col1,col2" [INFO] [stdout] 场景: 拷贝不存在的文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-src" 包含拷贝源测试文件 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-dst" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "src" 使用 provider "fs" 选项 "root=/tmp/section-test-src" [INFO] [stdout] ✔> 假如已添加数据源 "dst" 使用 provider "fs" 选项 "root=/tmp/section-test-dst" [INFO] [stdout] ✔ 当我执行 "section cp src/no-file.txt dst/no-file.txt" [INFO] [stdout] ✔ 那么命令应该失败 [INFO] [stdout] 场景: 同一 source 内拷贝 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-src" 包含拷贝源测试文件 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-dst" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "src" 使用 provider "fs" 选项 "root=/tmp/section-test-src" [INFO] [stdout] ✔> 假如已添加数据源 "dst" 使用 provider "fs" 选项 "root=/tmp/section-test-dst" [INFO] [stdout] ✔ 当我执行 "section cp src/report.pdf src/report-backup.pdf" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section cat src/report-backup.pdf" [INFO] [stdout] ✔ 那么输出应该等于 "PDF_CONTENT" [INFO] [stdout] 场景: 从本地文件拷贝到 source [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-src" 包含拷贝源测试文件 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-dst" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "src" 使用 provider "fs" 选项 "root=/tmp/section-test-src" [INFO] [stdout] ✔> 假如已添加数据源 "dst" 使用 provider "fs" 选项 "root=/tmp/section-test-dst" [INFO] [stdout] ✔ 假如本地文件 "/tmp/section-test-local/local.txt" 内容为 "LOCAL_CONTENT" [INFO] [stdout] ✔ 当我执行 "section cp /tmp/section-test-local/local.txt dst/from-local.txt" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section cat dst/from-local.txt" [INFO] [stdout] ✔ 那么输出应该等于 "LOCAL_CONTENT" [INFO] [stdout] 场景: 从 source 拷贝到本地文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-src" 包含拷贝源测试文件 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-dst" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "src" 使用 provider "fs" 选项 "root=/tmp/section-test-src" [INFO] [stdout] ✔> 假如已添加数据源 "dst" 使用 provider "fs" 选项 "root=/tmp/section-test-dst" [INFO] [stdout] ✔ 当我执行 "section cp src/report.pdf /tmp/section-test-out/report.pdf" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且本地文件 "/tmp/section-test-out/report.pdf" 内容应该等于 "PDF_CONTENT" [INFO] [stdout] 场景: 递归拷贝目录 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-src" 包含拷贝源测试文件 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-dst" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "src" 使用 provider "fs" 选项 "root=/tmp/section-test-src" [INFO] [stdout] ✔> 假如已添加数据源 "dst" 使用 provider "fs" 选项 "root=/tmp/section-test-dst" [INFO] [stdout] ✔ 当我执行 "section cp -r src/data/ dst/copied-data/" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section cat dst/copied-data/a.csv" [INFO] [stdout] ✔ 那么输出应该等于 "col1,col2" [INFO] [stdout] 功能: 远端文件执行 [INFO] [stdout] 场景: 执行简单脚本 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-exec" 包含可执行测试脚本 [INFO] [stdout] ✔> 假如已添加数据源 "scripts" 使用 provider "fs" 选项 "root=/tmp/section-test-exec" [INFO] [stdout] ✔ 当我执行 "section exec scripts/hello.sh" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "hello exec" [INFO] [stdout] 场景: 执行带参数的脚本 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-exec" 包含可执行测试脚本 [INFO] [stdout] ✔> 假如已添加数据源 "scripts" 使用 provider "fs" 选项 "root=/tmp/section-test-exec" [INFO] [stdout] ✔ 当我执行 "section exec scripts/args.sh -- foo bar" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "foo bar" [INFO] [stdout] 场景: 执行失败的脚本返回非零退出码 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-exec" 包含可执行测试脚本 [INFO] [stdout] ✔> 假如已添加数据源 "scripts" 使用 provider "fs" 选项 "root=/tmp/section-test-exec" [INFO] [stdout] ✔ 当我执行 "section exec scripts/fail.sh" [INFO] [stdout] ✔ 那么命令应该失败 [INFO] [stdout] 场景: 执行不存在的脚本 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-exec" 包含可执行测试脚本 [INFO] [stdout] ✔> 假如已添加数据源 "scripts" 使用 provider "fs" 选项 "root=/tmp/section-test-exec" [INFO] [stdout] ✔ 当我执行 "section exec scripts/nope.sh" [INFO] [stdout] ✔ 那么命令应该失败 [INFO] [stdout] 功能: 文件读取 [INFO] [stdout] 场景: 列出根目录下所有 source [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section ls" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "test/" [INFO] [stdout] 场景: 列出 source 根目录的文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section ls test/" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "hello.txt" [INFO] [stdout] ✔ 而且输出应该包含 "docs/" [INFO] [stdout] ✔ 而且输出应该包含 "data/" [INFO] [stdout] 场景: 列出子目录的文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section ls test/docs/" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "readme.md" [INFO] [stdout] ✔ 而且输出应该包含 "guide.md" [INFO] [stdout] 场景: 以长格式列出 source 根目录 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section ls -l test/" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "file" [INFO] [stdout] ✔ 而且输出应该包含 "dir" [INFO] [stdout] ✔ 而且输出应该包含 "hello.txt" [INFO] [stdout] 场景: 以 JSON 列出文件时返回真实大小 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section --json ls test/" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且JSON 输出中 "hello.txt" 的 size 应该等于 13 [INFO] [stdout] 场景: 读取文件内容 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section cat test/hello.txt" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该等于 "Hello Section" [INFO] [stdout] 场景: 读取子目录中的文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section cat test/docs/readme.md" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该等于 "# README" [INFO] [stdout] 场景: 读取较大文件内容 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section cat test/large.txt" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "END-OF-LARGE-FILE" [INFO] [stdout] 场景: 读取不存在的文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section cat test/nonexistent.txt" [INFO] [stdout] ✔ 那么命令应该失败 [INFO] [stdout] 场景: 列出不存在的 source [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section ls no-such-source/" [INFO] [stdout] ✔ 那么命令应该失败 [INFO] [stdout] 场景: 列出不存在的目录 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-read" 包含以下测试文件 [INFO] [stdout] ✔> 假如已添加数据源 "test" 使用 provider "fs" 选项 "root=/tmp/section-test-read" [INFO] [stdout] ✔ 当我执行 "section ls test/no-such-dir/" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该为空 [INFO] [stdout] 功能: 文件写入与删除 [INFO] [stdout] 场景: 通过管道写入文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-write" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "store" 使用 provider "fs" 选项 "root=/tmp/section-test-write" [INFO] [stdout] ✔ 当我执行管道 "echo -n 'test content'" 到 "section write store/new-file.txt" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section cat store/new-file.txt" [INFO] [stdout] ✔ 那么输出应该等于 "test content" [INFO] [stdout] 场景: 覆盖已有文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-write" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "store" 使用 provider "fs" 选项 "root=/tmp/section-test-write" [INFO] [stdout] ✔ 假如数据源 "store" 中 "exist.txt" 内容为 "old" [INFO] [stdout] ✔ 当我执行管道 "echo -n 'new'" 到 "section write store/exist.txt" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section cat store/exist.txt" [INFO] [stdout] ✔ 那么输出应该等于 "new" [INFO] [stdout] 场景: 删除单个文件 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-write" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "store" 使用 provider "fs" 选项 "root=/tmp/section-test-write" [INFO] [stdout] ✔ 假如数据源 "store" 中 "to-delete.txt" 内容为 "bye" [INFO] [stdout] ✔ 当我执行 "section rm store/to-delete.txt" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section cat store/to-delete.txt" [INFO] [stdout] ✔ 那么命令应该失败 [INFO] [stdout] 场景: 递归删除目录 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔> 假如本地测试目录 "/tmp/section-test-write" 是空的 [INFO] [stdout] ✔> 假如已添加数据源 "store" 使用 provider "fs" 选项 "root=/tmp/section-test-write" [INFO] [stdout] ✔ 假如数据源 "store" 中 "dir/a.txt" 内容为 "a" [INFO] [stdout] ✔ 假如数据源 "store" 中 "dir/b.txt" 内容为 "b" [INFO] [stdout] ✔ 当我执行 "section rm store/dir/ -r" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 当我执行 "section ls store/dir/" [INFO] [stdout] ✔ 那么输出应该为空 [INFO] [stdout] 功能: 数据源管理 [INFO] [stdout] 场景: 添加本地文件系统数据源 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔ 当我执行 "section source add local-test --provider fs --opt root=/tmp/section-test" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "Source 'local-test' added" [INFO] [stdout] 场景: 添加 S3 数据源 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔ 当我执行 "section source add my-s3 --provider s3 --opt bucket=test-bucket --opt region=us-east-1 --opt access_key_id=testkey --opt secret_access_key=testsecret" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "Source 'my-s3' added" [INFO] [stdout] 场景: 列出数据源 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔ 假如已添加数据源 "local-test" 使用 provider "fs" 选项 "root=/tmp/section-test" [INFO] [stdout] ✔ 假如已添加数据源 "my-s3" 使用 provider "s3" 选项 "bucket=test-bucket" [INFO] [stdout] ✔ 当我执行 "section source list" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "local-test" [INFO] [stdout] ✔ 而且输出应该包含 "my-s3" [INFO] [stdout] 场景: 删除数据源 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔ 假如已添加数据源 "to-remove" 使用 provider "fs" 选项 "root=/tmp/section-test" [INFO] [stdout] ✔ 当我执行 "section source remove to-remove" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "Source 'to-remove' removed" [INFO] [stdout] ✔ 当我执行 "section source list" [INFO] [stdout] ✔ 那么输出不应该包含 "to-remove" [INFO] [stdout] 场景: 添加重名数据源时覆盖 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔ 假如已添加数据源 "dup" 使用 provider "fs" 选项 "root=/tmp/old" [INFO] [stdout] ✔ 当我执行 "section source add dup --provider fs --opt root=/tmp/new" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] ✔ 而且输出应该包含 "Source 'dup' added" [INFO] [stdout] 场景: 删除不存在的数据源 [INFO] [stdout] ✔> 假如Section 数据目录是干净的 [INFO] [stdout] ✔ 当我执行 "section source remove nonexistent" [INFO] [stdout] ✔ 那么命令应该成功 [INFO] [stdout] [Summary] [INFO] [stdout] 6 features [INFO] [stdout] 33 scenarios (33 passed) [INFO] [stdout] 224 steps (224 passed) [INFO] [stderr] Running tests/path_control_plane.rs (/opt/rustwide/target/debug/deps/path_control_plane-01d92635947d40a8) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Running tests/sync_control_plane.rs (/opt/rustwide/target/debug/deps/sync_control_plane-884feb9225b36695) [INFO] [stdout] test source_bind_and_local_path_inspect_work_end_to_end ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/section_core-e36c8bc315beed63) [INFO] [stdout] test source_sync_compare_resolve_and_watch_work_together ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.28s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 31 tests [INFO] [stdout] test cache::tests::content_cache_eviction_chain ... ok [INFO] [stdout] test cache::tests::clear_removes_everything ... ok [INFO] [stdout] test cache::tests::content_cache_clear ... ok [INFO] [stdout] test cache::tests::content_cache_evicts_lru ... ok [INFO] [stdout] test cache::tests::content_cache_exact_fit ... ok [INFO] [stdout] test cache::tests::content_cache_overwrite_existing ... ok [INFO] [stdout] test cache::tests::content_cache_remove ... ok [INFO] [stdout] test cache::tests::content_cache_get_promotes_to_mru ... ok [INFO] [stdout] test cache::tests::content_cache_miss_returns_none ... ok [INFO] [stdout] test cache::tests::invalidate_prefix_removes_all_matching ... ok [INFO] [stdout] test cache::tests::content_cache_put_and_get ... ok [INFO] [stdout] test cache::tests::content_cache_remove_nonexistent_is_noop ... ok [INFO] [stdout] test cache::tests::content_cache_remove_prefix_respects_boundaries ... ok [INFO] [stdout] test cache::tests::content_cache_skip_oversized_item ... ok [INFO] [stdout] test cache::tests::invalidate_directory_removes_own_listing ... ok [INFO] [stdout] test cache::tests::invalidate_prefix_respects_path_boundaries ... ok [INFO] [stdout] test cache::tests::invalidate_removes_stat_and_parent_listing ... ok [INFO] [stdout] test cache::tests::listing_put_and_get ... ok [INFO] [stdout] test cache::tests::parent_dir_helper ... ok [INFO] [stdout] test cache::tests::stat_miss_returns_none ... ok [INFO] [stdout] test cache::tests::stat_put_and_get ... ok [INFO] [stdout] test permission::tests::default_permission_factories_match_expected_modes ... ok [INFO] [stdout] test permission::tests::owner_group_and_other_bits_are_evaluated_independently ... ok [INFO] [stdout] test permission::tests::root_user_bypasses_permission_bits ... ok [INFO] [stdout] test router::tests::parse_path_handles_root_source_and_nested_paths ... ok [INFO] [stdout] test router::tests::sources_are_sorted ... ok [INFO] [stdout] test router::tests::resolve_rejects_unknown_or_empty_paths ... ok [INFO] [stdout] test router::tests::add_operator_replaces_existing_source ... ok [INFO] [stdout] test cache::tests::stat_expired_returns_none ... ok [INFO] [stdout] test cache::tests::listing_expired_returns_none ... ok [INFO] [stdout] test cache::tests::overwrite_stat_refreshes_ttl ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/section_fuse-b674eb58d6678246) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test fs::tests::recursive_invalidation_clears_nested_metadata_and_content ... ok [INFO] [stdout] test fs::tests::content_cache_can_be_disabled_per_source ... ok [INFO] [stdout] test fs::tests::put_cached_listing_does_not_populate_child_stat_cache ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/section_provider-ab5068ead0ee5bcc) [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test crypto::tests::round_trip ... ok [INFO] [stdout] test crypto::tests::wrong_key_fails ... ok [INFO] [stdout] test crypto::tests::key_file_round_trip ... ok [INFO] [stdout] test store::tests::path_sync_state_round_trips ... ok [INFO] [stdout] test store::tests::open_migrates_plaintext_rows_to_encrypted_rows ... ok [INFO] [stdout] test store::tests::source_local_root_bindings_round_trip ... ok [INFO] [stdout] test store::tests::sync_events_round_trip_in_order ... ok [INFO] [stdout] test store::tests::source_crud_round_trips_through_encrypted_store ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/sectiond-54eaa1062fee898c) [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test permission::tests::directory_write_check_reuses_permission_policy ... ok [INFO] [stdout] test permission::tests::open_checks_enforce_requested_access_mode ... ok [INFO] [stdout] test control_plane::tests::source_remove_rejects_config_owned_name ... ok [INFO] [stdout] test control_plane::tests::source_add_rejects_config_owned_name ... ok [INFO] [stdout] test runtime::tests::runtime_router_contains_merged_sources ... ok [INFO] [stdout] test control_plane::tests::list_sources_returns_merged_effective_registry ... ok [INFO] [stdout] test control_plane::tests::source_bind_local_root_writes_marker_and_updates_registry_entry ... ok [INFO] [stdout] test runtime::tests::runtime_snapshot_classifies_origins_and_sorts_sources ... ok [INFO] [stdout] test control_plane::tests::path_inspect_resolves_local_path_and_detail_state ... ok [INFO] [stdout] test control_plane::tests::source_remove_cleans_up_root_marker ... ok [INFO] [stdout] test runtime::tests::status_snapshot_reports_mount_state_and_connectivity ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/sectiond-330030d9b5b23330) [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 section_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 section_provider [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 sectiond [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" "1d0be21665c0bdd0172af865c0c7e22f1ac54525ca72766da45c305f04db6ef2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1d0be21665c0bdd0172af865c0c7e22f1ac54525ca72766da45c305f04db6ef2", kill_on_drop: false }` [INFO] [stdout] 1d0be21665c0bdd0172af865c0c7e22f1ac54525ca72766da45c305f04db6ef2