[INFO] cloning repository https://github.com/agiletec-inc/airis-workspace [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/agiletec-inc/airis-workspace" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fagiletec-inc%2Fairis-workspace", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fagiletec-inc%2Fairis-workspace'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 711c2dc0c58a6dc7b0b29aed7b0c6d2e7fd07c5f [INFO] testing agiletec-inc/airis-workspace against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fagiletec-inc%2Fairis-workspace" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-3-tc2/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/agiletec-inc/airis-workspace [INFO] finished tweaking git repo https://github.com/agiletec-inc/airis-workspace [INFO] tweaked toml for git repo https://github.com/agiletec-inc/airis-workspace written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/agiletec-inc/airis-workspace on toolchain 33835004928d3bf65db4d4712e1330766263b0bd [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/agiletec-inc/airis-workspace 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" "+33835004928d3bf65db4d4712e1330766263b0bd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 17667f133681a5423096e9e9382773413ccaca8bee9588578df5e37cbda3137c [INFO] running `Command { std: "docker" "start" "-a" "17667f133681a5423096e9e9382773413ccaca8bee9588578df5e37cbda3137c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "17667f133681a5423096e9e9382773413ccaca8bee9588578df5e37cbda3137c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "17667f133681a5423096e9e9382773413ccaca8bee9588578df5e37cbda3137c", kill_on_drop: false }` [INFO] [stdout] 17667f133681a5423096e9e9382773413ccaca8bee9588578df5e37cbda3137c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c668131c8e7f009fe301fb94ed38607f999a58ed07b6db69251d03a987132877 [INFO] running `Command { std: "docker" "start" "-a" "c668131c8e7f009fe301fb94ed38607f999a58ed07b6db69251d03a987132877", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.184 [INFO] [stderr] Compiling simd-adler32 v0.3.9 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling zeroize v1.8.2 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling cc v1.2.59 [INFO] [stderr] Compiling hashbrown v0.16.1 [INFO] [stderr] Compiling object v0.37.3 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling httparse v1.10.1 [INFO] [stderr] Compiling anstyle-query v1.1.5 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling colorchoice v1.0.5 [INFO] [stderr] Compiling gimli v0.32.3 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling anstyle-parse v1.0.0 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling rustls-pki-types v1.14.0 [INFO] [stderr] Compiling owo-colors v4.3.0 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling anstream v1.0.0 [INFO] [stderr] Compiling rustls v0.23.40 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling portable-atomic v1.13.1 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling clap_derive v4.6.0 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling is_ci v1.2.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling indexmap v2.13.1 [INFO] [stderr] Compiling winnow v1.0.1 [INFO] [stderr] Compiling option-ext v0.2.0 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling unicode-linebreak v0.1.5 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling flate2 v1.1.9 [INFO] [stderr] Compiling toml_parser v1.1.2+spec-1.1.0 [INFO] [stderr] Compiling supports-color v3.0.2 [INFO] [stderr] Compiling webpki-roots v1.0.6 [INFO] [stderr] Compiling textwrap v0.16.2 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling console v0.16.3 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling blake3 v1.8.4 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling ureq-proto v0.6.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling dirs-sys v0.5.0 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling socket2 v0.6.3 [INFO] [stderr] Compiling miette-derive v7.6.0 [INFO] [stderr] Compiling tokio-macros v2.7.0 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling serde_spanned v1.1.1 [INFO] [stderr] Compiling toml_datetime v1.1.1+spec-1.1.0 [INFO] [stderr] Compiling supports-hyperlinks v3.2.0 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling toml_writer v1.1.1+spec-1.1.0 [INFO] [stderr] Compiling terminal_size v0.4.4 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling unit-prefix v0.5.2 [INFO] [stderr] Compiling airis-workspace v3.19.3 (/opt/rustwide/workdir) [INFO] [stderr] Compiling iana-time-zone v0.1.65 [INFO] [stderr] Compiling constant_time_eq v0.4.2 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling unsafe-libyaml v0.2.11 [INFO] [stderr] Compiling supports-unicode v3.0.0 [INFO] [stderr] Compiling cpufeatures v0.3.0 [INFO] [stderr] Compiling utf8-zero v0.8.1 [INFO] [stderr] Compiling tokio v1.51.0 [INFO] [stderr] Compiling dialoguer v0.12.0 [INFO] [stderr] Compiling addr2line v0.25.1 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling clap v4.6.0 [INFO] [stderr] Compiling clap_complete v4.6.2 [INFO] [stderr] Compiling ignore v0.4.25 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling indicatif v0.18.4 [INFO] [stderr] Compiling toml v1.1.2+spec-1.1.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling dirs v6.0.0 [INFO] [stderr] Compiling colored v3.1.1 [INFO] [stderr] Compiling glob v0.3.3 [INFO] [stderr] Compiling backtrace v0.3.76 [INFO] [stderr] Compiling serde_yaml_ng v0.10.0 [INFO] [stderr] Compiling backtrace-ext v0.2.1 [INFO] [stderr] Compiling miette v7.6.0 [INFO] [stderr] Compiling rustls-webpki v0.103.13 [INFO] [stderr] Compiling ureq v3.3.0 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 08s [INFO] running `Command { std: "docker" "inspect" "c668131c8e7f009fe301fb94ed38607f999a58ed07b6db69251d03a987132877", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c668131c8e7f009fe301fb94ed38607f999a58ed07b6db69251d03a987132877", kill_on_drop: false }` [INFO] [stdout] c668131c8e7f009fe301fb94ed38607f999a58ed07b6db69251d03a987132877 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5693f58b85fba7bb788c69269c41c8c7075afd0b0e837c72cc2d0cdbe26673ba [INFO] running `Command { std: "docker" "start" "-a" "5693f58b85fba7bb788c69269c41c8c7075afd0b0e837c72cc2d0cdbe26673ba", kill_on_drop: false }` [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling predicates-core v1.0.10 [INFO] [stderr] Compiling float-cmp v0.10.0 [INFO] [stderr] Compiling normalize-line-endings v0.3.0 [INFO] [stderr] Compiling assert_cmd v2.2.0 [INFO] [stderr] Compiling termtree v0.5.1 [INFO] [stderr] Compiling difflib v0.4.0 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling predicates-tree v1.0.13 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling predicates v3.1.4 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling ignore v0.4.25 [INFO] [stderr] Compiling airis-workspace v3.19.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 35.18s [INFO] running `Command { std: "docker" "inspect" "5693f58b85fba7bb788c69269c41c8c7075afd0b0e837c72cc2d0cdbe26673ba", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5693f58b85fba7bb788c69269c41c8c7075afd0b0e837c72cc2d0cdbe26673ba", kill_on_drop: false }` [INFO] [stdout] 5693f58b85fba7bb788c69269c41c8c7075afd0b0e837c72cc2d0cdbe26673ba [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] cc98ad611a28226103d870a8c176f3c39f1b772978c2302883361a7d21788f63 [INFO] running `Command { std: "docker" "start" "-a" "cc98ad611a28226103d870a8c176f3c39f1b772978c2302883361a7d21788f63", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.30s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/airis_workspace-57d754ded42814b2) [INFO] [stdout] [INFO] [stdout] running 359 tests [INFO] [stdout] test channel::tests::test_parse_channel ... ok [INFO] [stdout] test commands::bump_version::tests::test_bump_version_string ... ok [INFO] [stdout] test commands::bump_version::tests::test_breaking_marker_only_matches_subject ... ok [INFO] [stdout] test commands::bump_version::tests::test_conventional_commits_detection ... ok [INFO] [stdout] test commands::affected::tests::test_get_package_from_path ... ok [INFO] [stdout] test commands::bump_version::tests::test_scoped_breaking_marker ... ok [INFO] [stdout] test commands::bump_version::tests::test_strip_commit_comments ... ok [INFO] [stdout] test commands::bundle::tests::test_bundle_metadata_serialization ... ok [INFO] [stdout] test commands::bundle::tests::test_format_size ... ok [INFO] [stdout] test commands::bundle::tests::test_generate_service_yaml ... ok [INFO] [stdout] test commands::bundle::tests::test_generate_deployment_yaml_defaults ... ok [INFO] [stdout] test commands::claude_setup::tests::test_managed_dirs_includes_all_expected_rules ... ok [INFO] [stdout] test commands::bump_version::tests::test_replace_lock_version_noop_when_package_absent ... ok [INFO] [stdout] test commands::bundle::tests::test_generate_service_yaml_default_port ... ok [INFO] [stdout] test commands::bundle::tests::test_detect_artifact_dirs_empty ... ok [INFO] [stdout] test commands::bundle::tests::test_detect_artifact_dirs_with_dist ... ok [INFO] [stdout] test commands::claude_setup::tests::test_initialize_source_dir ... ok [INFO] [stdout] test commands::claude_setup::tests::test_is_legacy_airis_entry ... ok [INFO] [stdout] test commands::bump_version::tests::test_replace_lock_version_targets_named_package_only ... ok [INFO] [stdout] test commands::bundle::tests::test_generate_deployment_yaml ... ok [INFO] [stdout] test commands::claude_setup::tests::test_check_plugin_installed_detects_presence ... ok [INFO] [stdout] test commands::claude_setup::tests::test_remove_legacy_airis_entries_preserves_others ... ok [INFO] [stdout] test commands::claude_setup::tests::test_sync_managed_dir_creates_files ... ok [INFO] [stdout] test commands::claude_setup::tests::test_no_infra_constants_in_templates ... ok [INFO] [stdout] test commands::claude_setup::tests::test_sync_managed_dir_deletes_orphans ... ok [INFO] [stdout] test commands::claude_setup::tests::test_sync_managed_dir_skips_unchanged ... ok [INFO] [stdout] test commands::clean::tests::project_root_rejected_when_no_marker_present ... ok [INFO] [stdout] test commands::claude_setup::tests::test_sync_from_source_preserves_non_airis_files ... ok [INFO] [stdout] test commands::deps::tests::test_build_dependents_map ... ok [INFO] [stdout] test commands::claude_setup::tests::test_sync_from_source_basic ... ok [INFO] [stdout] test commands::deps::tests::test_detect_cycles_with_cycle ... ok [INFO] [stdout] test commands::diff::tests::test_compute_unified_diff_no_changes ... ok [INFO] [stdout] test commands::diff::tests::test_file_status_serialize ... ok [INFO] [stdout] test commands::diff::tests::test_format_new_file_diff ... ok [INFO] [stdout] test commands::discover::tests::test_detect_framework_hono ... ok [INFO] [stdout] test commands::clean::tests::project_root_detected_for_each_marker ... ok [INFO] [stdout] test commands::claude_setup::tests::test_sync_single_file_creates_and_overwrites ... ok [INFO] [stdout] test commands::claude_setup::tests::test_sync_from_source_orphan_removal ... ok [INFO] [stdout] test commands::discover::tests::test_detect_framework_node_fallback ... ok [INFO] [stdout] test commands::discover::tests::test_detect_framework_python ... ok [INFO] [stdout] test commands::discover::tests::test_detect_framework_rust ... ok [INFO] [stdout] test commands::discover::tests::test_detect_framework_vite ... ok [INFO] [stdout] test commands::clean::tests::default_manifest_provides_canonical_clean_lists ... ok [INFO] [stdout] test commands::discover::tests::test_discover_from_workspaces_nested_products ... ok [INFO] [stdout] test commands::discover::tests::test_discover_from_workspaces_basic ... ok [INFO] [stdout] test commands::discover::tests::test_extract_catalog ... ok [INFO] [stdout] test commands::discover::tests::test_extract_package_info_basic ... ok [INFO] [stdout] test commands::discover::tests::test_extract_package_info_skips_workspace_refs ... ok [INFO] [stdout] test commands::discover::tests::test_extract_package_info_with_catalog_conversion ... ok [INFO] [stdout] test commands::discover::tests::test_get_package_name ... ok [INFO] [stdout] test commands::docs::tests::handle_existing_file_backup_mode_writes_bak ... ok [INFO] [stdout] test commands::docs::tests::handle_existing_file_force_overwrites_in_warn_mode ... ok [INFO] [stdout] test commands::docs::tests::render_gemini_uses_imports ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_empty_when_all_defaults_with_allowed ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_forbidden_renders_mock_rule ... ok [INFO] [stdout] test commands::docs::tests::sync_generates_configured_vendor_adapters ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_injected_into_agents_md ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_injected_into_gemini_md ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_injected_into_claude_md ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_renders_coverage_targets ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_renders_custom_ai_rules ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_renders_forbidden_patterns ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_renders_type_enforcement ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_unit_only_renders_mock_rule ... ok [INFO] [stdout] test commands::doctor::tests::test_artifact_severity_build_outputs_are_warnings ... ok [INFO] [stdout] test commands::doctor::tests::test_artifact_severity_dependencies_are_errors ... ok [INFO] [stdout] test commands::doctor::tests::test_issue_severity ... ok [INFO] [stdout] test commands::generate::ai_gen::tests::test_sync_ai_rules_idempotent ... ok [INFO] [stdout] test commands::generate::ai_gen::tests::test_update_generated_block_existing ... ok [INFO] [stdout] test commands::generate::ai_gen::tests::test_update_generated_block_new ... ok [INFO] [stdout] test commands::generate::compose_gen::tests::build_app_service_has_production_fields ... ok [INFO] [stdout] test commands::generate::compose_gen::tests::merge_drops_airis_managed_services_no_longer_generated ... ok [INFO] [stdout] test commands::generate::compose_gen::tests::merge_preserves_user_services ... ok [INFO] [stdout] test commands::generate::compose_gen::tests::merge_replaces_airis_managed_services ... ok [INFO] [stdout] test commands::generate::compose_gen::tests::slug_normalizes_paths_and_dots ... ok [INFO] [stdout] test commands::generate::tests::test_detect_ts_major_default ... ok [INFO] [stdout] test commands::generate::tests::test_detect_ts_major_explicit_override ... ok [INFO] [stdout] test commands::generate::tests::test_detect_ts_major_from_catalog ... ok [INFO] [stdout] test commands::claude_setup::tests::test_registry_load_save_roundtrip ... ok [INFO] [stdout] test commands::generate::tests::test_load_generation_registry ... ok [INFO] [stdout] test commands::generate::tests::test_load_generation_registry_missing_file ... ok [INFO] [stdout] test commands::generate::tests::test_detect_ts_major_from_catalog_tilde ... ok [INFO] [stdout] test commands::generate::tests::test_save_generation_registry_deduplicates_and_sorts ... ok [INFO] [stdout] test commands::clean::tests::test_protected_paths ... ok [INFO] [stdout] test commands::deps::tests::test_detect_cycles_no_cycle ... ok [INFO] [stdout] test commands::discover::tests::test_discover_from_workspaces_excludes_negated ... ok [INFO] [stdout] test commands::guards::tests::installed_shim_invokes_airis_exec_with_cmd_only ... ok [INFO] [stdout] test commands::guards::tests::test_global_config_default ... ok [INFO] [stdout] test commands::guards::tests::test_global_config_paths ... ok [INFO] [stdout] test commands::guards::tests::test_global_config_serialization ... ok [INFO] [stdout] test commands::guards::tests::marker_present_in_generated_script ... ok [INFO] [stdout] test commands::manifest_cmd::tests::test_workspace_truth_compose_files ... ok [INFO] [stdout] test commands::manifest_cmd::tests::test_workspace_truth_recommended_commands ... ok [INFO] [stdout] test commands::mcp::tests::handle_resources_read_rejects_unadvertised_paths ... ok [INFO] [stdout] test commands::manifest_cmd::tests::test_workspace_truth_serialization ... ok [INFO] [stdout] test commands::mcp::tests::parse_workspace_uri_rejects_traversal_and_absolute ... ok [INFO] [stdout] test commands::mcp::tests::parse_workspace_uri_accepts_relative_paths ... ok [INFO] [stdout] test commands::migrate::tests::test_dry_run_does_not_create_files ... ok [INFO] [stdout] test commands::migrate::tests::test_execute_creates_manifest ... ok [INFO] [stdout] test commands::migrate::tests::test_generate_manifest_content ... ok [INFO] [stdout] test commands::migrate::tests::test_plan_always_includes_generate_manifest ... ok [INFO] [stdout] test commands::migrate::tests::test_plan_does_not_move_root_compose ... ok [INFO] [stdout] test commands::network::tests::test_default_networks ... ok [INFO] [stdout] test commands::new_cmd::tests::test_empty_name_rejected ... ok [INFO] [stdout] test commands::guards::tests::enforce_passes_through_outside_airis_context ... ok [INFO] [stdout] test commands::guards::tests::airis_bypass_skips_guard ... ok [INFO] [stdout] test commands::new_cmd::tests::test_generate_api_project ... ok [INFO] [stdout] test commands::new_cmd::tests::test_generate_lib_project ... ok [INFO] [stdout] test commands::new_cmd::tests::test_generate_py_api ... ok [INFO] [stdout] test commands::new_cmd::tests::test_generate_py_lib ... ok [INFO] [stdout] test commands::new_cmd::tests::test_invalid_name_rejected ... ok [INFO] [stdout] test commands::new_cmd::tests::test_get_base_dir ... ok [INFO] [stdout] test commands::new_cmd::tests::test_generate_rust_service ... ok [INFO] [stdout] test commands::policy::tests::test_banned_env_vars_clean_code_passes ... ok [INFO] [stdout] test commands::policy::tests::test_banned_env_vars_detects_violation ... ok [INFO] [stdout] test commands::policy::tests::test_banned_env_vars_skips_allowed_paths ... ok [INFO] [stdout] test commands::policy::tests::test_forbidden_files_check ... ok [INFO] [stdout] test commands::policy::tests::test_mock_pattern_clean_test_passes ... ok [INFO] [stdout] test commands::policy::tests::test_policy_config_default ... ok [INFO] [stdout] test commands::policy::tests::test_policy_template ... ok [INFO] [stdout] test commands::policy::tests::test_required_env_missing ... ok [INFO] [stdout] test commands::policy::tests::test_severity_enum ... ok [INFO] [stdout] test commands::policy::tests::test_mock_pattern_detects_violation ... ok [INFO] [stdout] test commands::policy::tests::test_type_enforcement_detects_missing_import ... ok [INFO] [stdout] test commands::policy::tests::test_mock_pattern_ignores_non_test_files ... ok [INFO] [stdout] test commands::run::exec::tests::classify_routes_node_python_rust ... ok [INFO] [stdout] test commands::run::exec::tests::classify_strips_path_prefix ... ok [INFO] [stdout] test commands::run::exec::tests::collect_service_names_includes_workspace_default ... ok [INFO] [stdout] test commands::run::exec::tests::down_marker_path_requires_project_id_and_home ... ok [INFO] [stdout] test commands::policy::tests::test_mock_pattern_multiple_patterns ... ok [INFO] [stdout] test commands::run::exec::tests::resolve_explicit_service_passes_cmd_through ... ok [INFO] [stdout] test commands::run::exec::tests::down_marker_recent_respects_ttl ... ok [INFO] [stdout] test commands::policy::tests::test_type_enforcement_passes_with_import ... ok [INFO] [stdout] test commands::policy::tests::test_type_enforcement_skips_non_db_tests ... ok [INFO] [stdout] test commands::run::exec::tests::resolve_legacy_positional_service_strips_first_arg ... ok [INFO] [stdout] test commands::run::exec::tests::resolve_runtime_command_does_not_get_swallowed_by_service_lookup ... ok [INFO] [stdout] test commands::run::exec::tests::resolve_runtime_command_routes_to_default ... ok [INFO] [stdout] test commands::run::exec::tests::resolve_workspace_positional_form_still_works ... ok [INFO] [stdout] test commands::run::tests::test_build_clean_command_filters_unsafe ... ok [INFO] [stdout] test commands::run::tests::test_build_compose_command_with_compose_file_succeeds ... ok [INFO] [stdout] test commands::run::tests::test_condense_status_hours ... ok [INFO] [stdout] test commands::run::tests::test_condense_status_minutes ... ok [INFO] [stdout] test commands::run::tests::test_condense_status_other ... ok [INFO] [stdout] test commands::run::tests::test_condense_status_passthrough ... ok [INFO] [stdout] test channel::tests::test_resolve_bun ... ok [INFO] [stdout] test commands::run::tests::test_dev_section_post_up_default_empty ... ok [INFO] [stdout] test commands::run::tests::test_dev_section_post_up_with_hooks ... ok [INFO] [stdout] test channel::tests::test_resolve_channel_returns_digest_when_available ... ok [INFO] [stdout] test commands::deps::tests::test_check_architecture_valid ... ok [INFO] [stdout] test commands::deps::tests::test_check_architecture_violation ... ok [INFO] [stdout] test commands::diff::tests::test_compute_unified_diff_with_changes ... ok [INFO] [stdout] test commands::discover::tests::test_detect_framework_nextjs ... ok [INFO] [stdout] test commands::discover::tests::test_detect_framework_unknown ... ok [INFO] [stdout] test commands::docs::tests::testing_policy_not_in_claude_md_when_all_defaults_allowed ... ok [INFO] [stdout] test commands::run::tests::test_extract_host_port_env_var_default ... ok [INFO] [stdout] test commands::run::tests::test_extract_host_port_fallback_to_port_field ... ok [INFO] [stdout] test commands::run::tests::test_extract_host_port_plain_number ... ok [INFO] [stdout] test commands::run::tests::test_get_package_manager_bun ... ok [INFO] [stdout] test commands::run::tests::test_extract_host_port_no_ports ... ok [INFO] [stdout] test commands::run::tests::test_get_package_manager_default ... ok [INFO] [stdout] test commands::run::tests::test_get_package_manager_npm ... ok [INFO] [stdout] test commands::run::tests::test_get_package_manager_yarn ... ok [INFO] [stdout] test commands::run::tests::test_get_package_manager_pnpm ... ok [INFO] [stdout] test commands::run::tests::test_hash_file_deterministic ... ok [INFO] [stdout] test commands::run::tests::test_hash_file_changes_with_content ... ok [INFO] [stdout] test commands::run::tests::test_hooks_section_parses_from_toml ... ok [INFO] [stdout] test channel::tests::test_fetch_image_digest_nonexistent ... ok [INFO] [stdout] test commands::run::tests::test_manifest_dev_urls_parsing ... ok [INFO] [stdout] test commands::run::tests::test_parse_service_ports_empty_services ... ok [INFO] [stdout] test commands::run::tests::test_parse_service_ports_no_ports ... ok [INFO] [stdout] test channel::tests::test_resolve_lts ... ok [INFO] [stdout] test commands::run::tests::test_parse_service_ports_object_format ... ok [INFO] [stdout] test commands::run::tests::test_parse_service_ports_skips_zero_port ... ok [INFO] [stdout] test commands::run::tests::test_parse_service_ports_string_format ... ok [INFO] [stdout] test commands::run::tests::test_pre_command_hooks_default_is_none ... ok [INFO] [stdout] test commands::run::tests::test_remap_case_insensitive ... ok [INFO] [stdout] test commands::run::tests::test_remap_empty_table ... ok [INFO] [stdout] test commands::run::tests::test_remap_no_match ... ok [INFO] [stdout] test commands::run::tests::test_remap_exact_match ... ok [INFO] [stdout] test commands::run::tests::test_remap_no_partial_word_match ... ok [INFO] [stdout] test commands::run::tests::test_remap_prefix_match ... ok [INFO] [stdout] test commands::run::tests::test_run_missing_command ... ok [INFO] [stdout] test channel::tests::test_resolve_edge ... ok [INFO] [stdout] test commands::run::tests::test_validate_clean_path_rejects_absolute ... ok [INFO] [stdout] test commands::run::tests::test_validate_clean_path_rejects_dangerous ... ok [INFO] [stdout] test commands::run::tests::test_validate_clean_path_rejects_shell_chars ... ok [INFO] [stdout] test commands::run::tests::test_validate_clean_path_rejects_traversal ... ok [INFO] [stdout] test commands::run::tests::test_validate_clean_path_safe_paths ... ok [INFO] [stdout] test commands::run::tests::test_validate_clean_pattern_rejects_paths ... ok [INFO] [stdout] test commands::run::tests::test_validate_clean_pattern_rejects_shell_injection ... ok [INFO] [stdout] test commands::run::tests::test_validate_clean_pattern_safe_patterns ... ok [INFO] [stdout] test commands::upgrade::tests::test_detect_platform ... ok [INFO] [stdout] test commands::upgrade::tests::test_version_gt ... ok [INFO] [stdout] test conventions::tests::test_cloudflare_worker_defaults ... ok [INFO] [stdout] test conventions::tests::test_healthcheck_for_nextjs ... ok [INFO] [stdout] test conventions::tests::test_healthcheck_none_for_pnpm_stack ... ok [INFO] [stdout] test conventions::tests::test_hono_defaults ... ok [INFO] [stdout] test conventions::tests::test_name_from_path ... ok [INFO] [stdout] test conventions::tests::test_nextjs_defaults ... ok [INFO] [stdout] test conventions::tests::test_nextjs_has_watchpack_polling ... ok [INFO] [stdout] test conventions::tests::test_node_has_no_polling_env ... ok [INFO] [stdout] test conventions::tests::test_node_version_to_es_target ... ok [INFO] [stdout] test conventions::tests::test_parse_node_version_from_image ... ok [INFO] [stdout] test conventions::tests::test_python_defaults ... ok [INFO] [stdout] test conventions::tests::test_unknown_framework_has_sensible_defaults ... ok [INFO] [stdout] test conventions::tests::test_vite_has_chokidar_polling ... ok [INFO] [stdout] test dag::tests::test_topo_order ... ok [INFO] [stdout] test docker_build::tests::test_build_config_default ... ok [INFO] [stdout] test docker_build::tests::test_cache_dir_structure ... ok [INFO] [stdout] test commands::run::exec::tests::resolve_unknown_command_errors_with_hint ... ok [INFO] [stdout] test commands::run::tests::test_build_compose_command_no_compose_file_errors ... ok [INFO] [stdout] test commands::guards::tests::shim_routes_to_airis_exec_inside_workspace ... FAILED [INFO] [stdout] test commands::run::tests::test_build_compose_command_with_orchestration_succeeds ... ok [INFO] [stdout] test docker_build::tests::test_cache_store_and_hit ... ok [INFO] [stdout] test commands::run::tests::test_default_commands_uses_package_manager ... ok [INFO] [stdout] test commands::run::tests::test_ensure_env_file_copies_example ... ok [INFO] [stdout] test commands::run::tests::test_ensure_env_file_noop_when_env_exists ... ok [INFO] [stdout] test commands::run::tests::test_extra_args_blocks_shell_injection_pipe ... ok [INFO] [stdout] test docker_build::tests::test_detect_nextjs_no_package_json ... ok [INFO] [stdout] test commands::run::tests::test_extra_args_blocks_command_substitution ... ok [INFO] [stdout] test commands::run::tests::test_extra_args_blocks_shell_injection_semicolon ... ok [INFO] [stdout] test docker_build::tests::test_dockerfile_with_build_args ... ok [INFO] [stdout] test docker_build::tests::test_detect_nextjs_with_next_devdep ... ok [INFO] [stdout] test commands::run::tests::test_ensure_env_file_noop_when_no_example ... ok [INFO] [stdout] test docker_build::tests::test_compute_hash_deterministic ... ok [INFO] [stdout] test docker_build::tests::test_generate_bun_dockerfile ... ok [INFO] [stdout] test docker_build::tests::test_generate_deno_dockerfile ... ok [INFO] [stdout] test docker_build::tests::test_generate_python_dockerfile ... ok [INFO] [stdout] test docker_build::tests::test_generate_rust_dockerfile ... ok [INFO] [stdout] test docker_build::tests::test_generate_nextjs_dockerfile ... ok [INFO] [stdout] test import_scanner::tests::test_extract_package_name_unscoped ... ok [INFO] [stdout] test docker_build::tests::test_detect_nextjs_without_next ... ok [INFO] [stdout] test executor::tests::test_task_state ... ok [INFO] [stdout] test docker_build::tests::test_detect_nextjs_with_next_dep ... ok [INFO] [stdout] test import_scanner::tests::test_extract_package_name_scoped ... ok [INFO] [stdout] test executor::tests::test_executor_empty ... ok [INFO] [stdout] test docker_build::tests::test_compute_hash_changes_with_content ... ok [INFO] [stdout] test commands::run::tests::test_manifest_commands_override_defaults ... ok [INFO] [stdout] test commands::run::tests::test_manifest_can_add_custom_commands ... ok [INFO] [stdout] test import_scanner::tests::test_scan_real_agiletec_corporate ... ok [INFO] [stdout] test import_scanner::tests::test_real_agiletec_ui_has_react_hook_form ... ok [INFO] [stdout] test import_scanner::tests::test_real_agiletec_pricing_no_self_ref ... ok [INFO] [stdout] test commands::run::tests::test_run_missing_manifest_and_compose ... ok [INFO] [stdout] test import_scanner::tests::test_scan_real_agiletec_voice_gateway ... ok [INFO] [stdout] test import_scanner::tests::test_real_agiletec_notification_no_self_ref ... ok [INFO] [stdout] test executor::tests::test_executor_with_dependencies ... ok [INFO] [stdout] test import_scanner::tests::test_skip_jsdoc_imports ... ok [INFO] [stdout] test import_scanner::tests::test_inline_block_comment_on_same_line ... ok [INFO] [stdout] test import_scanner::tests::test_skip_block_comments ... ok [INFO] [stdout] test import_scanner::tests::test_skip_line_comments ... ok [INFO] [stdout] test import_scanner::tests::test_skip_jsdoc_continuation_lines ... ok [INFO] [stdout] test import_scanner::tests::test_scan_standard_imports ... ok [INFO] [stdout] test import_scanner::tests::test_scan_reexports ... ok [INFO] [stdout] test import_scanner::tests::test_scan_multiline_imports ... ok [INFO] [stdout] test import_scanner::tests::test_scan_subpath_imports ... ok [INFO] [stdout] test import_scanner::tests::test_scan_mixed_quotes ... ok [INFO] [stdout] test import_scanner::tests::test_skip_relative_and_alias_imports ... ok [INFO] [stdout] test import_scanner::tests::test_skip_node_builtins ... ok [INFO] [stdout] test import_scanner::tests::test_scan_dynamic_imports ... ok [INFO] [stdout] test manifest::tests::runtimes_section_alias_remains_backward_compatible ... ok [INFO] [stdout] test manifest::tests::test_policy_section_defaults_when_absent ... ok [INFO] [stdout] test manifest::tests::test_policy_testing_takes_precedence_over_testing ... ok [INFO] [stdout] test manifest::tests::test_resolve_deploy_defaults_from_framework ... ok [INFO] [stdout] test manifest::tests::runtimes_section_parses_detailed_form ... ok [INFO] [stdout] test manifest::tests::test_resolve_deploy_explicit_not_overridden ... ok [INFO] [stdout] test manifest::tests::test_testing_fallback_to_policy_testing ... ok [INFO] [stdout] test manifest::tests::test_testing_invalid_regex_rejected ... ok [INFO] [stdout] test manifest::tests::test_resolve_scope_from_workspace ... ok [INFO] [stdout] test manifest::tests::test_resolve_scope_not_overridden ... ok [INFO] [stdout] test manifest::tests::test_testing_invalid_required_imports_regex_rejected ... ok [INFO] [stdout] test manifest::tests::test_testing_section_mock_policy_allowed ... ok [INFO] [stdout] test manifest::tests::test_testing_section_defaults_when_absent ... ok [INFO] [stdout] test manifest::tests::test_testing_section_mock_policy_forbidden ... ok [INFO] [stdout] test manifest::tests::test_testing_smoke_default_timeout ... ok [INFO] [stdout] test manifest::tests::test_validate_allows_named_volumes ... ok [INFO] [stdout] test manifest::tests::test_validate_dep_group_missing_reference ... ok [INFO] [stdout] test manifest::tests::test_testing_valid_regex_accepted ... ok [INFO] [stdout] test manifest::tests::test_testing_section_full_config ... ok [INFO] [stdout] test manifest::tests::test_validate_dev_dep_group_missing_reference ... ok [INFO] [stdout] test manifest::tests::test_validate_env_group_missing_reference ... ok [INFO] [stdout] test manifest::tests::test_validate_duplicate_ports ... ok [INFO] [stdout] test manifest::tests::test_validate_dep_group_valid_reference ... ok [INFO] [stdout] test manifest::tests::test_validate_env_validation_orphan ... ok [INFO] [stdout] test manifest::tests::test_validate_env_validation_all_declared ... ok [INFO] [stdout] test manifest::tests::test_validate_env_group_valid_reference ... ok [INFO] [stdout] test manifest::tests::test_validate_guard_deny_wrap_conflict ... ok [INFO] [stdout] test manifest::tests::test_validate_guard_no_conflict ... ok [INFO] [stdout] test manifest::tests::test_validate_guard_deny_with_message_invalid_name_rejected ... ok [INFO] [stdout] test manifest::tests::test_validate_guard_deny_invalid_command_name ... ok [INFO] [stdout] test manifest::tests::test_validate_guard_wrap_dangerous_wrapper_value ... ok [INFO] [stdout] test manifest::tests::test_validate_guard_deny_with_message_invalid_name ... ok [INFO] [stdout] test manifest::tests::test_validate_guard_wrap_invalid_command_name ... ok [INFO] [stdout] test manifest::tests::test_validate_no_duplicate_when_ports_differ ... ok [INFO] [stdout] test manifest::tests::test_validate_passes_for_minimal_manifest ... ok [INFO] [stdout] test manifest::tests::test_validate_preset_dep_group_missing_reference ... ok [INFO] [stdout] test manifest::tests::test_validate_rejects_service_bind_mounts ... ok [INFO] [stdout] test manifest::tests::test_validate_rejects_workspace_bind_mounts ... ok [INFO] [stdout] test manifest::tests::test_validate_skip_none_ports ... ok [INFO] [stdout] test ownership::tests::test_compose_yaml_variants_ownership ... ok [INFO] [stdout] test ownership::tests::test_default_is_user ... ok [INFO] [stdout] test ownership::tests::test_tool_owned_files ... ok [INFO] [stdout] test ownership::tests::test_user_owned_files ... ok [INFO] [stdout] test pnpm::tests::test_resolve_workspace_link ... ok [INFO] [stdout] test preset::tests::test_app_overrides_preset ... ok [INFO] [stdout] test preset::tests::test_dep_groups_expansion ... ok [INFO] [stdout] test preset::tests::test_missing_dep_group_errors ... ok [INFO] [stdout] test preset::tests::test_missing_preset_errors ... ok [INFO] [stdout] test preset::tests::test_multiple_presets ... ok [INFO] [stdout] test preset::tests::test_preset_dep_groups ... ok [INFO] [stdout] test preset::tests::test_resolve_profile_vars ... ok [INFO] [stdout] test preset::tests::test_resolve_single_preset ... ok [INFO] [stdout] test remote_cache::tests::test_oci_tag ... ok [INFO] [stdout] test remote_cache::tests::test_parse_invalid_url ... ok [INFO] [stdout] test remote_cache::tests::test_parse_oci_url ... ok [INFO] [stdout] test remote_cache::tests::test_parse_s3_url ... ok [INFO] [stdout] test remote_cache::tests::test_parse_s3_url_no_prefix ... ok [INFO] [stdout] test remote_cache::tests::test_s3_key ... ok [INFO] [stdout] test safe_fs::tests::test_safefs_allows_inside_workspace ... ok [INFO] [stdout] test safe_fs::tests::test_safefs_clean_artifact_allows_build_dirs ... ok [INFO] [stdout] test docker_build::tests::test_cache_hit_miss ... ok [INFO] [stdout] test safe_fs::tests::test_safefs_clean_artifact_protects_critical ... ok [INFO] [stdout] test safe_fs::tests::test_safefs_clean_artifact_allows_node_modules_in_protected_paths ... ok [INFO] [stdout] test safe_fs::tests::test_safefs_dry_run ... ok [INFO] [stdout] test safe_fs::tests::test_safefs_rejects_outside_workspace ... ok [INFO] [stdout] test safe_fs::tests::test_safefs_respects_user_ownership ... ok [INFO] [stdout] test secrets::doppler::tests::name_returns_doppler ... ok [INFO] [stdout] test secrets::doppler::tests::project_and_config_values_are_preserved ... ok [INFO] [stdout] test safe_fs::tests::test_safefs_write_creates_backup ... ok [INFO] [stdout] test secrets::doppler::tests::wrap_command_passes_args_as_list_not_shell_string ... ok [INFO] [stdout] test secrets::doppler::tests::wrap_command_structure_is_correct ... ok [INFO] [stdout] test secrets::doppler::tests::wrap_command_uses_doppler_as_program ... ok [INFO] [stdout] test secrets::doppler::tests::wrap_command_with_no_extra_args ... ok [INFO] [stdout] test secrets::tests::create_provider_doppler_missing_section_returns_error ... ok [INFO] [stdout] test secrets::tests::create_provider_unknown_returns_error ... ok [INFO] [stdout] test secrets::tests::create_provider_doppler_returns_doppler ... ok [INFO] [stdout] test templates::tests::test_glob_expansion_adds_products_workspaces ... ok [INFO] [stdout] test templates::tests::test_profile_effective_role ... ok [INFO] [stdout] test templates::tests::test_glob_expansion_skips_exclude_patterns ... ok [INFO] [stdout] test version_resolver::tests::test_resolve_version_passthrough ... ok [INFO] [stdout] test workspace::tests::cargo_without_workspace_section_is_skipped ... ok [INFO] [stdout] test workspace::tests::empty_when_nothing_declared ... ok [INFO] [stdout] test workspace::tests::manifest_workspaces_take_precedence ... ok [INFO] [stdout] test workspace::tests::cargo_workspace_members_are_read_when_pnpm_absent ... ok [INFO] [stdout] test workspace::tests::pnpm_takes_precedence_over_cargo ... ok [INFO] [stdout] test workspace::tests::single_project_root_detection ... ok [INFO] [stdout] test workspace::tests::pnpm_workspace_yaml_is_read_when_manifest_empty ... ok [INFO] [stdout] test executor::tests::test_default_parallelism ... ok [INFO] [stdout] test executor::tests::test_executor_single_task ... ok [INFO] [stdout] test manifest::tests::test_resolve_name_from_path ... ok [INFO] [stdout] test manifest::tests::test_policy_security_invalid_glob_rejected ... ok [INFO] [stdout] test manifest::tests::runtimes_section_defaults_to_empty ... ok [INFO] [stdout] test manifest::tests::runtimes_section_parses_short_form ... ok [INFO] [stdout] test manifest::tests::test_policy_testing_full_config ... ok [INFO] [stdout] test manifest::tests::runtimes_section_round_trips_through_toml ... ok [INFO] [stdout] test manifest::tests::test_policy_security_config ... ok [INFO] [stdout] test manifest::tests::test_validate_multiple_errors_collected ... ok [INFO] [stdout] test manifest::tests::test_resolve_port_from_framework ... ok [INFO] [stdout] test manifest::tests::test_validate_guard_wrap_value_with_newline_rejected ... ok [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] [stdout] test commands::run::tests::test_run_missing_manifest_but_has_compose ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- commands::guards::tests::shim_routes_to_airis_exec_inside_workspace stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'commands::guards::tests::shim_routes_to_airis_exec_inside_workspace' (160) panicked at src/commands/guards/tests.rs:124:5: [INFO] [stdout] shim must exit 0 when mock airis succeeds. [INFO] [stdout] stdout: [INFO] [stdout] [INFO] [stdout] stderr: [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5c7c4e48591a - std[ec419fa8110287d5]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c7c4e48591a - std[ec419fa8110287d5]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c7c4e48591a - std[ec419fa8110287d5]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5c7c4e48591a - <::print::DisplayBacktrace as core[35159d6ffb30e017]::fmt::Display>::fmt [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5c7c4e49f44a - ::fmt [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5c7c4e49f44a - core[35159d6ffb30e017]::fmt::write [INFO] [stdout] 6: 0x5c7c4e48b222 - std[ec419fa8110287d5]::io::default_write_fmt::> [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/io/mod.rs:621:11 [INFO] [stdout] 7: 0x5c7c4e48b222 - as std[ec419fa8110287d5]::io::Write>::write_fmt [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/io/mod.rs:1976:13 [INFO] [stdout] 8: 0x5c7c4e45edbf - ::print [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5c7c4e45edbf - std[ec419fa8110287d5]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5c7c4e47b5f9 - std[ec419fa8110287d5]::panicking::default_hook [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5c7c4dfe5cac - core[35159d6ffb30e017]::ops::function::Fn<(&'a std[ec419fa8110287d5]::panic::PanicHookInfo<'b>,), Output = ()> + core[35159d6ffb30e017]::marker::Sync + core[35159d6ffb30e017]::marker::Send> as core[35159d6ffb30e017]::ops::function::Fn<(&std[ec419fa8110287d5]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/alloc/src/boxed.rs:2285:9 [INFO] [stdout] 12: 0x5c7c4dfe5cac - test[a8007afcd3effadc]::test_main_inner::::{closure#0} [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:155:21 [INFO] [stdout] 13: 0x5c7c4e47b872 - core[35159d6ffb30e017]::ops::function::Fn<(&'a std[ec419fa8110287d5]::panic::PanicHookInfo<'b>,), Output = ()> + core[35159d6ffb30e017]::marker::Sync + core[35159d6ffb30e017]::marker::Send> as core[35159d6ffb30e017]::ops::function::Fn<(&std[ec419fa8110287d5]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/alloc/src/boxed.rs:2285:9 [INFO] [stdout] 14: 0x5c7c4e47b872 - std[ec419fa8110287d5]::panicking::panic_with_hook [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5c7c4e45ee78 - std[ec419fa8110287d5]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5c7c4e455dd9 - std[ec419fa8110287d5]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5c7c4e46000d - __rustc[cfb3622dd870db93]::rust_begin_unwind [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5c7c4e49fc8c - core[35159d6ffb30e017]::panicking::panic_fmt [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5c7c4d8fdeb7 - airis_workspace[1b491ec725694c10]::commands::guards::tests::shim_routes_to_airis_exec_inside_workspace [INFO] [stdout] at /opt/rustwide/workdir/src/commands/guards/tests.rs:124:5 [INFO] [stdout] 20: 0x5c7c4d8d5067 - airis_workspace[1b491ec725694c10]::commands::guards::tests::shim_routes_to_airis_exec_inside_workspace::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/commands/guards/tests.rs:82:48 [INFO] [stdout] 21: 0x5c7c4d806256 - >::call_once [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 22: 0x5c7c4dfd8f8b - core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String> as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5c7c4dfd8f8b - test[a8007afcd3effadc]::__rust_begin_short_backtrace::, fn() -> core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String>> [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:724:18 [INFO] [stdout] 24: 0x5c7c4dfe677b - test[a8007afcd3effadc]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:747:74 [INFO] [stdout] 25: 0x5c7c4dfe677b - as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 26: 0x5c7c4dfe677b - std[ec419fa8110287d5]::panicking::catch_unwind::do_call::, core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String>> [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:581:40 [INFO] [stdout] 27: 0x5c7c4dfe677b - std[ec419fa8110287d5]::panicking::catch_unwind::, core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:544:19 [INFO] [stdout] 28: 0x5c7c4dfe677b - std[ec419fa8110287d5]::panic::catch_unwind::, core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String>> [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panic.rs:359:14 [INFO] [stdout] 29: 0x5c7c4dfe677b - test[a8007afcd3effadc]::run_test_in_process [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:747:27 [INFO] [stdout] 30: 0x5c7c4dfe677b - test[a8007afcd3effadc]::run_test::{closure#0} [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:668:43 [INFO] [stdout] 31: 0x5c7c4dfe1154 - test[a8007afcd3effadc]::run_test::{closure#1} [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:698:41 [INFO] [stdout] 32: 0x5c7c4dfe1154 - std[ec419fa8110287d5]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 33: 0x5c7c4dfe9382 - std[ec419fa8110287d5]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/thread/lifecycle.rs:70:13 [INFO] [stdout] 34: 0x5c7c4dfe9382 - ::{closure#1}::{closure#0}> as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 35: 0x5c7c4dfe9382 - std[ec419fa8110287d5]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:581:40 [INFO] [stdout] 36: 0x5c7c4dfe9382 - std[ec419fa8110287d5]::panicking::catch_unwind::<(), core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:544:19 [INFO] [stdout] 37: 0x5c7c4dfe9382 - std[ec419fa8110287d5]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panic.rs:359:14 [INFO] [stdout] 38: 0x5c7c4dfe9382 - std[ec419fa8110287d5]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/thread/lifecycle.rs:68:26 [INFO] [stdout] 39: 0x5c7c4dfe9382 - ::{closure#1} as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 40: 0x5c7c4e48463f - + core[35159d6ffb30e017]::marker::Send> as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/alloc/src/boxed.rs:2271:9 [INFO] [stdout] 41: 0x5c7c4e48463f - ::new::thread_start [INFO] [stdout] at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 42: 0x704720d43aa4 - [INFO] [stdout] 43: 0x704720dd0a64 - clone [INFO] [stdout] 44: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] commands::guards::tests::shim_routes_to_airis_exec_inside_workspace [INFO] [stdout] [INFO] [stdout] test result: FAILED. 358 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.44s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "cc98ad611a28226103d870a8c176f3c39f1b772978c2302883361a7d21788f63", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cc98ad611a28226103d870a8c176f3c39f1b772978c2302883361a7d21788f63", kill_on_drop: false }` [INFO] [stdout] cc98ad611a28226103d870a8c176f3c39f1b772978c2302883361a7d21788f63