[INFO] cloning repository https://github.com/kaush4l/ASKK
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kaush4l/ASKK" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkaush4l%2FASKK", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkaush4l%2FASKK'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 527b72816b33d18eabfa4add191f338e1fa0c93d
[INFO] testing kaush4l/ASKK against 1.98.0-beta.1 for beta-1.98-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkaush4l%2FASKK" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/kaush4l/ASKK
[INFO] finished tweaking git repo https://github.com/kaush4l/ASKK
[INFO] tweaked toml for git repo https://github.com/kaush4l/ASKK written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kaush4l/ASKK on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kaush4l/ASKK already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367
[INFO] running `Command { std: "docker" "start" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367", 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" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367", 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" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling rustversion v1.0.23
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling memchr v2.8.3
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.126
[INFO] [stderr]    Compiling bumpalo v3.20.3
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling slotmap v1.1.1
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling anyhow v1.0.103
[INFO] [stderr]    Compiling dioxus-core-types v0.7.9
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling konst_macro_rules v0.2.19
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling konst v0.2.20
[INFO] [stderr]    Compiling memmap2 v0.9.11
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling wasm-bindgen v0.2.126
[INFO] [stderr]    Compiling rustc-hash v2.1.3
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling longest-increasing-subsequence v0.1.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling lazy-js-bundle v0.7.9
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling zerocopy v0.8.54
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling const_format_proc_macros v0.2.34
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling bytes v1.12.1
[INFO] [stderr]    Compiling convert_case v0.8.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling const_format v0.2.36
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling keyboard-types v0.7.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling euclid v0.22.14
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling http v1.4.2
[INFO] [stderr]    Compiling dioxus-interpreter-js v0.7.9
[INFO] [stderr]    Compiling dioxus-document v0.7.9
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling sledgehammer_utils v0.3.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling dioxus-web v0.7.9
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling send_wrapper v0.6.0
[INFO] [stderr]    Compiling dioxus-config-macro v0.7.9
[INFO] [stderr]    Compiling dioxus-config-macros v0.7.9
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.126
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling macro-string v0.1.4
[INFO] [stderr]    Compiling dioxus-rsx v0.7.9
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling askk-web v0.1.0 (/opt/rustwide/workdir/crates/web)
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling warnings-macro v0.2.0
[INFO] [stderr]    Compiling const-serialize-macro v0.7.2
[INFO] [stderr]    Compiling const-serialize-macro v0.8.0-alpha.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling const-serialize v0.7.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling dioxus-core-macro v0.7.9
[INFO] [stderr]    Compiling generational-box v0.7.9
[INFO] [stderr]    Compiling pin-project v1.1.13
[INFO] [stderr]    Compiling warnings v0.2.1
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]    Compiling sledgehammer_bindgen_macro v0.6.5
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling enumset_derive v0.15.0
[INFO] [stderr]    Compiling dioxus-html-internal-macro v0.7.9
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tungstenite v0.28.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling enumset v1.1.13
[INFO] [stderr]    Compiling dioxus-stores-macro v0.7.9
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.126
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling const-serialize v0.8.0-alpha.0
[INFO] [stderr]    Compiling subsecond-types v0.7.9
[INFO] [stderr]    Compiling askk-core v0.1.0 (/opt/rustwide/workdir/crates/core)
[INFO] [stderr]    Compiling subsecond v0.7.9
[INFO] [stderr]    Compiling manganis-core v0.7.9
[INFO] [stderr]    Compiling dioxus-core v0.7.9
[INFO] [stderr]    Compiling js-sys v0.3.103
[INFO] [stderr]    Compiling dioxus-cli-config v0.7.9
[INFO] [stderr]    Compiling sledgehammer_bindgen v0.6.0
[INFO] [stderr]    Compiling dioxus-logger v0.7.9
[INFO] [stderr]    Compiling manganis-macro v0.7.9
[INFO] [stderr]    Compiling askk-inference v0.1.0 (/opt/rustwide/workdir/crates/inference)
[INFO] [stderr]    Compiling manganis v0.7.9
[INFO] [stderr]    Compiling askk-runtime v0.1.0 (/opt/rustwide/workdir/crates/runtime)
[INFO] [stderr]    Compiling dioxus-signals v0.7.9
[INFO] [stderr]    Compiling dioxus-devtools-types v0.7.9
[INFO] [stderr]    Compiling dioxus-history v0.7.9
[INFO] [stderr]    Compiling dioxus-hooks v0.7.9
[INFO] [stderr]    Compiling dioxus-devtools v0.7.9
[INFO] [stderr]    Compiling dioxus-stores v0.7.9
[INFO] [stderr]    Compiling dioxus-html v0.7.9
[INFO] [stderr]    Compiling web-sys v0.3.103
[INFO] [stderr]    Compiling wasm-bindgen-futures v0.4.76
[INFO] [stderr]    Compiling gloo-timers v0.3.0
[INFO] [stderr]    Compiling serde-wasm-bindgen v0.6.5
[INFO] [stderr]    Compiling dioxus-asset-resolver v0.7.9
[INFO] [stderr]    Compiling wasm-streams v0.4.2
[INFO] [stderr]    Compiling dioxus v0.7.9
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 23s
[INFO] running `Command { std: "docker" "inspect" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367", 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" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling askk-runtime v0.1.0 (/opt/rustwide/workdir/crates/runtime)
[INFO] [stderr]    Compiling askk-web v0.1.0 (/opt/rustwide/workdir/crates/web)
[INFO] [stderr]    Compiling askk-inference v0.1.0 (/opt/rustwide/workdir/crates/inference)
[INFO] [stderr]    Compiling askk-core v0.1.0 (/opt/rustwide/workdir/crates/core)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 33.54s
[INFO] running `Command { std: "docker" "inspect" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367", 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" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.46s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/askk_core-663f010a8ad77a68)
[INFO] [stdout] 
[INFO] [stdout] running 90 tests
[INFO] [stdout] test action::tests::per_tool_override_beats_effect_default ... ok
[INFO] [stdout] test action::tests::record_round_trips_through_serde ... ok
[INFO] [stdout] test action::tests::summary_names_overrides ... ok
[INFO] [stdout] test board::tests::backward_moves_are_always_allowed ... ok
[INFO] [stdout] test board::tests::card_serde_round_trips_and_defaults ... ok
[INFO] [stdout] test action::tests::defaults_auto_pure_confirm_mutating ... ok
[INFO] [stdout] test board::tests::done_requires_every_criterion_met ... ok
[INFO] [stdout] test board::tests::stage_names_round_trip ... ok
[INFO] [stdout] test context::tests::elides_middle_keeps_goal_and_newest_in_order ... ok
[INFO] [stdout] test context::tests::budget_is_respected_up_to_the_marker ... ok
[INFO] [stdout] test context::tests::empty_history_fits_any_budget ... ok
[INFO] [stdout] test context::tests::no_user_message_keeps_newest_with_marker ... ok
[INFO] [stdout] test context::tests::pre_goal_messages_are_elided_and_counted ... ok
[INFO] [stdout] test contract::tests::answer_as_json_array_of_calls_parses ... ok
[INFO] [stdout] test contract::tests::coercion_fills_optional_defaults_and_wraps_lists ... ok
[INFO] [stdout] test contract::tests::a_plain_answer_object_is_not_mistaken_for_a_tool_call ... ok
[INFO] [stdout] test context::tests::fits_returns_history_unchanged ... ok
[INFO] [stdout] test contract::tests::extract_json_is_quote_aware ... ok
[INFO] [stdout] test contract::tests::json_embedded_in_prose_is_found ... ok
[INFO] [stdout] test contract::tests::empty_answer_fallback_is_scaffold_stripped ... ok
[INFO] [stdout] test contract::tests::malformed_reply_missing_required_yields_repair_prompt ... ok
[INFO] [stdout] test context::tests::never_splits_a_message ... ok
[INFO] [stdout] test contract::tests::native_tool_calls_win_over_text ... ok
[INFO] [stdout] test contract::tests::multi_line_answer_parses_to_parallel_mcp_calls ... ok
[INFO] [stdout] test context::tests::zero_budget_keeps_goal_and_marker_only ... ok
[INFO] [stdout] test contract::tests::negotiator_escalation_reset_and_honored ... ok
[INFO] [stdout] test contract::tests::negotiator_starts_at_the_given_mode ... ok
[INFO] [stdout] test contract::tests::named_tool_call_shape_is_recovered ... ok
[INFO] [stdout] test contract::tests::repair_prompt_shape_hint_falls_back_to_kind_placeholders ... ok
[INFO] [stdout] test contract::tests::tool_action_with_unparseable_answer_falls_back_to_answer ... ok
[INFO] [stdout] test contract::tests::string_answer_coerced_from_dash_list_reads_as_bullets ... ok
[INFO] [stdout] test contract::tests::toon_tool_call_with_json_string_args ... ok
[INFO] [stdout] test contract::tests::truncated_json_falls_back_to_toon_recovery ... ok
[INFO] [stdout] test contracts::tests::lookup_finds_every_named_contract ... ok
[INFO] [stdout] test contracts::tests::json_example_is_valid_json ... ok
[INFO] [stdout] test contracts::tests::instructions_name_every_field ... ok
[INFO] [stdout] test contract::tests::tool_call_on_a_bare_line_without_answer_field_is_recovered ... ok
[INFO] [stdout] test contracts::tests::critique_round_trips_verdict ... ok
[INFO] [stdout] test contract::tests::strip_scaffold_drops_working_notes_keeps_answer_and_prose ... ok
[INFO] [stdout] test contract::tests::json_happy_path_parses ... ok
[INFO] [stdout] test contracts::tests::react_round_trips_json_answer_turn ... ok
[INFO] [stdout] test contracts::tests::text_mode_renders_no_example ... ok
[INFO] [stdout] test contracts::tests::toon_example_renders_once_with_curated_react_values ... ok
[INFO] [stdout] test contracts::tests::unknown_name_is_a_typed_error ... ok
[INFO] [stdout] test contracts::tests::plan_round_trips_step_list ... ok
[INFO] [stdout] test contracts::tests::react_round_trips_toon_tool_turn ... ok
[INFO] [stdout] test contracts::tests::schema_marks_required_fields ... ok
[INFO] [stdout] test element::tests::every_text_element_renders_its_section ... ok
[INFO] [stdout] test phase::tests::gate_done_is_the_only_success ... ok
[INFO] [stdout] test error::tests::display_names_the_problem ... ok
[INFO] [stdout] test phase::tests::non_gate_done_downgrades_to_next ... ok
[INFO] [stdout] test phase::tests::back_edges_are_capped ... ok
[INFO] [stdout] test element::tests::element_round_trips_through_serde ... ok
[INFO] [stdout] test element::tests::identity_renders_soul_name_role ... ok
[INFO] [stdout] test provider::tests::errors_display_actionably ... ok
[INFO] [stdout] test request::tests::request_round_trips_through_serde ... ok
[INFO] [stdout] test sheet::tests::absorb_replays_tool_calls_as_idless_mcp_objects ... ok
[INFO] [stdout] test sheet::tests::contract_instructions_render_last ... ok
[INFO] [stdout] test sheet::tests::output_mode_element_drives_contract_mode ... ok
[INFO] [stdout] test sheet::tests::render_is_pure ... ok
[INFO] [stdout] test request::tests::default_config_targets_default_profile ... ok
[INFO] [stdout] test sheet::tests::absorb_writes_state_deltas_explicitly ... ok
[INFO] [stdout] test sheet::tests::render_projects_every_element ... ok
[INFO] [stdout] test signal::tests::full_run_folds_to_expected_projection ... ok
[INFO] [stdout] test request::tests::section_kind_names_are_stable ... ok
[INFO] [stdout] test signal::tests::replay_is_deterministic ... ok
[INFO] [stdout] test signal::tests::signal_serializes_with_flat_kind_tag ... ok
[INFO] [stdout] test signal::tests::pending_action_stays_until_completed ... ok
[INFO] [stdout] test signal::tests::unknown_kind_deserializes_and_folds_as_noop ... ok
[INFO] [stdout] test signal::tests::terminal_signals_set_status ... ok
[INFO] [stdout] test sheet::tests::absorb_creates_history_element_when_missing ... ok
[INFO] [stdout] test sheet::tests::absorb_appends_history_and_emits_signals ... ok
[INFO] [stdout] test state::tests::budgets_context_fields_default_for_old_configs ... ok
[INFO] [stdout] test state::tests::budgets_final_turn_nudge ... ok
[INFO] [stdout] test state::tests::status_serializes_snake_case ... ok
[INFO] [stdout] test state::tests::snapshot_holds_named_slices ... ok
[INFO] [stdout] test state::tests::status_terminality ... ok
[INFO] [stdout] test tool::tests::call_and_dry_run_via_ctx ... ok
[INFO] [stdout] test tool::tests::last_wins_reinsert_keeps_order ... ok
[INFO] [stdout] test tool::tests::ctx_holds_named_state_slices ... ok
[INFO] [stdout] test tool::tests::membership_is_the_allowlist ... ok
[INFO] [stdout] test toon::tests::encode_round_trips_through_decode ... ok
[INFO] [stdout] test toon::tests::dash_list_and_inline_list ... ok
[INFO] [stdout] test toon::tests::garbage_yields_empty_map ... ok
[INFO] [stdout] test toon::tests::happy_path_fields ... ok
[INFO] [stdout] test toon::tests::multiline_value_joins_continuations ... ok
[INFO] [stdout] test toon::tests::tolerates_quoted_keys_and_values ... ok
[INFO] [stdout] test toon::tests::unknown_key_lines_are_continuation_text ... ok
[INFO] [stdout] test element::tests::identity_without_soul_has_no_leading_gap ... ok
[INFO] [stdout] test element::tests::structural_elements_have_no_text_section ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 90 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/askk_inference-f372397dc22ce381)
[INFO] [stdout] 
[INFO] [stdout] running 32 tests
[INFO] [stdout] test anthropic::tests::build_body_golden ... ok
[INFO] [stdout] test anthropic::tests::parse_reply_text_and_tool_use_blocks ... ok
[INFO] [stdout] test anthropic::tests::max_tokens_defaults_when_unset ... ok
[INFO] [stdout] test anthropic::tests::infer_sends_anthropic_headers_and_maps_auth ... ok
[INFO] [stdout] test anthropic::tests::parse_reply_without_content_is_malformed ... ok
[INFO] [stdout] test mock::tests::exhausted_script_is_a_typed_error_not_a_panic ... ok
[INFO] [stdout] test mock::tests::from_script_splits_blocks_and_scripts_errors ... ok
[INFO] [stdout] test mock::tests::records_every_request_for_assertions ... ok
[INFO] [stdout] test openai_compat::tests::build_body_golden ... ok
[INFO] [stdout] test mock::tests::hang_streams_one_delta_then_never_resolves ... ok
[INFO] [stdout] test openai_compat::tests::parse_reply_without_choices_is_malformed ... ok
[INFO] [stdout] test openai_compat::tests::connect_failure_hints_at_url_cors_key ... ok
[INFO] [stdout] test openai_compat::tests::json_mode_sets_response_format ... ok
[INFO] [stdout] test openai_compat::tests::stream_without_trailing_blank_line_still_lands_via_finish ... ok
[INFO] [stdout] test mock::tests::scripted_replies_pop_in_order ... ok
[INFO] [stdout] test openai_compat::tests::sse_stream_body_assembles_and_streams_deltas ... ok
[INFO] [stdout] test openai_compat::tests::infer_maps_status_errors ... ok
[INFO] [stdout] test openai_compat::tests::streamed_tool_call_deltas_assemble_by_index ... ok
[INFO] [stdout] test openai_compat::tests::parse_reply_content_tool_calls_and_usage ... ok
[INFO] [stdout] test registry::tests::unknown_profile_is_a_typed_error ... ok
[INFO] [stdout] test registry::tests::anthropic_profile_gets_the_anthropic_adapter ... ok
[INFO] [stdout] test registry::tests::parses_provider_slash_model ... ok
[INFO] [stdout] test openai_compat::tests::infer_posts_to_chat_completions_with_bearer ... ok
[INFO] [stdout] test registry::tests::constructs_and_caches_per_full_id ... ok
[INFO] [stdout] test transport::tests::assembler_handles_crlf_blank_lines ... ok
[INFO] [stdout] test transport::tests::mock_transport_pops_script_and_records_requests ... ok
[INFO] [stdout] test transport::tests::assembler_yields_events_across_chunk_boundaries ... ok
[INFO] [stdout] test transport::tests::default_send_stream_delivers_one_chunk ... ok
[INFO] [stdout] test transport::tests::sse_ignores_comments_and_handles_missing_trailing_blank ... ok
[INFO] [stdout] test transport::tests::utf8_accumulator_holds_split_multibyte_and_replaces_invalid ... ok
[INFO] [stdout] test transport::tests::response_header_lookup_is_case_insensitive ... ok
[INFO] [stdout] test transport::tests::sse_splits_events_and_joins_data_lines ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 32 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/askk_runtime-bb137bc1714a0976)
[INFO] [stdout] 
[INFO] [stdout] running 129 tests
[INFO] [stdout] test actions::gate::tests::pending_parks_only_confirmations ... ok
[INFO] [stdout] test actions::gate::tests::defaults_pure_auto_mutating_confirm ... ok
[INFO] [stdout] test actions::gate::tests::per_tool_override_beats_effect_default ... ok
[INFO] [stdout] test actions::gate::tests::resolve_approve_hands_back_the_proposal_to_execute ... ok
[INFO] [stdout] test actions::gate::tests::resolve_deny_yields_readable_denial_result ... ok
[INFO] [stdout] test actions::gate::tests::resolve_unknown_id_is_none ... ok
[INFO] [stdout] test actions::gate::tests::schema_mismatch_denies_and_lists_every_problem ... ok
[INFO] [stdout] test actions::gate::tests::valid_args_pass_optional_props_may_be_absent ... ok
[INFO] [stdout] test assemble::tests::multimodal_and_phase_frame_appear_only_when_given ... ok
[INFO] [stdout] test assemble::tests::element_order_matches_models_md ... ok
[INFO] [stdout] test assemble::tests::overrides_apply_at_assembly_no_patching_needed ... ok
[INFO] [stdout] test config::agent::tests::specialize_rejects_widening_and_unknown_skills ... ok
[INFO] [stdout] test config::env::tests::env_unions_with_explicit_tools_and_dedups ... ok
[INFO] [stdout] test config::env::tests::env_expands_presets_in_order ... ok
[INFO] [stdout] test config::env::tests::expansion_matches_handwritten_equivalent ... ok
[INFO] [stdout] test config::env::tests::unknown_preset_is_a_problem ... ok
[INFO] [stdout] test config::fields::tests::empty_enum_variants_are_an_error ... ok
[INFO] [stdout] test config::fields::tests::field_gaps_and_missing_names_are_errors ... ok
[INFO] [stdout] test config::fields::tests::no_field_keys_means_no_custom_contract ... ok
[INFO] [stdout] test config::fields::tests::field_example_round_trips_into_the_rendered_example ... ok
[INFO] [stdout] test assemble::tests::rendered_section_names_golden ... ok
[INFO] [stdout] test config::agent::tests::specialize_appends_directive_and_clamps_turns ... ok
[INFO] [stdout] test config::fields::tests::field_keys_build_the_custom_contract ... ok
[INFO] [stdout] test actions::gate::tests::gate_matrix_effect_by_policy ... ok
[INFO] [stdout] test config::fields::tests::malformed_field_keys_are_errors ... ok
[INFO] [stdout] test config::frontmatter::tests::all_problems_reported_in_one_error ... ok
[INFO] [stdout] test config::frontmatter::tests::duplicate_keys_are_an_error ... ok
[INFO] [stdout] test config::frontmatter::tests::inline_hash_without_space_is_data ... ok
[INFO] [stdout] test config::frontmatter::tests::malformed_line_reports_its_line_number ... ok
[INFO] [stdout] test config::frontmatter::tests::happy_path_parses_keys_comments_and_body ... ok
[INFO] [stdout] test config::frontmatter::tests::split_list_trims_and_drops_empties ... ok
[INFO] [stdout] test config::frontmatter::tests::missing_fence_is_an_error ... ok
[INFO] [stdout] test config::frontmatter::tests::unclosed_fence_is_an_error ... ok
[INFO] [stdout] test config::team::tests::env_presets_expand_into_team_tools ... ok
[INFO] [stdout] test config::team::tests::members_are_the_folder_mates ... ok
[INFO] [stdout] test config::team::tests::missing_id_lead_and_unknown_keys_fail_loud ... ok
[INFO] [stdout] test config::team::tests::parses_the_full_contract ... ok
[INFO] [stdout] test config::tests::display_lists_every_problem ... ok
[INFO] [stdout] test run::answer::tests::bad_on_fail_target_is_unverified_not_silent_rewind ... ok
[INFO] [stdout] test run::cancel::tests::already_set_token_resolves_immediately_and_is_sticky ... ok
[INFO] [stdout] test run::cancel::tests::set_wakes_a_parked_cancelled_future ... ok
[INFO] [stdout] test run::dispatch::tests::clamp_keeps_short_and_clips_long ... ok
[INFO] [stdout] test run::dispatch::tests::clamp_never_splits_a_utf8_scalar ... ok
[INFO] [stdout] test run::dispatch::tests::web_and_mcp_tools_are_untrusted ... ok
[INFO] [stdout] test run::host::tests::interrupt_script_fires_after_n_checks ... ok
[INFO] [stdout] test run::host::tests::records_signals_sleeps_and_ticks ... ok
[INFO] [stdout] test state::board::tests::add_slugs_orders_and_dedupes_ids ... ok
[INFO] [stdout] test state::board::tests::digest_caps_lines_with_an_elision_marker ... ok
[INFO] [stdout] test state::board::tests::digest_counts_stages_and_lists_unmet_criteria ... ok
[INFO] [stdout] test state::log::tests::corrupt_line_quarantined_and_counted ... ok
[INFO] [stdout] test state::board::tests::digest_empty_board_is_none ... ok
[INFO] [stdout] test state::log::tests::append_reopen_replay_is_deterministic ... ok
[INFO] [stdout] test state::board::tests::put_get_remove_round_trip ... ok
[INFO] [stdout] test state::log::tests::epoch_fence_terminates_zombie_runs ... ok
[INFO] [stdout] test state::log::tests::epoch_increments_per_reopen_and_segments_accumulate ... ok
[INFO] [stdout] test state::log::tests::seq_monotonic_across_reopen ... ok
[INFO] [stdout] test state::log::tests::stamps_come_from_injected_clock_and_writer ... ok
[INFO] [stdout] test state::memory::tests::append_accumulates_in_order ... ok
[INFO] [stdout] test state::memory::tests::append_drops_oldest_beyond_bound ... ok
[INFO] [stdout] test state::memory::tests::load_save_roundtrip_per_agent ... ok
[INFO] [stdout] test state::memory::tests::save_applies_the_bound_too ... ok
[INFO] [stdout] test state::session::tests::active_agent_roundtrip ... ok
[INFO] [stdout] test state::session::tests::prefs_roundtrip ... ok
[INFO] [stdout] test state::log::tests::broken_store_degrades_but_signals_keep_flowing ... ok
[INFO] [stdout] test state::session::tests::provider_profiles_roundtrip_and_list ... ok
[INFO] [stdout] test state::store::tests::blob_roundtrip_and_list ... ok
[INFO] [stdout] test state::store::tests::kv_list_prefix_sorted ... ok
[INFO] [stdout] test state::store::tests::kv_roundtrip_and_remove ... ok
[INFO] [stdout] test state::store::tests::store_error_displays_message ... ok
[INFO] [stdout] test tools::artifact::tests::dry_run_previews_and_writes_nothing ... ok
[INFO] [stdout] test tools::artifact::tests::publish_html_round_trips_as_json_blob ... ok
[INFO] [stdout] test tools::artifact::tests::published_slug_parses_only_the_ok_shape ... ok
[INFO] [stdout] test tools::artifact::tests::slug_collisions_get_numeric_suffixes ... ok
[INFO] [stdout] test tools::artifact::tests::bad_args_are_readable_errors ... ok
[INFO] [stdout] test tools::artifact::tests::slug_falls_back_when_title_has_no_alphanumerics ... ok
[INFO] [stdout] test tools::artifact::tests::url_kind_stores_url_and_requires_scheme ... ok
[INFO] [stdout] test tools::builtin::tests::all_builtins_register_and_resolve ... ok
[INFO] [stdout] test tools::builtin::tests::now_uses_the_injected_clock ... ok
[INFO] [stdout] test tools::builtin::tests::calc_covers_all_four_ops ... ok
[INFO] [stdout] test tools::builtin::tests::calc_division_by_zero_is_ok_false ... ok
[INFO] [stdout] test tools::builtin::tests::calc_rejects_bad_args_without_panicking ... ok
[INFO] [stdout] test tools::builtin::tests::echo_is_opt_in_not_a_production_builtin ... ok
[INFO] [stdout] test tools::builtin::tests::echo_repeats_and_rejects_missing_text ... ok
[INFO] [stdout] test tools::builtin::tests::state_note_appends_to_the_notes_slice ... ok
[INFO] [stdout] test tools::builtin::tests::state_note_dry_run_describes_and_touches_nothing ... ok
[INFO] [stdout] test tools::knowledge::tests::dry_run_touches_nothing ... ok
[INFO] [stdout] test tools::knowledge::tests::ids_are_validated_and_log_is_reserved ... ok
[INFO] [stdout] test tools::knowledge::tests::iso_date_converts_unix_ms ... ok
[INFO] [stdout] test tools::knowledge::tests::list_and_search_surface_concepts ... ok
[INFO] [stdout] test tools::knowledge::tests::log_groups_by_date_newest_first_and_tracks_verbs ... ok
[INFO] [stdout] test tools::memory_tools::tests::invalid_inputs_fail_readably ... ok
[INFO] [stdout] test tools::memory_tools::tests::forget_removes_and_misses_readably ... ok
[INFO] [stdout] test tools::memory_tools::tests::recall_is_bounded_and_empty_store_reads_readably ... ok
[INFO] [stdout] test tools::memory_tools::tests::dry_run_touches_nothing ... ok
[INFO] [stdout] test tools::memory_tools::tests::same_slug_overwrites ... ok
[INFO] [stdout] test tools::memory_tools::tests::recall_substring_matches_slugs_and_text_case_insensitively ... ok
[INFO] [stdout] test tools::news::tests::gdelt_rate_limit_text_is_a_readable_miss ... ok
[INFO] [stdout] test tools::memory_tools::tests::remember_recall_round_trip_newest_first ... ok
[INFO] [stdout] test tools::news::tests::urls_encode_and_sort_newest_first ... ok
[INFO] [stdout] test tools::knowledge::tests::type_is_the_one_required_field ... ok
[INFO] [stdout] test tools::memory_tools::tests::auto_slug_comes_from_the_first_words ... ok
[INFO] [stdout] test tools::knowledge::tests::write_read_round_trip_is_conformant_okf ... ok
[INFO] [stdout] test tools::news::tests::wikinews_hits_win_and_skip_gdelt ... ok
[INFO] [stdout] test tools::news::tests::wikinews_miss_falls_back_to_gdelt ... ok
[INFO] [stdout] test tools::registry::tests::empty_allowlist_builds_empty_set ... ok
[INFO] [stdout] test tools::registry::tests::allowlist_subset_in_allow_order ... ok
[INFO] [stdout] test tools::registry::tests::duplicate_name_is_an_error ... ok
[INFO] [stdout] test tools::registry::tests::names_and_get_expose_the_registry ... ok
[INFO] [stdout] test tools::registry::tests::rust_tool_exposes_spec_and_calls_closure ... ok
[INFO] [stdout] test tools::registry::tests::unknown_names_error_lists_all_of_them ... ok
[INFO] [stdout] test tools::search::tests::all_three_engines_failing_names_each_one ... ok
[INFO] [stdout] test tools::search::tests::both_sources_failing_is_ok_false_with_both_hints ... ok
[INFO] [stdout] test tools::search::tests::blocked_searxng_falls_through_to_the_chain ... ok
[INFO] [stdout] test tools::search::tests::ddg_answer_and_abstract_win ... ok
[INFO] [stdout] test tools::search::tests::ddg_hit_skips_the_fallback ... ok
[INFO] [stdout] test tools::search::tests::empty_instant_answer_falls_back_to_wikipedia ... ok
[INFO] [stdout] test tools::search::tests::wiki_hits_strip_markup_and_link ... ok
[INFO] [stdout] test tools::search::tests::urls_encode_the_query ... ok
[INFO] [stdout] test tools::search::tests::missing_query_is_a_readable_error ... ok
[INFO] [stdout] test tools::shell::tests::empty_output_reports_no_output ... ok
[INFO] [stdout] test tools::shell::tests::missing_command_is_an_error_not_a_call ... ok
[INFO] [stdout] test tools::shell::tests::runs_command_and_returns_output ... ok
[INFO] [stdout] test tools::workspace::tests::edit_passes_find_replace_via_env_not_shell ... ok
[INFO] [stdout] test tools::search::tests::searxng_is_primary_when_configured ... ok
[INFO] [stdout] test tools::workspace::tests::missing_required_fields_error ... ok
[INFO] [stdout] test tools::workspace::tests::read_and_list_quote_the_path ... ok
[INFO] [stdout] test tools::workspace::tests::write_uses_a_quoted_heredoc_with_a_safe_delimiter ... ok
[INFO] [stdout] test tools::workspace::tests::write_bumps_delimiter_when_content_collides ... ok
[INFO] [stdout] test assemble::tests::unvalidated_contract_panics_loudly - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 129 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/acceptance.rs (/opt/rustwide/target/debug/deps/acceptance-17d2f719d2429ac6)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test a1_fast_lane_js_eval ... ok
[INFO] [stdout] test a5_foundation_replay_dedup_fence ... ok
[INFO] [stdout] test rows_md_test_names_exist ... ok
[INFO] [stdout] test a3_shell_files_grep ... ok
[INFO] [stdout] test a7_budget_exhaustion_sibling_isolated ... ok
[INFO] [stdout] test a2_write_run_fix_rerun ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test add_list_move_check_full_lifecycle ... ok
[INFO] [stdout] test readable_misses_and_dry_run ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/board_tools.rs (/opt/rustwide/target/debug/deps/board_tools-eb62e195db1b735a)
[INFO] [stderr]      Running tests/config_agents.rs (/opt/rustwide/target/debug/deps/config_agents-1250e82dc7f04177)
[INFO] [stdout] 
[INFO] [stdout] running 17 tests
[INFO] [stdout] test agent_md::bad_values_are_collected_into_one_error ... ok
[INFO] [stdout] test agent_md::budget_keys_parse_and_apply_over_session_defaults ... ok
[INFO] [stdout] test agent_md::fan_out_and_parts_land_on_the_phase ... ok
[INFO] [stdout] test agent_md::load_soul_trims_plain_markdown ... ok
[INFO] [stdout] test agent_md::malformed_phase_keys_are_errors ... ok
[INFO] [stdout] test agent_md::max_turns_feeds_the_loop_clamp ... ok
[INFO] [stdout] test agent_md::env_presets_expand_and_union_with_tools ... ok
[INFO] [stdout] test agent_md::max_turns_rejects_one_shot_and_bad_values ... ok
[INFO] [stdout] test agent_md::phase_gaps_and_missing_names_are_errors ... ok
[INFO] [stdout] test agent_md::minimal_agent_gets_defaults ... ok
[INFO] [stdout] test agent_md::phase_skills_narrow_the_skill_set ... ok
[INFO] [stdout] test agent_md::models_md_example_parses_verbatim ... ok
[INFO] [stdout] test agent_md::phase_tools_narrow_the_allowlist ... ok
[INFO] [stdout] test agent_md::skill_config_parses_and_projects ... ok
[INFO] [stdout] test agent_md::unknown_keys_fail_loud_with_line_numbers ... ok
[INFO] [stdout] test agent_md::unknown_env_preset_joins_the_other_problems ... ok
[INFO] [stdout] test every_agent_file_parses_and_validates ... ok
[INFO] [stderr]      Running tests/config_validate.rs (/opt/rustwide/target/debug/deps/config_validate-e1ae1a69ba731f68)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test team_tests::disabled_lead_is_rejected ... ok
[INFO] [stdout] test budget_tests::budget_bad_values_land_in_one_error ... ok
[INFO] [stdout] test budget_tests::budget_non_numeric_max_turns_is_a_problem ... ok
[INFO] [stdout] test budget_tests::budget_depth_boundaries ... ok
[INFO] [stdout] test tests::custom_contract_on_gate_needs_verdict ... ok
[INFO] [stdout] test team_tests::valid_team_passes ... ok
[INFO] [stdout] test tests::duplicate_ids_and_bad_slugs_are_errors ... ok
[INFO] [stdout] test tests::custom_contract_with_tools_needs_action_and_answer ... ok
[INFO] [stdout] test team_tests::team_problems_all_land_in_one_error ... ok
[INFO] [stdout] test tests::fan_out_refs_are_checked ... ok
[INFO] [stdout] test team_tests::outsider_listing_a_member_is_rejected_insiders_pass ... ok
[INFO] [stdout] test tests::custom_contracts_do_not_leak_across_agents ... ok
[INFO] [stdout] test tests::phase_skills_must_subset_agent_skills ... ok
[INFO] [stdout] test tests::on_fail_must_target_an_earlier_phase ... ok
[INFO] [stdout] test tests::phase_tools_must_subset_agent_tools ... ok
[INFO] [stdout] test tests::unknown_contract_and_provider_are_errors ... ok
[INFO] [stdout] test tests::two_gate_phases_are_rejected ... ok
[INFO] [stdout] test tests::valid_set_passes ... ok
[INFO] [stdout] test tests::valid_custom_contract_passes ... ok
[INFO] [stderr]      Running tests/failure_modes.rs (/opt/rustwide/target/debug/deps/failure_modes-46d78a333f1a6162)
[INFO] [stdout] test tests::every_unknown_ref_lands_in_one_error ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test cancel_mid_drive_lands_interrupted_terminal ... ok
[INFO] [stdout] test corrupt_log_line_quarantined_at_session_replay ... ok
[INFO] [stdout] test concurrent_confirmations_resolve_independently ... ok
[INFO] [stdout] test multimodal_parts_ignored_by_provider_still_completes ... ok
[INFO] [stdout] test provider_timeout_retries_then_failed_terminal ... ok
[INFO] [stdout] test interleaved_runs_share_one_log_seqs_monotonic_folds_isolated ... ok
[INFO] [stdout] test fall_off_end_without_gate_is_unverified ... ok
[INFO] [stdout] test invalid_args_denied_before_execution ... ok
[INFO] [stdout] test rate_limited_honors_retry_after_before_retry ... ok
[INFO] [stdout] test tool_written_new_slice_emits_state_written ... ok
[INFO] [stdout] test concurrent_drives_keep_hosts_isolated_per_run ... ok
[INFO] [stdout] test tool_failure_becomes_observation_run_continues ... ok
[INFO] [stdout] test tool_output_is_observation_never_system_text ... ok
[INFO] [stdout] test phase_loop_clamp_exhaustion_is_unverified ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/mcp_tools.rs (/opt/rustwide/target/debug/deps/mcp_tools-711c65a95a7668e3)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test dead_server_is_a_problem_string_not_a_boot_failure ... ok
[INFO] [stdout] test remote_tools_register_with_prefixed_names_and_effects ... ok
[INFO] [stdout] test call_round_trip_joins_text_content ... ok
[INFO] [stdout] test one_dead_server_does_not_block_the_next ... ok
[INFO] [stdout] test tool_error_content_and_rpc_errors_are_readable ... ok
[INFO] [stdout] test server_list_parses_lines_and_skips_blanks ... ok
[INFO] [stdout] test session_id_from_initialize_rides_every_later_request ... ok
[INFO] [stdout] test sse_wrapped_responses_parse_like_plain_json ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/structure.rs (/opt/rustwide/target/debug/deps/structure-28bce94c3fda5d29)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test map_md_paths_exist ... ok
[INFO] [stdout] test every_agents_markdown_parses ... ok
[INFO] [stderr]      Running tests/workflows.rs (/opt/rustwide/target/debug/deps/workflows-b1457420b183af63)
[INFO] [stdout] test file_size_cap_520_lines ... ok
[INFO] [stdout] test import_direction_is_one_way ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 53 tests
[INFO] [stdout] test action_deny_then_model_adapts ... ok
[INFO] [stdout] test board_artifact_block_refreshes_every_turn ... ok
[INFO] [stdout] test budget_guard_holds_inside_the_repair_loop ... ok
[INFO] [stdout] test artifact_publish_lands_in_projection ... ok
[INFO] [stdout] test cancel_aborts_an_in_flight_llm_call ... ok
[INFO] [stdout] test action_confirm_then_approve ... ok
[INFO] [stdout] test board_digest_skips_boardless_agents_and_empty_boards ... ok
[INFO] [stdout] test budget_exhaustion_with_final_turn_nudge ... ok
[INFO] [stdout] test declared_fan_out_runs_workers_from_plan_steps ... ok
[INFO] [stdout] test delegation_happy_path ... ok
[INFO] [stdout] test delegation_depth_cap_rejects ... ok
[INFO] [stdout] test board_card_lifecycle_through_the_loop ... ok
[INFO] [stdout] test depth_cap_holds_through_team_boundary ... ok
[INFO] [stdout] test fan_out_without_items_degrades_to_observation ... ok
[INFO] [stdout] test handoff_outside_allowlist_is_refused_and_run_continues ... ok
[INFO] [stdout] test handoff_transfers_the_run ... ok
[INFO] [stdout] test context_window_bounds_later_request_history ... ok
[INFO] [stdout] test budget_override_composes_with_session_fields ... ok
[INFO] [stdout] test interrupt_mid_run ... ok
[INFO] [stdout] test happy_answer ... ok
[INFO] [stdout] test malformed_reply_repairs_then_succeeds ... ok
[INFO] [stdout] test declared_max_turns_extends_past_session_default ... ok
[INFO] [stdout] test one_shot_phase_exhausts_after_its_allowance ... ok
[INFO] [stdout] test oversized_observation_arrives_clipped ... ok
[INFO] [stdout] test phase_skill_filter_narrows_the_sheet ... ok
[INFO] [stdout] test parallel_calls_fan_out_two_delegates ... ok
[INFO] [stdout] test custom_contract_drives_tool_call_and_answer ... ok
[INFO] [stdout] test gate_phase_fail_revise_pass ... ok
[INFO] [stdout] test published_artifact_body_is_a_live_block_on_the_next_call ... ok
[INFO] [stdout] test replay_fold_matches_final_projection ... ok
[INFO] [stdout] test skill_read_unknown_id_names_the_valid_ids ... ok
[INFO] [stdout] test skill_read_returns_the_full_body ... ok
[INFO] [stdout] test skill_list_indexes_every_loaded_skill ... ok
[INFO] [stdout] test malformed_thrice_escalates_format_and_falls_back_to_raw ... ok
[INFO] [stdout] test spawn_agent_rejects_tools_outside_base ... ok
[INFO] [stdout] test spawn_agent_rejects_unknown_skill ... ok
[INFO] [stdout] test spawn_agent_depth_cap_rejects ... ok
[INFO] [stdout] test spawn_agent_specializes_and_answers ... ok
[INFO] [stdout] test declared_depth_budget_allows_deeper_chain ... ok
[INFO] [stdout] test spawn_agent_clamps_child_to_caller_allowlist ... ok
[INFO] [stdout] test stall_guard_ignores_same_tool_with_different_args ... ok
[INFO] [stdout] test spawned_loop_cancels_cleanly ... ok
[INFO] [stdout] test stall_guard_refuses_third_identical_mutating_call ... ok
[INFO] [stdout] test spawn_check_steer_wait_collects_parallel_loops ... ok
[INFO] [stdout] test stall_guard_resets_on_a_different_mutating_call ... ok
[INFO] [stdout] test tool_loop_echo_then_answer ... ok
[INFO] [stdout] test unknown_tool_gets_structured_rejection ... ok
[INFO] [stdout] test loop_exhaustion_with_on_fail_routes_back ... ok
[INFO] [stdout] test tester_delegate_records_verdicts ... ok
[INFO] [stdout] test team_toolset_is_the_ceiling_inside_the_boundary ... ok
[INFO] [stdout] test team_boundary_resets_authority_and_injects_principles ... ok
[INFO] [stdout] test stall_guard_exempts_pure_tools ... ok
[INFO] [stdout] test kanban_bounce_until_criteria_met ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 53 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/askk_web-847fd97f3bd2ef9b)
[INFO] [stdout] 
[INFO] [stdout] running 46 tests
[INFO] [stdout] test host::artifacts::tests::parse_reads_the_contract_fields ... ok
[INFO] [stdout] test host::artifacts::tests::parse_url_kind_takes_the_url_field ... ok
[INFO] [stdout] test host::artifacts::tests::collect_filters_prefix_and_sorts_newest_first ... ok
[INFO] [stdout] test host::artifacts::tests::parse_rejects_non_object_bytes ... ok
[INFO] [stdout] test host::boot::tests::cancel_lands_the_interrupted_terminal_on_a_parked_run ... ok
[INFO] [stdout] test host::boot::tests::board_cards_reads_the_persistent_board_in_order ... ok
[INFO] [stdout] test host::artifacts::tests::parse_degrades_missing_and_unknown_fields ... ok
[INFO] [stdout] test host::boot::tests::draft_accumulates_deltas_and_clears_on_response ... ok
[INFO] [stdout] test host::boot::tests::prefs_round_trip_through_the_session_store ... ok
[INFO] [stdout] test host::boot::tests::baked_agents_surface_as_cards ... ok
[INFO] [stdout] test host::boot::tests::mcp_servers_cell_and_pref_round_trip ... ok
[INFO] [stdout] test host::boot::tests::mid_drive_projection_folds_the_live_buffer ... ok
[INFO] [stdout] test host::bus::tests::envelope_round_trips_and_drops_echoes ... ok
[INFO] [stdout] test host::bus::tests::malformed_envelopes_are_ignored ... ok
[INFO] [stdout] test host::local_llm::tests::local_profile_detection_and_model_id ... ok
[INFO] [stdout] test host::local_llm::tests::messages_render_system_history_then_user_input ... ok
[INFO] [stdout] test host::profile::tests::profile_set_upsert_activate_remove ... ok
[INFO] [stdout] test host::profile::tests::profile_round_trips_through_json ... ok
[INFO] [stdout] test host::opfs::tests::name_encoding_round_trips_and_preserves_prefixes ... ok
[INFO] [stdout] test host::profile::tests::unknown_active_falls_back_to_first_profile ... ok
[INFO] [stdout] test host::speech::tests::speech_config_round_trips_and_defaults_empty ... ok
[INFO] [stdout] test ui::artifacts::tests::age_label_buckets_and_hides ... ok
[INFO] [stdout] test ui::agents::tests::header_and_tool_rows_parse_from_the_fold ... ok
[INFO] [stdout] test host::boot::tests::runs_lists_submitted_and_buffer_observed_runs_newest_first ... ok
[INFO] [stdout] test ui::chat::tests::items_keep_order_and_role_classes_across_runs ... ok
[INFO] [stdout] test ui::dashboard::tests::draft_tail_keeps_the_end ... ok
[INFO] [stdout] test ui::dashboard::tests::run_phase_names_the_latest_activity ... ok
[INFO] [stdout] test ui::dashboard::tests::tile_name_falls_back_to_the_run_id ... ok
[INFO] [stdout] test ui::dashboard::tests::totals_and_artifacts_fold_across_runs ... ok
[INFO] [stdout] test ui::manifest::tests::from_key_ignores_case_for_deep_links ... ok
[INFO] [stdout] test ui::manifest::tests::keys_round_trip_and_unknown_is_none ... ok
[INFO] [stdout] test ui::markdown::tests::blocks_fold_paragraphs_lists_and_fences ... ok
[INFO] [stdout] test host::boot::tests::unknown_agent_is_a_string_error_not_a_panic ... ok
[INFO] [stdout] test ui::board::tests::progress_counts_met_over_total ... ok
[INFO] [stdout] test ui::board::tests::run_chip_only_while_work_is_active ... ok
[INFO] [stdout] test ui::markdown::tests::spans_leave_unclosed_markers_literal ... ok
[INFO] [stdout] test ui::markdown::tests::spans_split_bold_code_and_links ... ok
[INFO] [stdout] test ui::vm::tests::glue_covers_every_image_id ... ok
[INFO] [stdout] test ui::markdown::tests::classify_names_every_line_shape ... ok
[INFO] [stdout] test host::profile::tests::seeded_profile_is_the_smoke_model ... ok
[INFO] [stdout] test ui::vm::tests::glue_placeholders_all_replaced ... ok
[INFO] [stdout] test host::local_llm::tests::worker_messages_parse ... ok
[INFO] [stdout] test host::boot::tests::profiles_save_activate_delete_and_persist ... ok
[INFO] [stdout] test ui::markdown::tests::blocks_keep_an_unclosed_fence_visible ... ok
[INFO] [stdout] test host::boot::tests::scripted_happy_path_answers_through_the_facade ... ok
[INFO] [stdout] test ui::vm::tests::state_label_covers_the_lifecycle ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 46 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests askk_core
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests askk_inference
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests askk_runtime
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367", kill_on_drop: false }`
[INFO] [stdout] 6a13421d6ada09f5676b022e248c1318e63e506397192657bb5a1a950eb0d367
