[INFO] fetching crate agent-orchestrator 0.3.0...
[INFO] testing agent-orchestrator-0.3.0 against 1.97.0-beta.6 for beta-1.98-1
[INFO] extracting crate agent-orchestrator 0.3.0 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate agent-orchestrator 0.3.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate agent-orchestrator 0.3.0
[INFO] tweaked toml for crates.io crate agent-orchestrator 0.3.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate agent-orchestrator 0.3.0 on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate agent-orchestrator 0.3.0 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.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded uuid v1.23.0
[INFO] [stderr]   Downloaded tokio-rusqlite v0.5.1
[INFO] [stderr]   Downloaded sha2 v0.11.0
[INFO] [stderr]   Downloaded orchestrator-config v0.3.0
[INFO] [stderr]   Downloaded orchestrator-security v0.3.0
[INFO] [stderr]   Downloaded aes-gcm-siv v0.11.1
[INFO] [stderr]   Downloaded tonic-prost-build v0.14.5
[INFO] [stderr]   Downloaded orchestrator-proto v0.3.0
[INFO] [stderr]   Downloaded tonic-build v0.14.5
[INFO] [stderr]   Downloaded pulldown-cmark-to-cmark v22.0.0
[INFO] [stderr]   Downloaded orchestrator-runner v0.3.0
[INFO] [stderr]   Downloaded pulldown-cmark v0.13.3
[INFO] [stderr]   Downloaded libredox v0.1.15
[INFO] [stderr]   Downloaded nix v0.31.2
[INFO] [stderr]   Downloaded orchestrator-collab v0.3.0
[INFO] [stderr]   Downloaded cron v0.16.0
[INFO] [stderr]   Downloaded cel-interpreter v0.10.0
[INFO] [stderr]   Downloaded cel-parser v0.10.1
[INFO] [stderr]   Downloaded antlr4rust v0.3.0-rc2
[INFO] [stderr]   Downloaded murmur3 v0.4.1
[INFO] [stderr]   Downloaded better_any v0.2.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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] e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008
[INFO] running `Command { std: "docker" "start" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008", 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" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008", 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" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.47
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling siphasher v1.0.2
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling pulldown-cmark v0.13.3
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling cc v1.2.58
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling fixedbitset v0.5.7
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling multimap v0.10.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling hybrid-array v0.4.10
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-ppcle_64 v3.2.0
[INFO] [stderr]    Compiling petgraph v0.8.3
[INFO] [stderr]    Compiling protoc-bin-vendored-macos-x86_64 v3.2.0
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-aarch_64 v3.2.0
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-x86_64 v3.2.0
[INFO] [stderr]    Compiling protoc-bin-vendored-win32 v3.2.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling pulldown-cmark-to-cmark v22.0.0
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-s390_64 v3.2.0
[INFO] [stderr]    Compiling protoc-bin-vendored-linux-x86_32 v3.2.0
[INFO] [stderr]    Compiling protoc-bin-vendored-macos-aarch_64 v3.2.0
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling protoc-bin-vendored v3.2.0
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.28.0
[INFO] [stderr]    Compiling nix v0.31.2
[INFO] [stderr]    Compiling block-buffer v0.12.0
[INFO] [stderr]    Compiling crypto-common v0.2.1
[INFO] [stderr]    Compiling murmur3 v0.4.1
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling better_any v0.2.1
[INFO] [stderr]    Compiling fallible-streaming-iterator v0.1.9
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling uuid v1.23.0
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling typed-arena v2.0.2
[INFO] [stderr]    Compiling const-oid v0.10.2
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling fallible-iterator v0.3.0
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling antlr4rust v0.3.0-rc2
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling phf_shared v0.12.1
[INFO] [stderr]    Compiling digest v0.11.2
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling chrono-tz v0.10.4
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling phf v0.12.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling agent-orchestrator v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling arc-swap v1.9.0
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling aes-gcm-siv v0.11.1
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling prost-derive v0.14.3
[INFO] [stderr]    Compiling pin-project-internal v1.1.11
[INFO] [stderr]    Compiling tonic-build v0.14.5
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling phf_macros v0.11.3
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling phf v0.11.3
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling cel-parser v0.10.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling pin-project v1.1.11
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling hashlink v0.9.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling prost v0.14.3
[INFO] [stderr]    Compiling prost-types v0.14.3
[INFO] [stderr]    Compiling prost-build v0.14.3
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tonic-prost-build v0.14.5
[INFO] [stderr]    Compiling orchestrator-proto v0.3.0
[INFO] [stderr]    Compiling orchestrator-config v0.3.0
[INFO] [stderr]    Compiling cel-interpreter v0.10.0
[INFO] [stderr]    Compiling cron v0.16.0
[INFO] [stderr]    Compiling tracing-appender v0.2.4
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling axum v0.8.8
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling tokio-rusqlite v0.5.1
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling orchestrator-security v0.3.0
[INFO] [stderr]    Compiling orchestrator-collab v0.3.0
[INFO] [stderr]    Compiling orchestrator-runner v0.3.0
[INFO] [stderr]    Compiling hyper-timeout v0.5.2
[INFO] [stderr]    Compiling tonic v0.14.5
[INFO] [stderr]    Compiling tonic-prost v0.14.5
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 31s
[INFO] running `Command { std: "docker" "inspect" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008", 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" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling agent-orchestrator v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling pulldown-cmark v0.13.3
[INFO] [stderr]    Compiling rusqlite v0.31.0
[INFO] [stderr]    Compiling nix v0.31.2
[INFO] [stderr]    Compiling orchestrator-runner v0.3.0
[INFO] [stderr]    Compiling tokio-rusqlite v0.5.1
[INFO] [stderr]    Compiling orchestrator-security v0.3.0
[INFO] [stderr]    Compiling pulldown-cmark-to-cmark v22.0.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling prost-build v0.14.3
[INFO] [stderr]    Compiling tonic-prost-build v0.14.5
[INFO] [stderr]    Compiling orchestrator-proto v0.3.0
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 39.92s
[INFO] running `Command { std: "docker" "inspect" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008", 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" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]    Compiling agent-orchestrator v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 29.39s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/agent_orchestrator-d3a565637bbae8b0)
[INFO] [stdout] 
[INFO] [stdout] running 1558 tests
[INFO] [stdout] test agent_lifecycle::tests::get_lifecycle_state_defaults_to_active ... ok
[INFO] [stdout] test agent_lifecycle::tests::warn_if_last_active_agent_no_orphan_when_backup_exists ... ok
[INFO] [stdout] test anomaly::tests::anomaly_new_sets_defaults ... ok
[INFO] [stdout] test anomaly::tests::canonical_name_roundtrip ... ok
[INFO] [stdout] test anomaly::tests::anomaly_serialization_includes_escalation ... ok
[INFO] [stdout] test anomaly::tests::display_tag_non_empty ... ok
[INFO] [stdout] test anomaly::tests::escalation_mapping ... ok
[INFO] [stdout] test anomaly::tests::severity_mapping ... ok
[INFO] [stdout] test anomaly::tests::from_canonical_returns_none_for_unknown ... ok
[INFO] [stdout] test agent_lifecycle::tests::warn_if_last_active_agent_detects_orphaned_capabilities ... ok
[INFO] [stdout] test config_load::build::tests::build_execution_plan_copies_loop_policy ... ok
[INFO] [stdout] test config_load::build::tests::build_execution_plan_copies_step_fields ... ok
[INFO] [stdout] test config_load::build::tests::build_execution_plan_fails_on_invalid_workflow ... ok
[INFO] [stdout] test config_load::build::tests::build_execution_plan_includes_chain_steps ... ok
[INFO] [stdout] test config_load::build::tests::build_execution_plan_rehydrates_builtin_execution_from_builtin_field ... ok
[INFO] [stdout] test config_load::build::tests::build_execution_plan_returns_only_enabled_steps ... ok
[INFO] [stdout] test config_load::build::tests::build_execution_plan_copies_finalize_config ... ok
[INFO] [stdout] test config_load::build::tests::enforce_deletion_guards_allows_no_removals ... ok
[INFO] [stdout] test async_database::tests::async_database_open_and_configure ... ok
[INFO] [stdout] test agent_lifecycle::tests::drain_timeout_sweep_forces_drained ... ok
[INFO] [stdout] test async_database::tests::async_database_read_write_roundtrip ... ok
[INFO] [stdout] test config_load::build::tests::build_active_config_with_self_heal_persists_heal_log_entries ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_adds_missing_standard_steps_as_disabled ... ok
[INFO] [stdout] test agent_lifecycle::tests::uncordon_cordoned_agent_succeeds ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_clears_deprecated_qa_fix_retest_fields ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_clears_guard_agent_template ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_config_clears_stale_store ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_config_does_not_overwrite_user_crds ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_config_idempotent_double_call ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_config_populates_builtin_crds ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_config_rebuilds_resource_store_from_config_snapshot ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_config_normalizes_all_workflows ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_does_not_duplicate_existing_captures ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_does_not_duplicate_existing_step_types ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_does_not_enable_ticket_scan_when_qa_also_enabled ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_enables_ticket_scan_when_fix_only ... ok
[INFO] [stdout] test config_load::build::tests::build_active_config_with_self_heal_recovers_builtin_capability_conflict ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_preserves_required_capability_on_custom_step_ids ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_default_behavior_for_fix_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_preserves_step_id ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_default_behavior_for_retest_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_default_finalize_rules_when_empty ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_loop_guard_builtin_and_is_guard ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_align_tests_step ... ok
[INFO] [stdout] test config_load::build::tests::build_active_config_with_self_heal_persists_self_heal_version ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_build_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_default_behavior_for_qa_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_empty_steps_generates_defaults ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_doc_governance_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_fix_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_gitops_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_implement_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_lint_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_plan_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_qa_doc_gen_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_qa_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_retest_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_review_step ... ok
[INFO] [stdout] test agent_lifecycle::tests::decrement_inflight_completes_drain ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_qa_testing_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_test_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_ticket_fix_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_from_id ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_skips_capability_if_builtin_already_set ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_skips_capability_if_command_already_set ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_sets_required_capability_for_smoke_chain_step ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_workflow_preserves_multiple_self_test_steps ... ok
[INFO] [stdout] test async_database::tests::async_database_clone_shares_connections ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_workflow_sets_agent_execution_for_plan ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_workflow_sets_builtin_execution_for_loop_guard ... ok
[INFO] [stdout] test config_load::normalize::tests::normalize_workflow_sets_builtin_for_self_test ... ok
[INFO] [stdout] test config_load::build::tests::build_active_config_with_self_heal_returns_original_error_for_unhealable_config ... ok
[INFO] [stdout] test agent_lifecycle::tests::drain_with_no_inflight_goes_directly_to_drained ... ok
[INFO] [stdout] test agent_lifecycle::tests::drain_with_inflight_goes_to_draining ... ok
[INFO] [stdout] test config_load::build::tests::enforce_deletion_guards_allows_removing_unused_workflow ... ok
[INFO] [stdout] test config_load::build::tests::enforce_deletion_guards_allows_removing_unused_workspace ... ok
[INFO] [stdout] test config_load::self_heal::tests::config_self_heal_rule_as_label_matches_display ... ok
[INFO] [stdout] test config_load::self_heal::tests::config_self_heal_rule_display_returns_label ... ok
[INFO] [stdout] test config_load::self_heal::tests::config_self_heal_rule_serializes_as_string ... ok
[INFO] [stdout] test config_load::self_heal::tests::self_heal_does_not_mutate_project_scoped_validation_errors ... ok
[INFO] [stdout] test config_load::self_heal::tests::self_heal_drops_required_capability_from_known_builtin_step ... ok
[INFO] [stdout] test config_load::self_heal::tests::self_heal_normalizes_execution_mode_mismatch ... ok
[INFO] [stdout] test config_load::build::tests::enforce_deletion_guards_blocks_same_project_non_terminal_workflow_tasks ... ok
[INFO] [stdout] test config_load::self_heal::tests::self_heal_returns_none_when_config_is_canonical ... ok
[INFO] [stdout] test config_load::tests::now_ts_returns_recent_timestamp ... ok
[INFO] [stdout] test config_load::tests::now_ts_returns_rfc3339_string ... ok
[INFO] [stdout] test config_load::validate::dynamic_steps::tests::dynamic_step_invalid_cel_trigger_err ... ok
[INFO] [stdout] test config_load::validate::dynamic_steps::tests::dynamic_step_no_trigger_ok ... ok
[INFO] [stdout] test config_load::validate::dynamic_steps::tests::dynamic_step_valid_cel_trigger_ok ... ok
[INFO] [stdout] test config_load::validate::dynamic_steps::tests::empty_dynamic_steps_ok ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_agent_missing_capability_errors ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_disabled_returns_ok ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_empty_planner_agent_errors ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_missing_planner_agent_errors ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_none_returns_ok ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_refs_agent_missing_capability_errors ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_refs_disabled_returns_ok ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_refs_missing_planner_agent_errors ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_refs_none_returns_ok ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_refs_unknown_agent_errors ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_refs_valid_config_passes ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_unknown_agent_errors ... ok
[INFO] [stdout] test config_load::validate::tests::adaptive_valid_config_passes ... ok
[INFO] [stdout] test config_load::validate::tests::consistency_test_both_validators_same_error ... ok
[INFO] [stdout] test config_load::validate::tests::ensure_within_root_accepts_child_path ... ok
[INFO] [stdout] test config_load::validate::tests::ensure_within_root_accepts_deeply_nested_child ... ok
[INFO] [stdout] test config_load::validate::tests::ensure_within_root_accepts_root_equals_target ... ok
[INFO] [stdout] test config_load::validate::tests::ensure_within_root_rejects_nonexistent_path ... ok
[INFO] [stdout] test config_load::validate::tests::ensure_within_root_rejects_path_outside_root ... ok
[INFO] [stdout] test config_load::validate::tests::ensure_within_root_rejects_symlink_escaping_root ... ok
[INFO] [stdout] test config_load::validate::tests::env_store_refs_project_missing_returns_ok ... ok
[INFO] [stdout] test config_load::validate::tests::env_store_refs_project_no_env_passes ... ok
[INFO] [stdout] test config_load::validate::tests::env_store_refs_project_unknown_from_ref_errors ... ok
[INFO] [stdout] test config_load::validate::tests::env_store_refs_project_unknown_ref_value_errors ... ok
[INFO] [stdout] test config_load::validate::tests::env_store_refs_project_valid_refs_pass ... ok
[INFO] [stdout] test config_load::validate::tests::exec_profile_accepts_sandbox_mode_with_sandbox_fields ... ok
[INFO] [stdout] test config_load::validate::tests::exec_profile_rejects_host_mode_with_sandbox_fields ... ok
[INFO] [stdout] test config_load::validate::tests::exec_profile_rejects_missing_project ... ok
[INFO] [stdout] test config_load::validate::tests::exec_profile_rejects_non_agent_step_with_profile ... ok
[INFO] [stdout] test config_load::validate::tests::exec_profile_rejects_unknown_profile_name ... ok
[INFO] [stdout] test config_load::validate::tests::exec_profile_skips_step_without_profile ... ok
[INFO] [stdout] test config_load::validate::tests::self_referential_probe_without_self_test_is_rejected ... ok
[INFO] [stdout] test config_load::validate::tests::validate_agent_env_store_refs_passes_with_no_env ... ok
[INFO] [stdout] test config_load::validate::tests::validate_agent_env_store_refs_passes_with_valid_refs ... ok
[INFO] [stdout] test config_load::validate::tests::validate_agent_env_store_refs_rejects_missing_from_ref ... ok
[INFO] [stdout] test config_load::validate::tests::validate_agent_env_store_refs_rejects_missing_ref_value_store ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_accepts_custom_phase_name ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_allows_builtin_self_test ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_non_probe_profile_returns_ok ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_rejects_chain_steps_via_semantic_kind ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_rejects_fixed_loop_mode ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_rejects_forbidden_phase_loop_guard ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_rejects_forbidden_phase_qa_testing ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_rejects_forbidden_phase_ticket_fix ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_rejects_infinite_loop_mode ... ok
[INFO] [stdout] test config_load::validate::tests::validate_probe_workflow_shape_skips_disabled_forbidden_phase ... ok
[INFO] [stdout] test config_load::validate::tests::validate_self_referential_safety_errors_disabled_auto_rollback ... ok
[INFO] [stdout] test config_load::validate::tests::validate_self_referential_safety_errors_missing_self_test ... ok
[INFO] [stdout] test config_load::validate::tests::validate_self_referential_safety_errors_without_checkpoint_strategy ... ok
[INFO] [stdout] test config_load::validate::tests::validate_self_referential_safety_passes_with_git_stash ... ok
[INFO] [stdout] test config_load::validate::tests::validate_self_referential_safety_passes_with_self_test ... ok
[INFO] [stdout] test config_load::validate::tests::validate_self_referential_safety_rejects_probe_on_non_self_referential_workspace ... ok
[INFO] [stdout] test config_load::validate::tests::validate_self_referential_safety_standard_profile_accepts_valid_checkpoint ... ok
[INFO] [stdout] test config_load::validate::tests::validate_self_referential_safety_standard_profile_skips_non_self_ref_workspace ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_accepts_builtin_step_without_agent ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_accepts_chain_steps_without_agent ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_accepts_command_step_without_agent ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_accepts_fixed_with_max_cycles ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_accepts_guard_enabled_with_loop_guard_agent ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_accepts_step_with_agent_template ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_allows_ticket_scan_without_agent ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_allows_multiple_implement_steps ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_allows_multiple_self_test_steps ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_rejects_duplicate_step_ids ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_rejects_invalid_dynamic_step_trigger_cel ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_rejects_json_path_on_exit_code_capture ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_rejects_probe_with_agent_steps ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_rejects_probe_with_item_scoped_steps ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_rejects_probe_with_strict_phase ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_rejects_probe_without_auto_rollback ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_config_rejects_probe_without_git_tag_checkpoint ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_rejects_empty_steps ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_rejects_fixed_without_max_cycles ... ok
[INFO] [stdout] test agent_lifecycle::tests::cordon_already_cordoned_fails ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_rejects_guard_enabled_without_loop_guard_agent ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_rejects_missing_agent_template ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_rejects_no_enabled_steps ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_rejects_step_with_builtin_and_required_capability ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_rejects_zero_max_cycles ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_skips_disabled_steps ... ok
[INFO] [stdout] test config_load::validate::tests::validate_workflow_skips_guard_check_for_once_mode ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_accepts_agent_step_with_matching_agent ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_accepts_command_step ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_accepts_builtin_step ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_accepts_guard_with_loop_guard_agent ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_allows_ticket_scan_without_agent ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_rejects_duplicate_step_ids ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_rejects_empty_convergence_expr_when ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_accepts_valid_convergence_expr_cel ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_rejects_empty_steps ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_rejects_fixed_without_max_cycles ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_rejects_guard_without_loop_guard_agent ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_rejects_missing_capability_agent ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_rejects_no_enabled_steps ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_rejects_zero_max_cycles ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_rejects_invalid_convergence_expr_cel ... ok
[INFO] [stdout] test config_load::validate::tests::with_agents_skips_disabled_steps ... ok
[INFO] [stdout] test config_load::validate::workflow_steps::tests::collect_step_warnings_accepts_full_qa_self_referential_vars ... ok
[INFO] [stdout] test config_load::validate::workflow_steps::tests::extract_cel_identifiers_ignores_string_literals ... ok
[INFO] [stdout] test config_load::validate::workflow_steps::tests::no_warnings_for_clean_step ... ok
[INFO] [stdout] test config_load::validate::workflow_steps::tests::prehook_no_warning_for_steps_dot_step_id_access ... ok
[INFO] [stdout] test config_load::validate::workflow_steps::tests::prehook_no_warning_when_variable_captured ... ok
[INFO] [stdout] test config_load::validate::workflow_steps::tests::prehook_warns_on_uncaptured_variable ... ok
[INFO] [stdout] test config_load::validate::workflow_steps::tests::unknown_field_detected_without_suggestion ... ok
[INFO] [stdout] test config_load::validate::workflow_steps::tests::yaml_round_trip_captures_unknown_fields ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_and_validate_projects_empty_config ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_and_validate_projects_resolves_workspaces ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_and_validate_rejects_empty_agents ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_and_validate_rejects_empty_qa_targets ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_and_validate_rejects_empty_workflows ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_and_validate_rejects_empty_workspace_id ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_and_validate_rejects_empty_workspaces ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_and_validate_rejects_missing_default_project_workflow ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_workspace_path_joins_rel_path ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_workspace_path_rejects_absolute_path ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_workspace_path_rejects_empty_path ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_workspace_path_rejects_whitespace_path ... ok
[INFO] [stdout] test config_load::workspace::tests::resolve_workspace_path_validates_existing_path_within_root ... ok
[INFO] [stdout] test crd::builtin_defs::tests::all_are_builtin ... ok
[INFO] [stdout] test crd::builtin_defs::tests::all_have_group ... ok
[INFO] [stdout] test crd::builtin_defs::tests::all_kinds_unique ... ok
[INFO] [stdout] test crd::builtin_defs::tests::all_plurals_unique ... ok
[INFO] [stdout] test crd::builtin_defs::tests::each_has_at_least_one_served_version ... ok
[INFO] [stdout] test crd::builtin_defs::tests::returns_eleven_definitions ... ok
[INFO] [stdout] test crd::builtin_defs::tests::schemas_are_objects ... ok
[INFO] [stdout] test crd::builtin_defs::tests::scopes_are_correct ... ok
[INFO] [stdout] test config_load::validate::workflow_steps::tests::unknown_field_detected_with_suggestion ... ok
[INFO] [stdout] test crd::hooks::tests::execute_hook_failure ... ok
[INFO] [stdout] test crd::hooks::tests::execute_hook_passes_env_vars ... ok
[INFO] [stdout] test crd::hooks::tests::run_hook_if_defined_ignores_unknown_action ... ok
[INFO] [stdout] test crd::hooks::tests::execute_hook_success ... ok
[INFO] [stdout] test crd::hooks::tests::run_hook_if_defined_skips_when_none ... ok
[INFO] [stdout] test crd::hooks::tests::run_hook_if_defined_runs_on_create ... ok
[INFO] [stdout] test crd::plugins::tests::cron_plugin_failure ... ok
[INFO] [stdout] test crd::plugins::tests::cron_plugins_filters_correctly ... ok
[INFO] [stdout] test crd::plugins::tests::cron_plugin_success ... ok
[INFO] [stdout] test crd::plugins::tests::interceptor_accepts_on_exit_zero ... ok
[INFO] [stdout] test crd::plugins::tests::interceptor_passes_headers_and_body ... ok
[INFO] [stdout] test crd::plugins::tests::interceptor_rejects_on_exit_nonzero ... ok
[INFO] [stdout] test crd::plugins::tests::plugins_for_phase_filters_correctly ... ok
[INFO] [stdout] test config_load::build::tests::enforce_deletion_guards_ignores_other_project_tasks_with_same_workflow_id ... ok
[INFO] [stdout] test crd::plugins::tests::transformer_rejects_invalid_json_output ... ok
[INFO] [stdout] test crd::plugins::tests::transformer_returns_modified_json ... ok
[INFO] [stdout] test crd::projection::tests::agent_config_round_trip ... ok
[INFO] [stdout] test crd::projection::tests::all_eleven_kinds_are_unique ... ok
[INFO] [stdout] test crd::projection::tests::env_store_config_round_trip ... ok
[INFO] [stdout] test crd::projection::tests::from_cr_spec_rejects_malformed_agent_spec ... ok
[INFO] [stdout] test crd::projection::tests::project_config_round_trip ... ok
[INFO] [stdout] test crd::projection::tests::runtime_policy_projection_round_trip ... ok
[INFO] [stdout] test crd::projection::tests::secret_store_config_round_trip ... ok
[INFO] [stdout] test crd::projection::tests::step_template_config_round_trip ... ok
[INFO] [stdout] test crd::projection::tests::store_backend_provider_config_round_trip ... ok
[INFO] [stdout] test crd::projection::tests::workflow_config_round_trip ... ok
[INFO] [stdout] test crd::projection::tests::workflow_config_round_trip_preserves_loop_mode ... ok
[INFO] [stdout] test crd::projection::tests::workflow_store_config_round_trip ... ok
[INFO] [stdout] test crd::projection::tests::workspace_config_round_trip ... ok
[INFO] [stdout] test crd::resolve::tests::find_by_kind ... ok
[INFO] [stdout] test crd::resolve::tests::find_by_plural ... ok
[INFO] [stdout] test crd::resolve::tests::find_by_short_name ... ok
[INFO] [stdout] test crd::resolve::tests::find_crd_for_kind_exact ... ok
[INFO] [stdout] test crd::resolve::tests::find_returns_none_for_unknown ... ok
[INFO] [stdout] test crd::resolve::tests::is_builtin_alias_false ... ok
[INFO] [stdout] test crd::resolve::tests::is_builtin_alias_true ... ok
[INFO] [stdout] test crd::resolve::tests::is_builtin_kind_false ... ok
[INFO] [stdout] test crd::resolve::tests::is_builtin_kind_true ... ok
[INFO] [stdout] test crd::resolve::tests::resolve_version_ok ... ok
[INFO] [stdout] test crd::resolve::tests::resolve_version_unknown_version ... ok
[INFO] [stdout] test crd::resolve::tests::resolve_version_wrong_group ... ok
[INFO] [stdout] test crd::schema::tests::validate_additional_properties_false ... ok
[INFO] [stdout] test crd::schema::tests::validate_array_items ... ok
[INFO] [stdout] test crd::schema::tests::validate_deeply_nested_objects ... ok
[INFO] [stdout] test crd::schema::tests::validate_enum ... ok
[INFO] [stdout] test crd::schema::tests::validate_non_object_schema_accepts_anything ... ok
[INFO] [stdout] test crd::schema::tests::validate_number_range ... ok
[INFO] [stdout] test crd::schema::tests::validate_pattern_literal ... ok
[INFO] [stdout] test crd::schema::tests::validate_pattern_starts_with ... ok
[INFO] [stdout] test crd::schema::tests::validate_properties_nested ... ok
[INFO] [stdout] test crd::schema::tests::validate_required_fields ... ok
[INFO] [stdout] test crd::schema::tests::validate_schema_definition_invalid_type ... ok
[INFO] [stdout] test crd::schema::tests::validate_schema_definition_missing_type ... ok
[INFO] [stdout] test crd::schema::tests::validate_schema_definition_valid ... ok
[INFO] [stdout] test crd::schema::tests::validate_string_length ... ok
[INFO] [stdout] test crd::schema::tests::validate_type_array ... ok
[INFO] [stdout] test crd::schema::tests::validate_type_boolean ... ok
[INFO] [stdout] test crd::schema::tests::validate_type_integer ... ok
[INFO] [stdout] test crd::schema::tests::validate_type_null ... ok
[INFO] [stdout] test crd::schema::tests::validate_type_number ... ok
[INFO] [stdout] test crd::schema::tests::validate_type_object ... ok
[INFO] [stdout] test crd::schema::tests::validate_type_string ... ok
[INFO] [stdout] test crd::store::tests::cross_kind_key_isolation ... ok
[INFO] [stdout] test crd::store::tests::generation_does_not_increment_on_failed_remove ... ok
[INFO] [stdout] test crd::store::tests::generation_increments ... ok
[INFO] [stdout] test crd::store::tests::generation_increments_on_unchanged_put ... ok
[INFO] [stdout] test crd::store::tests::get_namespaced_uses_three_segment_key ... ok
[INFO] [stdout] test crd::store::tests::is_empty_and_len ... ok
[INFO] [stdout] test crd::store::tests::list_by_kind ... ok
[INFO] [stdout] test crd::store::tests::list_by_kind_does_not_match_prefix_substring ... ok
[INFO] [stdout] test crd::store::tests::project_map_for_agents ... ok
[INFO] [stdout] test crd::store::tests::project_map_skips_corrupted_specs ... ok
[INFO] [stdout] test crd::store::tests::project_singleton ... ok
[INFO] [stdout] test crd::store::tests::project_singleton_returns_none_for_empty_store ... ok
[INFO] [stdout] test crd::store::tests::project_singleton_runtime_policy ... ok
[INFO] [stdout] test crd::store::tests::put_and_get ... ok
[INFO] [stdout] test crd::store::tests::put_assigns_default_project_for_runtime_policy ... ok
[INFO] [stdout] test crd::store::tests::put_auto_assigns_default_project_for_project_scoped_kinds ... ok
[INFO] [stdout] test crd::store::tests::put_configured ... ok
[INFO] [stdout] test crd::store::tests::put_detects_metadata_change_as_configured ... ok
[INFO] [stdout] test crd::store::tests::put_keeps_system_project_for_cluster_scoped_kinds ... ok
[INFO] [stdout] test crd::store::tests::put_unchanged ... ok
[INFO] [stdout] test crd::store::tests::remove_existing ... ok
[INFO] [stdout] test crd::store::tests::remove_missing ... ok
[INFO] [stdout] test crd::tests::apply_crd_configured ... ok
[INFO] [stdout] test crd::tests::apply_crd_creates ... ok
[INFO] [stdout] test crd::tests::apply_crd_unchanged ... ok
[INFO] [stdout] test crd::tests::apply_custom_resource_creates ... ok
[INFO] [stdout] test crd::tests::apply_custom_resource_schema_validation_fails ... ok
[INFO] [stdout] test crd::tests::apply_custom_resource_unchanged ... ok
[INFO] [stdout] test crd::tests::apply_custom_resource_with_cel_validation ... ok
[INFO] [stdout] test crd::tests::crd_kind_display_lowercases ... ok
[INFO] [stdout] test crd::tests::delete_crd_blocked_by_instances ... ok
[INFO] [stdout] test crd::tests::delete_crd_ok ... ok
[INFO] [stdout] test crd::tests::delete_custom_resource_not_found ... ok
[INFO] [stdout] test crd::tests::delete_custom_resource_ok ... ok
[INFO] [stdout] test crd::validate::tests::default_policy_rejects_all_commands ... ok
[INFO] [stdout] test crd::validate::tests::json_to_cel_value_list ... ok
[INFO] [stdout] test crd::validate::tests::json_to_cel_value_map ... ok
[INFO] [stdout] test crd::validate::tests::json_to_cel_value_primitives ... ok
[INFO] [stdout] test crd::validate::tests::json_to_cel_value_string ... ok
[INFO] [stdout] test crd::validate::tests::policy_allowlist_accepts_matching_prefix ... ok
[INFO] [stdout] test crd::validate::tests::policy_allowlist_rejects_unmatched_prefix ... ok
[INFO] [stdout] test crd::validate::tests::policy_denied_pattern_blocks_curl ... ok
[INFO] [stdout] test crd::validate::tests::policy_deny_rejects_all_plugins ... ok
[INFO] [stdout] test crd::validate::tests::policy_hook_enforcement_rejects_hook_commands ... ok
[INFO] [stdout] test crd::validate::tests::policy_hook_enforcement_skips_when_disabled ... ok
[INFO] [stdout] test crd::validate::tests::policy_timeout_cap_rejects_excessive_timeout ... ok
[INFO] [stdout] test crd::validate::tests::validate_crd_rejects_builtin_kind ... ok
[INFO] [stdout] test crd::validate::tests::validate_crd_rejects_builtin_plural ... ok
[INFO] [stdout] test crd::validate::tests::validate_crd_rejects_empty_group ... ok
[INFO] [stdout] test config_load::persist::tests::query_heal_log_entries_returns_empty_when_no_records ... ok
[INFO] [stdout] test config_load::build::tests::enforce_deletion_guards_ignores_terminal_workflow_tasks ... ok
[INFO] [stdout] test config_load::persist::tests::query_latest_heal_summary_returns_none_when_empty ... ok
[INFO] [stdout] test config_load::persist::tests::persist_heal_log_roundtrip ... ok
[INFO] [stdout] test crd::validate::tests::validate_crd_valid ... ok
[INFO] [stdout] test config_load::persist::tests::query_latest_heal_summary_returns_none_for_non_matching_version ... ok
[INFO] [stdout] test config_load::persist::tests::persist_heal_log_stores_original_error_per_entry ... ok
[INFO] [stdout] test config_load::persist::tests::query_heal_log_entries_respects_limit ... ok
[INFO] [stdout] test crd::validate::tests::validate_custom_resource_valid ... ok
[INFO] [stdout] test crd::validate::tests::validate_plugins_accepts_valid_plugins ... ok
[INFO] [stdout] test config_load::persist::tests::load_or_seed_config_returns_blank_default_when_resources_are_empty ... ok
[INFO] [stdout] test config_load::persist::tests::query_latest_heal_summary_returns_summary_for_matching_version ... ok
[INFO] [stdout] test config_load::persist::tests::persist_raw_config_encrypts_secret_store_resources_and_redacts_snapshots ... ok
[INFO] [stdout] test agent_lifecycle::tests::cordon_active_agent_succeeds ... ok
[INFO] [stdout] test crd::validate::tests::validate_crd_rejects_invalid_cel_syntax ... ok
[INFO] [stdout] test crd::validate::tests::validate_plugins_rejects_unknown_type ... ok
[INFO] [stdout] test crd::validate::tests::validate_crd_rejects_lowercase_kind ... ok
[INFO] [stdout] test crd::validate::tests::validate_crd_rejects_no_served_version ... ok
[INFO] [stdout] test crd::validate::tests::validate_crd_rejects_no_versions ... ok
[INFO] [stdout] test crd::validate::tests::validate_custom_resource_cel_fail ... ok
[INFO] [stdout] test crd::validate::tests::validate_custom_resource_no_crd ... ok
[INFO] [stdout] test crd::validate::tests::validate_custom_resource_schema_fail ... ok
[INFO] [stdout] test crd::validate::tests::validate_plugins_rejects_cron_without_schedule ... ok
[INFO] [stdout] test crd::writeback::tests::reconcile_builtin_kind_runtime_policy_is_noop ... ok
[INFO] [stdout] test crd::validate::tests::validate_plugins_rejects_duplicate_names ... ok
[INFO] [stdout] test crd::validate::tests::validate_plugins_rejects_empty_command ... ok
[INFO] [stdout] test crd::writeback::tests::reconcile_builtin_kind_project_syncs_description ... ok
[INFO] [stdout] test crd::validate::tests::validate_plugins_rejects_interceptor_without_phase ... ok
[INFO] [stdout] test crd::validate::tests::validate_plugins_rejects_invalid_cron_expression ... ok
[INFO] [stdout] test config_load::persist::tests::load_config_from_resources_table_preserves_same_named_project_resources ... ok
[INFO] [stdout] test crd::writeback::tests::reconcile_single_agent_writes_to_config ... ok
[INFO] [stdout] test crd::writeback::tests::remove_env_store_with_project ... ok
[INFO] [stdout] test crd::writeback::tests::reconcile_single_resource_noop_for_missing_cr ... ok
[INFO] [stdout] test crd::writeback::tests::reconcile_single_runtime_policy_is_noop ... ok
[INFO] [stdout] test crd::writeback::tests::remove_execution_profile_from_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::reconcile_single_workspace_writes_to_config ... ok
[INFO] [stdout] test crd::writeback::tests::remove_agent_from_snapshot_with_project ... ok
[INFO] [stdout] test crd::writeback::tests::remove_agent_from_snapshot_without_project_searches_all ... ok
[INFO] [stdout] test crd::writeback::tests::remove_env_store_from_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::reconcile_all_builtins_does_not_panic ... ok
[INFO] [stdout] test crd::writeback::tests::remove_nonexistent_resource_is_noop ... ok
[INFO] [stdout] test crd::writeback::tests::remove_project_from_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::remove_secret_store_from_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::remove_unknown_kind_is_noop ... ok
[INFO] [stdout] test crd::writeback::tests::remove_step_template_from_snapshot_with_project ... ok
[INFO] [stdout] test crd::writeback::tests::remove_workflow_from_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::remove_workspace_from_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::remove_workspace_from_snapshot_with_project ... ok
[INFO] [stdout] test crd::writeback::tests::remove_workflow_from_snapshot_with_project ... ok
[INFO] [stdout] test crd::writeback::tests::seed_agent_from_config_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::seed_env_store_not_found_in_secret_stores ... ok
[INFO] [stdout] test crd::writeback::tests::restore_metadata_skips_empty_labels_and_annotations ... ok
[INFO] [stdout] test crd::writeback::tests::restore_metadata_copies_labels_and_annotations ... ok
[INFO] [stdout] test crd::writeback::tests::seed_project_from_config_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::seed_env_store_from_config_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::seed_secret_store_from_config_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::seed_runtime_policy_when_absent ... ok
[INFO] [stdout] test crd::writeback::tests::seed_execution_profile_from_config_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::seed_unknown_kind_is_noop ... ok
[INFO] [stdout] test crd::writeback::tests::seed_secret_store_not_found_in_env_stores ... ok
[INFO] [stdout] test crd::writeback::tests::seed_workflow_from_config_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::seed_workspace_from_config_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::sync_config_snapshot_to_store_populates_resource_store ... ok
[INFO] [stdout] test crd::writeback::tests::seed_step_template_from_config_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::reconcile_builtin_kind_unknown_is_noop ... ok
[INFO] [stdout] test crd::writeback::tests::remove_step_template_from_snapshot ... ok
[INFO] [stdout] test crd::writeback::tests::remove_execution_profile_from_snapshot_with_project ... ok
[INFO] [stdout] test config_load::state::tests::read_active_config_rejects_non_runnable_state ... ok
[INFO] [stdout] test db::tests::list_non_terminal_tasks_by_workflow_empty ... ok
[INFO] [stdout] test db::tests::count_non_terminal_tasks_by_workflow_returns_zero_initially ... ok
[INFO] [stdout] test db::tests::count_non_terminal_tasks_by_workspace_returns_zero_initially ... ok
[INFO] [stdout] test db::tests::insert_control_plane_audit_with_none_fields ... ok
[INFO] [stdout] test db::tests::init_schema_is_idempotent ... ok
[INFO] [stdout] test db::tests::project_reset_stats_debug_and_eq ... ok
[INFO] [stdout] test db::tests::insert_control_plane_audit_stores_row ... ok
[INFO] [stdout] test db::tests::init_schema_creates_tables ... ok
[INFO] [stdout] test db::tests::insert_task_execution_metric_stores_row ... ok
[INFO] [stdout] test crd::plugins::tests::interceptor_timeout_kills_process ... ok
[INFO] [stdout] test db::tests::open_conn_creates_connection ... ok
[INFO] [stdout] test crd::plugins::tests::timeout_kills_entire_process_group ... FAILED
[INFO] [stdout] test db::tests::list_non_terminal_tasks_by_workspace_empty ... ok
[INFO] [stdout] test db_maintenance::tests::database_size_info_includes_wal_and_shm ... ok
[INFO] [stdout] test db::tests::count_non_terminal_tasks_by_workspace_excludes_completed ... ok
[INFO] [stdout] test db::tests::count_non_terminal_tasks_by_workflow_counts_correctly ... ok
[INFO] [stdout] test db_maintenance::tests::dir_size_recursive_empty_dir ... ok
[INFO] [stdout] test db_maintenance::tests::dir_size_recursive_nested_dirs ... ok
[INFO] [stdout] test db_maintenance::tests::dir_size_recursive_nonexistent_path ... ok
[INFO] [stdout] test db_maintenance::tests::dir_size_recursive_with_files ... ok
[INFO] [stdout] test db_maintenance::tests::database_size_info_without_archive ... ok
[INFO] [stdout] test db::tests::list_non_terminal_tasks_by_workflow_returns_matching ... ok
[INFO] [stdout] test db_maintenance::tests::database_size_info_with_archive ... ok
[INFO] [stdout] test db_maintenance::tests::vacuum_database_nonexistent_path_creates_db ... ok
[INFO] [stdout] test db_maintenance::tests::vacuum_database_on_empty_db ... ok
[INFO] [stdout] test db::tests::list_non_terminal_tasks_by_workspace_excludes_terminal ... ok
[INFO] [stdout] test db_write::tests::extract_event_promoted_fields_cycle_as_string ... ok
[INFO] [stdout] test db_write::tests::extract_event_promoted_fields_empty_json_object ... ok
[INFO] [stdout] test db_write::tests::extract_event_promoted_fields_invalid_json ... ok
[INFO] [stdout] test db_write::tests::extract_event_promoted_fields_phase_fallback ... ok
[INFO] [stdout] test db_write::tests::extract_event_promoted_fields_step_takes_priority_over_phase ... ok
[INFO] [stdout] test db_write::tests::extract_event_promoted_fields_with_step_key ... ok
[INFO] [stdout] test db_maintenance::tests::vacuum_database_returns_ok_with_positive_sizes ... ok
[INFO] [stdout] test db::tests::count_non_terminal_tasks_by_workspace_counts_correctly ... ok
[INFO] [stdout] test db::tests::reset_db_blocked_when_running_task_exists ... ok
[INFO] [stdout] test db::tests::list_non_terminal_tasks_by_workspace_returns_matching ... ok
[INFO] [stdout] test db::tests::reset_db_with_config_clears_config ... ok
[INFO] [stdout] test db::tests::list_non_terminal_tasks_by_workflow_respects_limit ... ok
[INFO] [stdout] test db::tests::list_non_terminal_tasks_by_workspace_respects_limit ... ok
[INFO] [stdout] test db::tests::reset_db_blocked_when_restart_pending_task_exists ... ok
[INFO] [stdout] test db::tests::reset_db_clears_data ... ok
[INFO] [stdout] test db::tests::reset_db_with_history_keeps_latest_config_version ... ok
[INFO] [stdout] test db::tests::reset_project_data_returns_zero_stats_for_unknown_project ... ok
[INFO] [stdout] test db::tests::reset_project_data_clears_project_data_and_returns_stats ... ok
[INFO] [stdout] test db_write::tests::find_active_child_pids_empty ... ok
[INFO] [stdout] test db_write::tests::count_stale_pending_items_ignores_inflight ... ok
[INFO] [stdout] test db_write::tests::count_stale_pending_items_zero_with_no_runs ... ok
[INFO] [stdout] test db_write::tests::count_stale_pending_items_counts_stale ... ok
[INFO] [stdout] test db_write::tests::find_completed_runs_for_pending_items_empty_when_no_pending ... ok
[INFO] [stdout] test db_write::tests::find_inflight_command_runs_empty ... ok
[INFO] [stdout] test db_write::tests::find_active_child_pids_ignores_completed_runs ... ok
[INFO] [stdout] test db_write::tests::find_completed_runs_for_pending_items_returns_matching ... ok
[INFO] [stdout] test db_write::tests::find_active_child_pids_returns_active_pids ... ok
[INFO] [stdout] test db_write::tests::insert_event_stores_promoted_fields ... ok
[INFO] [stdout] test db_write::tests::find_inflight_command_runs_returns_active ... ok
[INFO] [stdout] test db_write::tests::find_inflight_ignores_completed_runs ... ok
[INFO] [stdout] test db_write::tests::find_completed_runs_excludes_non_pending_items ... ok
[INFO] [stdout] test db_write::tests::insert_command_run_stores_fields ... ok
[INFO] [stdout] test db_write::tests::insert_event_with_task_item_id ... ok
[INFO] [stdout] test db_write::tests::insert_event_stores_row ... ok
[INFO] [stdout] test db_write::tests::mark_task_item_running_sets_started_at ... ok
[INFO] [stdout] test db_write::tests::mark_task_item_running_preserves_started_at_on_second_call ... ok
[INFO] [stdout] test db_write::tests::persist_phase_result_with_empty_events ... ok
[INFO] [stdout] test db_write::tests::set_task_item_terminal_status_sets_completed_at ... ok
[INFO] [stdout] test db_write::tests::persist_phase_result_without_event ... ok
[INFO] [stdout] test db_write::tests::persist_phase_result_with_single_event ... ok
[INFO] [stdout] test db_write::tests::persist_phase_result_with_multiple_events ... ok
[INFO] [stdout] test dynamic_orchestration::adaptive::tests::test_adaptive_planner_add_history_respects_max ... ok
[INFO] [stdout] test dynamic_orchestration::adaptive::tests::test_adaptive_planner_config_default ... ok
[INFO] [stdout] test db_write::tests::set_task_status_interrupted_clears_completed_at ... ok
[INFO] [stdout] test dynamic_orchestration::adaptive::tests::test_adaptive_planner_fail_closed_on_invalid_json ... ok
[INFO] [stdout] test dynamic_orchestration::adaptive::tests::test_adaptive_planner_disabled ... ok
[INFO] [stdout] test dynamic_orchestration::adaptive::tests::test_adaptive_planner_rejects_missing_planner_agent ... ok
[INFO] [stdout] test dynamic_orchestration::adaptive::tests::test_adaptive_planner_generate_plan_enabled ... ok
[INFO] [stdout] test dynamic_orchestration::adaptive::tests::test_adaptive_planner_soft_fallback_on_invalid_json ... ok
[INFO] [stdout] test dynamic_orchestration::adaptive::tests::test_validate_generated_plan_rejects_unknown_entry ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_add_duplicate_node_error ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_add_edge_missing_source ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_add_edge_missing_target ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_cycle_detection ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_empty_plan_no_entries_no_exits ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_entry_exit_nodes ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_execution_state_default ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_find_next_nodes ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_find_next_nodes_nonexistent_node ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_find_next_nodes_conditional_not_met ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_incoming_outgoing_edges ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_is_completed ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_is_completed_not_completed_when_only_mid_done ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_get_node ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_single_node_is_both_entry_and_exit ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_topological_sort ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_topological_sort_cycle_error ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_topological_sort_empty ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_topological_sort_diamond ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dynamic_execution_plan_serde_round_trip ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_dag_topological_sort_rejects_unknown_target ... ok
[INFO] [stdout] test dynamic_orchestration::dag::tests::test_prehook_config_default ... ok
[INFO] [stdout] test dynamic_orchestration::graph::tests::build_static_execution_graph_skips_init_and_guard ... ok
[INFO] [stdout] test dynamic_orchestration::graph::tests::build_adaptive_execution_graph_preserves_conditions ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_does_not_match_cycle_zero ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_matches_active_tickets_zero ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_matches_cycle_gt_2 ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_matches_qa_confidence_high ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_matches_qa_confidence_low ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_matches_qa_confidence_medium ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_matches_qa_exit_code_nonzero ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_matches_cycle_gt_0 ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_matches_qa_exit_code_zero ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_pool ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_no_trigger_does_not_match ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_pool_empty ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_pool_get ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_pool_overwrite ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_pool_priority ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_pool_no_matches ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_pool_serde_round_trip ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_pool_priority_three_steps ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_step_prehook_context_default ... ok
[INFO] [stdout] test error::tests::classify_access_denied_as_security ... ok
[INFO] [stdout] test error::tests::classify_cannot_be_empty_as_user_input ... ok
[INFO] [stdout] test error::tests::classify_cannot_begin_rotation_as_invalid_state ... ok
[INFO] [stdout] test dynamic_orchestration::step_pool::tests::test_dynamic_step_unknown_condition_returns_false ... ok
[INFO] [stdout] test error::tests::classify_cannot_include_dotdot_as_user_input ... ok
[INFO] [stdout] test error::tests::classify_client_certificate_as_security ... ok
[INFO] [stdout] test error::tests::classify_connection_as_external_dependency ... ok
[INFO] [stdout] test error::tests::classify_daemon_is_as_invalid_state ... ok
[INFO] [stdout] test error::tests::classify_database_as_external_dependency ... ok
[INFO] [stdout] test error::tests::classify_does_not_exist_as_not_found ... ok
[INFO] [stdout] test error::tests::classify_failed_to_as_external_dependency ... ok
[INFO] [stdout] test error::tests::classify_fallback_as_internal_invariant ... ok
[INFO] [stdout] test error::tests::classify_git_as_external_dependency ... ok
[INFO] [stdout] test error::tests::classify_invalid_prefix_as_user_input ... ok
[INFO] [stdout] test error::tests::classify_invalid_target_file_as_user_input ... ok
[INFO] [stdout] test error::tests::classify_io_error_keyword_as_external_dependency ... ok
[INFO] [stdout] test error::tests::classify_io_error_message_as_external_dependency ... ok
[INFO] [stdout] test error::tests::classify_label_selector_as_user_input ... ok
[INFO] [stdout] test error::tests::classify_manifest_policy_error_as_config_validation ... ok
[INFO] [stdout] test error::tests::classify_metadata_project_as_config_validation ... ok
[INFO] [stdout] test error::tests::classify_missing_project_as_not_found ... ok
[INFO] [stdout] test error::tests::classify_must_be_relative_path_as_user_input ... ok
[INFO] [stdout] test error::tests::classify_must_define_at_least_one_as_config_validation ... ok
[INFO] [stdout] test error::tests::classify_no_incomplete_rotation_as_invalid_state ... ok
[INFO] [stdout] test error::tests::classify_no_qa_markdown_as_invalid_state ... ok
[INFO] [stdout] test error::tests::classify_no_such_as_not_found ... ok
[INFO] [stdout] test error::tests::classify_permission_denied_as_security ... ok
[INFO] [stdout] test error::tests::classify_resource_error_delegates ... ok
[INFO] [stdout] test error::tests::classify_secret_rotation_without_key_as_invalid_state ... ok
[INFO] [stdout] test error::tests::classify_sqlite_as_external_dependency ... ok
[INFO] [stdout] test error::tests::classify_store_error_delegates ... ok
[INFO] [stdout] test error::tests::classify_system_error_delegates ... ok
[INFO] [stdout] test error::tests::classify_task_id_required_as_user_input ... ok
[INFO] [stdout] test error::tests::classify_task_latest_missing_as_invalid_state ... ok
[INFO] [stdout] test error::tests::classify_task_scoped_workflow_limit_as_invalid_state ... ok
[INFO] [stdout] test error::tests::classify_timeout_as_external_dependency ... ok
[INFO] [stdout] test error::tests::classify_transport_as_external_dependency ... ok
[INFO] [stdout] test error::tests::classify_unauthenticated_as_security ... ok
[INFO] [stdout] test error::tests::classify_unknown_list_resource_type_as_not_found ... ok
[INFO] [stdout] test error::tests::classify_unknown_resource_type_as_not_found ... ok
[INFO] [stdout] test error::tests::classify_use_force_as_invalid_state ... ok
[INFO] [stdout] test error::tests::classify_validation_keyword_as_config_validation ... ok
[INFO] [stdout] test error::tests::classify_validation_word_as_config_validation ... ok
[INFO] [stdout] test error::tests::convenience_builders_set_correct_category ... ok
[INFO] [stdout] test error::tests::display_with_subject ... ok
[INFO] [stdout] test error::tests::display_without_subject ... ok
[INFO] [stdout] test error::tests::error_category_as_str_all_variants ... ok
[INFO] [stdout] test error::tests::from_anyhow_error ... ok
[INFO] [stdout] test error::tests::from_io_error ... ok
[INFO] [stdout] test error::tests::from_rusqlite_error ... ok
[INFO] [stdout] test error::tests::from_serde_json_error ... ok
[INFO] [stdout] test error::tests::from_serde_yaml_error ... ok
[INFO] [stdout] test error::tests::orchestrator_error_new_and_accessors ... ok
[INFO] [stdout] test error::tests::orchestrator_error_with_subject ... ok
[INFO] [stdout] test db_write::tests::set_task_status_paused_clears_completed_at ... ok
[INFO] [stdout] test error::tests::std_error_source_returns_root_cause ... ok
[INFO] [stdout] test error::tests::classify_unknown_builtin_provider_as_not_found ... ok
[INFO] [stdout] test db_write::tests::set_task_status_running_clears_completed_at ... ok
[INFO] [stdout] test db_write::tests::set_task_status_pending_clears_completed_at ... ok
[INFO] [stdout] test db_write::tests::set_task_status_completed_sets_completed_at ... ok
[INFO] [stdout] test db_write::tests::set_task_status_other_preserves_completed_at ... ok
[INFO] [stdout] test db_write::tests::update_command_run_pid_sets_pid ... ok
[INFO] [stdout] test db_write::tests::update_command_run_updates_fields ... ok
[INFO] [stdout] test db_write::tests::update_command_run_with_events_empty_events ... ok
[INFO] [stdout] test db_write::tests::update_task_cycle_state_init_done_false ... ok
[INFO] [stdout] test db_write::tests::update_command_run_with_events_updates_and_inserts ... ok
[INFO] [stdout] test db_write::tests::update_task_cycle_state_sets_fields ... ok
[INFO] [stdout] test db_write::tests::update_task_item_status_changes_status ... ok
[INFO] [stdout] test event_cleanup::tests::cleanup_respects_batch_limit ... ok
[INFO] [stdout] test event_cleanup::tests::archive_events_across_multiple_tasks ... ok
[INFO] [stdout] test db_write::tests::update_task_pipeline_vars_stores_json ... ok
[INFO] [stdout] test db_write::tests::update_task_item_tickets_sets_json ... ok
[INFO] [stdout] test event_cleanup::tests::cleanup_with_no_events_returns_zero ... ok
[INFO] [stdout] test events::tests::noop_sink_does_not_panic ... ok
[INFO] [stdout] test events::tests::observed_step_scope_from_payload_unknown_value ... ok
[INFO] [stdout] test events::tests::observed_step_scope_label_returns_unspecified_for_none ... ok
[INFO] [stdout] test events::tests::observed_step_scope_parses_known_values ... ok
[INFO] [stdout] test event_cleanup::tests::archive_events_with_no_eligible_events ... ok
[INFO] [stdout] test event_cleanup::tests::cleanup_deletes_only_terminal_old_events ... ok
[INFO] [stdout] test event_cleanup::tests::archive_events_groups_by_date ... ok
[INFO] [stdout] test event_cleanup::tests::cleanup_deletes_failed_and_cancelled_tasks ... ok
[INFO] [stdout] test event_cleanup::tests::archive_events_writes_jsonl_and_deletes ... ok
[INFO] [stdout] test event_cleanup::tests::cleanup_with_zero_retention_deletes_recent_terminal_events ... ok
[INFO] [stdout] test event_cleanup::tests::count_pending_cleanup_returns_correct_count ... ok
[INFO] [stdout] test event_cleanup::tests::event_stats_on_empty_database ... ok
[INFO] [stdout] test events::tests::tracing_event_sink_default_impl ... ok
[INFO] [stdout] test event_cleanup::tests::list_task_events_for_nonexistent_task ... ok
[INFO] [stdout] test events_backfill::tests::backfill_is_noop_and_returns_zero_stats ... ok
[INFO] [stdout] test events::tests::tracing_event_sink_does_not_panic_on_all_event_types ... ok
[INFO] [stdout] test health::tests::is_agent_healthy_diseased_in_future_is_unhealthy ... ok
[INFO] [stdout] test health::tests::is_agent_healthy_diseased_in_past_is_healthy ... ok
[INFO] [stdout] test health::tests::is_agent_healthy_no_disease_is_healthy ... ok
[INFO] [stdout] test health::tests::is_agent_healthy_unknown_agent_is_healthy ... ok
[INFO] [stdout] test health::tests::is_capability_healthy_custom_threshold ... ok
[INFO] [stdout] test health::tests::is_capability_healthy_diseased_no_capability_data ... ok
[INFO] [stdout] test health::tests::is_capability_healthy_diseased_with_bad_capability_rate ... ok
[INFO] [stdout] test health::tests::is_capability_healthy_diseased_with_good_capability_rate ... ok
[INFO] [stdout] test health::tests::is_capability_healthy_unknown_agent_is_healthy ... ok
[INFO] [stdout] test health::tests::is_capability_healthy_when_not_diseased ... ok
[INFO] [stdout] test event_cleanup::tests::count_pending_cleanup_with_zero_results ... ok
[INFO] [stdout] test event_cleanup::tests::list_task_events_with_zero_limit_defaults_to_50 ... ok
[INFO] [stdout] test events::tests::query_latest_step_log_paths_returns_none_when_empty ... ok
[INFO] [stdout] test event_cleanup::tests::event_stats_returns_expected_values ... ok
[INFO] [stdout] test events::tests::insert_event_and_query_roundtrip ... ok
[INFO] [stdout] test json_extract::tests::extract_array_from_fenced_code_block ... ok
[INFO] [stdout] test json_extract::tests::extract_array_from_mixed_text_with_preamble ... ok
[INFO] [stdout] test json_extract::tests::extract_array_from_unfenced_code_block ... ok
[INFO] [stdout] test json_extract::tests::extract_array_missing_field_fails ... ok
[INFO] [stdout] test json_extract::tests::extract_array_mixed_text_unquoted ... ok
[INFO] [stdout] test json_extract::tests::extract_array_multiple_json_objects_finds_correct_one ... ok
[INFO] [stdout] test json_extract::tests::extract_array_nested ... ok
[INFO] [stdout] test json_extract::tests::extract_array_no_matching_path_in_mixed_text_fails ... ok
[INFO] [stdout] test json_extract::tests::extract_array_not_array_fails ... ok
[INFO] [stdout] test json_extract::tests::extract_array_pure_json_still_works ... ok
[INFO] [stdout] test json_extract::tests::extract_array_simple ... ok
[INFO] [stdout] test json_extract::tests::extract_array_truly_unparsable_fails ... ok
[INFO] [stdout] test json_extract::tests::extract_array_unquoted_json_succeeds ... ok
[INFO] [stdout] test json_extract::tests::extract_array_unquoted_regression_targets ... ok
[INFO] [stdout] test json_extract::tests::extract_field_boolean ... ok
[INFO] [stdout] test json_extract::tests::extract_field_missing_returns_none ... ok
[INFO] [stdout] test json_extract::tests::extract_field_nested ... ok
[INFO] [stdout] test json_extract::tests::extract_field_null_returns_none ... ok
[INFO] [stdout] test json_extract::tests::extract_field_number ... ok
[INFO] [stdout] test json_extract::tests::extract_field_string ... ok
[INFO] [stdout] test json_extract::tests::extract_stream_json_result_handles_redacted_lines ... ok
[INFO] [stdout] test json_extract::tests::extract_stream_json_result_prefers_last_result_line ... ok
[INFO] [stdout] test json_extract::tests::repair_unquoted_json_file_paths ... ok
[INFO] [stdout] test json_extract::tests::repair_unquoted_json_keys_and_values ... ok
[INFO] [stdout] test json_extract::tests::repair_unquoted_json_mixed_quoted ... ok
[INFO] [stdout] test json_extract::tests::repair_unquoted_json_nested_array ... ok
[INFO] [stdout] test json_extract::tests::repair_unquoted_json_numbers_bools_null ... ok
[INFO] [stdout] test event_cleanup::tests::list_task_events_with_type_filter ... ok
[INFO] [stdout] test json_extract::tests::repair_unquoted_json_preserves_valid ... ok
[INFO] [stdout] test events::tests::query_latest_step_log_paths_prefers_step_key_over_phase ... ok
[INFO] [stdout] test events::tests::query_latest_step_log_paths_returns_paths ... ok
[INFO] [stdout] test event_cleanup::tests::list_task_events_without_filter ... ok
[INFO] [stdout] test events::tests::query_latest_step_log_paths_empty_phase_returns_none ... ok
[INFO] [stdout] test events::tests::query_step_events_parses_step_scope_and_task_item_id ... ok
[INFO] [stdout] test events::tests::query_step_events_empty_for_unknown_task ... ok
[INFO] [stdout] test events::tests::query_step_events_uses_promoted_column_scope ... ok
[INFO] [stdout] test metrics::tests::test_boundary_max_load ... ok
[INFO] [stdout] test metrics::tests::test_agent_score_calculation ... ok
[INFO] [stdout] test metrics::tests::test_boundary_none_health ... ok
[INFO] [stdout] test metrics::tests::test_boundary_none_metrics ... ok
[INFO] [stdout] test metrics::tests::test_capability_health_rate ... ok
[INFO] [stdout] test metrics::tests::test_capability_health_zero_total ... ok
[INFO] [stdout] test metrics::tests::test_boundary_zero_total_runs ... ok
[INFO] [stdout] test metrics::tests::test_ema_convergence_mixed ... ok
[INFO] [stdout] test metrics::tests::test_ema_convergence_success ... ok
[INFO] [stdout] test metrics::tests::test_health_penalty_consecutive_errors ... ok
[INFO] [stdout] test metrics::tests::test_health_penalty_diseased_agent ... ok
[INFO] [stdout] test metrics::tests::test_load_balanced_low_load_scores_higher ... ok
[INFO] [stdout] test metrics::tests::test_load_balanced_score_never_negative ... ok
[INFO] [stdout] test metrics::tests::test_load_decrement_from_zero ... ok
[INFO] [stdout] test metrics::tests::test_load_increment_decrement_cycle ... ok
[INFO] [stdout] test metrics::tests::test_new_agent_metrics ... ok
[INFO] [stdout] test metrics::tests::test_p95_calculated_after_multiple_runs ... ok
[INFO] [stdout] test metrics::tests::test_p95_circular_buffer_evicts_oldest ... ok
[INFO] [stdout] test metrics::tests::test_p95_single_sample ... ok
[INFO] [stdout] test metrics::tests::test_record_failure ... ok
[INFO] [stdout] test metrics::tests::test_record_success ... ok
[INFO] [stdout] test metrics::tests::test_selection_strategy_capability_aware ... ok
[INFO] [stdout] test metrics::tests::test_selection_strategy_cost_based ... ok
[INFO] [stdout] test metrics::tests::test_selection_strategy_load_balanced ... ok
[INFO] [stdout] test metrics::tests::test_selection_strategy_performance_first ... ok
[INFO] [stdout] test metrics::tests::test_ema_convergence_failure ... ok
[INFO] [stdout] test metrics::tests::test_selection_strategy_success_rate_weighted ... ok
[INFO] [stdout] test migration::tests::all_migrations_count_matches_expected ... ok
[INFO] [stdout] test migration::tests::all_migrations_names_are_unique ... ok
[INFO] [stdout] test migration::tests::all_migrations_versions_are_contiguous ... ok
[INFO] [stdout] test migration::tests::all_migrations_versions_are_ascending ... ok
[INFO] [stdout] test migration::tests::baseline_schema_creates_all_tables ... ok
[INFO] [stdout] test migration::tests::backfill_promoted_populates_from_json ... ok
[INFO] [stdout] test migration::tests::baseline_schema_is_idempotent_on_existing_db ... ok
[INFO] [stdout] test migration::tests::failed_migration_does_not_advance_version ... ok
[INFO] [stdout] test health::tests::health_operations_with_test_state ... ok
[INFO] [stdout] test migration::tests::events_promote_columns_adds_columns ... ok
[INFO] [stdout] test events::tests::step_event_parses_all_optional_fields ... ok
[INFO] [stdout] test health::tests::reset_consecutive_errors_noop_when_already_zero ... ok
[INFO] [stdout] test health::tests::mark_agent_diseased_custom_duration ... ok
[INFO] [stdout] test health::tests::mark_agent_diseased_zero_duration_is_noop ... ok
[INFO] [stdout] test migration::tests::m0002_backfills_empty_agent_id ... ok
[INFO] [stdout] test migration::tests::m0002_backfills_event_step_scope_from_task_item_id ... ok
[INFO] [stdout] test migration::tests::m0002_skips_event_with_existing_step_scope ... ok
[INFO] [stdout] test migration::tests::m0002_skips_unparseable_json ... ok
[INFO] [stdout] test migration::tests::m0009_normalizes_empty_agent_id ... ok
[INFO] [stdout] test log_cleanup::tests::no_terminal_tasks_no_cleanup ... ok
[INFO] [stdout] test health::tests::test_total_lifetime_errors_incremented ... ok
[INFO] [stdout] test observability::init::tests::cli_format_overrides_console_format ... ok
[INFO] [stdout] test health::tests::update_capability_health_none_capability_is_noop ... ok
[INFO] [stdout] test log_cleanup::tests::retention_zero_returns_immediately ... ok
[INFO] [stdout] test observability::init::tests::cli_level_overrides_config ... ok
[INFO] [stdout] test observability::init::tests::relative_file_path_is_resolved_from_app_root ... ok
[INFO] [stdout] test output_validation::tests::build_phase_parses_errors ... ok
[INFO] [stdout] test output_validation::tests::build_phase_parses_warnings ... ok
[INFO] [stdout] test output_validation::tests::diagnostic_parser_combine_order_consistent ... ok
[INFO] [stdout] test observability::init::tests::verbose_raises_default_level_to_debug ... ok
[INFO] [stdout] test output_validation::tests::build_errors_multiple_interleaved ... ok
[INFO] [stdout] test output_validation::tests::diagnostic_parser_trait_build_errors_direct ... ok
[INFO] [stdout] test output_validation::tests::fatal_provider_auth_error_marks_run_failed ... ok
[INFO] [stdout] test output_validation::tests::fatal_provider_error_marks_run_failed_even_with_zero_exit_code ... ok
[INFO] [stdout] test output_validation::tests::diagnostic_parser_trait_test_failures_direct ... ok
[INFO] [stdout] test output_validation::tests::non_build_phase_has_no_build_errors ... ok
[INFO] [stdout] test output_validation::tests::parse_location_line_empty_after_arrow ... ok
[INFO] [stdout] test output_validation::tests::parse_location_line_full ... ok
[INFO] [stdout] test output_validation::tests::parse_location_line_no_column ... ok
[INFO] [stdout] test output_validation::tests::parse_location_line_not_a_location ... ok
[INFO] [stdout] test output_validation::tests::parse_location_line_windows_path ... ok
[INFO] [stdout] test output_validation::tests::plain_text_stdout_with_error_pattern_still_detected ... ok
[INFO] [stdout] test output_validation::tests::sdlc_phases_accept_plain_text_output ... ok
[INFO] [stdout] test output_validation::tests::stream_json_with_embedded_error_patterns_no_false_positive ... ok
[INFO] [stdout] test output_validation::tests::sdlc_phases_accept_stream_json_output ... ok
[INFO] [stdout] test output_validation::tests::strict_phase_accepts_json ... ok
[INFO] [stdout] test output_validation::tests::strict_phase_requires_json ... ok
[INFO] [stdout] test output_validation::tests::strict_phase_suffix_match_requires_json ... ok
[INFO] [stdout] test output_validation::tests::test_failure_parser_combine_order ... ok
[INFO] [stdout] test output_validation::tests::test_failure_parser_last_block_no_delimiter ... ok
[INFO] [stdout] test output_validation::tests::test_phase_parses_failures ... ok
[INFO] [stdout] test persistence::migration::tests::run_pending_summary_reports_applied_descriptors ... ok
[INFO] [stdout] test persistence::migration::tests::registered_status_reports_pending_for_blank_database ... ok
[INFO] [stdout] test log_cleanup::tests::cleanup_removes_subdirectories ... ok
[INFO] [stdout] test migration::tests::partial_then_full_applies_remaining ... ok
[INFO] [stdout] test migration::tests::normalize_unspecified_agent_ids_rewrites_historical_placeholder ... ok
[INFO] [stdout] test log_cleanup::tests::recent_completed_task_not_cleaned ... ok
[INFO] [stdout] test log_cleanup::tests::cleanup_handles_missing_log_dir ... ok
[INFO] [stdout] test migration::tests::file_backed_blank_database_upgrades_to_latest ... ok
[INFO] [stdout] test log_cleanup::tests::old_completed_task_logs_cleaned ... ok
[INFO] [stdout] test migration::tests::run_pending_applies_all_on_fresh_db ... ok
[INFO] [stdout] test migration::tests::run_pending_is_idempotent ... ok
[INFO] [stdout] test migration::tests::file_backed_current_database_is_noop ... ok
[INFO] [stdout] test log_cleanup::tests::running_task_logs_not_cleaned ... ok
[INFO] [stdout] test migration::tests::file_backed_mid_schema_database_upgrades_to_latest ... ok
[INFO] [stdout] test persistence::repository::workflow_store::tests::get_missing_key_returns_none ... ok
[INFO] [stdout] test migration::tests::file_backed_partial_upgrade_database_recovers_to_latest ... ok
[INFO] [stdout] test persistence::repository::scheduler::tests::no_pending_tasks ... ok
[INFO] [stdout] test persistence::repository::daemon_meta::tests::increment_incarnation_starts_from_one ... ok
[INFO] [stdout] test prehook::cel::tests::webhook_filter_empty_payload ... ok
[INFO] [stdout] test prehook::cel::tests::webhook_filter_invalid_expression ... ok
[INFO] [stdout] test prehook::cel::tests::webhook_filter_matches_number_field ... ok
[INFO] [stdout] test prehook::cel::tests::webhook_filter_matches_bool_field ... ok
[INFO] [stdout] test prehook::cel::tests::webhook_filter_rejects_non_matching ... ok
[INFO] [stdout] test prehook::tests::command_rule_cel_empty_var_does_not_match ... ok
[INFO] [stdout] test prehook::tests::command_rule_cel_matches_pipeline_var ... ok
[INFO] [stdout] test prehook::cel::tests::webhook_filter_matches_string_field ... ok
[INFO] [stdout] test prehook::tests::finalize_outcome_custom_reason_vs_auto_generated ... ok
[INFO] [stdout] test prehook::tests::command_rule_cel_missing_var_does_not_match ... ok
[INFO] [stdout] test prehook::tests::finalize_outcome_empty_rules_returns_none ... ok
[INFO] [stdout] test persistence::repository::workflow_store::tests::list_returns_entries_ordered_by_time ... ok
[INFO] [stdout] test prehook::tests::finalize_outcome_single_matching_rule ... ok
[INFO] [stdout] test prehook::tests::finalize_outcome_multiple_rules_first_matches ... ok
[INFO] [stdout] test prehook::tests::finalize_outcome_multiple_rules_second_matches ... ok
[INFO] [stdout] test prehook::tests::test_build_finalize_cel_context_default_artifact_variables ... ok
[INFO] [stdout] test prehook::tests::test_build_errors_prehook_expression ... ok
[INFO] [stdout] test prehook::tests::test_build_finalize_cel_context_default_bool_variables ... ok
[INFO] [stdout] test prehook::tests::test_build_finalize_cel_context_default_qa_observed_variables ... ok
[INFO] [stdout] test prehook::tests::test_build_finalize_cel_context_default_int_variables ... ok
[INFO] [stdout] test prehook::tests::test_build_finalize_cel_context_default_retest_variables ... ok
[INFO] [stdout] test prehook::tests::test_build_finalize_cel_context_default_succeeds ... ok
[INFO] [stdout] test prehook::tests::test_build_step_prehook_cel_context_default_bool_variables ... ok
[INFO] [stdout] test prehook::tests::test_build_finalize_cel_context_sandbox_variables ... ok
[INFO] [stdout] test prehook::tests::finalize_outcome_no_rules_match_returns_none ... ok
[INFO] [stdout] test prehook::tests::test_build_step_prehook_cel_context_default_qa_failed_false ... ok
[INFO] [stdout] test prehook::tests::test_build_step_prehook_cel_context_default_int_variables ... ok
[INFO] [stdout] test persistence::repository::scheduler::tests::claim_prefers_restart_pending_over_pending ... ok
[INFO] [stdout] test prehook::tests::test_build_step_prehook_cel_context_default_string_variables ... ok
[INFO] [stdout] test prehook::tests::test_convergence_expression_default_succeeds ... ok
[INFO] [stdout] test persistence::schema::tests::bootstrap_creates_latest_schema_and_reports_current_status ... ok
[INFO] [stdout] test prehook::tests::test_convergence_expression_compound ... ok
[INFO] [stdout] test prehook::tests::test_convergence_expression_active_tickets ... ok
[INFO] [stdout] test prehook::tests::test_build_step_prehook_cel_context_default_succeeds ... ok
[INFO] [stdout] test prehook::tests::test_convergence_expression_cycle_comparison ... ok
[INFO] [stdout] test prehook::tests::test_convergence_expression_invalid_cel ... ok
[INFO] [stdout] test prehook::tests::test_convergence_expression_self_test_not_passed ... ok
[INFO] [stdout] test prehook::tests::test_convergence_expression_non_bool_result ... ok
[INFO] [stdout] test prehook::tests::test_convergence_expression_self_test_passed ... ok
[INFO] [stdout] test prehook::tests::test_convergence_var_bool ... ok
[INFO] [stdout] test prehook::tests::test_convergence_var_combined_with_builtin ... ok
[INFO] [stdout] test prehook::tests::test_convergence_var_int ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_all_bool_flags_true ... ok
[INFO] [stdout] test prehook::tests::test_convergence_var_float ... ok
[INFO] [stdout] test prehook::tests::test_convergence_var_string ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_exit_codes ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_cycle_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_expression_non_bool_return ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_expression_false ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_expression_invalid_cel ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_expression_non_bool_result ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_expression_true ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_fix_configured_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_fix_required ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_fix_skipped_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_fix_variables ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_qa_enabled_and_observed ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_is_last_cycle_with_qa_ran ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_new_ticket_count ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_item_status_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_qa_enabled_variables ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_qa_file_path_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_retest_enabled_and_success ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_retest_exit_code ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_is_last_cycle ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_retest_new_ticket_count_positive ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_retest_new_ticket_count ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_build_exit_code ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_task_status_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_retest_variables ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_task_and_item_ids ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_cycle_arithmetic ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_confidence_and_quality ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_compound ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_fix_required ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_invalid ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_item_status_comparison ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_literal_false ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_literal_true ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_negation ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_new_ticket_count ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_non_bool_result ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_or_operator ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_qa_failed ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_retest_exit_code ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_qa_file_path_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_finalize_rule_all_bool_flags_false ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_self_test_passed_not_in_cel ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_build_errors_positive ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_step_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_false ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_fix_exit_code ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_string_comparison ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_task_id_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_task_item_id_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_task_status_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_test_exit_code ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_test_failures ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_fix_confidence_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_fix_configured_variable ... ok
[INFO] [stdout] test prehook::tests::test_evaluate_step_prehook_expression_true ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_fix_enabled_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_fix_quality_score_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_is_last_cycle_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_fix_ran_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_fix_skipped_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_fix_success_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_has_code_change_artifacts_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_has_ticket_artifacts_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_last_sandbox_denial_reason_none ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_qa_confidence_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_last_sandbox_denied_true ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_qa_configured_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_qa_enabled_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_qa_observed_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_last_sandbox_denial_reason_set ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_qa_quality_score_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_qa_ran_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_retest_new_ticket_count_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_retest_success_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_retest_ran_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_qa_skipped_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_retest_enabled_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_sandbox_combined_expression ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_total_artifacts_variable ... ok
[INFO] [stdout] test prehook::tests::test_finalize_cel_context_sandbox_denied_count_nonzero ... ok
[INFO] [stdout] test prehook::tests::test_finalize_context_artifact_fields_nonzero ... ok
[INFO] [stdout] test prehook::tests::test_finalize_context_qa_ran_fix_success_true ... ok
[INFO] [stdout] test prehook::tests::test_finalize_context_combined_non_default ... ok
[INFO] [stdout] test prehook::tests::test_finalize_context_sandbox_denial_with_reason ... ok
[INFO] [stdout] test prehook::tests::test_finalize_context_optional_confidence_scores ... ok
[INFO] [stdout] test prehook::tests::test_finalize_context_none_confidence_is_null ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_build_exit_code_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_fix_has_changes_variable ... ok
[INFO] [stdout] test prehook::tests::test_fix_skipped_variable_available_in_cel_context ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_cycle_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_fix_required_variable ... ok
[INFO] [stdout] test prehook::tests::test_max_cycles_and_is_last_cycle_cel_variables ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_build_errors_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_is_last_cycle_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_last_sandbox_denial_reason_set ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_last_sandbox_denied_true ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_max_cycles_variable ... ok
[INFO] [stdout] test persistence::repository::workflow_store::tests::list_respects_limit_and_offset ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_qa_quality_score_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_qa_confidence_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_retest_exit_code_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_qa_file_path_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_item_status_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_last_sandbox_denial_reason_none ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_task_id_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_task_status_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_test_exit_code_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_sandbox_combined_expression ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_sandbox_denied_count_nonzero ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_test_failures_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_self_referential_safe_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_self_test_exit_code_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_step_variable ... ok
[INFO] [stdout] test prehook::tests::test_prehook_pipeline_var_bool ... ok
[INFO] [stdout] test prehook::tests::test_prehook_pipeline_var_builtin_takes_precedence ... ok
[INFO] [stdout] test prehook::tests::test_prehook_pipeline_var_string ... ok
[INFO] [stdout] test prehook::tests::test_prehook_pipeline_var_int ... ok
[INFO] [stdout] test prehook::tests::test_prehook_pipeline_var_json_array_in_operator ... ok
[INFO] [stdout] test prehook::tests::test_prehook_pipeline_var_json_array_not_in ... ok
[INFO] [stdout] test persistence::repository::workflow_store::tests::delete_removes_entry ... ok
[INFO] [stdout] test prehook::tests::test_prehook_pipeline_var_float ... ok
[INFO] [stdout] test prehook::tests::test_prehook_pipeline_var_truncated_skipped ... ok
[INFO] [stdout] test prehook::tests::test_resolve_finalize_outcome_default_reason ... ok
[INFO] [stdout] test prehook::tests::test_resolve_finalize_outcome_empty_rules ... ok
[INFO] [stdout] test prehook::tests::test_prehook_cel_context_task_item_id_variable ... ok
[INFO] [stdout] test prehook::tests::test_resolve_finalize_outcome_first_matching_rule_wins ... ok
[INFO] [stdout] test prehook::tests::test_resolve_finalize_outcome_custom_reason ... ok
[INFO] [stdout] test prehook::tests::test_resolve_finalize_outcome_skips_non_matching_rules ... ok
[INFO] [stdout] test prehook::tests::test_resolve_finalize_outcome_no_rules_match ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_all_false ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_default_reason ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_no_rules ... ok
[INFO] [stdout] test persistence::repository::daemon_meta::tests::increment_incarnation_returns_increasing_values ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_none_match ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_second_rule_matches ... ok
[INFO] [stdout] test prehook::tests::test_self_referential_safe_cel_variable_false ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_no_match ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_no_rules_returns_none ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_invalid_cel_returns_error ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_first_match_wins ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_first_false_second_matches ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_third_rule_matches ... ok
[INFO] [stdout] test persistence::repository::scheduler::tests::claim_transitions_to_running ... ok
[INFO] [stdout] test prehook::tests::test_self_referential_safe_scenarios_safe_doc_overrides ... ok
[INFO] [stdout] test prehook::tests::test_self_referential_safe_scenarios_non_empty ... ok
[INFO] [stdout] test prehook::tests::test_self_referential_safe_scenarios_empty ... ok
[INFO] [stdout] test prehook::tests::test_self_referential_safe_cel_variable_true ... ok
[INFO] [stdout] test prehook::tests::test_step_prehook_non_default_cycle_and_max_cycles ... ok
[INFO] [stdout] test prehook::tests::test_self_referential_safe_combined_with_is_last_cycle ... ok
[INFO] [stdout] test prehook::tests::test_step_prehook_non_default_error_counts ... ok
[INFO] [stdout] test prehook::tests::test_step_prehook_combined_non_default_fields ... ok
[INFO] [stdout] test prehook::tests::test_step_prehook_non_default_exit_codes ... ok
[INFO] [stdout] test prehook::tests::test_validate_step_prehook_empty_expression ... ok
[INFO] [stdout] test prehook::tests::test_step_prehook_self_referential_safe_false_with_scenarios ... ok
[INFO] [stdout] test prehook::tests::test_resolve_workflow_finalize_outcome_complex_conditions ... ok
[INFO] [stdout] test persistence::repository::workflow_store::tests::prune_by_max_entries_keeps_newest ... ok
[INFO] [stdout] test prehook::tests::test_validate_step_prehook_complex_valid_cel ... ok
[INFO] [stdout] test prehook::tests::test_validate_step_prehook_only_whitespace_is_rejected ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_empty_id ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_empty_when ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_whitespace_id ... ok
[INFO] [stdout] test prehook::tests::test_validate_step_prehook_valid_cel ... ok
[INFO] [stdout] test prehook::tests::test_validate_step_prehook_invalid_cel ... ok
[INFO] [stdout] test persistence::repository::scheduler::tests::pending_task_found ... ok
[INFO] [stdout] test prehook::tests::test_validate_step_prehook_whitespace_only_expression ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_valid ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_empty_status ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_invalid_cel ... ok
[INFO] [stdout] test prehook::tests::test_vars_bool_false_inference ... ok
[INFO] [stdout] test prehook::tests::test_vars_i64_inference ... ok
[INFO] [stdout] test prehook::tests::test_vars_json_array_contains ... ok
[INFO] [stdout] test prehook::tests::test_vars_f64_inference ... ok
[INFO] [stdout] test prehook::tests::test_vars_bool_inference ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_whitespace_status ... ok
[INFO] [stdout] test prehook::tests::test_validate_step_prehook_with_reason ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_whitespace_when ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_whitespace_when_rejected ... ok
[INFO] [stdout] test prehook::tests::test_validate_workflow_finalize_rule_with_reason ... ok
[INFO] [stdout] test prehook::tests::validate_command_rules_empty_is_ok ... ok
[INFO] [stdout] test prehook::tests::test_vars_empty_json_array ... ok
[INFO] [stdout] test prehook::tests::test_vars_negative_float ... ok
[INFO] [stdout] test prehook::tests::test_vars_string_inference ... ok
[INFO] [stdout] test prehook::tests::validate_command_rules_empty_when_rejected ... ok
[INFO] [stdout] test prehook::tests::validate_command_rules_second_rule_invalid_cel ... ok
[INFO] [stdout] test prehook::tests::validate_command_rules_second_rule_missing_prompt ... ok
[INFO] [stdout] test prehook::tests::test_vars_json_array_size ... ok
[INFO] [stdout] test persistence::repository::workflow_store::tests::prune_by_ttl_removes_old_entries ... ok
[INFO] [stdout] test prehook::tests::validate_command_rules_missing_prompt_placeholder ... ok
[INFO] [stdout] test qa_utils::tests::advanced_template_context_supports_quality_score_replacement ... ok
[INFO] [stdout] test qa_utils::tests::advanced_template_context_with_json_value ... ok
[INFO] [stdout] test qa_utils::tests::basic_template_context_all_fields ... ok
[INFO] [stdout] test qa_utils::tests::advanced_template_context_with_upstream ... ok
[INFO] [stdout] test qa_utils::tests::new_ticket_diff_keeps_duplicates_if_after_has_duplicates ... ok
[INFO] [stdout] test qa_utils::tests::new_ticket_diff_returns_empty_when_no_new_items ... ok
[INFO] [stdout] test qa_utils::tests::new_ticket_diff_returns_only_new_items_with_original_order ... ok
[INFO] [stdout] test qa_utils::tests::render_template_handles_empty_ticket_paths ... ok
[INFO] [stdout] test qa_utils::tests::basic_template_context_render ... ok
[INFO] [stdout] test qa_utils::tests::render_template_replaces_placeholders ... ok
[INFO] [stdout] test qa_utils::tests::render_template_with_context_replaces_phase_upstream_and_shared_state ... ok
[INFO] [stdout] test qa_utils::tests::validate_workspace_rel_path_accepts_normal_relative_paths ... ok
[INFO] [stdout] test qa_utils::tests::validate_workspace_rel_path_rejects_absolute_path ... ok
[INFO] [stdout] test qa_utils::tests::validate_workspace_rel_path_rejects_empty_input ... ok
[INFO] [stdout] test qa_utils::tests::validate_workspace_rel_path_rejects_parent_segments ... ok
[INFO] [stdout] test resource::agent::tests::agent_config_to_spec_no_metadata_becomes_none ... ok
[INFO] [stdout] test prehook::tests::validate_command_rules_valid_cel ... ok
[INFO] [stdout] test persistence::repository::workflow_store::tests::put_overwrites_existing ... ok
[INFO] [stdout] test prehook::tests::test_vars_zero_integer ... ok
[INFO] [stdout] test resource::agent::tests::agent_config_to_spec_empty_capabilities_becomes_none ... ok
[INFO] [stdout] test resource::agent::tests::agent_spec_config_roundtrip ... ok
[INFO] [stdout] test prehook::tests::validate_command_rules_multiple_valid ... ok
[INFO] [stdout] test persistence::repository::scheduler::tests::pending_count_accurate ... ok
[INFO] [stdout] test resource::agent::tests::agent_to_yaml_includes_command ... ok
[INFO] [stdout] test resource::agent::tests::agent_validate_accepts_valid_command ... ok
[INFO] [stdout] test prehook::tests::validate_command_rules_invalid_cel ... ok
[INFO] [stdout] test prehook::tests::test_vars_multiple_types_combined ... ok
[INFO] [stdout] test resource::agent::tests::agent_validate_rejects_empty_command ... ok
[INFO] [stdout] test prehook::tests::test_vars_negative_integer ... ok
[INFO] [stdout] test resource::env_store::tests::env_store_to_yaml ... ok
[INFO] [stdout] test resource::env_store::tests::env_store_validate_rejects_empty_name ... ok
[INFO] [stdout] test prehook::tests::test_vars_truncated_skipped_is_absent ... ok
[INFO] [stdout] test persistence::repository::workflow_store::tests::put_and_get_round_trip ... ok
[INFO] [stdout] test resource::export::tests::export_crd_documents_includes_non_builtin_crd ... ok
[INFO] [stdout] test resource::agent::tests::agent_get_from_without_stored_metadata ... ok
[INFO] [stdout] test resource::agent::tests::agent_delete_cleans_up_metadata ... ok
[INFO] [stdout] test resource::env_store::tests::env_store_apply_unchanged ... ok
[INFO] [stdout] test resource::agent::tests::agent_apply_stores_resource_metadata ... ok
[INFO] [stdout] test resource::agent::tests::agent_get_from_returns_none_for_missing ... ok
[INFO] [stdout] test qa_doctor::tests::empty_metrics_table ... ok
[INFO] [stdout] test resource::env_store::tests::env_store_apply_and_get ... ok
[INFO] [stdout] test qa_doctor::tests::metrics_with_completed_tasks ... ok
[INFO] [stdout] test resource::env_store::tests::env_store_get_from_returns_none_for_missing ... ok
[INFO] [stdout] test resource::export::tests::export_crd_documents_skips_builtin_crds ... ok
[INFO] [stdout] test resource::agent::tests::agent_resource_apply ... ok
[INFO] [stdout] test resource::env_store::tests::env_store_delete ... ok
[INFO] [stdout] test resource::export::tests::export_crd_documents_includes_custom_resource_instances ... ok
[INFO] [stdout] test qa_doctor::tests::metrics_last_24h_filters_correctly ... ok
[INFO] [stdout] test resource::export::tests::export_crd_documents_empty_config ... ok
[INFO] [stdout] test resource::export::tests::export_manifest_resources_includes_all_resource_types ... ok
[INFO] [stdout] test resource::export::tests::export_manifest_resources_skips_empty_project_name ... ok
[INFO] [stdout] test resource::export::tests::export_manifest_resources_preserves_labels_annotations ... ok
[INFO] [stdout] test resource::parse::tests::kind_as_str_all_variants ... ok
[INFO] [stdout] test resource::parse::tests::kind_as_str_env_store_variants ... ok
[INFO] [stdout] test resource::parse::tests::kind_as_str_step_template ... ok
[INFO] [stdout] test resource::parse::tests::parse_env_store_multi_document ... ok
[INFO] [stdout] test resource::parse::tests::parse_manifests_from_yaml_builtin_kind ... ok
[INFO] [stdout] test resource::parse::tests::parse_manifests_from_yaml_crd_kind ... ok
[INFO] [stdout] test resource::parse::tests::parse_manifests_from_yaml_custom_resource ... ok
[INFO] [stdout] test resource::parse::tests::parse_manifests_from_yaml_no_kind_falls_through_to_builtin ... ok
[INFO] [stdout] test resource::parse::tests::parse_manifests_from_yaml_skips_null_documents ... ok
[INFO] [stdout] test resource::parse::tests::parse_resources_from_yaml_multi_document ... ok
[INFO] [stdout] test resource::parse::tests::parse_resources_from_yaml_single_document ... ok
[INFO] [stdout] test resource::parse::tests::parse_resources_from_yaml_skips_null_documents ... ok
[INFO] [stdout] test resource::project::tests::build_project_rejects_wrong_kind ... ok
[INFO] [stdout] test resource::export::tests::export_manifest_documents_maps_all_kind_variants ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_env_store_aliases ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_runtime_policy ... ok
[INFO] [stdout] test resource::project::tests::project_resource_dispatch_and_kind ... ok
[INFO] [stdout] test resource::export::tests::export_validate_roundtrip_all_kinds ... ok
[INFO] [stdout] test resource::project::tests::project_resource_to_yaml ... ok
[INFO] [stdout] test resource::project::tests::project_resource_validate_accepts_valid ... ok
[INFO] [stdout] test resource::project::tests::project_resource_validate_rejects_empty_name ... ok
[INFO] [stdout] test resource::runtime_policy::tests::build_runtime_policy_rejects_wrong_kind ... ok
[INFO] [stdout] test resource::runtime_policy::tests::default_runner_spec_produces_allowlist ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runner_spec_config_roundtrip ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runner_spec_legacy_policy_normalizes_to_unsafe ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runner_spec_unknown_policy_falls_back_to_allowlist ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runner_spec_unsafe_policy ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_project ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_agent ... ok
[INFO] [stdout] test resource::export::tests::export_manifest_documents_produces_orchestrator_resources ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runtime_policy_dispatch_and_kind ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_defaults ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runtime_policy_to_yaml ... ok
[INFO] [stdout] test resource::runtime_policy::tests::validate_accepts_allowlist_with_populated_lists ... ok
[INFO] [stdout] test resource::runtime_policy::tests::validate_accepts_unsafe_with_empty_lists ... ok
[INFO] [stdout] test resource::runtime_policy::tests::validate_rejects_allowlist_with_empty_shell_args ... ok
[INFO] [stdout] test resource::runtime_policy::tests::validate_rejects_allowlist_with_empty_shells ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_step_template_aliases ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_rejects_unknown ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_runtime_policy_alias ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_workflow ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_wf_alias ... ok
[INFO] [stdout] test resource::secret_store::tests::secret_store_to_yaml ... ok
[INFO] [stdout] test resource::secret_store::tests::secret_store_validate_rejects_empty_name ... ok
[INFO] [stdout] test resource::project::tests::project_resource_apply_configured_on_change ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runtime_policy_apply_configured_on_change ... ok
[INFO] [stdout] test resource::step_template::tests::step_template_dispatch_and_kind ... ok
[INFO] [stdout] test resource::project::tests::project_resource_delete_returns_false_when_missing ... ok
[INFO] [stdout] test resource::step_template::tests::step_template_to_yaml ... ok
[INFO] [stdout] test resource::step_template::tests::step_template_validate_accepts_valid ... ok
[INFO] [stdout] test resource::step_template::tests::step_template_validate_rejects_empty_name ... ok
[INFO] [stdout] test resource::step_template::tests::step_template_validate_rejects_empty_prompt ... ok
[INFO] [stdout] test resource::step_template::tests::step_template_yaml_roundtrip ... ok
[INFO] [stdout] test resource::project::tests::project_resource_get_from_and_delete_from ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_ws_alias ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runtime_policy_apply_unchanged_when_same ... ok
[INFO] [stdout] test resource::project::tests::project_resource_apply_created_then_unchanged ... ok
[INFO] [stdout] test resource::parse::tests::delete_resource_by_kind_workspace ... ok
[INFO] [stdout] test resource::secret_store::tests::secret_store_and_env_store_same_name_coexist ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runtime_policy_get_from_always_returns_some ... ok
[INFO] [stdout] test resource::secret_store::tests::secret_store_apply_unchanged ... ok
[INFO] [stdout] test resource::runtime_policy::tests::runtime_policy_delete_returns_false ... ok
[INFO] [stdout] test resource::tests::cases::apply_to_store_increments_generation ... ok
[INFO] [stdout] test resource::tests::cases::apply_to_store_returns_configured_for_changed ... ok
[INFO] [stdout] test resource::secret_store::tests::secret_store_apply_and_get ... ok
[INFO] [stdout] test resource::tests::cases::apply_to_store_returns_unchanged_for_identical ... ok
[INFO] [stdout] test resource::tests::cases::apply_to_store_seeds_from_config_snapshot_for_correct_change_detection ... ok
[INFO] [stdout] test resource::tests::cases::apply_to_store_returns_created_for_new_resource ... ok
[INFO] [stdout] test resource::tests::cases::delete_from_store_returns_false_for_missing ... ok
[INFO] [stdout] test resource::tests::cases::delete_from_store_removes_from_store_and_config_snapshot ... ok
[INFO] [stdout] test resource::tests::cases::delete_from_store_seeds_from_config_snapshot_and_removes ... ok
[INFO] [stdout] test resource::tests::cases::metadata_from_parts_creates_full_metadata ... ok
[INFO] [stdout] test resource::tests::cases::metadata_from_store_falls_back_to_name_only ... ok
[INFO] [stdout] test resource::tests::cases::metadata_from_store_returns_cr_metadata ... ok
[INFO] [stdout] test resource::tests::cases::metadata_with_name_creates_minimal_metadata ... ok
[INFO] [stdout] test resource::step_template::tests::step_template_apply_configured_on_change ... ok
[INFO] [stdout] test resource::secret_store::tests::secret_store_delete ... ok
[INFO] [stdout] test resource::secret_store::tests::secret_store_get_from_returns_none_for_missing ... ok
[INFO] [stdout] test resource::step_template::tests::step_template_apply_created_then_unchanged ... ok
[INFO] [stdout] test resource::tests::cases::apply_result_configured_when_resource_changes ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_delete_from_removes_agent ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_kind_name_for_all_variants ... ok
[INFO] [stdout] test resource::step_template::tests::step_template_get_from_and_delete_from ... ok
[INFO] [stdout] test resource::tests::apply_to_project_tests::apply_to_project_routes_runtime_policy_through_generic_path ... ok
[INFO] [stdout] test resource::tests::cases::resource_dispatch_maps_workspace_manifest ... ok
[INFO] [stdout] test resource::tests::cases::resource_dispatch_rejects_mismatched_spec_kind ... ok
[INFO] [stdout] test resource::tests::cases::resource_registry_includes_execution_profile ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_validate_delegates ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_to_yaml_delegates ... ok
[INFO] [stdout] test resource::tests::cases::resource_to_yaml ... ok
[INFO] [stdout] test resource::tests::apply_to_project_tests::apply_to_project_routes_workspace_to_project_scope ... ok
[INFO] [stdout] test resource::tests::cases::resource_trait_validate_rejects_empty_name ... ok
[INFO] [stdout] test resource::tests::apply_to_project_tests::apply_to_project_returns_unchanged_for_identical ... ok
[INFO] [stdout] test resource::tests::cases::resource_trait_to_yaml_serializes_manifest_shape ... ok
[INFO] [stdout] test resource::tests::cases::serializes_equal_compares_by_json_value ... ok
[INFO] [stdout] test resource::tests::cases::validate_resource_name_accepts_valid ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::build_rejects_mismatched_spec ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::build_rejects_wrong_kind ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::build_succeeds_with_correct_kind_and_spec ... ok
[INFO] [stdout] test resource::tests::cases::validate_resource_name_rejects_empty ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::config_to_spec_host_mode ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::config_to_spec_sandbox_mode ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::config_to_spec_workspace_rw_scoped_and_deny ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::dispatch_maps_execution_profile_manifest ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::env_store_kind_name_validate_yaml ... ok
[INFO] [stdout] test resource::tests::apply_to_project_tests::apply_to_project_routes_workflow_to_project_scope ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::execution_profile_to_yaml_contains_kind ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::secret_store_kind_name_validate_yaml ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::spec_config_roundtrip_identity ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::spec_to_config_host_mode_defaults ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::spec_to_config_sandbox_mode ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::spec_to_config_unknown_mode_defaults_to_host ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::spec_to_config_workspace_rw_scoped ... ok
[INFO] [stdout] test resource::tests::apply_to_project_tests::apply_to_project_auto_creates_project_entry ... ok
[INFO] [stdout] test resource::tests::cases::apply_result_unchanged_for_identical_resource ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::step_template_kind_name_validate_yaml ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::validate_allowlist_with_empty_network_allowlist_fails ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::validate_allowlist_with_entries_ok ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::validate_allowlist_with_wildcard_entry_fails ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::validate_host_with_inherit_fs_mode_ok ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::validate_host_with_non_inherit_fs_mode_fails ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::validate_sandbox_with_any_fs_mode_ok ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_dispatch_and_kind ... ok
[INFO] [stdout] test resource::tests::cases::apply_result_created_when_missing ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_to_yaml ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_accepts_filesystem_source ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_accepts_valid_cron ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_accepts_valid_event ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_delete_from_removes_project ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_filesystem_rejects_invalid_events ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_filesystem_requires_paths ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_filesystem_requires_block ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_rejects_both_cron_and_event ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_rejects_empty_name ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_rejects_neither_cron_nor_event ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_validate_rejects_invalid_event_source ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_yaml_roundtrip_cron ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_yaml_roundtrip_event ... ok
[INFO] [stdout] test resource::tests::apply_to_project_tests::apply_to_project_routes_agent_to_project_scope ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_yaml_roundtrip_filesystem ... ok
[INFO] [stdout] test resource::workflow::tests::build_workflow_rejects_wrong_kind ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_delete_from_removes_workflow ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_delete_from_returns_false_for_unknown ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_validate_accepts_fixed_with_valid_max_cycles ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_validate_rejects_empty_step_id ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_validate_rejects_empty_step_type ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_validate_rejects_fixed_with_zero_max_cycles ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_validate_rejects_fixed_without_max_cycles ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_validation_rejects_empty_steps ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::checkpoint_strategy_as_str_all_variants ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::hook_engine_as_str_returns_cel ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::loop_mode_as_str_returns_correct_values ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::parse_cost_preference_all_variants ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::parse_cost_preference_rejects_unknown ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::parse_hook_engine_defaults_to_cel ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::parse_loop_mode_fixed ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::parse_loop_mode_infinite ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::parse_loop_mode_rejects_invalid ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::safety_config_to_spec_all_fields ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::safety_config_to_spec_defaults ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_delete_from_removes_workspace ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_config_to_spec_cost_preference_mapping ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_chain_steps_round_trip_through_spec_conversion ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_config_to_spec_dynamic_steps_roundtrip ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_config_to_spec_prehook_roundtrip ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_config_to_spec_preserves_safety_fields ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_item_isolation_round_trip_through_spec_conversion ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_config_to_spec_finalize_rules ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_safety_full_roundtrip ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_spec_to_config_init_once_sets_builtin ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_spec_to_config_loop_guard_sets_is_guard_and_builtin ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_spec_to_config_safety_git_stash ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_spec_to_config_safety_git_tag ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_spec_to_config_safety_none_strategy ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_spec_to_config_scope_item ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_spec_to_config_self_test_sets_builtin_execution ... ok
[INFO] [stdout] test resource::workflow::workflow_convert::tests::workflow_spec_to_config_with_prehook_and_cost ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_get_from_finds_runtime ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::env_store_apply_and_delete ... ok
[INFO] [stdout] test resource::tests::cases::resource_trait_get_from_reads_existing_config ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::step_template_apply_and_delete ... ok
[INFO] [stdout] test resource::workspace::tests::workspace_spec_config_roundtrip ... ok
[INFO] [stdout] test resource::workspace::tests::workspace_to_yaml_includes_all_fields ... ok
[INFO] [stdout] test resource::workspace::tests::workspace_validate_rejects_empty_root_path ... ok
[INFO] [stdout] test resource::workspace::tests::workspace_validate_rejects_empty_ticket_dir ... ok
[INFO] [stdout] test runtime::tests::snapshot_reflects_state_transitions ... ok
[INFO] [stdout] test selection::tests::resolve_effective_agents_returns_empty_for_empty_project_agents ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_apply_stores_resource_metadata ... ok
[INFO] [stdout] test selection::tests::resolve_effective_agents_returns_empty_for_unknown_project ... ok
[INFO] [stdout] test selection::tests::resolve_effective_agents_returns_global_for_empty_project_id ... ok
[INFO] [stdout] test selection::tests::resolve_effective_agents_returns_project_agents_when_no_capability_required ... ok
[INFO] [stdout] test selection::tests::resolve_effective_agents_returns_project_agents_when_capability_matches ... ok
[INFO] [stdout] test selection::tests::resolve_effective_agents_stays_in_project_even_when_capability_missing ... ok
[INFO] [stdout] test selection::tests::test_all_candidates_excluded_returns_error ... ok
[INFO] [stdout] test selection::tests::test_cost_differential_lower_cost_scores_higher ... ok
[INFO] [stdout] test selection::tests::test_diseased_agent_filtered_from_candidates ... ok
[INFO] [stdout] test selection::tests::test_diseased_agent_with_passing_capability_threshold_is_selected ... ok
[INFO] [stdout] test selection::tests::test_health_penalty_consecutive_errors_lowers_score ... ok
[INFO] [stdout] test selection::tests::test_metrics_impact_high_success_rate_preferred ... ok
[INFO] [stdout] test selection::tests::test_preference_empty_capabilities_non_default_name ... ok
[INFO] [stdout] test selection::tests::test_select_agent_advanced_excludes_agents ... ok
[INFO] [stdout] test selection::tests::test_select_agent_advanced_finds_matching_capability ... ok
[INFO] [stdout] test selection::tests::test_select_agent_advanced_returns_error_when_no_match ... ok
[INFO] [stdout] test selection::tests::test_select_agent_by_preference_random_fallback ... ok
[INFO] [stdout] test selection::tests::test_select_agent_by_preference_rejects_empty_registry ... ok
[INFO] [stdout] test selection::tests::test_select_agent_by_preference_returns_default ... ok
[INFO] [stdout] test selection::tests::test_single_candidate_deterministic ... ok
[INFO] [stdout] test self_referential_policy::tests::non_self_referential_workspace_skips_standard_rules ... ok
[INFO] [stdout] test self_referential_policy::tests::probe_profile_allows_builtin_self_test ... ok
[INFO] [stdout] test self_referential_policy::tests::self_referential_workspace_requires_self_test ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_apply_created_then_unchanged ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_get_from_returns_none_for_missing ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::delete_execution_profile_removes ... ok
[INFO] [stdout] test service::bootstrap::tests::placeholder_active_config_keeps_config_but_clears_resolved_views ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_resource_roundtrip ... ok
[INFO] [stdout] test resource::workflow::tests::workflow_delete_cleans_up_metadata ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::secret_store_apply_and_delete ... ok
[INFO] [stdout] test resource::tests::cases::registered_resource_get_from_returns_none_for_unknown ... ok
[INFO] [stdout] test resource::tests::execution_profile_tests::apply_execution_profile_creates_and_retrieves ... ok
[INFO] [stdout] test resource::trigger::tests::trigger_get_from_and_delete_from ... ok
[INFO] [stdout] test resource::workspace::tests::workspace_apply_stores_resource_metadata ... ok
[INFO] [stdout] test resource::workspace::tests::workspace_delete_cleans_up_metadata ... ok
[INFO] [stdout] test service::bootstrap::tests::initialize_runtime_creates_logs_dir_and_database ... ok
[INFO] [stdout] test service::resource::tests::helper_functions_cover_delete_and_projection_paths ... ok
[INFO] [stdout] test resource::workspace::tests::workspace_get_from_returns_none_for_missing ... ok
[INFO] [stdout] test resource::workspace::tests::workspace_get_from_without_stored_metadata ... ok
[INFO] [stdout] test resource::workspace::tests::workspace_resource_apply ... ok
[INFO] [stdout] test service::bootstrap::tests::build_managed_state_populates_expected_subsystems ... ok
[INFO] [stdout] test service::bootstrap::tests::blank_database_bootstraps_runnable_state_without_persisted_resources ... ok
[INFO] [stdout] test service::bootstrap::tests::backfill_default_scope_data_updates_blank_task_and_command_run_fields ... ok
[INFO] [stdout] test service::resource::tests::apply_manifests_reports_metadata_project_mismatch ... ok
[INFO] [stdout] test service::resource::tests::apply_prune_dry_run_reports_deleted_without_persisting ... ok
[INFO] [stdout] test service::system::tests::db_migrations_list_marks_all_migrations_applied_on_seeded_state ... ok
[INFO] [stdout] test service::system::tests::clear_worker_stop_signal_noop_when_no_file ... ok
[INFO] [stdout] test service::store::tests::store_put_get_list_delete_round_trip ... ok
[INFO] [stdout] test service::resource::tests::get_resource_supports_named_queries_describe_and_selector_helpers ... ok
[INFO] [stdout] test service::system::tests::db_status_reports_current_schema ... ok
[INFO] [stdout] test service::resource::tests::export_manifests_supports_json_and_yaml ... ok
[INFO] [stdout] test service::resource::tests::apply_prune_blocks_non_terminal_referenced_workflow ... ok
[INFO] [stdout] test service::system::tests::clear_worker_stop_signal_removes_stop_file ... ok
[INFO] [stdout] test service::system::tests::debug_info_covers_known_and_unknown_components ... ok
[INFO] [stdout] test service::resource::tests::apply_without_prune_keeps_existing_resources_not_in_manifest ... ok
[INFO] [stdout] test service::resource::tests::delete_resource_covers_force_dry_run_and_actual_delete ... ok
[INFO] [stdout] test service::system::tests::pending_task_count_returns_correct_count ... ok
[INFO] [stdout] test session_store::tests::writer_and_reader_attachments_round_trip ... ok
[INFO] [stdout] test session_store::tests::cleanup_stale_sessions_removes_old_exited_keeps_recent ... ok
[INFO] [stdout] test service::resource::tests::apply_without_prune_preserves_same_named_resources_across_projects ... ok
[INFO] [stdout] test state::tests::running_task_starts_with_defaults ... ok
[INFO] [stdout] test session_store::tests::active_session_lookup_and_listing_filter_by_task ... ok
[INFO] [stdout] test session_store::tests::insert_load_and_update_session_lifecycle ... ok
[INFO] [stdout] test store::command::tests::command_adapter_delete ... ok
[INFO] [stdout] test store::command::tests::command_adapter_failed_command ... ok
[INFO] [stdout] test service::system::tests::worker_signal_paths_are_under_data_dir ... ok
[INFO] [stdout] test store::command::tests::command_adapter_get_missing_returns_none ... ok
[INFO] [stdout] test store::command::tests::command_adapter_list_empty ... ok
[INFO] [stdout] test service::system::tests::run_init_creates_requested_directory_and_reports_paths ... ok
[INFO] [stdout] test session_store::tests::async_session_store_exercises_all_wrapper_methods ... ok
[INFO] [stdout] test store::command::tests::command_adapter_prune_unsupported ... ok
[INFO] [stdout] test store::command::tests::command_adapter_list_with_entries ... ok
[INFO] [stdout] test store::command::tests::command_adapter_prune_supported ... ok
[INFO] [stdout] test store::file::tests::delete_nonexistent_key_returns_ok ... ok
[INFO] [stdout] test store::command::tests::command_adapter_prune_with_env_vars ... ok
[INFO] [stdout] test store::file::tests::empty_project_id_uses_default ... ok
[INFO] [stdout] test store::file::tests::file_put_get_delete ... ok
[INFO] [stdout] test store::file::tests::get_nonexistent_key_returns_none ... ok
[INFO] [stdout] test store::file::tests::list_on_nonexistent_directory ... ok
[INFO] [stdout] test store::file::tests::list_with_offset_skips_entries ... ok
[INFO] [stdout] test store::file::tests::prune_on_nonexistent_directory ... ok
[INFO] [stdout] test service::resource::tests::apply_prune_isolated_to_target_project_with_same_named_resources ... ok
[INFO] [stdout] test store::command::tests::command_adapter_list_with_limit_offset ... ok
[INFO] [stdout] test store::file::tests::file_list_entries ... ok
[INFO] [stdout] test store::file::tests::put_with_nonempty_project_id ... ok
[INFO] [stdout] test service::system::tests::run_db_reset_requires_force_and_clears_in_memory_config_when_requested ... ok
[INFO] [stdout] test service::system::tests::signal_worker_stop_creates_stop_file ... ok
[INFO] [stdout] test store::file::tests::prune_with_max_entries ... ok
[INFO] [stdout] test store::file::tests::prune_with_none_max_entries_is_noop ... ok
[INFO] [stdout] test store::command::tests::command_adapter_put_get ... ok
[INFO] [stdout] test state::tests::agent_health_and_metrics_reset_explicitly ... ok
[INFO] [stdout] test store::tests::store_entry_serde_round_trip ... ok
[INFO] [stdout] test store::tests::store_op_all_variants_debug ... ok
[INFO] [stdout] test store::tests::store_op_debug ... ok
[INFO] [stdout] test store::tests::store_op_result_serde_round_trip_entries ... ok
[INFO] [stdout] test store::tests::store_op_result_serde_round_trip_none ... ok
[INFO] [stdout] test store::tests::store_op_result_serde_round_trip_ok ... ok
[INFO] [stdout] test store::tests::store_op_result_serde_round_trip_value ... ok
[INFO] [stdout] test store::validate::tests::missing_required_field ... ok
[INFO] [stdout] test store::validate::tests::nested_property_validation ... ok
[INFO] [stdout] test store::validate::tests::no_schema_always_passes ... ok
[INFO] [stdout] test store::validate::tests::number_above_maximum ... ok
[INFO] [stdout] test store::validate::tests::number_below_minimum ... ok
[INFO] [stdout] test store::validate::tests::valid_object ... ok
[INFO] [stdout] test store::validate::tests::wrong_type ... ok
[INFO] [stdout] test service::system::tests::worker_status_reports_pending_tasks_and_stop_signal ... ok
[INFO] [stdout] test service::system::tests::validate_manifests_handles_parse_valid_and_invalid_config ... ok
[INFO] [stdout] test state::tests::emit_event_is_safe_with_noop_sink ... ok
[INFO] [stdout] test state::tests::poisoned_event_sink_recovers_with_tracing_sink ... ok
[INFO] [stdout] test state::tests::read_active_config_rejects_non_runnable_snapshot ... ok
[INFO] [stdout] test state::tests::state_accessors_round_trip_agent_maps ... ok
[INFO] [stdout] test state::tests::update_config_runtime_replaces_snapshot_without_exposing_guards ... ok
[INFO] [stdout] test store::tests::resolve_provider_unknown_custom_not_found ... ok
[INFO] [stdout] test store::tests::resolve_store_config_returns_default_when_not_found ... ok
[INFO] [stdout] test service::store::tests::store_prune_uses_workflow_store_retention ... ok
[INFO] [stdout] test store::tests::resolve_provider_builtin_file ... ok
[INFO] [stdout] test store::local::tests::put_get_delete_round_trip ... ok
[INFO] [stdout] test store::local::tests::put_upserts_existing_key ... ok
[INFO] [stdout] test store::tests::resolve_provider_builtin_local ... ok
[INFO] [stdout] test store::local::tests::list_returns_entries ... ok
[INFO] [stdout] test task_cleanup::tests::batch_limit_zero_defaults_to_fifty ... ok
[INFO] [stdout] test task_cleanup::tests::batch_limit_respected ... ok
[INFO] [stdout] test task_cleanup::tests::log_dir_cleaned_up ... ok
[INFO] [stdout] test task_cleanup::tests::no_terminal_tasks_returns_zero ... ok
[INFO] [stdout] test task_cleanup::tests::old_completed_task_deleted ... ok
[INFO] [stdout] test task_cleanup::tests::recent_completed_task_not_deleted ... ok
[INFO] [stdout] test task_ops::tests::create_task_item_scoped_workflow_with_no_qa_files_fails ... ok
[INFO] [stdout] test task_ops::tests::create_task_task_scoped_workflow_with_multiple_explicit_targets_fails ... ok
[INFO] [stdout] test task_ops::tests::create_task_item_scoped_workflow_with_explicit_non_markdown_target_succeeds ... ok
[INFO] [stdout] test task_cleanup::tests::retention_zero_returns_zero ... ok
[INFO] [stdout] test task_ops::tests::create_multiple_tasks_get_unique_ids ... ok
[INFO] [stdout] test task_ops::tests::create_task_task_scoped_workflow_without_qa_files_uses_synthetic_anchor ... ok
[INFO] [stdout] test task_ops::tests::create_task_with_nonexistent_workflow_fails ... ok
[INFO] [stdout] test task_ops::tests::create_task_with_empty_project_rejects_missing_workspace ... ok
[INFO] [stdout] test task_ops::tests::create_task_ticket_seed_workflow_with_active_tickets_uses_ticket_targets ... ok
[INFO] [stdout] test task_ops::tests::create_task_ticket_seed_workflow_without_active_tickets_uses_unassigned ... ok
[INFO] [stdout] test task_ops::tests::create_task_with_custom_name_and_goal ... ok
[INFO] [stdout] test task_ops::tests::create_task_with_nonexistent_workspace_fails ... ok
[INFO] [stdout] test task_ops::tests::create_task_with_defaults ... ok
[INFO] [stdout] test task_ops::tests::create_task_with_explicit_target_files ... ok
[INFO] [stdout] test task_ops::tests::create_task_task_scoped_workflow_with_single_explicit_target_succeeds ... ok
[INFO] [stdout] test task_ops::tests::reset_task_item_for_retry_nonexistent_item_fails ... ok
[INFO] [stdout] test task_repository::async_wrapper_tests::async_repository_read_wrappers_round_trip ... ok
[INFO] [stdout] test task_ops::tests::reset_task_item_for_retry_resets_fields ... ok
[INFO] [stdout] test task_repository::async_wrapper_tests::async_repository_graph_debug_wrappers_round_trip ... ok
[INFO] [stdout] test task_repository::tests::items_tests::mark_task_item_running_sets_started_at ... ok
[INFO] [stdout] test task_repository::async_wrapper_tests::async_repository_insert_and_delete_command_runs ... ok
[INFO] [stdout] test task_repository::async_wrapper_tests::async_repository_write_wrappers_update_task_and_item_state ... ok
[INFO] [stdout] test task_repository::tests::items_tests::delete_task_and_collect_log_paths_deletes_cascaded_data ... ok
[INFO] [stdout] test task_repository::tests::items_tests::delete_task_and_collect_log_paths_cleans_data ... ok
[INFO] [stdout] test task_repository::async_wrapper_tests::sqlite_repository_graph_debug_wrappers_round_trip ... ok
[INFO] [stdout] test task_repository::tests::items_tests::delete_task_and_collect_log_paths_errors_for_missing_task ... ok
[INFO] [stdout] test task_repository::tests::items_tests::delete_task_and_collect_log_paths_returns_empty_when_no_command_runs ... ok
[INFO] [stdout] test task_repository::tests::items_tests::insert_command_run_with_all_optional_fields ... ok
[INFO] [stdout] test task_repository::tests::items_tests::insert_and_list_task_log_runs_work ... ok
[INFO] [stdout] test task_repository::tests::items_tests::delete_task_and_collect_log_paths_filters_empty_paths ... ok
[INFO] [stdout] test task_repository::tests::items_tests::set_task_item_terminal_status_sets_completed_at ... ok
[INFO] [stdout] test task_repository::tests::items_tests::update_task_item_pipeline_vars_persists_json ... ok
[INFO] [stdout] test task_repository::tests::items_tests::update_task_item_status_changes_status ... ok
[INFO] [stdout] test task_repository::tests::items_tests::update_task_item_status_updates_updated_at ... ok
[INFO] [stdout] test task_repository::tests::items_tests::update_task_item_pipeline_vars_updates_updated_at ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::count_unresolved_items_counts_unresolved_status ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::count_unresolved_items_zero_when_all_pending ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::count_unresolved_items_counts_qa_failed_status ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::count_unresolved_items_mixed_statuses ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::find_latest_resumable_task_id_returns_interrupted_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::find_latest_resumable_task_id_returns_none_for_failed_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::find_latest_resumable_task_id_includes_restart_pending ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::first_task_item_id_returns_item ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::first_task_item_id_respects_order_no ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::find_latest_resumable_task_id_returns_paused_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::find_latest_resumable_task_id_includes_pending_when_flag_set ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::find_latest_resumable_task_id_returns_running_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::find_latest_resumable_task_id_returns_none_when_all_completed ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::first_task_item_id_returns_none_for_empty_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::fr052_count_recent_heartbeats_excludes_old_events ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::fr052_count_recent_heartbeats_filters_by_item_id ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::fr052_count_recent_heartbeats_returns_zero_for_empty_item_ids ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::graph_run_queries_insert_update_and_upsert_snapshots ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::fr052_count_recent_heartbeats_ignores_non_heartbeat_events ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::fr052_count_recent_heartbeats_finds_matching_events ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::list_task_items_for_cycle_returns_empty_for_unknown_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_graph_debug_bundles_errors_when_event_table_is_missing ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::list_task_ids_ordered_by_created_desc_returns_tasks ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::list_task_items_for_cycle_returns_items_in_order ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::fr052_count_recent_heartbeats_returns_zero_when_no_events ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::list_task_items_for_cycle_preserves_dynamic_metadata ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::list_task_log_runs_orders_newest_first ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::list_task_log_runs_respects_limit ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::list_task_ids_ordered_by_created_desc_respects_order ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::list_task_log_runs_returns_empty_when_no_runs ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_detail_rows_includes_command_runs ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_detail_rows_includes_events ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_detail_rows_falls_back_to_legacy_graph_events ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_detail_rows_returns_empty_for_unknown_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::query_helpers_error_on_missing_schema ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_detail_rows_includes_graph_debug_bundles ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_detail_rows_returns_items_runs_and_events ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_graph_debug_bundles_uses_defaults_for_invalid_legacy_events ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_name_returns_name ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_name_returns_none_for_missing_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_detail_rows_tolerates_invalid_json_and_interrupted_runs ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_item_counts_handles_finished_and_failed_statuses ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_status_returns_current_status ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_runtime_row_returns_expected_fields ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_status_reflects_status_change ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_status_returns_none_for_missing_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_runtime_row_errors_for_missing_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_summary_errors_for_missing_task ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_summary_and_counts_are_consistent ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::resolve_task_id_errors_for_not_found ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::load_task_summary_errors_for_invalid_target_files_json ... ok
[INFO] [stdout] test task_repository::tests::state_tests::pause_restart_pending_tasks_and_items_pauses_and_resets ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::resolve_task_id_errors_for_multiple_matches ... ok
[INFO] [stdout] test task_repository::tests::state_tests::pause_all_running_tasks_and_items_pauses_tasks_and_resets_items ... ok
[INFO] [stdout] test task_repository::tests::queries_tests::resolve_task_id_supports_exact_and_prefix ... ok
[INFO] [stdout] test task_repository::tests::state_tests::pause_all_running_does_not_affect_paused_tasks ... ok
[INFO] [stdout] test task_repository::tests::state_tests::prepare_task_for_start_batch_resets_unresolved_items_from_paused ... ok
[INFO] [stdout] test task_repository::tests::state_tests::pause_restart_pending_returns_zero_when_no_restart_pending_tasks ... ok
[INFO] [stdout] test task_repository::tests::state_tests::pause_restart_pending_does_not_affect_running_tasks ... ok
[INFO] [stdout] test task_repository::tests::state_tests::prepare_task_for_start_batch_resets_unresolved_items ... ok
[INFO] [stdout] test task_repository::tests::state_tests::prepare_task_for_start_batch_errors_for_missing_task ... ok
[INFO] [stdout] test task_repository::tests::state_tests::prepare_task_for_start_batch_sets_started_at_when_previously_null ... ok
[INFO] [stdout] test task_repository::tests::state_tests::prepare_task_for_start_batch_rejects_already_running ... ok
[INFO] [stdout] test task_repository::tests::state_tests::prepare_task_restart_pending_preserves_items ... ok
[INFO] [stdout] test task_repository::tests::state_tests::recover_orphaned_running_items_does_not_affect_terminal_items ... ok
[INFO] [stdout] test task_repository::tests::state_tests::prepare_task_for_start_batch_works_for_pending_status ... ok
[INFO] [stdout] test task_repository::tests::state_tests::recover_orphaned_running_items_for_task_only_affects_target_task ... ok
[INFO] [stdout] test task_repository::tests::state_tests::recover_orphaned_running_items_returns_empty_when_no_orphans ... ok
[INFO] [stdout] test task_repository::tests::state_tests::recover_orphaned_running_items_skips_paused_task_in_return ... ok
[INFO] [stdout] test task_repository::tests::state_tests::recover_orphaned_running_items_resets_items_and_task ... ok
[INFO] [stdout] test task_repository::tests::state_tests::recover_orphaned_running_items_for_task_returns_empty_when_no_running_items ... ok
[INFO] [stdout] test task_repository::tests::state_tests::recover_stalled_running_items_respects_threshold ... ok
[INFO] [stdout] test task_repository::tests::state_tests::recover_stalled_running_items_skips_excluded_tasks ... ok
[INFO] [stdout] test task_repository::tests::state_tests::reset_unresolved_items_no_op_when_no_unresolved ... ok
[INFO] [stdout] test task_repository::tests::state_tests::reset_unresolved_items_resets_unresolved_to_pending ... ok
[INFO] [stdout] test task_repository::tests::state_tests::recover_orphaned_running_items_for_task_skips_non_running_task ... ok
[INFO] [stdout] test task_repository::tests::state_tests::reset_unresolved_items_resets_cycle_counter_when_pending_items_exist ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_completed_with_set_completed_sets_started_at_when_null ... ok
[INFO] [stdout] test task_repository::tests::state_tests::reset_unresolved_items_skips_cycle_reset_when_no_pending ... ok
[INFO] [stdout] test ticket::tests::test_collect_target_files_directory_in_explicit_list_skipped ... ok
[INFO] [stdout] test ticket::tests::test_collect_target_files_explicit_dedup ... ok
[INFO] [stdout] test ticket::tests::test_collect_target_files_from_active_tickets_no_active_tickets ... ok
[INFO] [stdout] test ticket::tests::test_collect_target_files_from_active_tickets_nonexistent_qa_file ... ok
[INFO] [stdout] test ticket::tests::test_collect_target_files_from_active_tickets_with_valid_qa_docs ... ok
[INFO] [stdout] test ticket::tests::test_collect_target_files_from_directory_scan ... ok
[INFO] [stdout] test ticket::tests::test_collect_target_files_with_explicit_list ... ok
[INFO] [stdout] test ticket::tests::test_create_ticket_for_qa_failure ... ok
[INFO] [stdout] test ticket::tests::test_create_ticket_for_qa_failure_long_stdout_truncated ... ok
[INFO] [stdout] test ticket::tests::test_create_ticket_for_qa_failure_missing_log_files ... ok
[INFO] [stdout] test ticket::tests::test_create_ticket_for_qa_failure_preserves_redacted_snippets ... ok
[INFO] [stdout] test ticket::tests::test_create_ticket_for_qa_failure_unknown_stem ... ok
[INFO] [stdout] test ticket::tests::test_is_active_ticket_status_closed ... ok
[INFO] [stdout] test ticket::tests::test_is_active_ticket_status_empty ... ok
[INFO] [stdout] test ticket::tests::test_is_active_ticket_status_failed ... ok
[INFO] [stdout] test ticket::tests::test_is_active_ticket_status_leading_whitespace ... ok
[INFO] [stdout] test ticket::tests::test_is_active_ticket_status_mixed_case ... ok
[INFO] [stdout] test ticket::tests::test_is_active_ticket_status_open ... ok
[INFO] [stdout] test ticket::tests::test_is_active_ticket_status_various_closed ... ok
[INFO] [stdout] test ticket::tests::test_is_self_referential_safe_file_not_found_defaults_true ... ok
[INFO] [stdout] test ticket::tests::test_is_self_referential_safe_file_says_false ... ok
[INFO] [stdout] test ticket::tests::test_is_self_referential_safe_file_says_true ... ok
[INFO] [stdout] test ticket::tests::test_is_self_referential_safe_non_self_referential_workspace ... ok
[INFO] [stdout] test ticket::tests::test_list_existing_tickets_for_item_matches_by_qa_doc ... ok
[INFO] [stdout] test ticket::tests::test_list_existing_tickets_for_item_unassigned ... ok
[INFO] [stdout] test ticket::tests::test_list_ticket_files_in_workspace ... ok
[INFO] [stdout] test ticket::tests::test_list_ticket_files_in_workspace_case_insensitive_readme ... ok
[INFO] [stdout] test ticket::tests::test_list_ticket_files_in_workspace_missing_dir ... ok
[INFO] [stdout] test ticket::tests::test_list_ticket_files_in_workspace_nested_subdirectory ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_backtick_wrapping ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_dotdot_at_end ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_dotdot_at_start ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_empty ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_filters_dot ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_filters_empty_parts ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_leading_dot_slash ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_leading_slash ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_only_dots ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_rejects_parent_traversal ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_removes_backslashes ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_trims_whitespace ... ok
[INFO] [stdout] test ticket::tests::test_normalize_rel_path_for_match_whitespace_only ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_empty_frontmatter ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_no_frontmatter ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_other_frontmatter_fields ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_safe_scenarios_absent ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_safe_scenarios_block_style ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_safe_scenarios_block_style_empty ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_safe_scenarios_block_style_single ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_safe_scenarios_block_style_with_comment ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_safe_scenarios_empty_list ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_safe_scenarios_no_frontmatter ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_safe_scenarios_present ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_safe_scenarios_single ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_self_referential_safe_default ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_self_referential_safe_empty_input ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_self_referential_safe_false ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_self_referential_safe_false_after_closing_fence ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_self_referential_safe_true ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_self_referential_safe_unterminated_frontmatter ... ok
[INFO] [stdout] test ticket::tests::test_parse_qa_doc_self_referential_safe_whitespace_delimiters ... ok
[INFO] [stdout] test ticket::tests::test_parse_ticket_preview_content_empty_qa_doc_value ... ok
[INFO] [stdout] test ticket::tests::test_parse_ticket_preview_content_empty_string ... ok
[INFO] [stdout] test ticket::tests::test_parse_ticket_preview_content_extracts_status_and_qa_doc ... ok
[INFO] [stdout] test ticket::tests::test_parse_ticket_preview_content_extracts_title ... ok
[INFO] [stdout] test ticket::tests::test_parse_ticket_preview_content_handles_empty ... ok
[INFO] [stdout] test ticket::tests::test_parse_ticket_preview_content_multiple_status_lines ... ok
[INFO] [stdout] test ticket::tests::test_parse_ticket_preview_content_only_status ... ok
[INFO] [stdout] test ticket::tests::test_parse_ticket_preview_content_status_after_line_80 ... ok
[INFO] [stdout] test ticket::tests::test_read_ticket_preview ... ok
[INFO] [stdout] test ticket::tests::test_read_ticket_preview_from_workspace ... ok
[INFO] [stdout] test ticket::tests::test_scan_active_tickets_for_task_items_groups_correctly ... ok
[INFO] [stdout] test ticket::tests::test_scan_active_tickets_for_task_items_unknown_qa_doc_goes_to_unassigned ... ok
[INFO] [stdout] test trigger_engine::tests::collect_due_entries_finds_past_entries ... ok
[INFO] [stdout] test trigger_engine::tests::compute_next_fire_rejects_invalid_schedule ... ok
[INFO] [stdout] test trigger_engine::tests::compute_next_fire_rejects_invalid_timezone ... ok
[INFO] [stdout] test trigger_engine::tests::compute_next_fire_utc ... ok
[INFO] [stdout] test trigger_engine::tests::compute_next_fire_with_timezone ... ok
[INFO] [stdout] test trigger_engine::tests::next_cron_sleep_empty_returns_1h ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_pending_clears_completed_at ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_interrupted_clears_completed_at ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_restart_pending_clears_completed_at ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_paused_clears_completed_at ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_running_clears_completed_at ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_failed_without_set_completed_preserves_completed_at ... ok
[INFO] [stdout] test test_utils::tests::test_state_cleanup ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_running_preserves_existing_started_at ... ok
[INFO] [stdout] test test_utils::tests::test_state_compiles ... ok
[INFO] [stdout] test test_utils::tests::test_state_creates_workspace ... ok
[INFO] [stdout] test task_repository::tests::state_tests::update_task_cycle_state_can_clear_init_done ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_unknown_status_does_not_clear_completed_at ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_with_completed_sets_completed_at ... ok
[INFO] [stdout] test task_repository::tests::state_tests::update_task_cycle_state_sets_cycle_and_init_done ... ok
[INFO] [stdout] test task_repository::tests::state_tests::set_task_status_running_sets_started_at_when_null ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- crd::plugins::tests::timeout_kills_entire_process_group stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'crd::plugins::tests::timeout_kills_entire_process_group' (3214) panicked at src/crd/plugins.rs:507:21:
[INFO] [stdout] assertion `left != right` failed: grandchild process 3217 should be dead
[INFO] [stdout]   left: 0
[INFO] [stdout]  right: 0
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x57f8ec6f28a8 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x57f8ec6f28a8 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x57f8ec6f28a8 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x57f8ec6f28a8 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x57f8ec70bf8a - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x57f8ec70bf8a - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x57f8ec6f7a12 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x57f8ec6f7a12 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x57f8ec6cd9c6 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x57f8ec6cd9c6 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x57f8ec6e95c9 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x57f8ebd7c2dc - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x57f8ebd7c2dc - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x57f8ec6e9842 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x57f8ec6e9842 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x57f8ec6cda82 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x57f8ec6c23c9 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x57f8ec6cea9d - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x57f8ec70c7cc - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x57f8ec70c6e3 - core[8fb95b77d25ab6c8]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:434:23
[INFO] [stdout]   20:     0x57f8ec6c1985 - core[8fb95b77d25ab6c8]::panicking::assert_failed::<i32, i32>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x57f8eb8ac24e - agent_orchestrator[cb0783b7342926d8]::crd::plugins::tests::timeout_kills_entire_process_group::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/crd/plugins.rs:507:21
[INFO] [stdout]   22:     0x57f8ebca6882 - <core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>> as core[8fb95b77d25ab6c8]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x57f8ebca699d - <core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>> as core[8fb95b77d25ab6c8]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/future/future.rs:133:9
[INFO] [stdout]   24:     0x57f8eb64efdd - <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/scheduler/current_thread/mod.rs:769:70
[INFO] [stdout]   25:     0x57f8eb64e9fb - tokio[143fff570a7899b5]::task::coop::with_budget::<core[8fb95b77d25ab6c8]::task::poll::Poll<()>, <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/task/coop/mod.rs:167:5
[INFO] [stdout]   26:     0x57f8eb64e9fb - tokio[143fff570a7899b5]::task::coop::budget::<core[8fb95b77d25ab6c8]::task::poll::Poll<()>, <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/task/coop/mod.rs:133:5
[INFO] [stdout]   27:     0x57f8eb64e9fb - <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/scheduler/current_thread/mod.rs:769:25
[INFO] [stdout]   28:     0x57f8eb5ee200 - <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::Context>::enter::<core[8fb95b77d25ab6c8]::task::poll::Poll<()>, <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/scheduler/current_thread/mod.rs:446:19
[INFO] [stdout]   29:     0x57f8eb64bdad - <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/scheduler/current_thread/mod.rs:768:44
[INFO] [stdout]   30:     0x57f8eb649964 - <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/scheduler/current_thread/mod.rs:856:68
[INFO] [stdout]   31:     0x57f8eb49605b - <tokio[143fff570a7899b5]::runtime::context::scoped::Scoped<tokio[143fff570a7899b5]::runtime::scheduler::Context>>::set::<<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}, (alloc[a7ee25936407c584]::boxed::Box<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>)>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   32:     0x57f8ebb59349 - tokio[143fff570a7899b5]::runtime::context::set_scheduler::<(alloc[a7ee25936407c584]::boxed::Box<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>), <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/context.rs:176:38
[INFO] [stdout]   33:     0x57f8ebc28b92 - <std[10d71ac2c42b111e]::thread::local::LocalKey<tokio[143fff570a7899b5]::runtime::context::Context>>::try_with::<tokio[143fff570a7899b5]::runtime::context::set_scheduler<(alloc[a7ee25936407c584]::boxed::Box<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>), <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[a7ee25936407c584]::boxed::Box<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/local.rs:462:12
[INFO] [stdout]   34:     0x57f8ebc27dbe - <std[10d71ac2c42b111e]::thread::local::LocalKey<tokio[143fff570a7899b5]::runtime::context::Context>>::with::<tokio[143fff570a7899b5]::runtime::context::set_scheduler<(alloc[a7ee25936407c584]::boxed::Box<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>), <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[a7ee25936407c584]::boxed::Box<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/local.rs:426:20
[INFO] [stdout]   35:     0x57f8ebb1de9d - tokio[143fff570a7899b5]::runtime::context::set_scheduler::<(alloc[a7ee25936407c584]::boxed::Box<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::Core>, core[8fb95b77d25ab6c8]::option::Option<()>), <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/context.rs:176:17
[INFO] [stdout]   36:     0x57f8eb619da0 - <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>::{closure#0}, core[8fb95b77d25ab6c8]::option::Option<()>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/scheduler/current_thread/mod.rs:856:27
[INFO] [stdout]   37:     0x57f8eb61aa76 - <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/scheduler/current_thread/mod.rs:756:24
[INFO] [stdout]   38:     0x57f8eb643cc0 - <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   39:     0x57f8eb7a4963 - tokio[143fff570a7899b5]::runtime::context::runtime::enter_runtime::<<tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CurrentThread>::block_on<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   40:     0x57f8eb5ecc21 - <tokio[143fff570a7899b5]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   41:     0x57f8eb705754 - <tokio[143fff570a7899b5]::runtime::runtime::Runtime>::block_on_inner::<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/runtime.rs:371:52
[INFO] [stdout]   42:     0x57f8eb705caf - <tokio[143fff570a7899b5]::runtime::runtime::Runtime>::block_on::<core[8fb95b77d25ab6c8]::pin::Pin<&mut dyn core[8fb95b77d25ab6c8]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/runtime.rs:345:18
[INFO] [stdout]   43:     0x57f8eb8e90e3 - agent_orchestrator[cb0783b7342926d8]::crd::plugins::tests::timeout_kills_entire_process_group
[INFO] [stdout]                                at /opt/rustwide/workdir/src/crd/plugins.rs:511:48
[INFO] [stdout]   44:     0x57f8eb8a9e47 - agent_orchestrator[cb0783b7342926d8]::crd::plugins::tests::timeout_kills_entire_process_group::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/crd/plugins.rs:471:50
[INFO] [stdout]   45:     0x57f8eb3c8926 - <agent_orchestrator[cb0783b7342926d8]::crd::plugins::tests::timeout_kills_entire_process_group::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x57f8ebd6f3bb - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x57f8ebd6f3bb - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   48:     0x57f8ebd7cc35 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   49:     0x57f8ebd7cc35 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   50:     0x57f8ebd7cc35 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   51:     0x57f8ebd7cc35 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   52:     0x57f8ebd7cc35 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   53:     0x57f8ebd7cc35 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   54:     0x57f8ebd7cc35 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   55:     0x57f8ebd76544 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   56:     0x57f8ebd76544 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   57:     0x57f8ebd7fcb2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   58:     0x57f8ebd7fcb2 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   59:     0x57f8ebd7fcb2 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   60:     0x57f8ebd7fcb2 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   61:     0x57f8ebd7fcb2 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   62:     0x57f8ebd7fcb2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   63:     0x57f8ebd7fcb2 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   64:     0x57f8ec6f1cbf - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   65:     0x57f8ec6f1cbf - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   66:     0x72c4f20f7aa4 - <unknown>
[INFO] [stdout]   67:     0x72c4f2184a64 - clone
[INFO] [stdout]   68:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     crd::plugins::tests::timeout_kills_entire_process_group
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1557 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 20.06s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008", kill_on_drop: false }`
[INFO] [stdout] e6f2e8671e18f64a12392c85419b8be5d71f7673609e60d5c4e902c3bcb71008
