[INFO] cloning repository https://github.com/hartsock/modulex-mcp [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hartsock/modulex-mcp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhartsock%2Fmodulex-mcp", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhartsock%2Fmodulex-mcp'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d4b182f24286e06f2cd0fbf530e6d4a6f42ab00b [INFO] testing hartsock/modulex-mcp against 1.98.0-beta.1 for beta-1.98-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhartsock%2Fmodulex-mcp" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/hartsock/modulex-mcp [INFO] finished tweaking git repo https://github.com/hartsock/modulex-mcp [INFO] tweaked toml for git repo https://github.com/hartsock/modulex-mcp written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/hartsock/modulex-mcp on toolchain 1.98.0-beta.1 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/hartsock/modulex-mcp 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.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418 [INFO] running `Command { std: "docker" "start" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418", 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" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418", 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" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling siphasher v1.0.3 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling cc v1.2.63 [INFO] [stderr] Compiling typenum v1.20.1 [INFO] [stderr] Compiling zerocopy v0.8.50 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling base64ct v1.8.3 [INFO] [stderr] Compiling memchr v2.8.1 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling log v0.4.32 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling tendril v0.5.0 [INFO] [stderr] Compiling http v1.4.1 [INFO] [stderr] Compiling phf_shared v0.13.1 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling bitflags v2.12.1 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling pem-rfc7468 v0.7.0 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling simd-adler32 v0.3.9 [INFO] [stderr] Compiling phf_generator v0.13.1 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling rustls v0.23.40 [INFO] [stderr] Compiling phf_codegen v0.13.1 [INFO] [stderr] Compiling string_cache_codegen v0.6.1 [INFO] [stderr] Compiling signature v2.2.0 [INFO] [stderr] Compiling cpufeatures v0.3.0 [INFO] [stderr] Compiling serde_json v1.0.150 [INFO] [stderr] Compiling constant_time_eq v0.4.2 [INFO] [stderr] Compiling selectors v0.36.1 [INFO] [stderr] Compiling compression-core v0.4.32 [INFO] [stderr] Compiling base16ct v0.2.0 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling target-lexicon v0.13.5 [INFO] [stderr] Compiling hashbrown v0.17.1 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling rustc-hash v2.1.2 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling tinyvec v1.11.0 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling nom v8.0.0 [INFO] [stderr] Compiling http-body-util v0.1.3 [INFO] [stderr] Compiling serde_bytes v0.11.19 [INFO] [stderr] Compiling foldhash v0.2.0 [INFO] [stderr] Compiling utf8-width v0.1.8 [INFO] [stderr] Compiling linked-hash-map v0.5.6 [INFO] [stderr] Compiling web_atoms v0.2.4 [INFO] [stderr] Compiling data-encoding v2.11.0 [INFO] [stderr] Compiling html-escape v0.2.13 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling unicode-segmentation v1.13.3 [INFO] [stderr] Compiling indexmap v2.14.0 [INFO] [stderr] Compiling lru-cache v0.1.2 [INFO] [stderr] Compiling flagset v0.4.7 [INFO] [stderr] Compiling compression-codecs v0.4.38 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling blake3 v1.8.5 [INFO] [stderr] Compiling libsqlite3-sys v0.30.1 [INFO] [stderr] Compiling gjson v0.8.1 [INFO] [stderr] Compiling resolv-conf v0.7.6 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling winnow v0.7.15 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling inout v0.1.4 [INFO] [stderr] Compiling sec1 v0.7.3 [INFO] [stderr] Compiling pyo3-build-config v0.29.0 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling ssh-encoding v0.2.0 [INFO] [stderr] Compiling ssh-cipher v0.2.0 [INFO] [stderr] Compiling chrono v0.4.45 [INFO] [stderr] Compiling pyo3-ffi v0.29.0 [INFO] [stderr] Compiling pyo3 v0.29.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling pyo3-macros-backend v0.29.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.6 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zerofrom-derive v0.1.7 [INFO] [stderr] Compiling zeroize_derive v1.4.3 [INFO] [stderr] Compiling yoke-derive v0.8.2 [INFO] [stderr] Compiling zerovec-derive v0.11.3 [INFO] [stderr] Compiling displaydoc v0.2.6 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling phf_macros v0.13.1 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling tokio v1.52.3 [INFO] [stderr] Compiling der v0.7.10 [INFO] [stderr] Compiling rustls-pki-types v1.14.1 [INFO] [stderr] Compiling phf v0.13.1 [INFO] [stderr] Compiling cssparser-macros v0.6.1 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling webpki-roots v1.0.7 [INFO] [stderr] Compiling enum-as-inner v0.6.1 [INFO] [stderr] Compiling cssparser v0.36.0 [INFO] [stderr] Compiling clap_derive v4.6.1 [INFO] [stderr] Compiling derive_more v2.1.1 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling zerofrom v0.1.8 [INFO] [stderr] Compiling rustls-webpki v0.103.13 [INFO] [stderr] Compiling yoke v0.8.3 [INFO] [stderr] Compiling zerovec v0.11.6 [INFO] [stderr] Compiling zerotrie v0.2.4 [INFO] [stderr] Compiling spki v0.7.3 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling pkcs8 v0.10.2 [INFO] [stderr] Compiling thiserror v1.0.69 [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 string_cache v0.9.0 [INFO] [stderr] Compiling ed25519 v2.2.3 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_yaml_ng v0.10.0 [INFO] [stderr] Compiling ed25519-dalek v2.2.0 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling clap v4.6.1 [INFO] [stderr] Compiling ssh-key v0.6.7 [INFO] [stderr] Compiling icu_provider v2.2.0 [INFO] [stderr] Compiling pyo3-macros v0.29.0 [INFO] [stderr] Compiling markup5ever v0.38.0 [INFO] [stderr] Compiling agent-mesh-protocol v0.6.1 [INFO] [stderr] Compiling html5ever v0.38.0 [INFO] [stderr] Compiling xml5ever v0.38.0 [INFO] [stderr] Compiling icu_normalizer v2.2.0 [INFO] [stderr] Compiling icu_properties v2.2.0 [INFO] [stderr] Compiling agent-bridle-core v0.1.0 [INFO] [stderr] Compiling dom_query v0.27.0 [INFO] [stderr] Compiling markup5ever_rcdom v0.38.0+unofficial [INFO] [stderr] Compiling htmd v0.5.4 [INFO] [stderr] Compiling idna_adapter v1.2.2 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling dom_smoothie v0.17.0 [INFO] [stderr] Compiling hyper v1.10.1 [INFO] [stderr] Compiling tower v0.5.3 [INFO] [stderr] Compiling async-compression v0.4.42 [INFO] [stderr] Compiling tokio-util v0.7.18 [INFO] [stderr] Compiling hickory-proto v0.24.4 [INFO] [stderr] Compiling tokio-rustls v0.26.4 [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 hyper-rustls v0.27.9 [INFO] [stderr] Compiling reqwest v0.12.28 [INFO] [stderr] Compiling agent-store v0.1.2 [INFO] [stderr] Compiling hickory-resolver v0.24.4 [INFO] [stderr] Compiling agent-bridle-tool-web v0.1.0 [INFO] [stderr] Compiling modulex-core v0.1.0 (/opt/rustwide/workdir/crates/modulex-core) [INFO] [stderr] Compiling modulex-plugin-health v0.1.0 (/opt/rustwide/workdir/crates/modulex-plugin-health) [INFO] [stderr] Compiling modulex-mcp v0.1.0 (/opt/rustwide/workdir/crates/modulex-mcp) [INFO] [stderr] Compiling modulex-cli v0.1.0 (/opt/rustwide/workdir/crates/modulex-cli) [INFO] [stderr] Compiling modulex-py v0.1.0 (/opt/rustwide/workdir/crates/modulex-py) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 53s [INFO] running `Command { std: "docker" "inspect" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418", 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" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling ref-cast v1.0.25 [INFO] [stderr] Compiling ref-cast-impl v1.0.25 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling chrono v0.4.45 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling borrow-or-share v0.2.4 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling outref v0.5.2 [INFO] [stderr] Compiling uuid v1.23.2 [INFO] [stderr] Compiling email_address v0.2.9 [INFO] [stderr] Compiling num-cmp v0.1.0 [INFO] [stderr] Compiling bytecount v0.6.9 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling uuid-simd v0.8.0 [INFO] [stderr] Compiling fluent-uri v0.3.2 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling referencing v0.26.2 [INFO] [stderr] Compiling hashlink v0.9.1 [INFO] [stderr] Compiling rusqlite v0.32.1 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling agent-store v0.1.2 [INFO] [stderr] Compiling modulex-core v0.1.0 (/opt/rustwide/workdir/crates/modulex-core) [INFO] [stderr] Compiling num v0.4.3 [INFO] [stderr] Compiling fraction v0.15.4 [INFO] [stderr] Compiling fancy-regex v0.14.0 [INFO] [stderr] Compiling jsonschema v0.26.2 [INFO] [stderr] Compiling modulex-plugin-health v0.1.0 (/opt/rustwide/workdir/crates/modulex-plugin-health) [INFO] [stderr] Compiling modulex-mcp v0.1.0 (/opt/rustwide/workdir/crates/modulex-mcp) [INFO] [stderr] Compiling modulex-py v0.1.0 (/opt/rustwide/workdir/crates/modulex-py) [INFO] [stderr] Compiling modulex-cli v0.1.0 (/opt/rustwide/workdir/crates/modulex-cli) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 51.98s [INFO] running `Command { std: "docker" "inspect" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418", 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" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3.49s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/modulex-8f1d1b62e7404b81) [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 unittests src/lib.rs (/opt/rustwide/target/debug/deps/modulex_core-bc9680e3a40236a5) [INFO] [stdout] [INFO] [stdout] running 145 tests [INFO] [stdout] test board_md::tests::missing_frontmatter_is_an_error ... ok [INFO] [stdout] test caveats::tests::config_caveats_are_second ... ok [INFO] [stdout] test board_md::tests::blocked_by_alias_and_freetext_status ... ok [INFO] [stdout] test board_md::tests::yaml_scalar_quotes_only_when_needed ... ok [INFO] [stdout] test board_md::tests::round_trips_semantically ... ok [INFO] [stdout] test board_md::tests::parses_real_world_fixture ... ok [INFO] [stdout] test caveats::tests::default_is_declared_programs_not_unconfined ... ok [INFO] [stdout] test caveats::tests::empty_declared_default_grants_nothing ... ok [INFO] [stdout] test caveats::tests::env_json_wins_and_parses_the_mesh_shape ... ok [INFO] [stdout] test caveats::tests::malformed_env_json_is_an_error ... ok [INFO] [stdout] test config::tests::caveats_table_parses_the_mesh_shape ... ok [INFO] [stdout] test config::tests::expand_tilde_expands_home_prefix_only ... ok [INFO] [stdout] test config::tests::store_backend_is_a_flat_policy_knob ... ok [INFO] [stdout] test config::tests::resolve_errors_when_nothing_found ... ok [INFO] [stdout] test config::tests::credential_refs_parse_all_three_shapes ... ok [INFO] [stdout] test config::tests::shared_and_dates_sections_parse ... ok [INFO] [stdout] test credentials::tests::cmd_resolution_is_leash_gated_and_uses_stdout ... ok [INFO] [stdout] test credentials::tests::declared_program_extracts_cmd_argv0_only ... ok [INFO] [stdout] test config::tests::minimal_routine_parses_with_flattened_params ... ok [INFO] [stdout] test config::tests::declared_programs_include_cmd_credentials ... ok [INFO] [stdout] test engine::tests::unknown_routine_is_an_engine_error ... ok [INFO] [stdout] test exec::tests::allows_granted_program_and_passes_args ... ok [INFO] [stdout] test engine::tests::missing_tool_soft_skips_the_step ... ok [INFO] [stdout] test engine::tests::parallel_batch_results_keep_config_order ... ok [INFO] [stdout] test credentials::tests::failing_cmd_helper_never_surfaces_its_stderr_body ... ok [INFO] [stdout] test exec::tests::scrubs_secret_values_from_captured_output ... ok [INFO] [stdout] test engine::tests::generations_are_monotonic_and_reports_are_stored ... ok [INFO] [stdout] test engine::tests::only_and_skip_filter_by_step_name ... ok [INFO] [stdout] test engine::tests::report_retention_is_bounded ... ok [INFO] [stdout] test engine::tests::run_step_runs_exactly_one_and_validates_the_name ... ok [INFO] [stdout] test credentials::tests::secret_debug_and_display_are_redacted ... ok [INFO] [stdout] test board_md::tests::missing_id_is_an_error ... ok [INFO] [stdout] test exec::tests::program_available_finds_path_binaries_and_rejects_missing ... ok [INFO] [stdout] test registry::tests::register_lookup_and_shadowing ... ok [INFO] [stdout] test steps::board::tests::chores_renderer_all_clear ... ok [INFO] [stdout] test exec::tests::denies_ungranted_program_before_spawn ... ok [INFO] [stdout] test report::tests::all_skips_is_still_success ... ok [INFO] [stdout] test report::tests::failure_accounting_ignores_skips ... ok [INFO] [stdout] test report::tests::to_json_is_compact_and_omits_empty_fields ... ok [INFO] [stdout] test report::tests::to_text_renders_sections_and_summary ... ok [INFO] [stdout] test report::tests::with_repos_derives_success ... ok [INFO] [stdout] test steps::board::tests::board_render_flags_blocked_cards ... ok [INFO] [stdout] test steps::board::tests::board_scan_lists_lane_tasks_and_flags_missing_lanes ... ok [INFO] [stdout] test steps::board::tests::board_step_missing_store_soft_skips ... ok [INFO] [stdout] test engine::tests::unknown_step_type_fails_softly_inside_the_report ... ok [INFO] [stdout] test steps::board::tests::chores_renderer_buckets_overdue_today_upcoming ... ok [INFO] [stdout] test steps::board::tests::missing_chores_dir_soft_skips ... ok [INFO] [stdout] test steps::board::tests::chores_check_parses_due_lines_from_markdown ... ok [INFO] [stdout] test steps::board_ingest::tests::lane_for_picks_highest_priority_then_default ... ok [INFO] [stdout] test steps::dates::tests::countdowns_render_template_and_drop_expired ... ok [INFO] [stdout] test steps::dates::tests::deadlines_render_days_weeks_notes_and_drop_past ... ok [INFO] [stdout] test steps::board_ingest::tests::no_store_soft_skips ... ok [INFO] [stdout] test steps::dates::tests::deadlines_all_past_renders_placeholder ... ok [INFO] [stdout] test steps::dates::tests::work_days_excludes_weekends_and_is_zero_for_inverted_ranges ... ok [INFO] [stdout] test steps::git::tests::dry_run_spawns_nothing ... ok [INFO] [stdout] test steps::git::tests::git_status_renders_clean_and_dirty_repos ... ok [INFO] [stdout] test steps::github::tests::auth_failure_on_all_repos_soft_skips ... ok [INFO] [stdout] test steps::github::tests::empty_pr_list_renders_placeholder ... ok [INFO] [stdout] test steps::git::tests::git_tend_reports_divergence_without_resolving ... ok [INFO] [stdout] test steps::github::tests::malformed_json_is_a_step_failure_not_a_crash ... ok [INFO] [stdout] test steps::git::tests::git_unpushed_treats_no_upstream_as_info ... ok [INFO] [stdout] test steps::git::tests::git_tend_success_summary_counts ... ok [INFO] [stdout] test steps::gitlab::tests::categorize_high_active_seen_rules ... ok [INFO] [stdout] test steps::git::tests::no_repos_configured_is_informational ... ok [INFO] [stdout] test steps::gitlab::tests::parse_mr_lines_extracts_project_iid_title ... ok [INFO] [stdout] test steps::gitlab::tests::missing_username_soft_skips ... ok [INFO] [stdout] test steps::gitlab::tests::all_auth_failures_soft_skip_with_login_hint ... ok [INFO] [stdout] test steps::gitlab::tests::mr_categorize_all_auth_failures_soft_skip ... ok [INFO] [stdout] test steps::gitlab::tests::mr_categorize_buckets_high_end_to_end ... ok [INFO] [stdout] test steps::gitlab::tests::missing_credential_soft_skips_the_forge_step ... ok [INFO] [stdout] test steps::github::tests::renders_pr_lines_from_gh_json ... ok [INFO] [stdout] test steps::gitlab::tests::group_scan_recent_adds_created_after ... ok [INFO] [stdout] test steps::gitlab::tests::sla_check_counts_pending_reviews_from_prior ... ok [INFO] [stdout] test steps::gitlab::tests::partial_auth_failure_keeps_other_results ... ok [INFO] [stdout] test steps::github::tests::missing_credential_soft_skips ... ok [INFO] [stdout] test steps::mcp_query::tests::parse_call_response_extracts_result ... ok [INFO] [stdout] test steps::mcp_query::tests::missing_store_soft_skips ... ok [INFO] [stdout] test steps::mcp_query::tests::build_stdin_carries_handshake_then_call ... ok [INFO] [stdout] test steps::gitlab::tests::review_step_passes_reviewer_flag_and_renders_sections ... ok [INFO] [stdout] test steps::gitlab::tests::group_scan_all_omits_created_after ... ok [INFO] [stdout] test steps::gitlab::tests::sla_check_honors_response_hours_param ... ok [INFO] [stdout] test steps::mcp_query::tests::parse_call_response_surfaces_jsonrpc_error ... ok [INFO] [stdout] test steps::mcp_query::tests::render_result_prefers_text_blocks ... ok [INFO] [stdout] test steps::mcp_query::tests::required_programs_declares_inline_command_only ... ok [INFO] [stdout] test steps::mcp_query::tests::parse_call_response_handles_missing_and_chatty_lines ... ok [INFO] [stdout] test steps::project::tests::auth_failure_soft_skips ... ok [INFO] [stdout] test steps::project::tests::no_repos_is_ok_noop ... ok [INFO] [stdout] test steps::project::tests::summarizes_momentum_from_gh_json ... ok [INFO] [stdout] test steps::python::tests::bad_json_fails_softly ... ok [INFO] [stdout] test steps::python::tests::missing_script_file_soft_skips ... ok [INFO] [stdout] test steps::python::tests::nonzero_exit_fails_with_stderr_tail ... ok [INFO] [stdout] test steps::python::tests::request_payload_carries_protocol_generation_and_params ... ok [INFO] [stdout] test steps::python::tests::skipped_response_passes_through ... ok [INFO] [stdout] test steps::python::tests::success_response_maps_all_fields ... ok [INFO] [stdout] test steps::python::tests::custom_interpreter_is_declared_and_used ... ok [INFO] [stdout] test steps::python::tests::dry_run_describes_without_spawning ... ok [INFO] [stdout] test steps::reminders::tests::missing_store_soft_skips ... ok [INFO] [stdout] test steps::board::tests::board_step_honors_lane_param ... ok [INFO] [stdout] test steps::board::tests::board_step_lists_open_lanes_only ... ok [INFO] [stdout] test steps::script::tests::dry_run_describes_without_spawning ... ok [INFO] [stdout] test steps::script::tests::harness_parses_json_and_extracts_text_body ... ok [INFO] [stdout] test steps::script::tests::harness_rejects_non_json_output ... ok [INFO] [stdout] test steps::script::tests::missing_credential_soft_skips ... ok [INFO] [stdout] test steps::script::tests::script_denied_program_fails_with_leash_reason ... ok [INFO] [stdout] test steps::script::tests::script_failure_keeps_stdout_and_reports_stderr ... ok [INFO] [stdout] test steps::script::tests::script_missing_command_param_fails ... ok [INFO] [stdout] test steps::reminders::tests::render_buckets_and_tags ... ok [INFO] [stdout] test steps::reminders::tests::render_empty ... ok [INFO] [stdout] test steps::tests::builtins_register_the_documented_types ... ok [INFO] [stdout] test steps::script::tests::script_success_reports_trimmed_stdout ... ok [INFO] [stdout] test steps::mcp_query::tests::dry_run_describes_without_spawning ... ok [INFO] [stdout] test steps::mcp_query::tests::missing_params_fail_cleanly ... ok [INFO] [stdout] test steps::script::tests::harness_without_text_key_uses_compact_json_body ... ok [INFO] [stdout] test steps::mcp_query::tests::missing_credential_soft_skips_naming_var_not_value ... ok [INFO] [stdout] test steps::mcp_query::tests::timed_out_downstream_is_soft_error_not_a_hung_routine ... ok [INFO] [stdout] test steps::board_ingest::tests::auth_failure_soft_skips ... ok [INFO] [stdout] test steps::mcp_query::tests::ungranted_downstream_command_is_denied_not_run ... ok [INFO] [stdout] test steps::mcp_query::tests::resolved_credential_never_leaks_into_the_report ... ok [INFO] [stdout] test steps::mcp_query::tests::unknown_server_fails_cleanly ... ok [INFO] [stdout] test steps::web::tests::empty_watches_and_dry_run ... ok [INFO] [stdout] test steps::mcp_query::tests::downstream_error_is_soft_data_not_dead_routine ... ok [INFO] [stdout] test steps::mcp_query::tests::happy_path_embeds_only_the_tool_result ... ok [INFO] [stdout] test steps::reminders::tests::lists_open_reminders_through_the_store ... ok [INFO] [stdout] test steps::web::tests::fetch_denial_is_step_data_not_routine_death ... ok [INFO] [stdout] test steps::board_ingest::tests::ingests_issues_as_cards_idempotently ... ok [INFO] [stdout] test steps::web::tests::first_fetch_then_unchanged_then_changed ... ok [INFO] [stdout] test store::tests::card_lifecycle_add_move_update_close ... ok [INFO] [stdout] test store::tests::generation_persists ... ok [INFO] [stdout] test store::tests::card_add_upserts_by_card_id ... ok [INFO] [stdout] test store::tests::countdown_lifecycle_and_default_display ... ok [INFO] [stdout] test steps::web::tests::real_net_leash_denies_unlisted_host_through_bridle_fetcher ... ok [INFO] [stdout] test store::tests::cards_query_filters_by_project_status_lane ... ok [INFO] [stdout] test store::tests::card_refs_round_trip_preserves_order ... ok [INFO] [stdout] test store::tests::export_import_round_trips ... ok [INFO] [stdout] test store::tests::mcp_server_lifecycle_register_list_get_unregister ... ok [INFO] [stdout] test store::tests::legacy_generation_is_migrated_into_substrate ... ok [INFO] [stdout] test store::tests::dir_sync_round_trips ... ok [INFO] [stdout] test store::tests::policy_rejects_reserved_postgres_backend ... ok [INFO] [stdout] test store::tests::resolve_path_order ... ok [INFO] [stdout] test store::tests::migration_v1_to_v2_upgrades_cleanly ... ok [INFO] [stdout] test store::tests::watch_lifecycle_records_hash_and_generation ... ok [INFO] [stdout] test store::tests::cards_export_import_round_trips ... ok [INFO] [stdout] test store::tests::reminder_lifecycle ... ok [INFO] [stdout] test store::tests::mcp_servers_export_import_round_trips ... ok [INFO] [stdout] test store::tests::open_creates_parent_dirs_and_reopens ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 145 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s [INFO] [stdout] [INFO] [stderr] Running tests/data_contract.rs (/opt/rustwide/target/debug/deps/data_contract-78e274e824a1e87e) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test golden_schemas_are_pinned ... ok [INFO] [stdout] test executed_step_data_validates_against_schema ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.30s [INFO] [stdout] [INFO] [stderr] Running tests/example_config.rs (/opt/rustwide/target/debug/deps/example_config-e4bab5eed87484dc) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test example_contains_no_credential_values ... ok [INFO] [stdout] test example_config_parses ... ok [INFO] [stdout] test example_declares_only_expected_programs ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stderr] Running tests/gated_exec.rs (/opt/rustwide/target/debug/deps/gated_exec-1a7d230da325b6d4) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test ungranted_program_is_denied_before_spawn ... ok [INFO] [stdout] test granted_echo_runs_and_captures_stdout ... ok [INFO] [stdout] test injected_secret_reaches_child_env_and_is_scrubbed_from_output ... ok [INFO] [stdout] test timeout_kills_and_reports ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s [INFO] [stdout] [INFO] [stderr] Running tests/live_contract.rs (/opt/rustwide/target/debug/deps/live_contract-7a2ead1314ee0684) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test live_plugin_protocol_with_real_python ... ok [INFO] [stdout] test live_gh_pr_list_json_shape ... ok [INFO] [stdout] test live_glab_presence ... ok [INFO] [stdout] test live_harness_contract_end_to_end ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/modulex_mcp-eea0bbe144d371c2) [INFO] [stdout] test live_git_status_and_unpushed_states ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.29s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 34 tests [INFO] [stdout] test facets::tests::banner_names_provenance ... ok [INFO] [stdout] test facets::tests::env_wins_then_config_then_default ... ok [INFO] [stdout] test facets::tests::deny_beats_expose_everywhere ... ok [INFO] [stdout] test server::tests::missing_method_with_id_gets_invalid_request_not_silence ... ok [INFO] [stdout] test server::tests::denied_facets_are_dead_everywhere ... ok [INFO] [stdout] test server::tests::dry_run_filters_pass_through ... ok [INFO] [stdout] test server::tests::format_data_returns_structured_payloads_only ... ok [INFO] [stdout] test server::tests::mcp_register_is_unlisted_but_discoverable ... ok [INFO] [stdout] test server::tests::per_step_failure_is_data_not_is_error ... ok [INFO] [stdout] test server::tests::initialize_advertises_tools_capability ... ok [INFO] [stdout] test server::tests::board_tools_round_trip_via_invoke ... ok [INFO] [stdout] test server::tests::report_get_by_generation_and_latest ... ok [INFO] [stdout] test server::tests::mcp_register_round_trips_via_invoke ... ok [INFO] [stdout] test tools::tests::board_facet_is_opt_in_but_discoverable ... ok [INFO] [stdout] test tools::tests::default_surface_fits_the_budget ... ok [INFO] [stdout] test tools::tests::every_spec_has_schema_and_description ... ok [INFO] [stdout] test tools::tests::mcp_facet_is_opt_in_but_discoverable ... ok [INFO] [stdout] test server::tests::routine_eval_runs_inline_steps_under_the_same_leash ... ok [INFO] [stdout] test tools::tests::surface_policy_is_pinned ... ok [INFO] [stdout] test tools::tests::tool_names_are_unique ... ok [INFO] [stdout] test server::tests::routine_eval_cannot_widen_authority ... ok [INFO] [stdout] test server::tests::step_run_validates_arguments ... ok [INFO] [stdout] test server::tests::tools_list_names_the_full_surface ... ok [INFO] [stdout] test server::tests::initialized_notification_gets_no_response ... ok [INFO] [stdout] test server::tests::reminder_lifecycle_over_mcp_stamps_generations ... ok [INFO] [stdout] test server::tests::routine_run_returns_report_text_without_is_error ... ok [INFO] [stdout] test server::tests::routine_eval_validates_its_input ... ok [INFO] [stdout] test server::tests::store_trio_round_trips_every_kind ... ok [INFO] [stdout] test server::tests::watch_and_countdown_tools_round_trip ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/modulex_mcp-80c4ecf6ab39044a) [INFO] [stdout] test server::tests::unknown_tool_is_a_tool_error ... ok [INFO] [stdout] test server::tests::unknown_routine_is_an_engine_fault_with_is_error ... ok [INFO] [stdout] test server::tests::unlisted_tools_remain_callable_and_discoverable ... ok [INFO] [stdout] test server::tests::unknown_method_is_a_jsonrpc_error ... ok [INFO] [stdout] test server::tests::routine_list_and_steps_list_describe_the_surface ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 34 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/modulex_plugin_health-629a197bcb9b6cf7) [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.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test tests::optional_programs_feed_the_grant_not_the_probe ... ok [INFO] [stdout] test tests::df_parser_and_thresholds ... ok [INFO] [stdout] test tests::gpu_check_falls_back_when_smi_absent ... ok [INFO] [stdout] test tests::disk_check_states_and_data ... ok [INFO] [stdout] test tests::gpu_check_tier1_parses_nvidia_smi ... ok [INFO] [stdout] test tests::service_check_flags_inactive ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stderr] Running tests/data_contract.rs (/opt/rustwide/target/debug/deps/data_contract-17ef4724fdb23132) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test live_disk_and_service_checks ... ok [INFO] [stdout] test golden_schemas_are_pinned ... ok [INFO] [stdout] test executed_step_data_validates_against_schema ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.34s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/modulex_py-0c2537c4057b8a27) [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 modulex_core [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test crates/modulex-core/src/credentials.rs - credentials::Secret (line 63) - compile fail ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.24s [INFO] [stdout] [INFO] [stderr] Doc-tests modulex_mcp [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 modulex_plugin_health [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" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418", kill_on_drop: false }` [INFO] [stdout] 14d7817d7f8f01f7f82f89f05807acabdf87bc7b8334b09be65e854a22f6f418