[INFO] fetching crate tirea-extension-permission 0.5.0...
[INFO] testing tirea-extension-permission-0.5.0 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate tirea-extension-permission 0.5.0 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate tirea-extension-permission 0.5.0
[INFO] finished tweaking crates.io crate tirea-extension-permission 0.5.0
[INFO] tweaked toml for crates.io crate tirea-extension-permission 0.5.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate tirea-extension-permission 0.5.0 on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate tirea-extension-permission 0.5.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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1c16f65ea884e618dfaf9de5f1be8badba22a648b2d748502df45888a85b56fa
[INFO] running `Command { std: "docker" "start" "-a" "1c16f65ea884e618dfaf9de5f1be8badba22a648b2d748502df45888a85b56fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1c16f65ea884e618dfaf9de5f1be8badba22a648b2d748502df45888a85b56fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1c16f65ea884e618dfaf9de5f1be8badba22a648b2d748502df45888a85b56fa", kill_on_drop: false }`
[INFO] [stdout] 1c16f65ea884e618dfaf9de5f1be8badba22a648b2d748502df45888a85b56fa
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c3b3df9a4b37278d246b61001c18b6bc47e1bbfe5c27d13f1363e861f0986124
[INFO] running `Command { std: "docker" "start" "-a" "c3b3df9a4b37278d246b61001c18b6bc47e1bbfe5c27d13f1363e861f0986124", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling writeable v0.6.2
[INFO] [stderr]    Compiling litemap v0.8.1
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling borrow-or-share v0.2.4
[INFO] [stderr]    Compiling iri-string v0.7.10
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling unicode-general-category v1.1.0
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling vsimd v0.8.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling outref v0.5.2
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling fraction v0.15.3
[INFO] [stderr]    Compiling tinyvec v1.10.0
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling tirea-state-derive v0.5.0
[INFO] [stderr]    Compiling uuid-simd v0.8.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling fancy-regex v0.17.0
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling bytecount v0.6.9
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling data-encoding v2.10.0
[INFO] [stderr]    Compiling num-cmp v0.1.0
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling uuid v1.22.0
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling fluent-uri v0.4.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling email_address v0.2.9
[INFO] [stderr]    Compiling tirea-state v0.5.0
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling referencing v0.38.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling glob-match v0.2.1
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling jsonschema v0.38.1
[INFO] [stderr]    Compiling tirea-contract v0.5.0
[INFO] [stderr]    Compiling tirea-extension-permission v0.5.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 49s
[INFO] running `Command { std: "docker" "inspect" "c3b3df9a4b37278d246b61001c18b6bc47e1bbfe5c27d13f1363e861f0986124", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3b3df9a4b37278d246b61001c18b6bc47e1bbfe5c27d13f1363e861f0986124", kill_on_drop: false }`
[INFO] [stdout] c3b3df9a4b37278d246b61001c18b6bc47e1bbfe5c27d13f1363e861f0986124
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a3754a88438c8e15f6ad017fddd03931ea1ae9d9c04eb5d763cbc1abf0f56eb9
[INFO] running `Command { std: "docker" "start" "-a" "a3754a88438c8e15f6ad017fddd03931ea1ae9d9c04eb5d763cbc1abf0f56eb9", kill_on_drop: false }`
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tirea-state v0.5.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling jsonschema v0.38.1
[INFO] [stderr]    Compiling tirea-contract v0.5.0
[INFO] [stderr]    Compiling tirea-extension-permission v0.5.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 32.88s
[INFO] running `Command { std: "docker" "inspect" "a3754a88438c8e15f6ad017fddd03931ea1ae9d9c04eb5d763cbc1abf0f56eb9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a3754a88438c8e15f6ad017fddd03931ea1ae9d9c04eb5d763cbc1abf0f56eb9", kill_on_drop: false }`
[INFO] [stdout] a3754a88438c8e15f6ad017fddd03931ea1ae9d9c04eb5d763cbc1abf0f56eb9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 91a8cbcf4d4b3151841dd3343e61f3faebbb4de8117c4fa8450bcbaac0f9511c
[INFO] running `Command { std: "docker" "start" "-a" "91a8cbcf4d4b3151841dd3343e61f3faebbb4de8117c4fa8450bcbaac0f9511c", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.26s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tirea_extension_permission-5d61d1bb6f171f8c)
[INFO] [stdout] 
[INFO] [stdout] running 116 tests
[INFO] [stdout] test matcher::tests::bool_field_coercion ... ok
[INFO] [stdout] test matcher::tests::exact_tool_matches ... ok
[INFO] [stdout] test matcher::tests::empty_array_any_index_no_match ... ok
[INFO] [stdout] test matcher::tests::exact_tool_no_match ... ok
[INFO] [stdout] test matcher::tests::multi_field_and_one_fails ... ok
[INFO] [stdout] test matcher::tests::named_field_glob ... ok
[INFO] [stdout] test matcher::tests::named_field_exact ... ok
[INFO] [stdout] test matcher::tests::named_field_not_glob ... ok
[INFO] [stdout] test matcher::tests::nested_path_any_index ... ok
[INFO] [stdout] test matcher::tests::missing_field_negative_op_no_match ... ok
[INFO] [stdout] test matcher::tests::null_field_coercion ... ok
[INFO] [stdout] test matcher::tests::named_field_regex ... ok
[INFO] [stdout] test matcher::tests::nested_path_dot_notation ... ok
[INFO] [stdout] test matcher::tests::nested_path_specific_index ... ok
[INFO] [stdout] test matcher::tests::number_field_coercion ... ok
[INFO] [stdout] test matcher::tests::nested_path_wildcard_key ... ok
[INFO] [stdout] test matcher::tests::primary_glob_matches ... ok
[INFO] [stdout] test matcher::tests::primary_glob_multi_key_uses_stringify ... ok
[INFO] [stdout] test matcher::tests::multi_field_and_all_pass ... ok
[INFO] [stdout] test matcher::tests::specificity_exact_tool_higher_than_glob ... ok
[INFO] [stdout] test matcher::tests::specificity_with_args_higher_than_without ... ok
[INFO] [stdout] test matcher::tests::validate_pattern_fields_array_items ... ok
[INFO] [stdout] test matcher::tests::validate_pattern_fields_nested ... ok
[INFO] [stdout] test matcher::tests::validate_pattern_fields_missing ... ok
[INFO] [stdout] test matcher::tests::validate_pattern_fields_ok ... ok
[INFO] [stdout] test matcher::tests::validate_skips_primary_and_any ... ok
[INFO] [stdout] test matcher::tests::wildcard_match_crosses_slashes ... ok
[INFO] [stdout] test matcher::tests::wrong_field_deny_does_not_accidentally_match ... ok
[INFO] [stdout] test parser::tests::error_empty_input ... ok
[INFO] [stdout] test matcher::tests::regex_tool_matches ... ok
[INFO] [stdout] test parser::tests::parse_any_args_explicit ... ok
[INFO] [stdout] test parser::tests::error_empty_regex ... ok
[INFO] [stdout] test parser::tests::parse_complex_multi_field ... ok
[INFO] [stdout] test parser::tests::error_invalid_regex ... ok
[INFO] [stdout] test parser::tests::error_trailing_content ... ok
[INFO] [stdout] test parser::tests::parse_display_round_trip_exact_tool ... ok
[INFO] [stdout] test parser::tests::error_unmatched_paren ... ok
[INFO] [stdout] test parser::tests::parse_display_round_trip_glob_tool ... ok
[INFO] [stdout] test parser::tests::parse_display_round_trip_named_field ... ok
[INFO] [stdout] test parser::tests::parse_exact_tool_only ... ok
[INFO] [stdout] test parser::tests::parse_glob_tool_only ... ok
[INFO] [stdout] test parser::tests::parse_multi_field_and ... ok
[INFO] [stdout] test parser::tests::parse_display_round_trip_nested ... ok
[INFO] [stdout] test parser::tests::parse_named_field_not_exact ... ok
[INFO] [stdout] test parser::tests::parse_display_round_trip_primary ... ok
[INFO] [stdout] test parser::tests::parse_named_field_exact ... ok
[INFO] [stdout] test parser::tests::parse_named_field_glob ... ok
[INFO] [stdout] test parser::tests::parse_named_field_not_glob ... ok
[INFO] [stdout] test parser::tests::parse_named_field_not_regex ... ok
[INFO] [stdout] test parser::tests::parse_named_field_regex ... ok
[INFO] [stdout] test parser::tests::parse_primary_glob ... ok
[INFO] [stdout] test parser::tests::parse_primary_glob_git_status ... ok
[INFO] [stdout] test parser::tests::parse_wildcard_path_segment ... ok
[INFO] [stdout] test parser::tests::parse_nested_path_any_index ... ok
[INFO] [stdout] test parser::tests::parse_nested_path_specific_index ... ok
[INFO] [stdout] test parser::tests::serde_deserialize_named_field ... ok
[INFO] [stdout] test parser::tests::serde_deserialize_round_trip ... ok
[INFO] [stdout] test pattern::tests::display_exact_tool_any_args ... ok
[INFO] [stdout] test pattern::tests::display_multi_field ... ok
[INFO] [stdout] test pattern::tests::display_named_field_glob ... ok
[INFO] [stdout] test pattern::tests::display_glob_tool ... ok
[INFO] [stdout] test pattern::tests::display_nested_path ... ok
[INFO] [stdout] test pattern::tests::display_primary_glob ... ok
[INFO] [stdout] test pattern::tests::equality_for_regex_tool_matcher ... ok
[INFO] [stdout] test pattern::tests::serde_round_trip ... ok
[INFO] [stdout] test tests::config_layer_rules_carry_definition_source_through_merge ... ok
[INFO] [stdout] test tests::allow_beats_ask_when_both_match ... ok
[INFO] [stdout] test tests::deny_beats_allow_when_both_match ... ok
[INFO] [stdout] test tests::deny_pattern_beats_allow_pattern_same_specificity ... ok
[INFO] [stdout] test pattern::tests::display_wildcard_path_segment ... ok
[INFO] [stdout] test pattern::tests::display_primary_exact ... ok
[INFO] [stdout] test tests::pattern_rule_allows_matching_args ... ok
[INFO] [stdout] test tests::pattern_rule_denies_dangerous_commands ... ok
[INFO] [stdout] test tests::pattern_rule_glob_tool_name ... ok
[INFO] [stdout] test tests::permission_confirmation_ticket_carries_message_and_schema ... ok
[INFO] [stdout] test tests::pattern_rule_named_field_glob ... ok
[INFO] [stdout] test tests::permission_override_action_routes_to_overrides_state ... ok
[INFO] [stdout] test tests::permission_override_set_default_falls_through_to_policy ... ok
[INFO] [stdout] test tests::permission_override_reducer_marks_source_as_skill ... ok
[INFO] [stdout] test tests::permission_overrides_default_is_empty ... ok
[INFO] [stdout] test tests::permission_overrides_absent_leaves_policy_unchanged ... ok
[INFO] [stdout] test tests::permission_overrides_state_is_run_scoped ... ok
[INFO] [stdout] test tests::permission_overrides_do_not_affect_unmatched_tools ... ok
[INFO] [stdout] test matcher::tests::glob_tool_matches ... ok
[INFO] [stdout] test tests::permission_overrides_take_precedence_over_policy ... ok
[INFO] [stdout] test matcher::tests::missing_field_positive_op_no_match ... ok
[INFO] [stdout] test tests::enforce_permission_ask_without_call_id_blocks ... ok
[INFO] [stdout] test tests::permission_plugin_allow ... ok
[INFO] [stdout] test tests::mixed_old_and_new_rules_coexist ... ok
[INFO] [stdout] test tests::permission_plugin_deny ... ok
[INFO] [stdout] test tests::permission_plugin_denies_non_overridden_tool_with_deny_default ... ok
[INFO] [stdout] test parser::tests::parse_regex_tool ... ok
[INFO] [stdout] test tests::permission_plugin_ask_suspends_with_tool_like_form ... ok
[INFO] [stdout] test tests::permission_plugin_pattern_allows_matching_args ... ok
[INFO] [stdout] test tests::permission_plugin_pattern_denies_non_matching_args ... ok
[INFO] [stdout] test tests::permission_plugin_uses_run_scoped_overrides ... ok
[INFO] [stdout] test tests::permission_policy_defaults_to_ask_with_no_rules ... ok
[INFO] [stdout] test tests::permission_plugin_resume_bypasses_follow_up_prompt ... ok
[INFO] [stdout] test tests::permission_rules_from_snapshot_falls_back_to_legacy_permissions ... ok
[INFO] [stdout] test tests::permission_rules_from_snapshot_reads_legacy_policy_shape ... ok
[INFO] [stdout] test tests::permission_state_action_routes_to_policy_state ... ok
[INFO] [stdout] test tests::permission_rules_from_snapshot_reads_new_policy_rules ... ok
[INFO] [stdout] test tests::permission_update_matches_direct_state_action ... ok
[INFO] [stdout] test tests::permission_update_override_matches_direct_override_action ... ok
[INFO] [stdout] test pattern::tests::display_regex_tool ... ok
[INFO] [stdout] test tests::permission_update_override_routes_to_permission_overrides ... ok
[INFO] [stdout] test tests::remembered_permission_state_action_persists_allow ... ok
[INFO] [stdout] test tests::set_rule_action_persists_pattern ... ok
[INFO] [stdout] test tests::remembered_permission_state_action_persists_deny ... ok
[INFO] [stdout] test tests::remembered_permission_state_action_ignores_non_permission_suspensions ... ok
[INFO] [stdout] test tests::unconditionally_denied_tools_from_pattern_rules ... ok
[INFO] [stdout] test tests::unconditionally_denied_tools_from_legacy_rules ... ok
[INFO] [stdout] test tests::permission_update_policy_routes_to_permission_policy ... ok
[INFO] [stdout] test tests::resolve_permission_prefers_new_policy_over_legacy_permissions ... ok
[INFO] [stdout] test tests::tool_policy_blocks_out_of_scope ... ok
[INFO] [stdout] test tests::tool_policy_plugin_id ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 116 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stderr]    Doc-tests tirea_extension_permission
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/parser.rs - parser::parse_pattern (line 114) ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "91a8cbcf4d4b3151841dd3343e61f3faebbb4de8117c4fa8450bcbaac0f9511c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "91a8cbcf4d4b3151841dd3343e61f3faebbb4de8117c4fa8450bcbaac0f9511c", kill_on_drop: false }`
[INFO] [stdout] 91a8cbcf4d4b3151841dd3343e61f3faebbb4de8117c4fa8450bcbaac0f9511c
