=== test-modern-but on hetzner-linux slot 0 at d15726bc38c346082f5ea850d9c7999e6bae48b7 === + d15726bc38 Merge pull request #16862 from gitbutlerapp/ci-critical-path cargo test -p but --no-default-features  Blocking waiting for file lock on package cache  Blocking waiting for file lock on package cache  Blocking waiting for file lock on package cache  Blocking waiting for file lock on package cache  Compiling but-rebase v0.0.0 (/home/ci/taste/slot-0/lanes/test-modern-but/crates/but-rebase)  Compiling but-workspace v0.0.0 (/home/ci/taste/slot-0/lanes/test-modern-but/crates/but-workspace)  Compiling but-tools v0.0.0 (/home/ci/taste/slot-0/lanes/test-modern-but/crates/but-tools)  Compiling but-agentlog v0.0.0 (/home/ci/taste/slot-0/lanes/test-modern-but/crates/but-agentlog)  Compiling but-llm v0.1.0 (/home/ci/taste/slot-0/lanes/test-modern-but/crates/but-llm)  Compiling but-api v0.0.0 (/home/ci/taste/slot-0/lanes/test-modern-but/crates/but-api)  Compiling but-transaction v0.0.0 (/home/ci/taste/slot-0/lanes/test-modern-but/crates/but-transaction)  Compiling but v0.0.0 (/home/ci/taste/slot-0/lanes/test-modern-but/crates/but)  Finished `test` profile [unoptimized + debuginfo] target(s) in 33.74s  Running unittests src/lib.rs (target/debug/deps/but-df70315babf3187b) running 306 tests test alias::tests::default_alias_stf ... ok test args::tests::agentlog::publish_parses_explicit_review_target ... ok test args::tests::branch_update::parses_branch_update_interactive ... ok test args::tests::branch_update::parses_branch_update_interactive_with_other_flags ... ok test args::tests::clap ... ok test args::tests::agent_setup::parses_bare_agent_as_no_subcommand ... ok test args::tests::config_feature::rejects_feature_status_without_flag ... ok test args::tests::config_feature::parses_feature_list ... ok test args::tests::config_feature::rejects_removed_single_branch_flag ... ok test args::tests::find_subcommand::skips_root_options_including_short_clusters ... ok test args::tests::branch_update::parses_branch_update_verbose_short_flag ... ok test args::tests::config_target::parses_push_remote_for_fork ... ok test args::tests::config_ai::interactive_defaults_to_global_scope ... ok test args::tests::config_target::target_push_remote_still_requires_target_branch ... ok test args::tests::config_target::parses_standalone_push_remote ... ok test args::tests::agentlog::publish_parses_branch_shorthand ... ok test args::tests::agent_setup::parses_agent_setup_print ... ok test args::tests::branch_update::parses_branch_update_with_defaults ... ok test args::tests::branch_update::parses_branch_update_smart_squash_strategy ... ok test args::tests::branch_update::parses_branch_update_pull_rebase_strategy ... ok test args::tests::agent_setup::parses_agent_setup ... ok test args::tests::help_parses_cli_ids_topic ... ok test args::tests::help_parses_without_topic ... ok test args::tests::help_rejects_unknown_topic ... ok test command::agent::cleanup::tests::backs_off_when_the_file_changed_after_the_read ... ok test command::agent::cleanup::tests::preserves_crlf_line_endings ... ok test command::agent::tests::agent_in_use_detects_home_config_dir ... ok test command::agent::tests::agent_in_use_detects_repo_marker_but_ignores_shared_agents_md ... ok test command::agent::cleanup::tests::preserves_file_permissions ... ok test command::agent::tests::amp_installs_where_it_loads_skills_and_reads_agents_md ... ok test command::agent::tests::agent_in_use_detects_existing_skill_install ... ok test command::agent::tests::deepseek_harness_uses_shared_agent_skills_target ... ok test args::tests::mcp_command_is_hidden_but_still_parses ... ok test command::agent::cleanup::tests::leaves_current_bullet_alone ... ok test command::agent::cleanup::tests::leaves_retired_bullet_outside_managed_block_alone ... ok test command::agent::cleanup::tests::rewrites_retired_bullet_inside_managed_block ... ok test command::agent::cleanup::tests::rewrites_symlink_target_and_keeps_the_link ... ok test args::tests::config_ai::local_scope_flag_parses_before_provider ... ok test command::agent::cleanup::tests::cleanup_files_rewrites_and_reports_only_changed_files ... ok test args::tests::config_ai::openai_non_interactive_parses_provider_flags ... ok test args::tests::config_ai::show_subcommand_parses ... ok test command::agent::tests::default_policy_omits_land_section_until_selected ... ok test command::agent::tests::devin_uses_shared_agent_skills_target ... ok test command::agent::tests::display_path_strips_leading_dot_component ... ok test command::agent::tests::every_agent_resolves_to_a_skill_path_for_both_scopes ... ok test command::agent::tests::generated_default_policy_includes_baseline_and_default_preferences ... ok test command::agent::tests::dirac_uses_shared_agent_skills_target ... ok test command::agent::tests::generated_policy_includes_selected_custom_values ... ok test command::agent::tests::display_path_collapses_home_to_tilde ... ok test command::agent::tests::generated_policy_expands_selected_tuning_recipes ... ok test command::agent::tests::instruction_writes_global_emits_print_note_for_agents_without_global_target ... ok test args::tests::status_after_is_global_and_shown_in_help ... ok test command::agent::tests::repo_scoped_planning_requires_a_repository ... ok test args::tests::output_format_agent_is_text_without_human_ui ... ok test command::agent::tests::instruction_writes_group_shared_agents_by_file ... ok test command::agent::tests::repo_display_name_resolves_dot_to_current_folder_name ... ok test command::agent::tests::scope_options_lead_with_global_and_name_repo ... ok test command::agent::tests::skill_installs_expand_both_scopes ... ok test command::agent::tests::skill_installs_copilot_repo_and_global_diverge ... ok test command::agent::tests::poolside_skill_paths_follow_scope ... ok test command::agent::tests::upsert_managed_block_appends_without_touching_existing_text ... ok test command::agent::tests::publish_phrase_opens_pull_request_without_push_to_target ... ok test command::agent::tests::push_to_target_is_the_only_repo_local_option ... ok test command::agent::tests::push_to_target_supersedes_publish_phrase_pull_requests ... ok test command::agent::tests::remove_managed_blocks_keeps_surrounding_text_and_line_endings ... ok test command::agent::tests::upsert_managed_block_dedups_multiple_blocks ... ok test command::agent::tests::upsert_managed_block_file_is_idempotent_and_creates_nested_dirs ... ok test command::agent::tests::workflow_row_keeps_non_repo_local_options_enabled_in_every_scope ... ok test command::agent::tests::upsert_managed_block_file_preserves_preexisting_content ... ok test command::agent::tests::upsert_managed_block_ignores_marker_inside_fenced_code ... ok test command::agent::tests::upsert_managed_block_ignores_marker_quoted_in_prose ... ok test command::agent::tests::upsert_managed_block_rejects_partial_block ... ok test command::agent::tests::upsert_managed_block_rejects_reversed_markers ... ok test command::agent::tests::upsert_managed_block_replaces_crlf_block_without_mixed_endings ... ok test command::agent::tests::workflow_row_disables_repo_local_option_outside_single_repo ... ok test command::branch::update::tests::commit_row_leaves_unconflicted_commits_unmarked ... ok test command::agent::tests::upsert_managed_block_replaces_existing_block_without_duplication ... ok test command::branch::update::tests::commit_row_marks_conflicted_commits ... ok test command::mcp::tests::resources_use_the_mcp_app_contract ... ok test command::mcp::tests::review_card_maps_forge_review_state_and_actions ... ok test command::mcp::tests::review_ci_aggregates_checks_with_failure_precedence ... ok test command::alias::tests::alias_scopes_preserve_all_sources_and_precedence ... ok test command::agent::tests::skill_installs_global_only_uses_home_paths ... ok test command::skill::freshness::tests::agent_global_skill_dirs_match_agent_loaders ... ok test command::mcp::tests::review_tools_have_separate_model_and_app_visibility ... ok test command::mcp::tests::workspace_detail_tools_are_read_only_and_app_only ... ok test command::help::tests::test_print_grouped ... ok test command::skill::freshness::tests::kiro_and_junie_skill_dirs_are_available_locally ... ok test command::agent::tests::upsert_managed_block_appends_with_crlf_separator ... ok test command::mcp::tests::workspace_tool_links_to_mcp_app_resource ... ok test command::skill::freshness::tests::update_failure_notice_surfaces_the_error ... ok test command::skill::tests::determine_install_scope_resolution_explicit_global_is_fixed_global ... ok test command::skill::freshness::tests::agent_skill_installations_ignore_local_without_workdir ... ok test command::skill::freshness::tests::not_installed_notice_explains_the_action ... ok test command::agent::cleanup::tests::skips_oversized_and_binary_files ... ok test command::skill::freshness::tests::local_agent_skills_installation_counts_for_agents_that_load_it ... ok test command::skill::tests::determine_install_scope_resolution_no_repo_context_is_fixed_global ... ok test command::skill::tests::determine_install_scope_resolution_repo_context_prompts_user ... ok test command::skill::tests::expand_tilde_handles_home_only ... ok test command::skill::tests::expand_tilde_handles_unix_path ... ok test command::skill::tests::expand_tilde_handles_windows_path ... ok test command::skill::tests::expand_tilde_returns_none_for_non_tilde_path ... ok test command::agent::tests::repository_agent_setup_does_not_prepare_the_repository ... ok test command::skill::tests::extract_installed_version_handles_empty_version ... ok test command::skill::tests::extract_installed_version_handles_different_order ... ok test command::skill::tests::extract_installed_version_handles_quoted_version ... ok test command::skill::tests::extract_installed_version_handles_version_with_comment ... ok test command::skill::tests::extract_installed_version_parses_frontmatter ... ok test command::skill::tests::extract_installed_version_returns_none_for_missing_version ... ok test command::agent::tests::intro_explains_wizard_flow_before_first_prompt ... ok test command::skill::tests::extract_installed_version_returns_none_for_no_frontmatter ... ok test command::skill::tests::extract_installed_version_returns_none_for_nonexistent_file ... ok test command::skill::tests::extract_installed_version_stops_at_frontmatter_end ... ok test command::skill::tests::extract_installed_version_trims_whitespace ... ok test command::skill::tests::find_all_installations_discovers_skills_in_temp_dir ... ok test command::skill::tests::find_format_installations_accepts_any_folder_name ... ok test command::skill::tests::embedded_files_are_not_empty ... ok test command::skill::tests::frontmatter_close_ignores_a_rule_in_a_document_without_frontmatter ... ok test command::skill::tests::frontmatter_value_handles_crlf_line_endings ... ok test command::skill::tests::get_base_dir_global_returns_home ... ok test command::skill::tests::get_base_dir_local_without_context_fails ... ok test command::skill::tests::inject_version_fallback_without_frontmatter ... ok test command::skill::tests::inject_version_handles_missing_version_field ... ok test command::skill::tests::inject_version_handles_old_mac_line_endings ... ok test command::skill::tests::inject_version_handles_windows_line_endings ... ok test command::skill::tests::inject_version_replaces_in_frontmatter ... ok test command::skill::tests::parse_yaml_value_handles_double_quoted_strings ... ok test command::skill::tests::is_gitbutler_skill_requires_name_but_in_frontmatter ... ok test command::skill::tests::parse_yaml_value_handles_inline_comments ... ok test command::skill::tests::parse_yaml_value_handles_plain_values ... ok test command::skill::tests::parse_yaml_value_handles_quoted_with_comment ... ok test command::skill::tests::parse_yaml_value_handles_single_quoted_strings ... ok test command::skill::tests::resolve_custom_path_expands_tilde ... ok test command::skill::tests::resolve_custom_path_handles_absolute_path ... ok test command::skill::tests::skill_check_result_empty_skills ... ok test command::skill::tests::skill_check_result_outdated_count_accuracy ... ok test command::skill::tests::skill_check_result_serializes_correctly ... ok test command::skill::tests::skill_entrypoint_is_written_last ... ok test command::skill::tests::skill_file_display_path_is_derived_from_components ... ok test command::skill::tests::skill_files_are_valid ... ok test command::skill::tests::skill_format_get_install_path_joins_correctly ... ok test command::skill::tests::skill_formats_are_valid ... ok test command::skill::tests::skill_status_serializes_correctly ... ok test command::skill::tests::skill_status_up_to_date_logic ... ok test id::tests::a_file_literally_named_at_competes_with_the_uncommitted_area ... ok test id::tests::branches_avoid_invalid_ids ... ok test id::tests::at_scopes_filenames_to_the_main_worktree ... ok test id::tests::branch_and_worktree_short_ids_do_not_collide ... ok test id::tests::branches_avoid_uncommitted_filenames ... ok test id::tests::branches_work_with_single_character ... ok test id::tests::change_ids_are_disambiguated_on_collision ... ok test id::tests::branch_and_file_by_name ... ok test id::tests::commit_matches_are_deduplicated_by_commit_oid ... ok test id::tests::colon_uncommitted_filename ... ok test id::tests::branches_avoid_retired_uncommitted_area_id ... ok test id::tests::branch_that_is_substring_of_other_substring_still_gets_id ... ok test id::tests::committed_hunk_equality ... ok test id::tests::committed_files_are_deduplicated_by_commit_oid_path ... ok test id::tests::commit_ids_become_longer_if_ambiguous ... ok test id::tests::dedupe_does_not_hide_ambiguity_between_distinct_commits ... ok test id::tests::dedupe_does_not_hide_ambiguity_between_branches_in_different_stacks ... ok test id::tests::commit_id_appearing_multiple_times ... ok test id::tests::commit_id_works_with_two_or_more_characters ... ok test id::tests::dedupe_treats_unmanaged_branches_with_same_name_as_the_same_branch ... ok test id::tests::duplicate_tree_changes_for_committed_files_are_coalesced_for_short_id_assignment ... ok test id::tests::committed_file_can_be_referenced_by_either_change_id_or_commit_id ... ok test id::tests::exact_branch_short_id_takes_priority ... ok test command::skill::tests::write_skill_files_writes_versioned_bundle ... ok test id::tests::generated_segment_ids_do_not_collide_with_worktree_names ... ok test id::tests::find_commits_by_change_id ... ok test id::tests::parsing_retired_uncommitted_area_errors ... ok test command::skill::tests::skill_installation_requires_every_embedded_file ... ok test id::tests::same_path_in_several_sources_gets_distinct_ids ... ok test id::tests::ids_are_case_sensitive ... ok test id::tests::uint_id_from_short_id ... ok test id::tests::short_uncommitted_files_are_properly_reverse_hexed ... ok test id::tests::longer_id_is_ok ... ok test id::tests::uncommitted_files_disambiguate_with_branch ... ok test id::tests::uncommitted_hunks_by_id ... ok test id::tests::uncommitted_file_to_id_qualifies_hunk_ids ... ok test id::tests::uncommitted_files_avoid_retired_uncommitted_area_id ... ok test id::tests::uncommitted_hunks_by_id_increase_id_length_as_necessary ... ok test id::tests::uncommitted_files_disambiguate_between_themselves ... ok test id::tests::uncommitted_path ... ok test id::tests::uncommitted_hunks_by_id_collision_handling ... ok test id::tests::uncommitted_hunks_by_numeric_index ... ok test id::tests::non_commit_ids_do_not_collide ... ok test id::tests::uncommitted_hunks_overspecifying_id_prefix_with_collision_disambiguation ... ok test id::tests::worktree_container_id ... ok test id::tests::uncommitted_hunks_overspecifying_id_prefix ... ok test id::tests::uncommitted_scope_does_not_prefix_match_a_branch_short_id ... ok test id::tests::worktree_commits_share_the_commit_namespace ... ok test id::tests::uncommitted_selector_is_not_shadowed_by_commit_change_id ... ok test id::tests::underspecifying_hunk_ids ... ok test id::tests::reverse_hex_filename_is_its_own_id ... ok test id::tests::uint_id_to_short_id ... ok test tests::ordinary_commands_are_unchanged_by_watwat_expansion ... ok test tests::watwat_enables_maximum_tracing ... ok test id::tests::worktree_uncommitted_area_id ... ok test theme::tests::partial_json_fills_missing_fields_with_defaults ... ok test tests::repository_discovery_errors_keep_their_classification ... ok test theme::tests::empty_json_produces_default_theme ... ok test theme::tests::terminal_theme_modes_map_to_presets ... ok test tests::explicit_theme_overrides_detection_and_detection_falls_back_to_dark ... ok test tui::editor::tests::hard_wrap_keeps_comment_lines_with_custom_prefix_intact ... ok test id::id_usage::tests::true_exhaustion_remains_an_error ... ok test theme::tests::round_trip_default_theme_through_json ... ok test tui::event_polling::tests::flushes_partial_sequence_when_no_more_input_is_available ... ok test tui::event_polling::tests::passes_non_key_events_through ... ok test tui::event_polling::tests::replays_events_when_sequence_is_not_sgr_mouse ... ok test tui::get_text::tests::filter_content_from_editor_uses_comment_prefix ... ok test tui::event_polling::tests::drops_leaked_sgr_mouse_sequence ... ok test tui::get_text::tests::strip_html_comments_correctly_strips_comments_that_start_within_another_comment ... ok test tui::get_text::tests::editor_used_as_last_env_fallback ... ok test tui::get_text::tests::strip_html_comments_does_not_remove_comment_termination_without_start ... ok test tui::get_text::tests::strip_html_comments_does_not_remove_unterminated_html_comment ... ok test tui::get_text::tests::strip_html_comments_removes_all_html_comments ... ok test tui::get_text::tests::test_filter_content_from_editor ... ok test tui::get_text::tests::falls_back_to_builtin_when_nothing_set ... ok test tui::get_text::tests::git_editor_takes_precedence ... ok test tui::get_text::tests::from_editor_bails_on_bad_suffix ... ok test tui::get_text::tests::visual_used_when_no_git_editor ... ok test command::mcp::tests::workspace_view_uses_the_current_workspace_api ... ok test command::mcp::tests::commit_details_include_files_and_line_stats ... ok test command::mcp::tests::workspace_view_uses_the_first_applicable_file_root ... ok test command::mcp::tests::branch_details_include_commits_and_upstream_state ... ok test tests::detected_agent_defaults_early_help_to_agent_output ... ok test tests::detected_agent_preserves_environment_output_format ... ok test tests::expanded_alias_arguments_control_terminal_theme_detection ... ok test tests::terminal_theme_detection_is_limited_to_interactive_human_output ... ok test tui::table::tests::render_keeps_full_cells_when_truncation_is_disabled ... ok test tui::table::tests::render_truncates_cells_by_default ... ok test tui::picker::tests::build_picker_items_marks_disabled_indices ... ok test tui::text::strip_ansi_codes_tests::broken_ansi_sequence_is_handled_without_panic ... ok test tui::text::strip_ansi_codes_tests::plain_text_is_unchanged_by_strip_ansi ... ok test tui::text::strip_ansi_codes_tests::strip_ansi_removes_color_codes ... ok test tui::text::truncate_text_tests::ansi_codes_only_produce_no_visible_output_within_width ... ok test tui::text::truncate_text_tests::ansi_colored_text_is_truncated_without_counting_escapes ... ok test tui::text::truncate_text_tests::cjk_does_not_exceed_max_width ... ok test tui::text::truncate_text_tests::cjk_double_width_characters ... ok test tui::text::truncate_text_tests::emoji_characters ... ok test tui::text::truncate_text_tests::empty_text_stays_empty ... ok test tui::text::truncate_text_tests::max_width_of_one_gives_ellipsis_only ... ok test tui::text::truncate_text_tests::max_width_of_two_keeps_one_character_plus_ellipsis ... ok test tui::text::truncate_text_tests::max_width_of_zero_gives_empty_string ... ok test tui::text::truncate_text_tests::text_at_exact_limit_is_not_truncated ... ok test tui::text::truncate_text_tests::text_exceeding_limit_is_truncated_with_ellipsis ... ok test tui::text::truncate_text_tests::truncation_does_not_drop_plain_text_when_boundary_ends_with_m ... ok test tui::text::truncate_text_tests::truncation_preserves_exact_boundary ... ok test tui::text::truncate_text_tests::unicode_single_width_characters ... ok test tui::text::truncate_text_tests::zero_width_combining_characters_are_handled ... ok test tui::picker::tests::build_picker_items_never_selects_a_disabled_row ... ok test utils::diff_rendering::tests::computes_stats_from_the_supplied_hunks ... ok test utils::diff_rendering::tests::expands_tabs_to_four_column_stops_across_spans ... ok test utils::diff_rendering::tests::formats_numbers_with_dot_thousands_separators ... ok test utils::diff_rendering::tests::renders_the_hunks_stored_in_the_selection ... ok test utils::metrics::tests::agent_setup_outcome_properties_are_centralized ... ok test utils::metrics::tests::change_count_buckets_are_low_cardinality ... ok test utils::metrics::tests::cli_command_sampling_policy_matches_expected_rates ... ok test utils::metrics::tests::cli_error_metrics_use_low_cardinality_failure_details ... ok test utils::metrics::tests::command_failures_do_not_guess_mutation_outcomes ... ok test utils::metrics::tests::command_rejections_bypass_sampling ... ok test utils::metrics::tests::commands_with_their_own_event_lifecycle_do_not_create_cli_context ... ok test utils::metrics::tests::experimental_metric_names_require_nightly ... ok test utils::metrics::tests::external_extra_props_include_sanitized_subcommand ... ok test utils::metrics::tests::extra_props_keep_useful_source_and_target_kinds ... ok test tests::detected_agent_defaults_to_agent_output ... ok test utils::metrics::tests::formerly_unclassified_commands_have_explicit_names ... ok test utils::metrics::tests::formerly_unknown_commands_use_explicit_names ... ok test utils::metrics::tests::full_rate_cli_events_include_sampling_rate ... ok test tui::picker::tests::disabled_row_renders_unavailable_marker_and_cannot_toggle ... ok test utils::metrics::tests::initialization_errors_use_distinct_kind_without_private_details ... ok test utils::metrics::tests::internal_errors_omit_private_details ... ok test utils::metrics::tests::status_events_include_one_percent_sampling_rate ... ok test utils::metrics::tests::successful_sampled_events_can_be_dropped ... ok test utils::metrics::tests::transport_failures_without_a_rate_are_kept ... ok test utils::metrics::tests::metrics_use_invoked_command_names ... ok test tui::picker::tests::multi_select_marks_default_indices_selected ... ok test utils::metrics::tests::legacy_transport_events_without_a_rate_use_full_rate ... ok test utils::metrics::tests::transport_keeps_a_valid_parent_rate_without_resampling ... ok test utils::metrics::tests::transport_rejects_malformed_or_invalid_rates ... ok test tui::picker::tests::no_footer_when_no_row_has_help ... ok test utils::output_channel::tests::agent_output_does_not_truncate_unpaged_text ... ok test utils::output_channel::tests::agent_output_never_uses_pager ... ok test tui::picker::tests::help_is_a_pinned_footer_and_rows_do_not_reflow ... ok test utils::output_channel::tests::agent_output_does_not_allow_progress ... ok test utils::output_channel::tests::ctrl_d_only_ends_input_when_line_is_empty ... ok test utils::time::tests::format_relative_time_days ... ok test utils::time::tests::format_relative_time_hours ... ok test utils::time::tests::format_relative_time_seconds ... ok test utils::output_channel::tests::agent_output_is_human_text_not_json ... ok test utils::time::tests::format_relative_time_minutes ... ok test utils::output_channel::tests::ctrl_c_ends_input ... ok test utils::time::tests::format_relative_time_verbose_journey ... ok test utils::tests::test_command_isolation_removes_all_agent_environment_variables ... ok test id::tests::many_uncommitted_files_do_not_exhaust_generated_ids ... ok test utils::metrics::tests::workspace_shape_never_initializes_a_project ... ok test utils::metrics::tests::workspace_shape_counts_lanes_and_stacked_branches ... ok test utils::diff_rendering::tests::bundled_syntaxes_include_swift ... ok test tui::picker::tests::multi_select_confirms_even_with_cursor_on_a_disabled_row ... ok test tui::picker::tests::moving_cursor_up_and_down_single ... ok test utils::metrics::tests::checkout_context_names_the_checkout_kind_and_workspace_mode ... ok test tui::picker::tests::moving_cursor_up_and_down_multi ... ok test tui::picker::tests::single_select_rows_have_no_checkbox ... ok test tui::picker::tests::single_select_does_not_confirm_on_a_disabled_row ... ok test tui::picker::tests::single_select_cursor_starts_at_topmost_default_in_range ... ok test result: ok. 306 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.28s  Running unittests src/main.rs (target/debug/deps/but-b2f605686ebd8fb0) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s  Running tests/but/main.rs (target/debug/deps/but-0f829fe34f8d3598) running 71 tests test command::agent::agent_setup_without_tty_points_to_print_mode ... ok test command::agent::agent_setup_print_outputs_default_managed_policy ... ok test command::agent::agent_setup_print_json_outputs_policy_field ... ok test command::config::ai_openai_byok_without_api_key_fails_non_interactive ... ok test command::config::ai_anthropic_byok_without_api_key_fails_non_interactive ... ok test command::config::ai_show_outputs_current_global_configuration_json ... ok test command::config::ai_global_config_works_outside_repository ... ok test command::config::ai_ollama_local_writes_repo_config ... ok test command::config::config_push_remote_shows_effective_remote ... ok test command::config::feature_config_json_lists_no_flags ... ok test command::config::global_user_configuration_creates_parent_for_relative_path ... ok test command::config::config_push_remote_rejects_unknown_remote_without_changing_metadata ... ok test command::config::ai_show_outputs_current_global_configuration_human ... ok test command::config::feature_config_lists_no_flags ... ok test command::external::friendly_error_when_no_such_command_exists ... ok test command::alias::local_alias_roundtrip_uses_repo_config ... ok test command::external::delegates_plain_name_to_but_prefixed_executable ... ok test command::config::config_push_remote_sets_push_remote ... ok test command::external::refuses_to_execute_command_with_forward_slash ... ok test command::external::prefers_builtin_command_when_external_command_clashes ... ok test command::config::ai_openai_defaults_to_global_config ... ok test command::config::ai_show_outputs_current_local_configuration_json ... ok test command::external::preserves_external_command_exit_code_without_extra_error ... ok test command::external::refuses_to_execute_command_with_dot ... ok test command::external::propagates_reasonable_error_when_program_is_not_executable ... ok test command::gui::good_error_message_for_non_directories ... ok test command::external::removed_rub_command_teaches_its_replacements ... ok test command::format::json_flag_can_be_placed_before_or_after_subcommand ... ok test command::help::nonexistent_comman_shows_friendly_error ... ok test command::onboarding::first_run_shows_metrics_message ... ok test command::help::help_help_should_be_help ... ok test command::onboarding::second_run_is_silent ... ok test command::onboarding::json_mode_is_silent_but_marks_complete ... ok test command::agent::agent_uninstall_removes_skills_and_gitbutler_sections_only ... ok test command::alias::global_aliases_work_outside_a_repository ... ok test command::skill::serve::skill_full_appends_every_reference_with_separators ... ok test command::help::top_level_help_honors_agent_format_after_help_flag ... ok test command::config::global_user_configuration_works_outside_a_repository ... ok test command::skill::serve::skill_doc_subcommands_print_one_reference_each ... ok test command::skill::serve::skill_json_carries_the_doc_and_full_references ... ok test command::skill::serve::skill_prints_the_core_guide_without_frontmatter ... ok test command::skill::serve::skill_prints_the_guide_inside_an_unreadable_repository ... ok test command::skill::serve::skill_check_update_keeps_a_stale_stub_a_stub ... ok test command::skill::serve::skill_install_stub_removes_a_stray_references_file ... ok test command::skill::serve::skill_install_stub_writes_one_marked_file_that_check_accepts ... ok test command::skill::serve::skill_install_stub_removes_a_symlinked_references_dir_without_following_it ... ok test command::skill::serve::skill_install_stub_over_a_full_install_removes_the_references ... ok test command::skill::skill_check_json_output_is_valid ... ok test command::skill::skill_check_local_outside_repo_fails ... ok test command::skill::skill_check_detects_agent_skills_installation_in_repo ... ok test command::skill::skill_install_absolute_path_outside_repo_does_not_require_global ... ok test command::skill::skill_check_ignores_format_outside_its_scope ... ok test command::skill::skill_install_explicit_path_does_not_claim_the_agent_will_load_it ... ok test command::skill::serve::agent_skill_notice_accepts_a_stub_install ... ok test command::skill::skill_global_install_and_check_work_inside_an_unreadable_repository ... ok test command::skill::skill_install_json_outside_repo_requires_path_instead_of_repo_context ... ok test command::skill::skill_check_marks_an_incomplete_bundle_outdated ... ok test command::skill::skill_install_path_outside_repo_requires_global ... ok test command::skill::skill_install_bare_defaults_to_detected_agents_global_dir ... ok test command::skill::skill_install_detect_finds_agent_skills_installation_in_repo ... ok test command::skill::serve::skill_install_detect_reports_files_per_location_when_layouts_differ ... ok test command::skill::agent_skill_notice_accepts_compatible_shared_local_install ... ok test command::skill::skill_install_surfaces_non_repo_discovery_errors ... ok test command::skill::agent_skill_notice_repairs_another_agents_stale_global_skill ... ok test command::skill::agent_skill_notice_gating ... ok test command::skill::agent_skill_notice_reports_a_stale_local_skill_despite_a_current_global_copy ... ok test command::skill::skill_install_detect_updates_every_installation_in_scope ... ok test command::skill::skill_check_update_repairs_a_stale_local_skill ... ok test command::skill::agent_skill_notice_is_scoped_to_the_driving_agents_format ... ok test command::skill::unrelated_update_failure_does_not_hide_missing_skill_hint ... ok test ignored_tests_have_linear_tickets ... ok test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.36s  Running tests/theme.rs (target/debug/deps/theme-8bae83b15a5177e3) running 2 tests test paint_produces_self_contained_string_styling ... ok test paint_respects_colored_control_disable ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s  Doc-tests but running 4 tests test crates/but/src/theme.rs - theme::Paint (line 99) ... ignored test crates/but/src/utils/output_channel.rs - utils::output_channel::InputOutputChannel<'_>::confirm (line 425) ... ignored test crates/but/src/utils/output_channel.rs - utils::output_channel::InputOutputChannel<'_>::confirm_no_default (line 464) ... ignored test crates/but/src/utils/output_channel.rs - utils::output_channel::InputOutputChannel<'_>::prompt (line 365) ... ignored test result: ok. 0 passed; 0 failed; 4 ignored; 0 measured; 0 filtered out; finished in 0.00s all doctests ran in 0.40s; merged doctests compilation took 0.38s  Blocking waiting for file lock on package cache  Blocking waiting for file lock on package cache  Blocking waiting for file lock on package cache  Finished `test` profile [unoptimized + debuginfo] target(s) in 4.35s  Running unittests src/lib.rs (/home/ci/taste/slot-0/lanes/test-modern-but/target/debug/deps/gitbutler_notify_debouncer-2755d1f0ca86ea87) running 35 tests test tests::state::file_name_16___add_rename_from_and_to_event_override_created__ ... ok test tests::state::file_name_01___add_create_event__ ... ok test tests::state::file_name_03___add_create_dir_event_twice__ ... ok test tests::state::file_name_15___add_rename_from_and_to_event_after_modify_content__ ... ok test tests::state::file_name_06___add_rename_from_event_after_create_event__ ... ok test tests::state::file_name_05___add_rename_from_event__ ... ok test tests::state::file_name_08___add_rename_from_event_after_create_and_modify_event__ ... ok test tests::state::file_name_11___add_rename_to_dir_event__ ... ok test tests::state::file_name_04___add_modify_content_event_after_create_event__ ... ok test tests::state::file_name_12___add_rename_from_and_to_event__ ... ok test tests::state::file_name_18___add_rename_from_and_to_event_override_removed__ ... ok test tests::state::file_name_10___add_rename_to_event__ ... ok test tests::state::file_name_02___add_create_event_after_remove_event__ ... ok test tests::state::file_name_14___add_rename_from_and_to_event_after_rename__ ... ok test tests::state::file_name_21___add_rename_from_and_to_event_with_different_tracker__ ... ok test tests::state::file_name_19___add_rename_from_and_to_event_with_file_ids__ ... ok test tests::state::file_name_17___add_rename_from_and_to_event_override_modified__ ... ok test tests::state::file_name_07___add_rename_from_event_after_modify_event__ ... ok test tests::state::file_name_23___add_remove_event__ ... ok test tests::state::file_name_13___add_rename_from_and_to_event_after_create__ ... ok test tests::state::file_name_20___add_rename_from_and_to_event_with_different_file_ids__ ... ok test tests::state::file_name_28___add_errors__ ... ok test tests::state::file_name_27___add_remove_parent_event_after_remove_child_event__ ... ok test tests::state::file_name_29___emit_continuous_modify_content_events__ ... ok test tests::state::file_name_33___emit_modify_event_after_close_event__ ... ok test tests::state::file_name_31___emit_events_with_a_prepended_rename_event__ ... ok test tests::state::file_name_30___emit_events_in_chronological_order__ ... ok test tests::state::file_name_24___add_remove_event_after_create_event__ ... ok test tests::state::file_name_25___add_remove_event_after_modify_event__ ... ok test tests::state::file_name_35___read_file_id_without_create_event__ ... ok test tests::state::file_name_34___emit_needs_rescan_event__ ... ok test tests::state::file_name_32___emit_close_events_only_once__ ... ok test tests::state::file_name_26___add_remove_event_after_create_and_modify_event__ ... ok test tests::state::file_name_09___add_rename_from_event_after_rename_from_event__ ... ok test tests::state::file_name_22___add_rename_both_event__ ... ok test result: ok. 35 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s